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

 

 


Tema destacado: Recopilación Tutoriales y Manuales Hacking, Seguridad, Privacidad, Hardware, etc


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación C/C++ (Moderadores: Eternal Idol, Littlehorse, K-YreX)
| | |-+  Ayuda!
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: Ayuda!  (Leído 1,502 veces)
AdrGea

Desconectado Desconectado

Mensajes: 2


Ver Perfil
Ayuda!
« en: 1 Julio 2011, 21:44 pm »

Necesito ayuda con este codigo, el switch no me funciona, el programa compila y corre pero al ingresar la opcion nohace nada, alguien me ayuda por favor?

#include<iostream>
#include<conio.h>
#include<stdio.h>
#include<string.h>
#include<ctype.h>

using namespace std;

class persona {
   
        int grad;
        char nombre;
        char fecha;

     public:
       persona(void);
         persona(char n=0, char fn=0, int g=0): nombre(n), fecha(fn), grad(g){};
             
          void ingresar(char n, char fn, int grad);
          ~persona();
          void visualizar();
             
} ;

//******************************************************************************
 void persona::ingresar(char n, char fn, int g){

      cout<<"Ingresar los datos de la persona: "<<endl;
      cout<<"Ingresar nombre: "<<endl;
      cin>>n;
      nombre=n;
      cout<<"Ingresar fecha de nacimiento: "<<endl;
      cin>>fn;
      fecha=fn;
      cout<<"Ingresar año de graduación: "<<endl;
      cin>>g;
      grad=g;
 
}

//****************************************************************************
void persona::visualizar(){

          cout<<"Datos de la persona: "<<endl;
          cout<<"Nombre: "<<nombre<<endl;
          cout<<"Fecha de nacimiento: "<<fecha<<endl;
          cout<<"Año de graduación: "<<grad<<endl;


}

//****************************************************************************
int main(){  // declaracion del cuerpo principal del programa
class persona *ptrpersona;
char opc; // declaracion de variable

do{
// condicion para el menu se repita hasta que se ingrese la opcion salir
                system("CLS"); //Limpia la pantalla
            cout<<"                MENU  "<<endl;
                cout<<" 1.- Ingresar una persona."<<endl;
            cout<<" 2.- Visualizar la persona."<<endl;
                cout<<" 3.- Salir."<<endl;
            cin>>opc;  // lee la variable
               
           
      switch(opc){
         case'1':system("CLS");
                void persona::ingresar(char n, char fn, int g);
            break;
         case'2':system("CLS");    //se muestra la funcion en pantalla segun la opcion ingresada
            void persona::visualizar();
            
            break;
         case'3':system("CLS");
            
            exit(1);
         default: cout<<"opcion no valida"<<endl;
            system("pause");
            break;
            }
 }while(opc!='3');  // condicion para el menu se repita hasta que se ingrese la opcion salir

 }


En línea

Edu


Desconectado Desconectado

Mensajes: 1.082


Ex XXX-ZERO-XXX


Ver Perfil
Re: Ayuda!
« Respuesta #1 en: 1 Julio 2011, 21:53 pm »

Dije cualquier cosa por eso edito xD Intenta ir depurando para ir viendo hasta donde llega y como llega


« Última modificación: 1 Julio 2011, 21:55 pm por XXX-ZERO-XXX » En línea

Dark Invader

Desconectado Desconectado

Mensajes: 111


Lucha hasta el final para conseguir tu objetivo.


Ver Perfil
Re: Ayuda!
« Respuesta #2 en: 1 Julio 2011, 22:05 pm »

Te falta la libreria cstdlib para llamar al sistema,además la variable opc es de tipo char,y en el switch la estas metiendo en los case como numeros,no obstante creo que el fallo es de las clases,aunque no lo encuentro:

Código
  1. #include<iostream>
  2. #include<conio.h>
  3. #include<stdio.h>
  4. #include<string.h>
  5. #include<ctype.h>
  6. #include<cstdlib>
  7.  
  8. using namespace std;
  9.  
  10. class persona {
  11.  
  12.        int grad;
  13.        char nombre;
  14.        char fecha;
  15.  
  16.     public:
  17.       persona(void);
  18.         persona(char n=0, char fn=0, int g=0): nombre(n), fecha(fn), grad(g){};
  19.  
  20.          void ingresar(char n, char fn, int grad);
  21.          ~persona();
  22.          void visualizar();
  23.  
  24. } ;
  25.  
  26. //******************************************************************************
  27. void persona::ingresar(char n, char fn, int g){
  28.  
  29.      cout<<"Ingresar los datos de la persona: "<<endl;
  30.      cout<<"Ingresar nombre: "<<endl;
  31.      cin>>n;
  32.      nombre=n;
  33.      cout<<"Ingresar fecha de nacimiento: "<<endl;
  34.      cin>>fn;
  35.      fecha=fn;
  36.      cout<<"Ingresar año de graduación: "<<endl;
  37.      cin>>g;
  38.      grad=g;
  39.  
  40. }
  41.  
  42. //****************************************************************************
  43. void persona::visualizar(){
  44.  
  45.          cout<<"Datos de la persona: "<<endl;
  46.          cout<<"Nombre: "<<nombre<<endl;
  47.          cout<<"Fecha de nacimiento: "<<fecha<<endl;
  48.          cout<<"Año de graduación: "<<grad<<endl;
  49.  
  50.  
  51. }
  52.  
  53. //****************************************************************************
  54. int main(){  // declaracion del cuerpo principal del programa
  55. class persona *ptrpersona;
  56. char opc; // declaracion de variable
  57.  
  58. do{
  59. // condicion para el menu se repita hasta que se ingrese la opcion salir
  60.                system("CLS"); //Limpia la pantalla
  61.            cout<<"                MENU  "<<endl;
  62.                cout<<"a.- Ingresar una persona."<<endl;
  63.            cout<<" b.- Visualizar la persona."<<endl;
  64.                cout<<" c.- Salir."<<endl;
  65.            cin>>opc;  // lee la variable
  66.  
  67.  
  68.      switch(opc){
  69.         case'a':system("CLS");
  70.                void persona::ingresar(char n, char fn, int g);
  71.            break;
  72.         case'b':system("CLS");    //se muestra la funcion en pantalla segun la opcion ingresada
  73.            void persona::visualizar();
  74.  
  75.            break;
  76.         case'c':system("CLS");
  77.  
  78.            exit(1);
  79.         default: cout<<"opcion no valida"<<endl;
  80.            system("pause");
  81.            break;
  82.            }
  83. }while(opc!='3');  // condicion para el menu se repita hasta que se ingrese la opcion salir
  84.  
  85. }
En línea

AdrGea

Desconectado Desconectado

Mensajes: 2


Ver Perfil
Re: Ayuda!
« Respuesta #3 en: 1 Julio 2011, 22:09 pm »

Gracias por responder, ps igual hace lo mismo, inclusive lo habia cambiado a int solo q este es el codigo de antes, y tmb creo q el problema esta en las clases pero no me sale ningun error y al parecer debria correr así...
En línea

Dark Invader

Desconectado Desconectado

Mensajes: 111


Lucha hasta el final para conseguir tu objetivo.


Ver Perfil
Re: Ayuda!
« Respuesta #4 en: 1 Julio 2011, 23:08 pm »

Revisa las clases:

 invalid use of qualified-name 'persona::ingresar'
 invalid use of qualified-name 'persona::visualizar'

Ahi esta el fallo  :silbar:

Salu2
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