Réinitialiser en C
Fermé
lucas01
Messages postés
1835
Date d'inscription
samedi 31 janvier 2009
Statut
Membre
Dernière intervention
15 octobre 2014
-
11 mai 2009 à 21:04
lucas01 Messages postés 1835 Date d'inscription samedi 31 janvier 2009 Statut Membre Dernière intervention 15 octobre 2014 - 21 mai 2009 à 11:56
lucas01 Messages postés 1835 Date d'inscription samedi 31 janvier 2009 Statut Membre Dernière intervention 15 octobre 2014 - 21 mai 2009 à 11:56
A voir également:
- Réinitialiser en C
- Reinitialiser pc - Guide
- Reinitialiser pc sans mdp - Guide
- Réinitialiser manette ps4 - Guide
- Réinitialiser chromecast - Guide
- Réinitialiser ps4 - Guide
13 réponses
mamiemando
Messages postés
33363
Date d'inscription
jeudi 12 mai 2005
Statut
Modérateur
Dernière intervention
16 novembre 2024
7 801
12 mai 2009 à 01:11
12 mai 2009 à 01:11
Qu'entends-tu par réinitialiser ? Réinitialiser quoi ?
lucas01
Messages postés
1835
Date d'inscription
samedi 31 janvier 2009
Statut
Membre
Dernière intervention
15 octobre 2014
102
15 mai 2009 à 21:47
15 mai 2009 à 21:47
Renitialiser TOUTE la console. Par exemple, quand je met la commande random ( pour choisir un mot au hasard ) il choisi toujours le même mot, ou chiffre ( 41 ). On a beau redémarer le programme sous .exe, toujours pareil.
fiddy
Messages postés
11069
Date d'inscription
samedi 5 mai 2007
Statut
Contributeur
Dernière intervention
23 avril 2022
1 841
15 mai 2009 à 21:54
15 mai 2009 à 21:54
Normal, il faut initialiser le seed.
Rajoute en début de programme : srand(time(NULL)); en rajoutant les bonnes bibliothèques (stdlib.h, time.h).
Rajoute en début de programme : srand(time(NULL)); en rajoutant les bonnes bibliothèques (stdlib.h, time.h).
lucas01
Messages postés
1835
Date d'inscription
samedi 31 janvier 2009
Statut
Membre
Dernière intervention
15 octobre 2014
102
15 mai 2009 à 23:42
15 mai 2009 à 23:42
bibliothèques (stdlib.h, time.h) ???
lucas01
Messages postés
1835
Date d'inscription
samedi 31 janvier 2009
Statut
Membre
Dernière intervention
15 octobre 2014
102
15 mai 2009 à 23:45
15 mai 2009 à 23:45
Voila mon code:
c'est un pendu, je debute donc pas de moquerie svp... :p lol...
#include <stdio.h>
#include <stdlib.h>
char tab[10][15];
char buf[15];
int main(int argc, char *argv[])
{
int nb, res, r=0, i;
res= rempli_tab();
nb= nombre_hasard();
res= affiche_mot(tab[nb]);
for(i=0; i<20; i++)
{
res=saisie_car();
if(res==10) continue;
r=comp_car(res, tab[nb]);
if(r==0) {
printf("penalite= %d\n", r);
}
else {
printf("buf = %s\n",buf);
if(strcmp(buf, tab[nb])==0) {
printf("Vous avez GAGNE !!!!\n");
break;
}
}
}
system("PAUSE");
return 0;
}
int rempli_tab()
{
sprintf(tab[0],"%s","clavier");
sprintf(tab[1],"%s","maison");
sprintf(tab[2],"%s","voiture");
sprintf(tab[3],"%s","pelouse");
sprintf(tab[4],"%s","rateau");
sprintf(tab[5],"%s","souvenir");
sprintf(tab[6],"%s","souris");
return(0);
}
int nombre_hasard()
{
int nb;
//srand((unsigned int)time(NULL));
nb=rand();
return(6);
}
int affiche_mot( mot)
char * mot;
{
int b;
buf[0]= mot[0];
for(b=1;b<strlen(mot);b++)
{
buf[b]='-';
}
buf[strlen(mot)-1]=mot[strlen(mot)-1];
printf("buf = %s\n",buf);
return(0);
}
int saisie_car()
{
char c;
c=getchar();
return(c);
}
int comp_car( c, mot)
char c;
char *mot;
{
int b, trouve=0;
for(b=1;b<strlen(mot);b++)
{
if(c==buf[b]){
printf("Cette lettre est DEJA DIT\n");
break;
}
if(mot[b]==c) { buf[b]=c; trouve=1; }
}
return(trouve);
}
il y est déjà...
Executer et compiler avec dev C++
c'est un pendu, je debute donc pas de moquerie svp... :p lol...
#include <stdio.h>
#include <stdlib.h>
char tab[10][15];
char buf[15];
int main(int argc, char *argv[])
{
int nb, res, r=0, i;
res= rempli_tab();
nb= nombre_hasard();
res= affiche_mot(tab[nb]);
for(i=0; i<20; i++)
{
res=saisie_car();
if(res==10) continue;
r=comp_car(res, tab[nb]);
if(r==0) {
printf("penalite= %d\n", r);
}
else {
printf("buf = %s\n",buf);
if(strcmp(buf, tab[nb])==0) {
printf("Vous avez GAGNE !!!!\n");
break;
}
}
}
system("PAUSE");
return 0;
}
int rempli_tab()
{
sprintf(tab[0],"%s","clavier");
sprintf(tab[1],"%s","maison");
sprintf(tab[2],"%s","voiture");
sprintf(tab[3],"%s","pelouse");
sprintf(tab[4],"%s","rateau");
sprintf(tab[5],"%s","souvenir");
sprintf(tab[6],"%s","souris");
return(0);
}
int nombre_hasard()
{
int nb;
//srand((unsigned int)time(NULL));
nb=rand();
return(6);
}
int affiche_mot( mot)
char * mot;
{
int b;
buf[0]= mot[0];
for(b=1;b<strlen(mot);b++)
{
buf[b]='-';
}
buf[strlen(mot)-1]=mot[strlen(mot)-1];
printf("buf = %s\n",buf);
return(0);
}
int saisie_car()
{
char c;
c=getchar();
return(c);
}
int comp_car( c, mot)
char c;
char *mot;
{
int b, trouve=0;
for(b=1;b<strlen(mot);b++)
{
if(c==buf[b]){
printf("Cette lettre est DEJA DIT\n");
break;
}
if(mot[b]==c) { buf[b]=c; trouve=1; }
}
return(trouve);
}
il y est déjà...
Executer et compiler avec dev C++
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Une Bibliothèque est un ensemble de fonction qui permette de facilité la vie du programmeur. (je sais c'est pas tout a fait juste, mais c'est le plus simple a dire :) )
La pour utiliser srand() tu doit y ajouter en début de programme au niveau préprocesseur #include "stdlib.h" et de même pour time.h
La pour utiliser srand() tu doit y ajouter en début de programme au niveau préprocesseur #include "stdlib.h" et de même pour time.h
lucas01
Messages postés
1835
Date d'inscription
samedi 31 janvier 2009
Statut
Membre
Dernière intervention
15 octobre 2014
102
16 mai 2009 à 00:04
16 mai 2009 à 00:04
Donc en gros faire sa?
#include "stdlib.h"
#include <stdio.h>
#include <stdlib.h> >>> ET ENLEVER CELLE CI????
char tab[10][15];
char buf[15];
int main(int argc, char *argv[])
{
int nb, res, r=0, i;
res= rempli_tab();
nb= nombre_hasard();
res= affiche_mot(tab[nb]);
for(i=0; i<20; i++)
{
res=saisie_car();
if(res==10) continue;
r=comp_car(res, tab[nb]);
if(r==0) {
printf("penalite= %d\n", r);
}
else {
printf("buf = %s\n",buf);
if(strcmp(buf, tab[nb])==0) {
printf("Vous avez GAGNE !!!!\n");
break;
}
}
}
system("PAUSE");
return 0;
}
int rempli_tab()
{
sprintf(tab[0],"%s","clavier");
sprintf(tab[1],"%s","maison");
sprintf(tab[2],"%s","voiture");
sprintf(tab[3],"%s","pelouse");
sprintf(tab[4],"%s","rateau");
sprintf(tab[5],"%s","souvenir");
sprintf(tab[6],"%s","souris");
return(0);
}
int nombre_hasard()
{
int nb;
//srand((unsigned int)time(NULL));
nb=rand();
return(6);
}
int affiche_mot( mot)
char * mot;
{
int b;
buf[0]= mot[0];
for(b=1;b<strlen(mot);b++)
{
buf[b]='-';
}
buf[strlen(mot)-1]=mot[strlen(mot)-1];
printf("buf = %s\n",buf);
return(0);
}
int saisie_car()
{
char c;
c=getchar();
return(c);
}
int comp_car( c, mot)
char c;
char *mot;
{
int b, trouve=0;
for(b=1;b<strlen(mot);b++)
{
if(c==buf[b]){
printf("Cette lettre est DEJA DIT\n");
break;
}
if(mot[b]==c) { buf[b]=c; trouve=1; }
}
return(trouve);
}
#include "stdlib.h"
#include <stdio.h>
#include <stdlib.h> >>> ET ENLEVER CELLE CI????
char tab[10][15];
char buf[15];
int main(int argc, char *argv[])
{
int nb, res, r=0, i;
res= rempli_tab();
nb= nombre_hasard();
res= affiche_mot(tab[nb]);
for(i=0; i<20; i++)
{
res=saisie_car();
if(res==10) continue;
r=comp_car(res, tab[nb]);
if(r==0) {
printf("penalite= %d\n", r);
}
else {
printf("buf = %s\n",buf);
if(strcmp(buf, tab[nb])==0) {
printf("Vous avez GAGNE !!!!\n");
break;
}
}
}
system("PAUSE");
return 0;
}
int rempli_tab()
{
sprintf(tab[0],"%s","clavier");
sprintf(tab[1],"%s","maison");
sprintf(tab[2],"%s","voiture");
sprintf(tab[3],"%s","pelouse");
sprintf(tab[4],"%s","rateau");
sprintf(tab[5],"%s","souvenir");
sprintf(tab[6],"%s","souris");
return(0);
}
int nombre_hasard()
{
int nb;
//srand((unsigned int)time(NULL));
nb=rand();
return(6);
}
int affiche_mot( mot)
char * mot;
{
int b;
buf[0]= mot[0];
for(b=1;b<strlen(mot);b++)
{
buf[b]='-';
}
buf[strlen(mot)-1]=mot[strlen(mot)-1];
printf("buf = %s\n",buf);
return(0);
}
int saisie_car()
{
char c;
c=getchar();
return(c);
}
int comp_car( c, mot)
char c;
char *mot;
{
int b, trouve=0;
for(b=1;b<strlen(mot);b++)
{
if(c==buf[b]){
printf("Cette lettre est DEJA DIT\n");
break;
}
if(mot[b]==c) { buf[b]=c; trouve=1; }
}
return(trouve);
}
the F
Messages postés
150
Date d'inscription
dimanche 22 mars 2009
Statut
Membre
Dernière intervention
22 mars 2011
13
16 mai 2009 à 00:47
16 mai 2009 à 00:47
Que sgnifie ca :
#include "stdlib.h"
#include <stdio.h>
#include <stdlib.h> >>> ET ENLEVER CELLE CI????
char tab[10][15];
char buf[15];
Ya rien a enlever ni rien a ajouter (dans cette partie pour le moment )
EN FAIT l'instuction #include "XXXXX.X" designe l'inclusion d'un header {fichier d'entete} non predifini ce qui n'est pas le cas ici donc utilise <stdlib.h>
#include "stdlib.h"
#include <stdio.h>
#include <stdlib.h> >>> ET ENLEVER CELLE CI????
char tab[10][15];
char buf[15];
Ya rien a enlever ni rien a ajouter (dans cette partie pour le moment )
EN FAIT l'instuction #include "XXXXX.X" designe l'inclusion d'un header {fichier d'entete} non predifini ce qui n'est pas le cas ici donc utilise <stdlib.h>
the F
Messages postés
150
Date d'inscription
dimanche 22 mars 2009
Statut
Membre
Dernière intervention
22 mars 2011
13
16 mai 2009 à 01:00
16 mai 2009 à 01:00
autre chose ,un conseil ,
c'est bien d'utiliser l'algorithmique descendante
ecrire les fonctions
ensuite etablir le main qui les appele
c'est bien d'utiliser l'algorithmique descendante
ecrire les fonctions
ensuite etablir le main qui les appele
Mouai pour l'algo descendant ça dépend des points de vue, perso je préfère déclarer mes fonctions après le main. Enfin cela a condition que je reprenne le C pour abandonner le C++ :)
the F
Messages postés
150
Date d'inscription
dimanche 22 mars 2009
Statut
Membre
Dernière intervention
22 mars 2011
13
16 mai 2009 à 01:30
16 mai 2009 à 01:30
il faut formater le nombre aleatoire pour etre entre 1et 6 ce nombre va le retourner la fonction :nombre_hasard()
non pas ### return (6)###
car ce meme nombre designe le mot que le programma va choisir ..
*** c'est l'erreur flagrante des la premiere lecture les autres viendront prochainement ****
non pas ### return (6)###
car ce meme nombre designe le mot que le programma va choisir ..
*** c'est l'erreur flagrante des la premiere lecture les autres viendront prochainement ****
fiddy
Messages postés
11069
Date d'inscription
samedi 5 mai 2007
Statut
Contributeur
Dernière intervention
23 avril 2022
1 841
16 mai 2009 à 12:07
16 mai 2009 à 12:07
Tu fais :
#include <time.h>
Ensuite dans ton main(), srand(time(NULL));
Ensuite il ne faut pas mettre return 6; mais return nb; sinon cela sert à rien de passer par une valeur pseudo-aléatoire. Et enfin n'oublie pas de normer la valeur de retour de rand() qui te donne un nombre entre 0 et RAND_MAX.
Cdlt
#include <time.h>
Ensuite dans ton main(), srand(time(NULL));
Ensuite il ne faut pas mettre return 6; mais return nb; sinon cela sert à rien de passer par une valeur pseudo-aléatoire. Et enfin n'oublie pas de normer la valeur de retour de rand() qui te donne un nombre entre 0 et RAND_MAX.
Cdlt
lucas01
Messages postés
1835
Date d'inscription
samedi 31 janvier 2009
Statut
Membre
Dernière intervention
15 octobre 2014
102
21 mai 2009 à 11:50
21 mai 2009 à 11:50
Voila j'ai fait sa. Mais il me met une erreur la ou il y a en gras!
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
char tab[10][15];
char buf[15];
int main(int argc, char *argv[])
{
int nb, res, r=0, i;
srand(time(NULL))
res= rempli_tab(); ici.
nb= nombre_hasard();
res= affiche_mot(tab[nb]);
for(i=0; i<20; i++)
{
res=saisie_car();
if(res==10) continue;
r=comp_car(res, tab[nb]);
if(r==0) {
printf("penalite= %d\n", r);
}
else {
printf("buf = %s\n",buf);
if(strcmp(buf, tab[nb])==0) {
printf("Vous avez GAGNE !!!!\n");
break;
}
}
}
system("PAUSE");
return 0;
}
int rempli_tab()
{
sprintf(tab[0],"%s","clavier");
sprintf(tab[1],"%s","maison");
sprintf(tab[2],"%s","voiture");
sprintf(tab[3],"%s","pelouse");
sprintf(tab[4],"%s","rateau");
sprintf(tab[5],"%s","souvenir");
sprintf(tab[6],"%s","souris");
return(0);
}
int nombre_hasard()
{
int nb;
//srand((unsigned int)time(NULL));
nb=rand();
return nb; // Et la je vous est bien écouter, mais pas d'erreur. Pour l'instant.
}
int affiche_mot( mot)
char * mot;
{
int b;
buf[0]= mot[0];
for(b=1;b<strlen(mot);b++)
{
buf[b]='-';
}
buf[strlen(mot)-1]=mot[strlen(mot)-1];
printf("buf = %s\n",buf);
return(0);
}
int saisie_car()
{
char c;
c=getchar();
return(c);
}
int comp_car( c, mot)
char c;
char *mot;
{
int b, trouve=0;
for(b=1;b<strlen(mot);b++)
{
if(c==buf[b]){
printf("Cette lettre est DEJA DIT\n");
break;
}
if(mot[b]==c) { buf[b]=c; trouve=1; }
}
return(trouve);
}
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
char tab[10][15];
char buf[15];
int main(int argc, char *argv[])
{
int nb, res, r=0, i;
srand(time(NULL))
res= rempli_tab(); ici.
nb= nombre_hasard();
res= affiche_mot(tab[nb]);
for(i=0; i<20; i++)
{
res=saisie_car();
if(res==10) continue;
r=comp_car(res, tab[nb]);
if(r==0) {
printf("penalite= %d\n", r);
}
else {
printf("buf = %s\n",buf);
if(strcmp(buf, tab[nb])==0) {
printf("Vous avez GAGNE !!!!\n");
break;
}
}
}
system("PAUSE");
return 0;
}
int rempli_tab()
{
sprintf(tab[0],"%s","clavier");
sprintf(tab[1],"%s","maison");
sprintf(tab[2],"%s","voiture");
sprintf(tab[3],"%s","pelouse");
sprintf(tab[4],"%s","rateau");
sprintf(tab[5],"%s","souvenir");
sprintf(tab[6],"%s","souris");
return(0);
}
int nombre_hasard()
{
int nb;
//srand((unsigned int)time(NULL));
nb=rand();
return nb; // Et la je vous est bien écouter, mais pas d'erreur. Pour l'instant.
}
int affiche_mot( mot)
char * mot;
{
int b;
buf[0]= mot[0];
for(b=1;b<strlen(mot);b++)
{
buf[b]='-';
}
buf[strlen(mot)-1]=mot[strlen(mot)-1];
printf("buf = %s\n",buf);
return(0);
}
int saisie_car()
{
char c;
c=getchar();
return(c);
}
int comp_car( c, mot)
char c;
char *mot;
{
int b, trouve=0;
for(b=1;b<strlen(mot);b++)
{
if(c==buf[b]){
printf("Cette lettre est DEJA DIT\n");
break;
}
if(mot[b]==c) { buf[b]=c; trouve=1; }
}
return(trouve);
}
fiddy
Messages postés
11069
Date d'inscription
samedi 5 mai 2007
Statut
Contributeur
Dernière intervention
23 avril 2022
1 841
21 mai 2009 à 11:52
21 mai 2009 à 11:52
N'oublie pas de préciser les messages d'erreurs que t'obtiens. Ils contiennent souvent l'explication.
Là, j'opterais pour un oubli de point-virgule de la ligne précédente.
srand(time(NULL));
Là, j'opterais pour un oubli de point-virgule de la ligne précédente.
srand(time(NULL));
lucas01
Messages postés
1835
Date d'inscription
samedi 31 janvier 2009
Statut
Membre
Dernière intervention
15 octobre 2014
102
21 mai 2009 à 11:56
21 mai 2009 à 11:56
Oui c'est vrai, désoler. Mais nouveau problème, la console afiche juste buf= // rien.
HELP ME PLEASE
HELP ME PLEASE