Ir ao conteúdo
  • Cadastre-se

Gabriel Lemos Alves

Membro Pleno
  • Posts

    23
  • Cadastrado em

  • Última visita

Tudo que Gabriel Lemos Alves postou

  1. Preciso fazer um trabalho sobre esse problema de localização, porém não tenho nenhuma base sobre o assunto, alguém ai pode dar uma ajuda ? Achei isso na net mas como não entendo nada de grafos, então não consigo fazer. (Minha principal duvida e saber a distancia entre os vértices e fazer os agrupamentos) Heurística de Teitz e Bart Enquanto (solução-inicial melhora) faça Para k=1,...,p faça Troque vértice semente por não-semente do agrupamento Ck ; Calcule o valor v correspondente à melhor realocação; Se v é melhor que solução-inicial então Atualize o vértice semente do agrupamento Ck ; Faça solução-inicial ←v; Fim_Se Fim_Para Fim_Enquanto http://www.scielo.br/pdf/ /prod/v16n2/10.pdf
  2. Queria mostrar igual essa imagem, porém xadrez e damas so poderiam aparecer 2x tambem ja que no caso so tem 2 registros na tabela atividades. Achou q vou fazer o select da tabela medicacao e atividade separado, valeu pela ajuda
  3. Ah, entendi então só daria certo da forma que pensei com select ?
  4. Nao entendi muito o INNER JOIN, mas na meu pensamento nao deveria aparecer o nome do remédio 2x pois só tenho 3 cadastrados e ta mostrando ele 6x ali Queria mostrar todos os dados do paciente, do seu respectivo cuidador, dos medicamentos que ele tomou e das atividades que ele fez. To tentando com JOIN se eu nao conseguir vou fazer os SELECTS com WHERE mesmo
  5. @Fn1X Ele ta funcionando sim, porém está mostrando repetido
  6. @Fn1X O IF ali seria pra saber se o ID que a pessoa digitou existe no banco, eu consegui fazer com while aqui, so que tive que criar mais uma tabela e agora me perdi tudo kkk, ficou assim o código o problema é que tenho 1 registro no prontuario e 2 no receituario, ai ele mostra o registro do prontuario 2 vezes, acho q o inner join ta errado #ifndef BUSCAR_H_INCLUDED #define BUSCAR_H_INCLUDED #include <stdio.h> #include <stdlib.h> #include <mysql.h> void buscarID(); void buscarNome(); void buscarCPF(); void buscar(){ int opbuscar; do{ system("cls"); cout << "\t\t\t\t\t-----------------------------------" << endl; cout << "\t\t\t\t\t| BUSCAR |" << endl; cout << "\t\t\t\t\t|---------------------------------|" << endl; cout << "\t\t\t\t\t| 1 - ID |" << endl; cout << "\t\t\t\t\t| 2 - NOME |" << endl; cout << "\t\t\t\t\t| 3 - CPF |" << endl; cout << "\t\t\t\t\t| 0 - VOLTAR |" << endl; cout << "\t\t\t\t\t-----------------------------------" << endl; cout << "\t\t\t\t\tOPÇÃO: "; cin >> opbuscar; switch(opbuscar){ case 1: buscarID(); break; case 2: buscarNome(); break; case 3: buscarCPF(); break; case 0: return; break; default: cout << "OPÇÃO INVALIDA - PROGRAMA ENCERRADO" << endl; exit(0); } }while(opbuscar != 0); } void buscarID(){ system("cls"); int id; int entrar; int aux = 0; cout << "ID: "; cin >> id; MYSQL conexao; MYSQL_RES* resultado; MYSQL_ROW linha; char query[1024]; mysql_init(&conexao); if(mysql_real_connect(&conexao, "localhost", "root", "root", "asilo", 0, NULL, 0)){ resultado = (mysql_store_result(&conexao)); sprintf(query,"SELECT * FROM PACIENTE P JOIN CUIDADOR C ON C.ID_CUIDADOR = P.ID_CUIDADOR JOIN RECEITUARIO R ON R.ID_PACIENTE = P.ID_PACIENTE JOIN MEDICACAO M ON R.ID_PACIENTE = M.ID_PACIENTE JOIN PRONTUARIO X ON X.ID_PACIENTE = P.ID_PACIENTE JOIN ATIVIDADE A ON A.ID_PACIENTE = X.ID_PACIENTE WHERE P.ID_PACIENTE = '%d'",id); mysql_query(&conexao, query); resultado = mysql_store_result(&conexao); entrar = mysql_num_rows(resultado); if(entrar >= 1){ system("cls"); while((linha = mysql_fetch_row(resultado))!= NULL){ if(aux < 1){ cout << "\t\t\t\t\t-----------------------------------" << endl; cout << "\t\t\t\t\t| DADOS PACIENTE |" << endl; cout << "\t\t\t\t\t-----------------------------------" << endl; cout << "\t\t\t\t\tID: " << linha[0] << endl; cout << "\t\t\t\t\tNome: " << linha[1] << endl; cout << "\t\t\t\t\tCPF: " << linha[2] << endl; cout << "\t\t\t\t\tNascimento: " << linha[3] << endl; cout << "\t\t\t\t\tSexo: " << linha[4] << endl; cout << "\t\t\t\t\tResponsavel: " << linha[5] << endl; cout << "\t\t\t\t\tTelefone Responsavel: " << linha[6] << endl; cout << "\t\t\t\t\tData de Entrada: " << linha[7] << endl; cout << "\t\t\t\t\tQuarto: " << linha[8] << endl << endl; cout << "\t\t\t\t\t-----------------------------------" << endl; cout << "\t\t\t\t\t| DADOS CUIDADOR |" << endl; cout << "\t\t\t\t\t-----------------------------------" << endl; cout << "\t\t\t\t\tID: " << linha[10] << endl; cout << "\t\t\t\t\tNome: " << linha[11] << endl << endl; cout << "\t\t\t\t\t-----------------------------------" << endl; cout << "\t\t\t\t\t| PRONTUÁRIO |" << endl; cout << "\t\t\t\t\t-----------------------------------" << endl; cout << "\t\t\t\t\tAtividade: " << linha[21] << endl; cout << "\t\t\t\t\tData: " << linha[22] << endl << endl; cout << "\t\t\t\t\t-----------------------------------" << endl; cout << "\t\t\t\t\t| RECEITUÁRIO |" << endl; cout << "\t\t\t\t\t-----------------------------------" << endl; cout << "\t\t\t\t\tRemédio: " << linha[15] << endl; cout << "\t\t\t\t\tData: " << linha[16] << endl << endl; }else{ cout << "\t\t\t\t\tRemédio: " << linha[15] << endl; cout << "\t\t\t\t\tData: " << linha[16] << endl << endl; } aux ++; } }else{ system("cls"); cout << "\t\t\t\t\t-----------------------------------" << endl; cout << "\t\t\t\t\t| NAO ENCONTRADO |" << endl; cout << "\t\t\t\t\t-----------------------------------" << endl; } }else{ printf("Falha de conexao\n"); printf("Erro %d : %s\n", mysql_errno(&conexao), mysql_error(&conexao)); } cout << endl; system("pause"); }
  7. To com um problema no meu código, tenho 2 medicamentos na tabela MEDICAMENTOS no MYSQL porém no codigo só to conseguindo printar os 2 primeiros No caso eu tenho Aspirina e Xarope, porém so mostra a Aspirina #ifndef BUSCAR_H_INCLUDED #define BUSCAR_H_INCLUDED #include <stdio.h> #include <stdlib.h> #include <mysql.h> void buscarID(); void buscarNome(); void buscarCPF(); void buscar(){ int opbuscar; do{ system("cls"); cout << "\t\t\t\t\t-----------------------------------" << endl; cout << "\t\t\t\t\t| BUSCAR |" << endl; cout << "\t\t\t\t\t|---------------------------------|" << endl; cout << "\t\t\t\t\t| 1 - ID |" << endl; cout << "\t\t\t\t\t| 2 - NOME |" << endl; cout << "\t\t\t\t\t| 3 - CPF |" << endl; cout << "\t\t\t\t\t| 0 - VOLTAR |" << endl; cout << "\t\t\t\t\t-----------------------------------" << endl; cout << "\t\t\t\t\tOPÇÃO: "; cin >> opbuscar; switch(opbuscar){ case 1: buscarID(); break; case 2: buscarNome(); break; case 3: buscarCPF(); break; case 0: return; break; default: cout << "OPÇÃO INVALIDA - PROGRAMA ENCERRADO" << endl; exit(0); } }while(opbuscar != 0); } void buscarID(){ system("cls"); int id; int entrar; int fields; cout << "ID: "; cin >> id; MYSQL conexao; MYSQL_RES* resultado; MYSQL_ROW linha; char query[1024]; mysql_init(&conexao); if(mysql_real_connect(&conexao, "localhost", "root", "root", "asilo", 0, NULL, 0)){ resultado = (mysql_store_result(&conexao)); sprintf(query,"SELECT * FROM PACIENTE P JOIN CUIDADOR C ON C.ID_CUIDADOR = P.ID_CUIDADOR JOIN RECEITUARIO R ON R.ID_PACIENTE = P.ID_PACIENTE JOIN MEDICACAO M ON M.ID_PACIENTE = R.ID_PACIENTE WHERE P.ID_PACIENTE = '%d'",id); mysql_query(&conexao, query); resultado = mysql_store_result(&conexao); entrar = mysql_num_rows(resultado); if(entrar >= 1){ linha = mysql_fetch_row(resultado); fields = mysql_num_fields(resultado); system("cls"); cout << fields; cout << "\t\t\t\t\t-----------------------------------" << endl; cout << "\t\t\t\t\t| DADOS PACIENTE |" << endl; cout << "\t\t\t\t\t-----------------------------------" << endl; cout << "\t\t\t\t\tID: " << linha[0] << endl; cout << "\t\t\t\t\tNome: " << linha[1] << endl; cout << "\t\t\t\t\tCPF: " << linha[2] << endl; cout << "\t\t\t\t\tNascimento: " << linha[3] << endl; cout << "\t\t\t\t\tSexo: " << linha[4] << endl; cout << "\t\t\t\t\tResponsavel: " << linha[5] << endl; cout << "\t\t\t\t\tTelefone Responsavel: " << linha[6] << endl; cout << "\t\t\t\t\tData de Entrada: " << linha[7] << endl; cout << "\t\t\t\t\tQuarto: " << linha[8] << endl << endl; cout << "\t\t\t\t\t-----------------------------------" << endl; cout << "\t\t\t\t\t| DADOS CUIDADOR |" << endl; cout << "\t\t\t\t\t-----------------------------------" << endl; cout << "\t\t\t\t\tID: " << linha[10] << endl; cout << "\t\t\t\t\tNome: " << linha[11] << endl << endl; cout << "\t\t\t\t\t-----------------------------------" << endl; cout << "\t\t\t\t\t| RECEITUARIO |" << endl; cout << "\t\t\t\t\t-----------------------------------" << endl; cout << "\t\t\t\t\tRemédio: " << linha[15] << endl; cout << "\t\t\t\t\tData: " << linha[16] << endl << endl; system("pause"); }else{ system("cls"); cout << "\t\t\t\t\t-----------------------------------" << endl; cout << "\t\t\t\t\t| NAO ENCONTRADO |" << endl; cout << "\t\t\t\t\t-----------------------------------" << endl; } }else{ printf("Falha de conexao\n"); printf("Erro %d : %s\n", mysql_errno(&conexao), mysql_error(&conexao)); } cout << endl; system("pause"); }
  8. Galera to com um problema no meu código, ta sempre dando Erro na inserção no banco, nao to conseguindo identificar o erro, se alguem conseguir ajudar ... to inserindo as datas no formato AAAA/MM/DD o tipo ja esta DATE no MYSQL WORKBENCH #include <mysql.h> #include <stdlib.h> #include <stdio.h> #include <conio.h> using namespace std; typedef struct cadastro PACIENTE; struct cadastro{ char nome[80] = {0}; char responsavel[80] = {0}; char tel_responsavel[11] = {0}; char cpf[12] = {0}; char entrada[11] = {0}; char nascimento[11] = {0}; char sexo[1] = {0}; }; void cadastrarPaciente(){ PACIENTE p; cout << "Nome: "; cin >> p.nome; cout << "CPF: "; cin >> p.cpf; cout << "Sexo (M/F): "; cin >> p.sexo; cout << "Data Nascimento: "; cin >> p.nascimento; cout << "Responsável: "; cin >> p.responsavel; cout << "Telefone Responsável: "; cin >> p.tel_responsavel; cout << "Data Entrada: "; cin >> p.entrada; /* cout << "Nome: " << p.nome; cout << "CPF: " << p.cpf; cout << "Data Nascimento: " << p.nascimento; cout << "Sexo (M/F): " << p.sexo; cout << "Responsável: " << p.responsavel; cout << "Telefone Responsável: " << p.tel_responsavel; cout << "Data Entrada: "<< p.entrada;*/ MYSQL conexao; MYSQL_RES* resultado; MYSQL_ROW linha; int res; char query[1024];// = "SELECT * FROM ASILO"; mysql_init(&conexao); if(mysql_real_connect(&conexao, "localhost", "root", "root", "asilo", 0, NULL, 0)){ sprintf(query,"INSERT INTO PACIENTE (NOME,CPF,NASCIMENTO,SEXO,RESPONSAVEL,TEL_RESPONSAVEL,ENTRADA) VALUES ('%s','%s','%s','%s','%s','%s','%s')",p.nome,p.cpf,p.nascimento,p.sexo,p.responsavel,p.tel_responsavel,p.entrada); res = mysql_query(&conexao,query); if(!res){ cout << "\nInserido com Sucesso" << endl; }else{ cout << "Erro na insercao" << endl; } } else{ printf("Falha de conexao\n"); printf("Erro %d : %s\n", mysql_errno(&conexao), mysql_error(&conexao)); } } adicionado 11 minutos depois Consegui resolver, aumentei o tam do vetor sexo para [2] e funcionou .....
  9. Então pessoal, preciso de ajuda em um código aqui, só consigo buscar o CEP se passa-lo por referência na linha : if(mysql_query(&conexao, "SELECT * FROM enderecos WHERE cep == '95200000' ")){ , mas preciso ler o cep que o usuário digitar e nao estou conseguindo fazer essa comparação para buscar dentro do banco. #ifndef VALIDACEP_H_INCLUDED #define VALIDACEP_H_INCLUDED #include <iostream> #include <stdio.h> #include <windows.h> #include <winsock2.h> #include <mysql.h> using namespace std; ValidaCEP(){ int i; int var; MYSQL conexao; MYSQL_RES* resultado; MYSQL_ROW linha; mysql_init(&conexao); cout << "\nDigite o CEP: "; cin >> var; //cout << var; if ( mysql_real_connect(&conexao, "localhost", "root", "root", "sistema", 0, NULL, 0) ) { if(mysql_query(&conexao, "SELECT * FROM enderecos WHERE cep == var ???")){ cout<<":"<<mysql_error(&conexao); }else{ resultado = mysql_store_result(&conexao); linha = mysql_fetch_row(resultado); cout << "\n"; for (i = 1; i <= 6; i++){ cout<< linha[i] <<endl; } } printf("\nConexao ao banco realizada com sucesso!\n"); } else { printf("Falha de conexao\n"); printf("Erro %d : %s\n", mysql_errno(&conexao), mysql_error(&conexao)); } system("PAUSE"); return(0); } #endif // VALIDACEP_H_INCLUDED
  10. #include <iostream> #include <conio.h> #include <stdlib.h> #include <stdio.h> #include <string.h> using namespace std; int main() { char cpf[11];//={'X','X','X','X','X','X','X','X','X','X','X'}; int i,soma=0,mult=0,cpf1,cpf2,dig1,dig2,n1,n2; cout << "Digite o CPF: "; cin >> cpf; //for(i = 0; i < 11; i++) { // cpf[i] = getche(); //} soma=0; for(i = 0; i < 9; i++) { n1 = 0; n1 = cpf[i] - 48; soma += n1 * (10-i); } cpf1 = soma%11; if(cpf1 < 2) { dig1 = 0; }else { dig1 = 11 - cpf1; } soma=0; for(i = 0; i < 10; i++) { n2 = 0; n2 = cpf[i] - 48; soma += n2 * (11-i); } cpf2 = soma%11; if(cpf2 < 2) { dig2 = 0; }else{ dig2 = 11 - cpf2; } if(cpf[9] == dig1 && cpf[10] == dig2) { cout << "\nVALIDO"; cout << "\n DIG1 "; cout << dig1 << endl; cout << "\n DIG2 "; cout << dig2 << endl; cout << "\n CPF 9 "; cout << cpf[9]; cout << "\n CPF 10 "; cout << cpf[10]; }else{ cout << "\nINVALIDO"; cout << "\n DIG1 "; cout << dig1 << endl; cout << "\n DIG2 "; cout << dig2 << endl; cout << "\n CPF 9 "; cout << cpf[9]; cout << "\n CPF 10 "; cout << cpf[10]; } return 0; } Fiz esse código para validar CPF porém quando chega no ultimo IF ele não entra mesmo mostrando os valores e provando que são idênticos ....
  11. Dentro do laço, resultado é um acumulador que recebe 0(pois voce declarou resultado=0)+7(numero digitado)=7(valor de resultado) na primiera vez, depois resultado recebe ele mesmo + numero-1 (7=7-1), ou seja resultado recebe 7+6 e assim vai até a condição ser falsa. A variável numero é sua variavel de controle e está sendo decrementada , ou seja, vai do 7( numero que o usuario digitou até 0) quando chega no 0 sai do laço pois a condição é falsa , no final imprime o resultado acumulado dentro do laço.
  12. Então , preciso ler e mostrar o telefone cadastrado por máscara. Ex: (DDD) XXXX-XXXX. Porém não achei nenhum exemplo em c++ , somente em java. E o email também deve ser válido, ou seja, deve conter um "@" e um "." (ponto final) após o "@". #include <iostream> #include <stdlib.h> #include <stdio.h> #include <string.h> using namespace std; static int id = 0; class pessoa { private: int idPessoa, alt_codigo, cod_busca; char nome[30], email[50], telefone[10], rg[11], nome_busca[30], alt_nome[30]; char novo_nome[30], novo_email[50], novo_telefone[10], novo_rg[11]; public: void cadastrar(); void listar(); void alterar(int y); void busca(int y); }; pessoa **p; int getId() { id++; return id; } void pessoa :: cadastrar() { idPessoa = getId(); cout << "Digite o Nome: "; cin >> nome; cout << "Digite o Email: "; cin >> email; cout << "Digite o Telefone (com DDD): "; cin >> telefone; cout << "Digite o RG: "; cin >> rg; }; void pessoa :: listar() { cout << "Codigo: " << idPessoa; cout << " Nome: " << nome; cout << " Email: " << email; cout << " Telefone: " << telefone; cout << " RG: " << rg << endl << endl; }; void pessoa :: alterar(int y) { int achou=0; int x; int busca_alterar; int alt_cad; cout << "1- Pesquisar por Nome\n2- Pesquisar por Codigo\nDigite a opcao desejada: "; cin >> busca_alterar; if(busca_alterar==1){ system("cls"); cout << "Digite o Nome do Cliente: "; cin >> alt_nome; for ( int i=0; i<y; i++ ){ if(strcmp(p[i]->nome,alt_nome)==0){ achou=1; x=i; break; } }if (achou==1){ cout << "\nCodigo: " << p[x]->idPessoa; cout << " Nome: " << p[x]->nome; cout << " Email: " << p[x]->email; cout << " Telefone: " << p[x]->telefone; cout << " RG: " << p[x]->rg << endl << endl; cout << "\n1- Alterar Nome\n2- Alterar Email\n3- Alterar Telefone\n4- Alterar RG\nDigite a opcao desejada: "; cin >> alt_cad; system("cls"); if(alt_cad==1){ cout << "Digite o novo Nome: "; cin >> novo_nome; strcpy(p[x]->nome,novo_nome); } if(alt_cad==2){ cout << "Digite o novo Email: "; cin >> novo_email; strcpy(p[x]->email,novo_email); } if(alt_cad==3){ cout << "Digite o novo Telefone:"; cin >> novo_telefone; strcpy(p[x]->telefone,novo_telefone); } if(alt_cad==4){ cout << "Digite o novo Rg: "; cin >> novo_rg; strcpy(p[x]->rg,novo_rg); } system("cls"); }else{ system("cls"); system("color 74"); cout << "O Nome Digitado Nao Existe !!!" << endl; system("pause"); system("cls"); system("color 07"); } } if(busca_alterar==2){ system("cls"); cout << "Digite o Codigo do Cliente: "; cin >> alt_codigo; for ( int i=0; i<y; i++ ){ if(p[i]->idPessoa==alt_codigo){ achou=1; x=i; break; } }if (achou==1){ cout << "\nCodigo: " << p[x]->idPessoa; cout << " Nome: " << p[x]->nome; cout << " Email: " << p[x]->email; cout << " Telefone: " << p[x]->telefone; cout << " RG: " << p[x]->rg << endl << endl; cout << "\n1- Alterar Nome\n2- Alterar Email\n3- Alterar Telefone\n4- Alterar RG\nDigite a opcao desejada: "; cin >> alt_cad; system("cls"); if(alt_cad==1){ cout << "Digite o novo Nome: "; cin >> novo_nome; strcpy(p[x]->nome,novo_nome); } if(alt_cad==2){ cout << "Digite o novo Email: "; cin >> novo_email; strcpy(p[x]->email,novo_email); } if(alt_cad==3){ cout << "Digite o novo Telefone:"; cin >> novo_telefone; strcpy(p[x]->telefone,novo_telefone); } if(alt_cad==4){ cout << "Digite o novo Rg: "; cin >> novo_rg; strcpy(p[x]->rg,novo_rg); } system("cls"); }else{ system("cls"); system("color 74"); cout << "O Codigo Digitado Nao Existe !!!" << endl; system("pause"); system("cls"); system("color 07"); } } }; void pessoa :: busca(int y){ int achou=0; int x; int tipo_busca; cout << "1- Busca por Codigo\n2- Busca por nome\nDigite a opcao desejada: "; cin >> tipo_busca; if(tipo_busca==1){ system("cls"); cout << "Digite o Codigo Que Sera Buscado: "; cin >> cod_busca; for ( int i=0; i<y; i++ ){ if(p[i]->idPessoa==cod_busca){ achou=1; x=i; break; } }if (achou==1){ system("cls"); cout << "Codigo: " << p[x]->idPessoa; cout << " Nome: " << p[x]->nome; cout << " Email: " << p[x]->email; cout << " Telefone: " << p[x]->telefone; cout << " RG: " << p[x]->rg << endl << endl; }else { system("cls"); system("color 7D"); cout << "O Codigo Digitado Nao Existe !!!" << endl; system("pause"); system("cls"); system("color 07"); } } if(tipo_busca==2){ system("cls"); cout << "Digite o Nome Que Sera Buscado: "; cin >> nome_busca; for ( int i=0; i<y; i++ ){ if(strcmp(p[i]->nome,nome_busca)==0){ achou=1; x=i; break; } }if (achou==1){ system("cls"); cout << "Codigo: " << p[x]->idPessoa; cout << " Nome: " << p[x]->nome; cout << " Email: " << p[x]->email; cout << " Telefone: " << p[x]->telefone; cout << " RG: " << p[x]->rg << endl << endl; }else { system("cls"); system("color 7D"); cout << "O Nome Digitado Nao Existe !!!" << endl; system("pause"); system("cls"); system("color 07"); } } }; int main() { int y = 0, opc, new_opc; p = (pessoa **)malloc(sizeof(pessoa**)); do { cout << "\n----- MENU -----" << endl; cout << "1- Cadastrar" << endl; cout << "2- Listar" << endl; cout << "3- Alterar" << endl; cout << "4- Buscar" << endl; cout << "5- Reiniciar " << endl; cout << "0- Sair" << endl; cout << "----------------" << endl; cout << "Informe a Opcao: "; cin >> opc; switch ( opc ) { case 1: system ( "cls" ); do { p[y] = new pessoa; p[y]->cadastrar(); new_opc = 0; cout << "Deseja continuar cadastrando? 1-Sim / 2-Nao " << endl; cin >> new_opc; y++; } while ( new_opc == 1 ); system ( "cls" ); break; case 2: system ( "cls" ); if (y>=1){ for ( int i = 0; i < y; i++ ) { p[i]->listar(); } }else{ cout << "Nao existem cadastros" <<endl ; break; } break; case 3: system ( "cls" ); if (y>=1){ p[0]->alterar(y); }else{ cout << "Nao existem cadastros" <<endl ; break; } break; case 4: if (y>=1){ system ( "cls" ); p[0]->busca(y); }else{ system ( "cls" ); cout << "Nao existem cadastros" <<endl ; break; } break; case 5: system ( "cls" ); y=0; break; default: exit ( 0 ); } } while ( opc != 0 ); delete[] p; return 0; }
  13. Valeu pela ajuda tambem freak no causo se eu for criar a função alterar, o exercicio pede pra fazer uma busca por nome e verificar se ele existe ou não . Se eu fizer um for pra percorrer o ponteiro e comparar usando a strcmp será que da certo ?
  14. Agora funcionou essa macumba kkk . Valeu pela ajuda
  15. Por exemplo: Codigo: 1 Nome: 1 Email: 1 Tel: 1 Rg:1 // Mostra tudo certo Codigo: 1 Nome: Joao Email: [email protected] Tel: 32323232 Rg: 1234567890 // Nao mostra o codigo adicionado 35 minutos depois Agora deu certo kkk aumentei pra [11] o vetor do RG e funcionou -.-'
  16. Se eu digitar coisas aleatorias ele funciona certinho, mas quando cadastro coisas validas da esse bug.
  17. Aqui continua não mostrando o código só pode ser aqui o problema então ...
  18. #include <iostream> #include <stdlib.h> #include <stdio.h> using namespace std; class pessoa{ private: char nome[30],email[50],telefone[10],rg[10],codigo[10]; public: void cadastrar(); void consultar(); }; pessoa **p;//*p[] void pessoa :: cadastrar(){ cout << "Digite o Codigo: "; cin >> codigo; cin.sync(); cout << "Digite o Nome: "; cin >> nome; cin.sync(); cout << "Digite o Email: "; cin >> email; cin.sync(); cout << "Digite o Telefone: "; cin >> telefone; cin.sync(); cout << "Digite o RG: "; cin >> rg; cin.sync(); }; void pessoa :: consultar(){ cout << "Codigo: " << codigo; cout << " Nome: " << nome; cout << " Email: " << email; cout << " Telefone: " << telefone; cout << " RG: " << rg << endl; }; int main(){ int y=0,opc,new_opc; p = (pessoa **)malloc(sizeof(pessoa**)); do{ cout << "\n----- MENU -----" << endl; cout << "1- Cadastrar" << endl; cout << "2- Consultar" << endl; cout << "3- Alterar" << endl; cout << "0- Sair" << endl; cout << "----------------" << endl; cout << "Informe a Opcao: "; cin >> opc; cin.sync(); switch (opc){ case 1: system("cls"); do{ p[y] = new pessoa; p[y]->cadastrar(); new_opc=0; cout << "Deseja continuar cadastrando? 1-Sim / 2-Nao " << endl; cin >> new_opc; cin.sync(); y++; }while(new_opc==1); system("cls"); break; case 2: system("cls"); for(int i=0;i<y;i++){ p[i]->consultar(); } break; default: exit(0); } }while(opc!=0); delete[] p; return 0; }
  19. Tentei as duas ajudas mas não deu certo, ele mostra todos os campos certinho menos o código ....
  20. Estou com um problema no meu código, quando eu cadastro várias pessoas ele não mostra alguns dados. Ex.: o campo código fica em branco, ou outro campo qualquer. #include <iostream> #include <stdlib.h> #include <stdio.h> using namespace std; class pessoa{ private: char nome[30],email[50],telefone[10],rg[10],codigo[10]; public: void cadastrar(int i); void consultar(int i); }; pessoa* p; void pessoa :: cadastrar(int i){ cout << "Digite o Codigo: "; cin >> p[i].codigo; cout << "Digite o Nome: "; cin >> p[i].nome; cout << "Digite o Email: "; cin >> p[i].email; cout << "Digite o Telefone: "; cin >> p[i].telefone; cout << "Digite o RG: "; cin >> p[i].rg; }; void pessoa :: consultar(int i){ cout << "Codigo: " << p[i].codigo; cout << " Nome: " << p[i].nome; cout << " Email: " << p[i].email; cout << " Telefone: " << p[i].telefone; cout << " RG: " << p[i].rg << endl; }; int main(){ int y=0,opc,new_opc; p = new pessoa[y]; do{ cout << "\n----- MENU -----" << endl; cout << "1- Cadastrar" << endl; cout << "2- Consultar" << endl; cout << "3- Alterar" << endl; cout << "0- Sair" << endl; cout << "----------------" << endl; cout << "Informe a Opcao: "; cin >> opc; switch (opc){ case 1: system("cls"); do{ p[y].cadastrar(y); new_opc=0; cout << "Deseja continuar cadastrando? 1-Sim / 2-Nao " << endl; cin >> new_opc; y++; }while(new_opc==1); system("cls"); break; case 2: system("cls"); for(int i=0;i<y;i++){ p[i].consultar(i); } break; default: exit(0); } }while(opc!=0); delete[] p; return 0; }
  21. Po valeu mesmo é que esse ai foi o primeiro exercício então não tinha muita base de como fazer kkkk. Valeu pela explicação agora entendi.
  22. Então galera, estou com um problema no meu código, ele está fazendo as instruções certas que são: Ler um numero qualquer de alunos e um numero qualquer de notas, a media e mostrar tudo em tela, porém na parte de imprimir tudo na tela ele atribui as ultimas notas que digitei a todos os alunos. Ex. de entrada: Aluno A ( Notas: 3,9,10) ; Aluno B (Notas: 5,6,7). Na hora de mostrar os dados ele mostra: Aluno A (Notas:5,6,7) Aluno B (Notas:5,6,7). Preciso também fazer as médias das notas ainda.É um exercício da faculdade se alguém conseguir ajudar . #include <iostream> #include <conio.h> using namespace std; class pessoa{ private: char nome[30]; float nota; public: void cadastrar_nome(); void consultar_nome(); void cadastrar_nota(); void consultar_nota(); }; pessoa p[1]; // CONSTRUTOR ----------------------------- void pessoa :: cadastrar_nome(){ cout<< "Digite o nome do Aluno: "; cin>> nome; }; void pessoa :: cadastrar_nota(){ cout<< "Digite a Nota: "; cin>> nota; }; void pessoa :: consultar_nome(){ cout<< "Nome: "<<nome <<endl; }; void pessoa :: consultar_nota(){ cout<< "Nota: "<<nota <<endl; }; int main() { int i,j,x,y; cout<< "Digite o numero de Alunos: "; cin>> x; cout<< "Digite o numero de Notas: "; cin>> y; for(i=0;i<x;i++){ p[ i ].cadastrar_nome(); for(j=0;j<y;j++){ p[j].cadastrar_nota(); } } for(i=0;i<x;i++){ p[ i ].consultar_nome(); for(j=0;j<y;j++){ p[j].consultar_nota(); } } }

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×
×
  • Criar novo...

Ebook grátis: Aprenda a ler resistores e capacitores!

EBOOK GRÁTIS!

CLIQUE AQUI E BAIXE AGORA MESMO!