Hola a todos, estoy haciendo un programa el cual ingresas una pregunta y una respuesta
y luego en una especie de chat, te responde lo que preguntes.
las preguntas y respuestas se guardan en:
las preguntas y respuestas se guardan en:
Código
string preguntas[100]; string respuestas[100];
Como veis se pueden guardar un total de 100 preguntas con 100 respuestas, mi problema es el siguiente.
Código
string preguntas[100]; string respuestas[100]; string frase; void chat() { cout<<" Usuario> "; getline(cin, frase); cin.ignore(); cout<<endl<<" Programa> "; if(frase == preguntas[0]) { cout<<respuestas[0]<<endl; } else if(frase == preguntas[1]) { cout<<respuestas[1]<<endl; } else if(frase == preguntas[2]) { cout<<respuestas[2]<<endl; } else if(frase == "salir") { main(); } else { cout<<"no entiendo '"<<frase<<"'"<<endl; } cout<<endl; chat(); } //obviamente esto es solo un trozo del programa, pero creo que es suficiente para explicar mi problema
Como veis lo que hago es comparar si la pregunta esta en la "base de datos" y si esta sale la respuesta, y si no sale el mensaje "no entiendo 'hola' "(hola es un ej de pregunta)
Mi problema es que creo que se puede hacer un bucle, para no tener que poner 100 else if, pero llevo un rato pensando en como hacer un bucle para ese caso con for o while pero no me sale... Gracias a todos por su tiempo y ayuda
Mi problema es que creo que se puede hacer un bucle, para no tener que poner 100 else if, pero llevo un rato pensando en como hacer un bucle para ese caso con for o while pero no me sale... Gracias a todos por su tiempo y ayuda