Я новичок в C ++. Я пытаюсь написать файл, который принимает ввод и вывод, используя cout.
Код:
#include<bits/stdc++.h>
#include<iostream>
using namespace std;
int main()
{
int t;//No. of testcases
cin>>t;
while(t--)
{
int n;//number of pairs
cin>>n;
cout<<"n="<<n<<"\n";
int a;//number
char b;//character
for(int i=0;i<n;i++){
cin>>b>>a;
cout<<b<<" "<<a<<"\n";}
}
return 0;
}
Ввод:
2
42
A 3
A 3
A 3
A 3
A 12
A 12
A 12
A 12
A 6
A 6
A 9
B 3
B 3
B 3
B 3
B 12
B 12
B 12
B 12
B 6
B 6
B 6
B 9
B 9
B 9
C 3
C 3
C 3
C 3
C 6
C 6
C 9
C 9
C 12
C 12
C 12
C 12
D 3
D 6
D 6
D 9
D 9
D 12
42
A 3
A 3
A 3
A 3
A 12
A 12
A 12
A 12
A 6
A 6
A 9
B 3
B 3
B 3
B 3
B 12
B 12
B 12
B 12
B 6
B 6
B 6
B 9
B 9
B 9
C 3
C 3
C 3
C 3
C 6
C 6
C 9
C 9
C 12
C 12
C 12
C 12
D 3
D 6
D 6
D 9
D 9
D 12
Требуется выход :
n = 42
A 3
A 3
A 3
A 3
A 12
A 12
A 12
A 12
A 6
A 6
A 9
B 3
B 3
B 3
B 3
B 12
B 12
B 12
B 12
B 6
B 6
B 6
B 9
B 9
B 9
C 3
C 3
C 3
C 3
C 6
C 6
C 9
C 9
C 12
C 12
C 12
C 12
D 3
D 6
D 6
D 9
D 9
D 12
n = 42
A 3
A 3
A 3
A 3
A 12
A 12
A 12
A 12
A 6
A 6
A 9
B 3
B 3
B 3
B 3
B 12
B 12
B 12
B 12
B 6
B 6
B 6
B 9
B 9
B 9
C 3
C 3
C 3
C 3
C 6
C 6
C 9
C 9
C 12
C 12
C 12
C 12
D 3
D 6
D 6
D 9
D 9
D 12
Выход получаю: n = 42
A 3
A 3
A 3
A 3
A 12
A 12
A 12
A 12
A 6
A 6
A 9
B 3
B 3
B 3
B 3
B 12
B 12
B 12
B 12
B 6
B 6
B 6
B 9
B 9
B 9
C 3
C 3
C 3
C 3
C 6
C 6
C 9
C 9
C 12
C 12
C 12
C 12
D 3
D 6
D 6
D 9
D 9
D 12
n = 0
Почему это происходит? Это работает для небольших входов, но когда я непосредственно набираю его, но не принимает никаких входных данных, когда копирую его. Это проблема с онлайн-компиляторами или мне нужно каким-то образом очистить cin, чтобы он принимал ввод. Любая помощь будет оценена.
Редактировать: мне нужно было использовать cin.ignore ()