elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado:


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación C/C++ (Moderadores: Eternal Idol, Littlehorse, K-YreX)
| | |-+  Problemas para consultar datos en una estructura
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: Problemas para consultar datos en una estructura  (Leído 912 veces)
PJ Yeah

Desconectado Desconectado

Mensajes: 10


Ver Perfil
Problemas para consultar datos en una estructura
« en: 11 Junio 2017, 02:32 am »

Tengo el siguiente programa que ingresa datos en una estructura pero al momento de querer consultar la información según el código que ingreso me muestra dicha información pero seguido del mensaje "Código no encontrado...!!!" que solo debería mostrarse cuando no encontrase dicho código. Gracias de antemano. La función donde tengo el error
 //Función para consultar por codigo
void consultacodigo(struct datos agenda[5])

Programa:
Código
  1. #include<stdio.h>
  2. #include<stdlib.h>
  3. #include<conio.h>
  4. #include<iostream.h>
  5.  
  6. struct datos{
  7. int codigo;
  8.   char nombre[30];
  9.   char ciudad[20];
  10. };
  11.  
  12. //Funcion que realiza el menu
  13. void menu(){
  14. gotoxy(35,2); cout<<"AGENDA TELEFONICA";
  15.   gotoxy(35,3); cout<<"*****************";
  16.   gotoxy(35,4); cout<<"1. Ingresar";
  17.   gotoxy(35,5); cout<<"2. Consultar";
  18. gotoxy(35,6); cout<<"3. Fin";
  19.   gotoxy(35,9); cout<<"Opci"<<(char)162<<"n [ ]";
  20. }
  21.  
  22. //Funcion para ingresar datos en la estructura
  23. void ingresar(struct datos agenda[5]){
  24.   int cr=90, j, codigo;
  25. system("cls");
  26.   cout<<"Ingreso de Datos en la Agenda";
  27.   for(int i=0;i<5;i++){
  28.   cout<<"\nIngreso #"<<(i+1)<<endl;
  29.      do{
  30.     cout<<"\nIngrese el C"<<char(162)<<"digo: "; cin>>codigo; cout<<endl;
  31.     for(j=0;j<5;j++){
  32.   if(codigo==agenda[j].codigo){
  33.     cout<<"No se aceptan codigos repetidos... "<<endl;
  34.     cr=codigo;
  35.         getch();
  36.      }
  37. }
  38.  
  39. }while(codigo==cr);
  40.   agenda[i].codigo=codigo;
  41. cout<<"Ingrese los Nombres: ";  gets(agenda[i].nombre); cout<<endl;
  42.   flushall();
  43.   cout<<"Ingrese la Ciudad: ";  gets(agenda[i].ciudad);  cout<<endl; cout<<endl;
  44.   flushall();
  45.      system("cls");
  46. }
  47. }
  48. //Funcion de menu de consultar
  49. void menu2(){
  50. gotoxy(35,2); cout<<"CONSULTAR";
  51.   gotoxy(35,3); cout<<"*********";
  52.   gotoxy(35,4); cout<<"1. General";
  53.   gotoxy(35,5); cout<<"2. Individual";
  54. gotoxy(35,6); cout<<"3. Regresar";
  55.   gotoxy(35,10); cout<<"Opci"<<(char)162<<"n [ ]";
  56. }
  57.  
  58. //Funcion para consultar los resultados
  59. void consultageneral(struct datos agenda[5]){
  60.   int l=0;
  61.   system ("cls");
  62.   cout<<"DATOS ALMACENADOS"<<endl;
  63. cout<<"Codigo \t Nombre \t Ciudad"<<endl;
  64.   cout<<"================================================================================"<<endl;
  65. if(agenda[l].codigo==NULL){
  66.   cout<<"Sin datos...!!!";
  67.      getch();
  68.   }
  69.  
  70.   else{
  71.   for (int i=0; i<5; i++){
  72.   cout<<endl<<agenda[i].codigo<<"\t"<<agenda[i].nombre<<"\t"<<agenda[i].ciudad;
  73. }
  74.      getch();
  75. }
  76.  
  77. }
  78.  
  79. //Funcion para consultar por codigo (En esta función esta el problema)
  80. void consultacodigo(struct datos agenda[5]){
  81.   system ("cls");
  82.   int l=0, codigo, j=0;
  83. system("cls");
  84.  
  85.   if(agenda[l].codigo==NULL){
  86.   cout<<"Sin datos...!!!";
  87.      getch();
  88.   }
  89.   else{
  90.   cout<<"Ingrese el codigo a consultar: "; cin>>codigo;
  91.      clrscr();
  92.      for(j=0;j<5;j++){
  93.   if(agenda[j].codigo==codigo){
  94.         cout<<endl<<"DATOS ALMACENADOS DE CODIGO "<<agenda[j].codigo<<endl;
  95.   cout<<"Codigo \t Nombre \t Ciudad"<<endl;
  96.   cout<<"================================================================================"<<endl;
  97. cout<<endl<<agenda[j].codigo<<"\t"<<agenda[j].nombre<<"\t"<<agenda[j].ciudad;
  98.       getch();
  99.         }}
  100.  
  101.   if (agenda[j].codigo!=codigo)
  102.         cout<<"C"<<char(163)<<"digo no encontrado...!!!";
  103.  
  104.  
  105.  
  106.   }
  107.   getch();
  108. }
  109.  
  110. //Funcion para consultas del struct
  111. void consultas(struct datos agenda[5]){
  112. char opc2;
  113.   bool salir=false;
  114.   do{
  115.      system("cls");
  116.      menu2();
  117.      gotoxy(43,10); opc2=getche();
  118.      switch(opc2){
  119.       case '1':
  120.         system("cls");
  121.                  consultageneral(agenda);
  122. break;
  123.         case '2':
  124.         system("cls");
  125.                  consultacodigo(agenda);
  126.         break;
  127.         case '3':
  128.                   salir=true;
  129.                   break;
  130.         default:
  131.         gotoxy(26,11); cout<<"AVISO: Opci"<<(char)162<<"n incorrecta...!!!";
  132.         break;
  133.      }
  134.  
  135.   }while(!salir);
  136. }
  137.  
  138.  
  139.  
  140.  
  141. main(){
  142. struct datos agenda[5]={NULL};
  143.   char opc;
  144.   bool salir=false;
  145.   do{
  146.   system("cls");
  147.      menu();
  148.      gotoxy(43,9); opc=getche();
  149.      switch(opc){
  150.       case '1':
  151.         ingresar(agenda);
  152.  
  153.           break;
  154.         case '2':
  155.         consultas(agenda);
  156.           break;
  157.         case '3':
  158.                   salir=true;
  159.          break;
  160.         default:
  161.         gotoxy(26,10); cout<<"AVISO: Opci"<<(char)162<<"n incorrecta...!!!";
  162.         break;
  163.      }
  164.  
  165.         system("pause>NUL");
  166. }while(!salir);
  167. }


En línea

Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines