CONNEXION
  • RetourJeux
    • Sorties
    • Hit Parade
    • Les + populaires
    • Les + attendus
    • Soluces
    • Tous les Jeux
    • Gaming
  • RetourActu Gaming
    • News
    • Astuces
    • Tests
    • Previews
    • Toute l'actu gaming
  • RetourBons plans
    • Bons plans
    • Bons plans Smartphone
    • Bons plans Hardware
    • Bons plans Image et Son
    • Bons plans Amazon
    • Bons plans Cdiscount
    • Bons plans Decathlon
    • Bons plans Fnac
    • Tous les Bons plans
  • RetourJVTech
    • Actus High-Tech
    • Intelligence Artificielle
    • Smartphones
    • Mobilité urbaine
    • Hardware
    • Image et son
    • Tutoriels
    • Tests produits High-Tech
    • Guides d'achat High-Tech
    • JVTech
  • RetourCulture
    • Actus Culture
    • Culture
  • RetourVidéos
    • A la une
    • Gaming Live
    • Vidéos Tests
    • Vidéos Previews
    • Gameplay
    • Trailers
    • Chroniques
    • Replay Web TV
    • Toutes les vidéos
  • RetourForums
    • Hardware PC
    • PS5
    • Switch 2
    • Xbox Series
    • Switch
    • Pokemon pocket
    • FC 25 Ultimate Team
    • League of Legends
    • Tous les Forums
  • PC
  • PS5
  • Xbox Series
  • Switch 2
  • PS4
  • One
  • Switch
  • iOS
  • Android
  • MMO
  • RPG
  • FPS
En ce moment Genshin Impact Valhalla Breath of the wild Animal Crossing GTA 5 Red dead 2
Liste des sujets

pb avec tp du site du zéro

artoumao
artoumao
Niveau 4
01 août 2010 à 21:45:46

Voilà je voulais insérer un choix du niveau de difficulté compatible avec un mode 2 joueurs ici : http://www.siteduzero.com/tutoriel-3-1 [...] mier-jeu.html mode qui permet au deuxième joueur de rentrer le nombre mystere au lieu que ce soit l'ordi.

le problème est que je n'arrive pas à faire prendre en compte au scanf du nombreMystere le niveau de difficulté inséré par le scanf précédent. j'ai beau mettre

scanf("%d", &MAX); et rentrer après des tas de trucs comme nombreMystere =< MAX, const int nombreMystere =< MAX, la ligne d'après :

printf("Quel est le nombre mystere ?");
scanf("%d", &nombreMystere);

ne prend pas en compte la limite du MAX. C'est à dire que le deuxième joueur peut taper nimporte quoi, alors que la limite de niveau est choisie. Que dois-je écrire ? Merci.

guyver2
guyver2
Niveau 10
01 août 2010 à 22:11:31

J'essaye de résumé pour voir si j'ai compris ton pb :
Tu essaye de spécifier qu'une variable dont la valeur n'est pas encore définie (nombreMystère) soit inférieur ou égale a une certaine valeur, MAX en l'occurrence.

tu ne peux pas forcer "à priori" un intervalle de valeurs possibles pour une variable. Il faut que tu traite a postériori la valeur affecté pour qu'elle corresponde a tes attentes.
Deux choix :
1) utiliser le modulo, je te laisse chercher ce que ça fait.

scanf("%d", &MAX);
printf("Quel est le nombre mystere ?");
scanf("%d", &nombreMystere);
nombreMystere = nombreMyster % MAX; // le modulo c'est l'opperation '%'

2) verifier la valeur entrée par l'utilisateur et lui redemander une nouvelle valeur si ça ne colle pas avec tes attentes.

scanf("%d", &MAX);
do {
printf("Quel est le nombre mystere ?");
scanf("%d", &nombreMystere);
} while (nombreMystere > MAX);

LeSociopathe
LeSociopathe
Niveau 10
01 août 2010 à 22:17:20

"j'ai beau rentrer des tas de trucs comme

nombreMystere =< MAX..."

