2つの整数 x, y が与えられる.それらの和 x + y を出力するプログラムを作成せよ.
入力は複数のデータセットからなる.それぞれのデータセットは,1つの空白文字で区切られた2つの整数 x, y からなる1行の文字列で与えられる.x, y は 0 < x ≤ 10000, 0 < y ≤ 10000 を満たす.
最後のデータセットの後ろに,入力の終了を示す “0 0” という行が与えられる.
それぞれのデータセットに対して,2つの整数の和 x + y を1行で出力せよ.余計な空白文字を含んではならない.
1 2 301 99 10000 10000 0 0
3 400 20000
あなたのプログラムは,入力を標準入力から読み取り,その入力に対する答えを標準出力に出力しなければならない.あなたのプログラムの出力があらかじめ用意された解答と一致すれば正解,誤っていたり規定時間内に出力し終わらなかったりすると誤答と判定される.
Javaでプログラムを提出する際には,mainメソッドを持つクラス名を Main にする必要があるので注意すること.
Mac OS X ではバックスラッシュと円記号は別の文字として認識されるので,改行文字を出力する際に “\n” (バックスラッシュ + n)の代わりに “¥n” (円記号 + n)を使わないように注意すること.後者はエスケープシーケンスとして認識されず,円記号がそのまま出力されてしまうので, Wrong Answer と判定される.
プログラムが提出され,しばらくすると判定された結果が表示される. プログラムの実行結果は以下のいずれかとなる. Accepted以外は誤答と判断される.
main関数の末尾で return 0;を行っていないとこの判定となってしまうので注意すること.以下に C, C++, Java によるこの問題の解答例を示す.
#include <stdio.h>
int main(void)
{
int x, y;
for (;;) {
scanf("%d%d", &x, &y);
if (x == 0 && y == 0) break;
printf("%d\n", x + y);
}
return 0;
}
#include <iostream>
using namespace std;
int main()
{
while (true) {
int x, y;
cin >> x >> y;
if (x == 0 && y == 0) break;
cout << x + y << '\n';
}
return 0;
}
import java.util.Scanner;
public class Main {
public static void main(String args[]) {
Scanner sc = new Scanner(System.in);
while (true) {
int x = sc.nextInt();
int y = sc.nextInt();
if (x == 0 && y == 0) break;
System.out.println(x + y);
}
}
}