[ Foro de C ]

Programa para adivinar un numero

02-Jun-2009 20:37
Aitor Ugarte
2 Respuestas

Hola a tod@s,me llamo Aitor,hoy es mi primer dia aqui,espero aprender mucho con todos vosotr@s! El motivo de mi consulta es que me estoy iniciando en C y tengo una duda ....Necesito crear un programa que dé al usuario la oportunidad de adivinar un número del 1 al 100 (prefijado en el programa) en un máximo de 6 intentos. En cada pasada deberá avisar de si se ha pasado o se ha quedado corto. Llevo un par de dias siguiendo el curso y soy capaz de hacer que el programa me pregunte por los numeros y de hacer el resto del programa pero me trabo con lo del tema de los 6 intentos,lo he intentado con "FOR"pero no me sale.
03-Jun-2009 00:14
Nacho Cabanes (+30)

La idea está en que si lo haces con un "for" se repetirá exactamente 6 veces, salvo que uses "trucos" como interrumpir el bucle antes de tiempo con un "break".

Posiblemente, la forma más natural sea pensarlo como "se debe repetir mientras no haya acertado y no haya agotado los intentos", que se traduciría en algo más detallado como

intentos = 0
repetir {
 pedir numero
 si numero > numeroAdivinar escribir "Te has pasado"
 si numero < numeroAdivinar escribir "Te has quedado corto"
 intentos ++
} mientras (intentos < 6) y (numero != numeroAdivinar)

Falta algún detalle adicional. Por ejemplo, terminará cuando se acaben los intentos o se acierte, así que tendrás que comprobar cual de los dos casos ha sido, para felicitar al usuario o decirle cual era el número correcto.

Ya sólo falta convertir esas ideas a C... ;-)


03-Jun-2009 16:17
Aitor Ugarte

ok,muchas gracias Nacho por la ayuda,no habia caido en lo de "intentos ++",eso va incrementando el valor de la variable "intentos".Lo he probado y funciona.






(No se puede continuar esta discusión porque tiene más de dos meses de antigüedad. Si tienes dudas parecidas, abre un nuevo hilo.)