Ver Mensaje Individual
  #7 (permalink)  
Antiguo 22/02/2011, 16:31
juand210
 
Fecha de Ingreso: diciembre-2007
Mensajes: 31
Antigüedad: 16 años, 4 meses
Puntos: 0
Respuesta: Varios programas en 1 solo con Menú

bueno amigo mira, esto es lo que hice apra prbarlo, pero cuando lo ejecuto me pide que digite el numero, como solo tengo el 1, pues digito 1 y doy ENTER,

y vuelve a preguntarme que programa quiero y asi mil veces, que estoy haciendo mal?


Gracias


Código C++:
Ver original
  1. #include<iostream>
  2. using namespace std;
  3.  
  4. //============================================== Ejercicio 1 =================================================================
  5. int programa1()
  6. {
  7.    
  8.     char time[5], time2[5], *clock, *clock2;
  9.     int hh,mm;
  10.     cout << "Introdice una Hora en el formato llamado Militar. \n\n de notacion de 24 horas 00:00 al 24:59 \n\n\n";
  11.     cout << "Escribe la Hora: ";
  12.     cin >> time; //Guarda el contenido en time
  13.     strcpy (time2, time); // Copia el contenido de time
  14.     clock = strtok (time,":"); //Separa la cadena en los elementos antes de :
  15.     clock2 = strtok (NULL,":"); //Separa la cadena en los elementos despues de :
  16.     hh=atoi(clock); //Realiza un cambio de char a int
  17.     mm=atoi(clock2); //Igualmente realiza un cambio de char a int
  18.    
  19.     if (strlen(time2)!= 5 && clock==NULL || clock2==NULL)
  20.     {
  21.        cout << "\n\nOoOopsss..... ERROR\n\n";
  22.        cout << "Intentalo de nuevo, esta vez usa el siguiente formato HH:MM\n\n";
  23.        cout << "Ammm.... has escuchado de la Horamilitar?, más o menos asi:\n\n";
  24.        cout << "\n\n";
  25.        cout << "Hora 22:00 y la respuesta en notacion de 12 horas h:m \n\n";
  26.        cout << "Las 22:00 es lo mismo que 10:00 \n\n";
  27.        
  28.        
  29.     }
  30.     else
  31.         if (hh>=0 && hh<=24 && mm>=0 && mm<60)
  32.            if (hh<=12)
  33.            {
  34.               hh=hh;
  35.               cout << "\n\nLas "<<time2<<" es lo mismo que " <<hh<< ":" <<clock2<<"\n\n" ;
  36.            }
  37.            else
  38.            {
  39.                hh-=12;
  40.                hh=hh;
  41.                cout << "\n\nLas "<<time2<<" es lo mismo que " <<hh<<":"<<clock2<<"\n\n" ;
  42.            }
  43.         else
  44.         {
  45.             printf("OoOoPsss... Creo que has introducido mal la hora.\n");        
  46.         }  
  47.    
  48.     system("pause");
  49.     return 0;
  50. }
  51. //============================================== FIN Ejercicio 1 ===========================================================
  52.  
  53. int main()
  54. {
  55. char opcion;
  56.  
  57. //El menu
  58. cout<<"ÍÍÍÍÍÍÍÍÍÍÍÍÍÍ PROGRAMAS ÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ ";
  59. cout<<"\n\n Ejercicio 1\t\t"; cout<<"Ejercicio 2";
  60. cout<<"\n\n Ejercicio 3\t\t"; cout<<"Ejercicio 4";
  61. cout<<"\n\n Ejercicio 5\t\t"; cout<<"Ejercicio 6";
  62. cout<<"\n\n Ejercicio 7\t\t"; cout<<"Ejercicio 8";
  63. cout<<"\n\n Ejercicio 9\t\t"; cout<<"Ejercicio 10";
  64. cout<<"\n\n Ejercicio 11\t\t"; cout<<"Ejercicio 12";
  65.  
  66.  
  67. do
  68. {
  69.   cout<<"\n\n Dijita el numero del ejercicio que quiere ver: ";
  70.   cin>>opcion;//se elige la opcion segun menu
  71.  
  72.   switch(opcion)// donde se le da los distintos casos a la variable opcion
  73.   {
  74.  
  75.    case 1:
  76.    
  77.    int programa1();
  78.  
  79.    break;
  80.  
  81.  
  82.  
  83.   }
  84. }
  85. while(opcion!='o');//cuando la letra sea o, sale del programa
  86. }

en esta fracción:

Código C++:
Ver original
  1. case 1:
  2.    
  3.    int programa1();
  4.  
  5.    break;

si le quito el int me sale error :S