Jump to content

Duvida em strings C++


Joao brandao
 Share

Recommended Posts

Boas pessoal estou aqui com uma pequenina duvida, eu queria fazer um programa que lia 5 pessoas e depois lia o nome e guardava numa posiçao do vector cada um

o codigo era basicamente este:

#include <cstdlib>
#include <iostream>

using namespace std;

int main(int argc, char *argv[])
{
    int np,i;
    string nome[10];  // Para declarar nao sei se é assim
    cin>>np;
    while(i!=np)
    {
     i++;
     cin>>nome; // queria aqui guardar numa posiçao do vector nome consoante o a variavel i
    }
       while(i!=np)
    {
     i++;
      cout<<nome[i]<<endl;
    }
    
    system("PAUSE");
    return EXIT_SUCCESS;
}

um exemplo de entrada:

3

Joao

Antonio

Maria

Saida:

Joao  -->1 posiçao

Antonio -->2 posiçao

Maria -->3 posiçao

Podem me ajudar ao declarar a variavel e a guardar no vector?

Link to comment
Share on other sites

estas a declarar correctamente uma lista de nomes :

    string nome[10];  // Para declarar nao sei se é assim

no entanto estás sempre a gravar na primeira posição :

    cin>>nome; // queria aqui guardar numa posiçao do vector nome consoante o a variavel i

deves guarda na posição correcta da mesma maneira que tens a leitura dos nomes guardados na lista

    cout<<nome[i]<<endl;
IRC : sim, é algo que ainda existe >> #p@p
Link to comment
Share on other sites

4 correções ao teu código:

1-Tens de incluir a biblioteca <string>;

2-Tens de inicializar o i (fazer i=0;) antes dos while, motivo pelo qual mais vale usar um for;

3-Tens de fazer cin>>nome em vez de cin>>nome.

4-Podes fazer  "int main()" em vez de "int main (int argc, char *argv)" e não precisas de incluir a biblioteca cstdlib.

<Signature goes here>

Link to comment
Share on other sites

3-Tens de fazer cin>>nome em vez de cin>>nome.

3-Tens de fazer cin>>nome[ i ] em vez de cin>>nome;

EDIT: xtrm0 Escreveste correctamente, só que isso é a tag do forum para escrever em itálico

Por muito mais que que estude só aprendo uma coisa, que ainda tenho muita coisa para aprender.

A beleza de um código está em decompor problemas complexos em pequenos blocos simples.

"learn how to do it manually first, then use the wizzy tool to save time."

"Kill the baby, don't be afraid of starting all over again. Fail soon, learn fast."

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
 Share

×
×
  • 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.