[C] Probleme script
Résolu
arthurbest78
Messages postés
66
Date d'inscription
Statut
Membre
Dernière intervention
-
arthurbest78 Messages postés 66 Date d'inscription Statut Membre Dernière intervention -
arthurbest78 Messages postés 66 Date d'inscription Statut Membre Dernière intervention -
Salut j'ai créer un script assez compliquer, enfin , pour moi et je voudrez l'améliorer encore plus, mais je ne sais pas comment m'y prendre.
Mes amélioration voulues:
°Lorsque l'on a trouver le chiffre mystère le programme nous dit en combien d'essai.
°Demander à la fin du programme si il veut recommencer une partie
Voici mon script:
______________________________________________________________
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
int main ()
{
int choixMode;
printf("A quel mode voulez-vous jouer ?\n\n");
printf("1. Mode 1 Joueur\n");
printf("2. Mode 2 Joueurs\n");
printf("\n\n");
scanf("%d", &choixMode);
printf("\n\n");
if (choixMode == 1)
{
int choixNiveau;
printf("Quel niveau voulez vous choisir ? \n\n");
printf("Niveau 1, entre 1 et 10 \n");
printf("Niveau 2, entre 1 et 100 \n");
printf("Niveau 3, entre 1 et 1000 \n");
printf("Niveau 4, entre 1 et 10000 \n");
printf("Niveau 5, entre 1 et 100000 ");
printf("\n\n");
scanf("%d", &choixNiveau);
printf("\n\n");
int max = 10, min = 1;
int nombreMystere = 0, nombreEntre = 0;
switch(choixNiveau)
{
case 1:
max = 10;
break;
case 2:
max = 100;
break;
case 3:
max = 1000;
break;
case 4:
max = 10000;
break;
case 5:
max = 100000;
break;
default:
printf("Votre Nombre est incorrect");
break;
}
srand(time(NULL));
nombreMystere = (rand() % (max - min + 1)) + min;
do
{
printf("Quel est le nombre ? ");
scanf("%d", &nombreEntre);
if (nombreMystere > nombreEntre)
printf("C'est plus !\n\n");
else if (nombreMystere < nombreEntre)
printf("C'est moins !\n\n");
else
printf ("Bravo, vous avez trouve le nombre mystere !!!\n\n");
} while (nombreEntre != nombreMystere);
}
else if (choixMode == 2)
{
int nombreMystere;
int choixNombre;
printf("Pour information le Joueur 1 ecrit un nombre et le Joueur 2 cherche le nombre\n\n");
printf("Joueur 1 veuillez dire au Joueur 2 si se sera un nombre ");
printf("EXEMPLE: entre 1 et 100\n");
printf("Joueur 1 veuiller taper votre nombre et retenez le !\n\n");
printf("\n\n");
scanf("%d", &nombreMystere);
printf("\n\n");
printf("\n\n");
printf("\n\n");
printf("\n\n");
printf("\n\n");
printf("\n\n");
printf("\n\n");
printf("\n\n");
printf("\n\n");
printf("\n\n");
printf("\n\n");
printf("\n\n");
printf("\n\n");
printf("\n\n");
printf("\n\n");
printf("\n\n");
printf("\n\n");
printf("\n\n");
printf("\n\n");
printf("\n\n");
do
{
printf("Joueur 2 vous devez trouver le nombre que Joueur 1 a ecrit, Quel est le nombre ? ");
printf("\n\n");
scanf("%d", &choixNombre);
printf("\n\n\n\n");
if (choixNombre > nombreMystere)
printf("C'est moins !\n\n");
else if (choixNombre < nombreMystere)
printf("C'est plus !\n\n");
else if (choixNombre == nombreMystere)
printf ("Bravo, Joueur 2 a trouve le nombre mystere !!!\n\n\n");
} while (choixNombre != nombreMystere);
}
return 0;
}
______________________________________________________________
Voila, si vous n'avez pas compris la règle du jeux compiler et executé le.
bye
Mes amélioration voulues:
°Lorsque l'on a trouver le chiffre mystère le programme nous dit en combien d'essai.
°Demander à la fin du programme si il veut recommencer une partie
Voici mon script:
______________________________________________________________
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
int main ()
{
int choixMode;
printf("A quel mode voulez-vous jouer ?\n\n");
printf("1. Mode 1 Joueur\n");
printf("2. Mode 2 Joueurs\n");
printf("\n\n");
scanf("%d", &choixMode);
printf("\n\n");
if (choixMode == 1)
{
int choixNiveau;
printf("Quel niveau voulez vous choisir ? \n\n");
printf("Niveau 1, entre 1 et 10 \n");
printf("Niveau 2, entre 1 et 100 \n");
printf("Niveau 3, entre 1 et 1000 \n");
printf("Niveau 4, entre 1 et 10000 \n");
printf("Niveau 5, entre 1 et 100000 ");
printf("\n\n");
scanf("%d", &choixNiveau);
printf("\n\n");
int max = 10, min = 1;
int nombreMystere = 0, nombreEntre = 0;
switch(choixNiveau)
{
case 1:
max = 10;
break;
case 2:
max = 100;
break;
case 3:
max = 1000;
break;
case 4:
max = 10000;
break;
case 5:
max = 100000;
break;
default:
printf("Votre Nombre est incorrect");
break;
}
srand(time(NULL));
nombreMystere = (rand() % (max - min + 1)) + min;
do
{
printf("Quel est le nombre ? ");
scanf("%d", &nombreEntre);
if (nombreMystere > nombreEntre)
printf("C'est plus !\n\n");
else if (nombreMystere < nombreEntre)
printf("C'est moins !\n\n");
else
printf ("Bravo, vous avez trouve le nombre mystere !!!\n\n");
} while (nombreEntre != nombreMystere);
}
else if (choixMode == 2)
{
int nombreMystere;
int choixNombre;
printf("Pour information le Joueur 1 ecrit un nombre et le Joueur 2 cherche le nombre\n\n");
printf("Joueur 1 veuillez dire au Joueur 2 si se sera un nombre ");
printf("EXEMPLE: entre 1 et 100\n");
printf("Joueur 1 veuiller taper votre nombre et retenez le !\n\n");
printf("\n\n");
scanf("%d", &nombreMystere);
printf("\n\n");
printf("\n\n");
printf("\n\n");
printf("\n\n");
printf("\n\n");
printf("\n\n");
printf("\n\n");
printf("\n\n");
printf("\n\n");
printf("\n\n");
printf("\n\n");
printf("\n\n");
printf("\n\n");
printf("\n\n");
printf("\n\n");
printf("\n\n");
printf("\n\n");
printf("\n\n");
printf("\n\n");
printf("\n\n");
do
{
printf("Joueur 2 vous devez trouver le nombre que Joueur 1 a ecrit, Quel est le nombre ? ");
printf("\n\n");
scanf("%d", &choixNombre);
printf("\n\n\n\n");
if (choixNombre > nombreMystere)
printf("C'est moins !\n\n");
else if (choixNombre < nombreMystere)
printf("C'est plus !\n\n");
else if (choixNombre == nombreMystere)
printf ("Bravo, Joueur 2 a trouve le nombre mystere !!!\n\n\n");
} while (choixNombre != nombreMystere);
}
return 0;
}
______________________________________________________________
Voila, si vous n'avez pas compris la règle du jeux compiler et executé le.
bye
A voir également:
- [C] Probleme script
- Script vidéo youtube - Guide
- Mas script - Accueil - Windows
- Ghost script - Télécharger - Polices de caractères
- Script cmd - Guide
- Script download - Télécharger - Édition & Programmation
1 réponse
Le C n'est pas un langage de script, on nomme donc un fichier .c un code source. J'ai remplacé les printf() simples par des puts(). La particularité de cette fonction est qu'elle est plus rapide et qu'elle ajoute systématiquement un \n à la chaine qu'on lui passe en paramètre. J'ai aussi simplifié le code car il y avait des parties redondantes. Voilà le code corrigé :
VB.NET is good ... VB6 is better !
#include <stdio.h> #include <time.h> #include <math.h> #include <windows.h> int DemandeMode() { int ret = 0; printf("A combien de joueurs voulez-vous jouer (1 ou 2) ? "); while (ret < 1 || ret > 2) scanf("%d", &ret); printf("\n"); return ret; } int DemandeNiveau() { int ret = 0; puts("Quel niveau voulez-vous choisir ?"); puts("- Niveau 1, entre 1 et 10"); puts("- Niveau 2, entre 1 et 100"); puts("- Niveau 3, entre 1 et 1000"); puts("- Niveau 4, entre 1 et 10000"); puts("- Niveau 5, entre 1 et 100000"); puts(""); while (ret < 1 || ret > 5) scanf("%d", &ret); puts("\n\n"); return ret; } int main () { int choixMode = DemandeMode(), choixNiveau; int nombreMystere, nombreEntre, choixNombre, max, essais = 0; srand((int)time(0)); if (choixMode == 1) { choixNiveau = DemandeNiveau(); max = pow(10,choixNiveau); nombreMystere = (rand() % max) + 1; } else { puts("Joueur 1, veuillez taper votre nombre et retenez-le !\n"); scanf("%d",&nombreMystere); system("cls"); } do { essais++; printf("%sQuel est le nombre ? ",(choixMode==1?"":"Joueur 2, ")); scanf("%d", &nombreEntre); if (nombreMystere > nombreEntre) puts("C'est plus !\n"); else if (nombreMystere < nombreEntre) puts("C'est moins !\n"); else printf ("Bravo, %s trouve le nombre mystere en %d essai%s\n\n",(choixMode==1?"vous avez":"joueur 2 a"),essais,(essais==1?"":"s")); } while (nombreEntre != nombreMystere); system("pause"); return 0; }
VB.NET is good ... VB6 is better !
le puts me sera très utile =) et je ne trouve pas comment tu a fait pour effacer le texte quand le joueur 1 tape le nombre.
Méthode bourrine mais efficace. Je l'ai utilisée ici car ça ne me prend qu'une ligne mais ce n'est pas une façon propre de le faire (spécifique à Windows).
J'ai juste une question comment toi tu a apris la programmation, 10 ans d'étude apres le bac ... car moi j'étudie seul, (et je ne suis pas encore au bac) lol mais pour savoir autant de chose que toi que faut il faire ? =)
Dis-toi simplement qu'à force de développer et de poser des questions sur les forums on s'améliore ! Après on devient capable d'aider d'autres gens sur les forums et ainsi de suite.
Merci pour le conseil sa m'encourage beaucoup et merci aussi de m'avoir aider dans toute mes question.
A bientôt