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

[C] Aide débutant

Heimerdingers
Heimerdingers
Niveau 10
18 novembre 2012 à 22:25:08

Bonsoir j'aimerais que mon programme s’arrête a 10essai et qu'il écrive "Tu as perdu"

  1. include <stdio.h>
  2. include <stdlib.h>
  3. include <time.h>

int main ( int argc, char** argv )
{
int nombreMystere = 0, nombreEntre = 0, nombreEssai = 1;
const int MAX = 100, MIN = 1;

srand(time(NULL));
nombreMystere = (rand() % (MAX - MIN + 1)) + MIN;

printf("! ! ! JEU DU CHIFFRE MYSTERE ! ! !\n\n");
printf("! ! !REGLES ! ! !\nTu doit choisir un chiffre entre 1 et 100, a10 essais tu as perdu !!!\n\n");

do
{

printf("Quel est le chiffre mystere ?");
scanf("%d", &nombreEntre,nombreEssai);

if (nombreMystere > nombreEntre)
printf("C'est plus Essai %d\n\n", nombreEssai++);
else if (nombreMystere < nombreEntre)
printf("C'est moins !!!! Essai %d\n\n", nombreEssai++);
else
printf("Bien joué tu a le droit a un gateau Tu as reussi en %d COUPS ! ! !\n\n", nombreEssai);

} while (nombreEntre != nombreMystere );

}

Je suis un gros débutant et vu que je trouve pas la solution je vous demande de l'aide merci de bien vouloir m'expliquer :ange:

Chocolate
Chocolate
Niveau 55
18 novembre 2012 à 23:27:18

Tu devrais déjà rajouter une double condition à ta boucle pour pouvoir en sortir si tu dépasses le nombre d'essais maximum. Pour que la boucle continue de s'exécuter, tu dois ne pas avoir trouvé le bon nombre ET avoir fait moins de 10 essais. :noel:

while ((nombreEntre != nombreMystere) && (nombreEssai < 10) );

Et tu peux rajouter en dehors de ta boucle un if (nombreEssai < 10) printf("Tu as perdu");

Chocolate
Chocolate
Niveau 55
18 novembre 2012 à 23:30:45

while ((nombreEntre != nombreMystere) && (nombreEssai <= 11) );
if (nombreEssai >= 11) printf("Tu as perdu");

Ça me semble plus correct. T'as saisi le principe de toute manière. :( :noel:

Heimerdingers
Heimerdingers
Niveau 10
18 novembre 2012 à 23:34:50

j'avais fait des essais j'avais oublier le && Merci pour ton aide :ange:

Heimerdingers
Heimerdingers
Niveau 10
18 novembre 2012 à 23:52:10

et si je veux que a la fin au lieux de fermer le programme lui demander si il veux refaire une partie comment je fait ?

godrik
godrik
Niveau 30
19 novembre 2012 à 00:28:33

tu fais une boucle.

leftbehindyou
leftbehindyou
Niveau 9
19 novembre 2012 à 03:00:33

Heimerdingers
Posté le 18 novembre 2012 à 23:52:10
et si je veux que a la fin au lieux de fermer le programme lui demander si il veux refaire une partie comment je fait ?

Peut etre que tu pourrais faire un scanf

"Voulez vous rejouez ?" 1 - Oui , 2 - Non

si c'est non tu return (0) si c'est oui tu rapelles ta fonction

comme ca : main(argc, argv);

Ca pourrais peut etre marcher :(

Heimerdingers
Heimerdingers
Niveau 10
19 novembre 2012 à 13:42:23

Comment je doit l ecrire si non fin si oui retour au debut ? Merci encore :ange:

lokilok
lokilok
Niveau 17
19 novembre 2012 à 17:29:13

Je pense que c'est une très mauvaise idée d'appeler le main dans le main, il faut mieux faire un fonction spécial qui elle serait appelée récursivement.

Mais de toute façon utiliser la récursivité ici est un très mauvais choix parce que le joueur pourrait recommencer la partie plein de fois jusqu'à que le programme crash.

Heimerdingers
Heimerdingers
Niveau 10
19 novembre 2012 à 18:43:23

comment je peux faire un IF avec des mots ?
par ex si oui recommencer le jeu SI non ferme le programme

comme dit plus haut je suis débutant donc si vous pouviez me faire la fonction :hap: c'est mon premier programme

Merci :ange:

Heimerdingers
Heimerdingers
Niveau 10
19 novembre 2012 à 21:20:13

help :snif:

Chocolayte
Chocolayte
Niveau 73
20 novembre 2012 à 01:01:32

Rofl, j't'ai aidé ce matin, notre prof nous a demandé de faire cet exercice à 16h, avec la limitation des 10 tests, j'ai rigolé en pensant à toi. :noel:

J'ai aussi fait une boucle tout à l'heure car j'trouvais ça sympa. J'ai fait un :

do {
// ton jeu

int replay;
printf("Souhaitez vous rejouer une partie ? (0/1) ");
scanf("%d",replay);
} while(replay != 0);

Peut-être pas la meilleure solution mais ça s'arrête quand tu entres un zéro.

Heimerdingers
Heimerdingers
Niveau 10
20 novembre 2012 à 10:28:34

Merci j essaye ce soir

Heimerdingers
Heimerdingers
Niveau 10
21 novembre 2012 à 17:28:33

j'ai essayer de le faire seul(oui c'est mieux pour apprendre :hap: ) mais a la dernière ligne sa me dit qu'il y a une erreur

  1. include <stdio.h>
  2. include <stdlib.h>
  3. include <time.h>

