Jump to content
Fórum Script Brasil
  • 0

Problema com passagem de parametros.


Rick00

Question

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 to comment
Share on other sites

0 answers to this question

Recommended Posts

There have been no answers to this question yet

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Answer this question...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.



  • Forum Statistics

    • Total Topics
      152.2k
    • Total Posts
      652.1k
×
×
  • Create New...