標準入力の1行に2つ以上の整数を入力できるのかしら。 C
/C++
それは簡単です:
C++
:
#include <iostream>
int main() {
int a, b;
std::cin >> a >> b;
return 0;
}
C
:
#include <stdio.h>
void main() {
int a, b;
scanf("%d%d", &a, &b);
}
Python
では、機能しません。
enedil@notebook:~$ cat script.py
#!/usr/bin/python3
a = int(input())
b = int(input())
enedil@notebook:~$ python3 script.py
3 5
Traceback (most recent call last):
File "script.py", line 2, in <module>
a = int(input())
ValueError: invalid literal for int() with base 10: '3 5'
それを行うにはどうすればよいですか?
入力したテキストを空白で分割します。
a, b = map(int, input().split())
デモ:
>>> a, b = map(int, input().split())
3 5
>>> a
3
>>> b
5
Python 2を使用している場合、Martijnが提供する答えは機能しません。代わりに、次を使用してください。
a, b = map(int, raw_input().split())