Número misterioso
Cerrado
clairehgh
Mensajes publicados
6
Estado
Miembro
-
crapoulou Mensajes publicados 28002 Fecha de registro Estado Moderador, Colaborador de seguridad Última intervención -
crapoulou Mensajes publicados 28002 Fecha de registro Estado Moderador, Colaborador de seguridad Última intervención -
```c
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
int main() {
int min = 1, max = 100, guess, secretNumber;
// Initialiser le générateur de nombres aléatoires
srand(time(NULL));
secretNumber = rand() % (max - min + 1) + min; // Nombre secret entre 1 et 100
printf("Un nombre mystère a été choisi entre %d et %d. Essayez de le deviner !\n", min, max);
while (1) {
printf("Proposez maintenant un nombre mystérieux compris entre %d et %d: ", min, max);
scanf("%d", &guess);
if (guess < min || guess > max) {
printf("Veuillez choisir un nombre dans l'intervalle [%d, %d].\n", min, max);
continue;
}
if (guess < secretNumber) {
printf("C'est plus !\n");
min = guess + 1; // Réduire l'intervalle inférieur
} else if (guess > secretNumber) {
printf("C'est moins !\n");
max = guess - 1; // Réduire l'intervalle supérieur
} else {
printf("Félicitations ! Vous avez deviné le nombre mystère : %d\n", secretNumber);
break;
}
}
return 0;
}
```</time.h></stdlib.h></stdio.h>
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
int main() {
int min = 1, max = 100, guess, secretNumber;
// Initialiser le générateur de nombres aléatoires
srand(time(NULL));
secretNumber = rand() % (max - min + 1) + min; // Nombre secret entre 1 et 100
printf("Un nombre mystère a été choisi entre %d et %d. Essayez de le deviner !\n", min, max);
while (1) {
printf("Proposez maintenant un nombre mystérieux compris entre %d et %d: ", min, max);
scanf("%d", &guess);
if (guess < min || guess > max) {
printf("Veuillez choisir un nombre dans l'intervalle [%d, %d].\n", min, max);
continue;
}
if (guess < secretNumber) {
printf("C'est plus !\n");
min = guess + 1; // Réduire l'intervalle inférieur
} else if (guess > secretNumber) {
printf("C'est moins !\n");
max = guess - 1; // Réduire l'intervalle supérieur
} else {
printf("Félicitations ! Vous avez deviné le nombre mystère : %d\n", secretNumber);
break;
}
}
return 0;
}
```</time.h></stdlib.h></stdio.h>
4 respuestas
-
No haremos su ejercicio por usted.
Gracias por describir su problema con precisión y publicar el código que ya ha realizado.
Haga clic aquí para obtener consejos sobre la redacción de mensajes y aquí sobre tareas escolares o PFE.
Para publicar su código, no olvide la coloración de la sintaxis.
--
Intervengo principalmente en VB6 y VB.NET, con un poco de C#, pero la moderación me lleva a menudo a otros lenguajes.
En VB.NET, recuerde activar "Option Explicit" y "Option Strict". -
Ves, NHenry, un moderador, te pide lo mismo que yo.....
--
Cuando era pequeño, el Mar Muerto solo estaba enfermo.
George Burns -
Para la ayuda de la computadora, aquí te propongo: almacenar en un array las longitudes de intervalos posibles. Según el ejemplo que elegiste, este array contendrá: 100, 60, 20, 10. Cada vez que el jugador B haga una elección, el intervalo se reducirá hasta la última longitud posible (aquí, 10).
Llamaremos "i_ecart" a la longitud actual del intervalo de ayuda de la computadora. Inicialmente, valdrá 0 (para apuntar al primer elemento del array).
Para un primer trabajo, redactarás una función que tome como entrada dos enteros: "i_ecart" y el valor elegido por el jugador B. Tu función se encargará de mostrar el mensaje de ayuda correspondiente.
Ejemplo: si llamo a esta función con "i_ecart" = 1 y el valor elegido por el jugador B = 45, entonces tu función mostrará:
Proponga ahora un número misterioso comprendido entre 15 y 75
(75 - 15 = 60)
Ayudar es mi nindo. -
Hola,
Gracias por permanecer en la discusión creada inicialmente:
https://forums.commentcamarche.net/forum/affich-34086565-creer-un-jeu
Haz clic en el botón azul 'Responder' / 'Responder al tema' para permanecer en la misma discusión.
Buena continuación.
Crapoulou, Moderador CCM.