Skip to content

3. 変数と入出力

3.Q Multiplication(★☆☆)

問題

標準入力から整数を3つ受け取って、3つの数の積を出力するプログラムを作ってみよう。プログラムの書き方が分からないときは、3.3.2にあるプログラムを参考にしよう。

(入力される整数は大きすぎず、オーバーフローは気にしなくて良いものとする。)

入出力例

ここに書かれているのはあくまでも例です。これ以外の値が入力されたとしても、正しく出力できるようなプログラムを作成してください。

例1

入力

Input
3
4
5

出力

Output
60

例2

入力

Input
1
3
5

出力

Output
15

ヒント

ヒント1

3.3.2の最後に書かれているプログラムを改造することを考えよう。

cpp
#include <iostream>
using namespace std;

int main() {
  int x;
  int y;
  cin >> x >> y;

  cout << x+y << endl;
}

このプログラムは、2つの整数を受け取って、を出力するプログラムであった。

今回作りたいプログラムは、3つの整数を受け取って、を出力するプログラムである。

ヒント2
cpp
#include <iostream>
using namespace std;

int main() {
  int x;
  int y;
  int z;
  cin >> x >> y;

  cout << x+y << endl;
}

3つの値を入力から受け取るには、まず、7行目に変数zの定義を追加する必要がある。(変数名はzでなくてもOK。)

では、zが入力を受け取るようにするには、どうすれば良いだろうか?

ヒント3
cpp
#include <iostream>
using namespace std;

int main() {
  int x;
  int y;
  int z;
  cin >> x >> y >> z;

  cout << x+y << endl;
}

3つの値を入力から受け取るには、8行目に変数zを加えてあげれば良い。入力は>>で繋げることができるのであった。

では、xyzの積を出力するには、どこを書き換えれば良いだろうか?

ヒント4
cpp
#include <iostream>
using namespace std;

int main() {
  int x;
  int y;
  int z;
  cin >> x >> y >> z;

  cout << x+y << endl;
}

出力される値は10行目で決まっているから、ここを書き換えてみよう。積の記号は*である。

解答例

解答例
cpp
#include <iostream>
using namespace std;

int main() {
  int x;
  int y;
  int z;  // 3つの変数x, y, zを定義
  cin >> x >> y >> z;  // 3つの整数を受け取る

  cout << x*y*z << endl;  // 積を計算して出力
}

変数の定義はまとめて行うこともできる。まとめて行うときには、,で区切れば良い。

cpp
#include <iostream>
using namespace std;

int main() {
  int x, y, z;  // 3つの変数x, y, zを定義
  cin >> x >> y >> z;  // 3つの整数を受け取る

  cout << x*y*z << endl;  // 積を計算して出力
}