Jump to content

leitura de várias linhas


NMLZ

Recommended Posts

Boas! Estou com uma pequena duvida. Queria ler várias linhas, mas para um inteiro, com o formato:

1 2 3 4 5

6 7 8 9 0

e acabava quando não digitasse nenhum número. Estou a usar um vector para guardar cada elemento de cada linha, e um vector de vectores para guardar cada linha:

while (????)
{
while (cont < 9) {
	cin >> n;
	vec.push_back(n);
	cont++;
}
princ.push_back(vec);
}

já tentei o !cin.eof, mas não resulta. Alguem tem alguma ideia ? Abraços

Link to comment
Share on other sites

exactamente TheDark, são n linhas com 9 digitos.

Neste caso TEM mesmo que ser com um enter, tendo em conta que o programa é avaliado pelo input e output, e não pelo codigo (UVa). Tamos 2 à procura de resposta, quando souber posto aqui. abraço

ps: tks pelas respostas

Se é um corrector automático usa o cin.eof().

Costumo resolver problemas na UVA e é isso que faço. (ok, na prática uso o feof(stdin) de C, mas vai dar ao mesmo)

EDIT: Bem me parecia. Tinhas que ser da FEUP para usar a UVA. 🙂

Link to comment
Share on other sites

Primeiro que tudo acho melhor que todo o código seja colocado, porque o que lá está não funciona certamente.

Não sei de que tipo é o n.

Não estou a ver cont = 0;

se ignorares o 1º while e o push_back para o princ ele lê 9 inteiros e guarda cada 1 num vector vec.

int n, cont = 0;

vector<vector<int> > princ;

vector<int>

a unica coisa que falta realmente e' quebrar o ciclo.

Warrior, tks, entao vou experimentar submeter com o !cin.eof, se der erro leio a string e separo/converto. abc

Link to comment
Share on other sites

Primeiro que tudo acho melhor que todo o código seja colocado, porque o que lá está não funciona certamente.

Não sei de que tipo é o n.

Não estou a ver cont = 0;

se ignorares o 1º while e o push_back para o princ ele lê 9 inteiros e guarda cada 1 num vector vec.

int n, cont = 0;

vector<vector<int> > princ;

vector<int>

a unica coisa que falta realmente e' quebrar o ciclo.

Warrior, tks, entao vou experimentar submeter com o !cin.eof, se der erro leio a string e separo/converto. abc

Tem que funcionar. Eu em C uso algo assim: (extraído de uma das soluções da UVA)

      scanf("%d %d",&a,&🙂 ;

      while (!feof(stdin)) {

          ......

          scanf("%d %d",&a,&🙂 ;

      }

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...

Important Information

By using this site you accept our Terms of Use and Privacy Policy. We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.