int main ( int argc, char** argv )
{
int nombreMystere = 0, nombreEntre = 0, nombreEssai = 1, recommencer = 1;
const int MAX = 100, MIN = 1;

srand(time(NULL));
nombreMystere = (rand() % (MAX - MIN + 1)) + MIN;

printf("! ! ! JEU DU CHIFFRE MYSTERE ! ! !\n\n");
printf("! ! !REGLES ! ! !\nTu doit choisir un chiffre entre 1 et 100 !!!\n\n");

while(recommencer==1);

do
{

printf("Quel est le chiffre mystere ?");
scanf("%d", &nombreEntre,nombreEssai);

if (nombreMystere > nombreEntre)
printf("C'est plus Essai %d\n\n", nombreEssai++);
else if (nombreMystere < nombreEntre)
printf("C'est moins !!!! Essai %d\n\n", nombreEssai++);
else
printf("Bravo tu a le droit a un gateau Tu as reussi en %d COUPS ! ! !\n\n", nombreEssai);
if (nombreEssai >= 10)
printf("Tu as perdu\n\n");

printf("Voila ton score %d", nombreEssai);
{

printf("voulez vous recommencer ?\n\ntape 1 pour recommencer\ntape 2 pour quitter");
scanf("%d", &recommencer);
}

} while ((nombreEntre != nombreMystere) && (nombreEssai < 10));

help :ange:

tbop2
tbop2
Niveau 10
21 novembre 2012 à 18:08:16

Mets ton code sur pastebin.

Heimerdingers
Heimerdingers
Niveau 10
21 novembre 2012 à 18:29:45

c'est quoi :question:

Heimerdingers
Heimerdingers
Niveau 10
21 novembre 2012 à 19:00:08

J'arrive pas a comprendre pourquoi la dernière ligne est pas bonne :(

Pseudo supprimé
Pseudo supprimé 22 novembre 2012 à 13:27:54

Bah ferme ton main.

tbop2
tbop2
Niveau 10
22 novembre 2012 à 14:37:16

Google est ton ami. Et surtout pas le SDZ d'ailleurs.

Heimerfingers ton code est :

- Non indente
- Non poste sur pastebin (c koi? BEN REGARDE SUR GOOGLE NOM D UN CHIEN!!!)
- On sait meme pas le message d'erreur
- Totalement a l'ouest de toute evidence tu es alle beaucoup trop vite et tu ne comprends rien de ce que tu fais.

Heimerdingers
Heimerdingers
Niveau 10
23 novembre 2012 à 22:04:49

:d) https://www.jeuxvideo.com/forums/1-47-72140-1-0-1-0-c-aide-debutant.htm#message_72316
Tbop2, 22 novembre 2012 à 14:37:16
« Google est ton ami. Et surtout pas le SDZ d'ailleurs.

Heimerfingers ton code est :

- Non indente
- Non poste sur pastebin (c koi? BEN REGARDE SUR GOOGLE NOM D UN CHIEN!!!)
- On sait meme pas le message d'erreur
- Totalement a l'ouest de toute evidence tu es alle beaucoup trop vite et tu ne comprends rien de ce que tu fais. »

Tu a raison je vais prendre un autre tuto et recommencer depuis le debut :)

Sous forums
  • Aide à l'achat Mac
  • Création de Jeux
  • Linux
  • Création de sites web
  • Programmation
  • Internet
  • Steam Deck
  • Macintosh
  • Hardware
La vidéo du moment