je ne connais pas le C, mais je ne comprends pas ce que tu espères de cette ligne. C'est juste une opération booléenne dont l'opérateur est =< et dont tu n'enregistre pas le résultat.
Tu veux que le scanf refuse des nombres plus grands que MAX ? Dans ce cas, tu dois faire une boucle qui répète

scanf("%d", &nombreMystere)

jusqu'à ce que le nombre entré soit valide. quelque chose comme :

do
{
scanf("%d",&nombreMystere);
if(nombreMystere>MAX) printf("trop grand, entrez un autre nombre");
}
while (nombreMystere>MAX)

artoumao
artoumao
Niveau 4
01 août 2010 à 22:38:54

merci beaucoup, ça marche. j'ai fait : int nombreMystere = 0;
do
{

printf("choisissez le mode :\n1 : 2joueurs\n0 : 1 joueur");
scanf("%d", &joueur);

printf("\nChoisissez le niveau de difficulte :\n \n1 = entre 1 et 100\n2 = entre 1 et 1000\n3 = entre 1 et 10000\n\n");
scanf("%d", &MAX);

if (joueur)

{
do {
printf("Quel est le nombre mystere ?");
scanf("%d", &nombreMystere);
} while (nombreMystere > MAX);

dnob700
dnob700
Niveau 10
01 août 2010 à 22:49:42

"printf("choisissez le mode :\n1 : 2joueurs\n0 : 1 joueur");"

Tu feras un bon informaticien...

Ça me rappel des boite de dialogue d'il y a quelques année du genre "pour continuer cliquer sur non, pour arréter cliquer sur oui et pour recommencer cliquer sur la croix".

artoumao
artoumao
Niveau 4
01 août 2010 à 22:54:52

Je comprend pas la boucle recommence quand je met un nombre inférieur au MAX. :(

artoumao
artoumao
Niveau 4
01 août 2010 à 23:01:27

elle s'est effectuée deux fois pas une. svp, quel est le problème ???

artoumao
artoumao
Niveau 4
01 août 2010 à 23:05:18

ah ouais j'avais oublié d'effacer mon ancien code :rire: désolée pour le dérangement.

guyver2
guyver2
Niveau 10
01 août 2010 à 23:14:29

"
dnob700 :d) je te signale que je débute alors tes moqueries, tu te les carre dans ton anus de chien, connard.
"

diantre pourquoi ai-je aidé un âne pareil...

dnob700
dnob700
Niveau 10
01 août 2010 à 23:45:42

"je te signale que je débute alors tes moqueries ..."

Mouais, ma remarque n'avais rien à voir avec le fait que tu débute ou non. Si tu es entièrement dénoué de sens de l'humour, je ne peux rien faire pour toi."

"ça insulte les ânes ?"

Non, tu as raison, guyver c'est trompé et âne était manifestement un qualificatif trop sympa.

(au ca

dnob700
dnob700
Niveau 10
01 août 2010 à 23:46:32

(u cas où, disais-je avant d'être interrompu par une tabulation, ne me dis pas que ton message précédant était, lui, de l'humour).

artoumao
artoumao
Niveau 4
02 août 2010 à 00:46:27

si c'était de l'humour pardon. :snif:

artoumao
artoumao
Niveau 4
02 août 2010 à 00:47:33

d'ailleurs moi aussi je rigolais :noel:

godrik
godrik
Niveau 30
02 août 2010 à 19:33:36

Desole artoumao, je ne comprends pas l'humour, tu prends un kick de 3 jours pour ca !

godrik
godrik
Niveau 30
02 août 2010 à 19:34:33

en fait il est deja banni... LOCK

Note de Moderation : Je cours un peu partout ces temps ci. C'est pour ca que ma moderation a du retard. Desole du deragement.

Sujet fermé pour la raison suivante : Topic verrouillé.
Sous forums
  • Aide à l'achat Mac
  • Macintosh
  • Création de Jeux
  • Programmation
  • Création de sites web
  • Linux
  • Internet
  • Steam Deck
  • Hardware
La vidéo du moment