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)
| | |-+  preguntas y respuestas c++
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: 1 [2] Ir Abajo Respuesta Imprimir
Autor Tema: preguntas y respuestas c++  (Leído 18,478 veces)
peterfly

Desconectado Desconectado

Mensajes: 94


Ver Perfil
Re: preguntas y respuestas c++
« Respuesta #10 en: 2 Agosto 2011, 17:39 pm »

lo que quero es:
1. el programa tiene que preguntarte (que pregunta quieres acer)
2. cuando aces la pregunta te sale automaticamente la respuesta
3. cuando a salido la respuesta te pregunta el programa (quieres continuar o no)
4. al responder (si quiero continuar) vuelve al principio

resultados actuales:
1. el programa te pregunta (que pregunta quieres acer)
2. cuando aces la pregunta te sale la respuesta automaticamente
3. cuando a salido la respuesta te pregunta si quieres continuar o no
4. AQUI ESTA EL PROBLEMA al responder (si quiero continuar) te sigue preguntando (si quieres continuar)


En línea

Dark Invader

Desconectado Desconectado

Mensajes: 111


Lucha hasta el final para conseguir tu objetivo.


Ver Perfil
Re: preguntas y respuestas c++
« Respuesta #11 en: 2 Agosto 2011, 18:25 pm »

Esto es lo que quieres,pero te falta añadir muchas preguntas y sus respuesta:

Código
  1. #include <cstdlib>
  2. #include <iostream>
  3. #include <stdio.h>
  4. #include <string.h>
  5.  
  6. int main (void)
  7. {
  8.  
  9.    int i;
  10.    char cadena1[40]="";
  11. char respuesta =0;
  12.    do{
  13.    printf("mis preguntas y respuestas \n \n");
  14.    printf("escriba la pregunta:  ");
  15.    gets(cadena1);
  16.  
  17.  
  18.    i= strcmp(cadena1,"que edad tengo?");
  19.    if (i==0){
  20.    printf("15\n\n");
  21.  
  22. }
  23.  
  24. std::cout << "desea continuar (s o n)?\n";
  25. std::cin >> respuesta;
  26. setbuf(stdin,NULL);
  27. switch (respuesta){
  28.       case 's':
  29.  
  30.   printf("ha salido con la respuesta s\n");
  31.  
  32.   break;
  33.       case 'n':
  34.  
  35.   printf("ha salido con la respuesta n");
  36.            return false;
  37. break;
  38.       default:
  39.  
  40.   printf("ha salido sin la letra n o s");
  41.               return false;
  42.   break;
  43.  
  44. }
  45.               }while ((respuesta =='s')||(respuesta == 'S'));
  46.  
  47.     getchar();
  48.     return 0;
  49. }


En línea

rir3760


Desconectado Desconectado

Mensajes: 1.639


Ver Perfil
Re: preguntas y respuestas c++
« Respuesta #12 en: 2 Agosto 2011, 18:33 pm »

En respuesta a peterfly: necesitas un buen libro o curso sobre C++ y seguirlo a detalle ya que con "palos de ciego" ni aprendes bien ni aprendes rápido. Revisa los temas fijos de este foro, ahí hay información para entretenerse por meses.

En cuanto al programa honestamente no lo veo sentido pero se puede hacer asi:
Código
  1. #include <iostream>
  2. using std::cin;
  3. using std::cout;
  4. using std::endl;
  5.  
  6. #include <string>
  7. using std::string;
  8.  
  9. #include <limits>
  10. using std::numeric_limits;
  11.  
  12. int main ()
  13. {
  14.   string pregunta;
  15.   char continuar;
  16.  
  17.   do {
  18.      cout << "Escribe la pregunta:  ";
  19.      getline(cin, pregunta);
  20.  
  21.      if (pregunta == "que edad tengo?")
  22.         cout << "Pregunta correcta!" << endl;
  23.      else
  24.         cout << "Pregunta incorrecta!" << endl;
  25.  
  26.      cout << "Desea continuar (s o n)?" << endl;
  27.      std::cin >> continuar;
  28.      cin.ignore(numeric_limits<int>::max(), '\n');
  29.   } while (continuar == 's' || continuar == 'S');
  30.  
  31.   return 0;
  32. }


----


Un comentario sobre el programa de Dark Invader , el uso de la función:
Código
  1. setbuf(stdin,NULL);
Para así vaciar el bufer de la entrada estándar no es correcto ya que esa función termina en una llamada a "setvbuf". El problema aquí es que esta ultima solo puede llamarse antes de cualquier uso del stream (salvo su apertura con fopen).

Un saludo
« Última modificación: 2 Agosto 2011, 18:42 pm por rir3760 » En línea

C retains the basic philosophy that programmers know what they are doing; it only requires that they state their intentions explicitly.
--
Kernighan & Ritchie, The C programming language
peterfly

Desconectado Desconectado

Mensajes: 94


Ver Perfil
Re: preguntas y respuestas c++
« Respuesta #13 en: 2 Agosto 2011, 18:42 pm »

muchisimas gracias a todos... tema solucionado
En línea

Páginas: 1 [2] Ir Arriba Respuesta Imprimir 

Ir a:  

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