Ir para conteúdo
Fórum Script Brasil
  • 0

Problema com passagem de parametros.


Rick00

Pergunta

Boa tarde, tenho um trabalho que consiste no seguinte: Fazer uma agenda que receba dados de uma pessoa e inclua elas em um vetor e depois outras opçoes como deletar ou achar os dados pelo nome.

O problema é que não estou conseguindo imprimir esses dados, esse é o código.

Desculpem qualquer coisa, sou novo aqui.


#include <iostream>
#include <conio2.h>
#include <stdlib.h>
using namespace std;

#define TAM 4

struct endereço
{
string rua, bairro, cidade, estado, pais, comp;
int cep, nro;
};
struct telef
{
int ddd, num;
};
struct data
{
int dia, mes, ano;
};

struct dados
{
string nome, email;
data nasc;
telef tel;
ender address;
};

void Adicionar(dados vet[], int &x)
{
if (x < TAM) {
clrscr();
cout<<"Insira seu nome"<<endl;
cin>>vet[x].nome;
cout<<"Insira seu email"<<endl;
cin>>vet[x].email;
cout<<"Insira sua data de nascimento DIA/MES/ANO"<<endl;
cin>>vet[x].nasc.dia;
cin>>vet[x].nasc.mes;
cin>>vet[x].nasc.ano;
cout<<"Insira seu telefone com DDD, com o DDD primeiro"<<endl;
cin>>vet[x].tel.ddd;
cin>>vet[x].tel.num;
cout<<"Insira seu bairro, nome da sua rua e o complemento"<<endl;
cin>>vet[x].address.bairro;
cin>>vet[x].address.rua;
cin>>vet[x].address.comp;
cout<<"Insira o numero da residencia o cep"<<endl;
cin>>vet[x].address.nro;
cin>>vet[x].address.cep;
cout<<"Insira sua cidade, estado e pais"<<endl;
cin>>vet[x].address.cidade;
cin>>vet[x].address.estado;
cin>>vet[x].address.pais;
x++;
}
else {
cout<<endl<<"Agenda Cheia!";
}

}

void Imprimir2(dados vet[], int &x)
{
clrscr();
if(x<=0)
{
cout<<"não há registros";
}
else{
cout<<"Nome"<<vet[x].nome<<endl;
cout<<"Email"<<vet[x].email<<endl;
cout<<"Data de nascimento DIA/MES/ANO"<<vet[x].nasc.dia<<vet[x].nasc.mes<<vet[x].nasc.ano<<endl;
cout<<"Telefone"<<vet[x].tel.ddd<<vet[x].tel.num<<endl;
cout<<"Bairro e o nome da sua rua"<<vet[x].address.bairro<<vet[x].address.rua<<endl;
cout<<"Numero da residencia, o complemento e o cep"<<vet[x].address.nro<<vet[x].address.comp<<vet[x].address.cep<<endl;
cout<<"Cidade, estado e pais"<<vet[x].address.cidade<<vet[x].address.estado<<vet[x].address.pais;

}
}

void Imprimir(dados vet[], int &x)
{
clrscr();
cout<<"Nome"<<vet[x].nome<<endl;
cout<<"Email"<<vet[x].email<<endl;
cout<<"Telefone"<<vet[x].tel.ddd<<vet[x].tel.num<<endl;
}

void Pnome(dados vet[], int x)
{
clrscr();
string nome;
int cont=0;

cout<<"Escreva o nome"<<endl;
cin>>nome;
for(x=0; x<4; x++)
{
if(vet[x].nome==nome)
{
Imprimir(vet, x);
cont++;
}
}
if(cont<1) cout<<"Nenhum resultado foi encontrado"<<endl;

}

void Pmes(dados vet[], int x)
{
clrscr();
int mes, cont=0;

cout<<"Escreva o mes de nascimento"<<endl;
cin>>mes;
for(x=0; x<4; x++)
{
if(vet[x].nasc.mes==mes)
{
Imprimir(vet, x);
cont++;
}
}
if(cont<1) cout<<"Nenhum resultado foi encontrado"<<endl;
}

void Pdia(dados vet[], int x)
{
clrscr();
int dia, mes, cont=0;

cout<<"Escreva o dia e o mes de nascimento"<<endl;
cin>>dia>>mes;
for(x=0; x<4; x++)
{
if(vet[x].nasc.dia==dia)
{
if(vet[x].nasc.mes==mes)
{
Imprimir(vet, x);
cont++;
}
}
}
if(cont<1) cout<<"Nenhum resultado foi encontrado"<<endl;
}

void Excluir(dados vet[], int x)
{
clrscr();
int id;
cout<<"Escreva o numero de id da pessoa a ser excluida"<<endl;
cin>>id;
while(id>0)
{
for(int z=id; z<x; z++)
{
vet[x]=vet[x+1];
}
}
x--;
}
bool Menu(dados vet[], int &x)
{
clrscr();
int choise;

cout<<"Pesquisar nome: 1"<<endl;
cout<<"Pesquisar mes de nascimento: 2"<<endl;
cout<<"Pesquisar dia e mes de nascimento: 3"<<endl;
cout<<"Inserir dados de uma pessoa: 4"<<endl;
cout<<"Excluir dados de uma pessoa: 5"<<endl;
cout<<"Imprimir dados de uma pessoa: 6"<<endl;
cout<<"Imprimir Todos os dados: 7"<<endl;
cout<<"Finalizar: 8"<<endl;
cin>> choise;
switch (choise)
{
case 1: Pnome(vet, x);
break;
case 2: Pmes(vet, x);
break;
case 3: Pdia(vet, x);
break;
case 4: Adicionar(vet, x);
break;
case 5: Excluir(vet, x);
break;
case 6: Imprimir(vet, x);
break;
case 7: Imprimir2(vet, x);
break;
case 8:
return false;
break;

}
return true;
}
int main()
{
clrscr();
dados vet[TAM];
int x = 0;
for (; Menu(vet, x); );
return 0;

}
[/codebox]

Link para o comentário
Compartilhar em outros sites

0 respostass a esta questão

Posts Recomendados

Até agora não há respostas para essa pergunta

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,3k
    • Posts
      652,3k
×
×
  • Criar Novo...