Se connecter avec
S'enregistrer | Connectez-vous

petit programme en c toujours des erreurs!!

Dernière réponse : dans Programmation

regarder ce petit programme:
#include <iostream.h>
#include <stdio.h>
#include <conio.h>
#include <stdlib.h>
int main ()

{
int nb_hasard = 0;
int votre_nb = 0;
randomize ();
nb_hasard = random (101); /* Nombre entre 0 et 100 */
do
{
printf("Saisie de votre nombre : ");
scanf("%d",&votre_nb);
if (nb_hasard < votre_nb)
{
printf ("\nMon nombre est plus petit");
/* A cause du clrscr () qui nous empêcherait de voir le
message */
printf ("\nAppuyez sur une touche");
getch ();
}
else
{
if (nb_hasard > votre_nb)
{
/* il peut être aussi égal ... */
printf ("\nVotre nombre est plus grand");
/* A cause du clrscr () qui nous empêcherait
de voir le message */
printf ("\nAppuyez sur une touche");
getch ();
}
}
}while (votre_nb != nb_hasard);
printf ("\nTrouvé");
getch ();
return (0);
system ("PAUSE");
}


quelle est l'erreur il me dise tout le temps :
10 c:\docume~1\h\mesdoc~1\\untitl~1.cpp
implicit declaration of function `int randomize(...)'
et 11 c:\docume~1\h\mesdoc~1\untitl~1.cpp
implicit declaration of function `int random(...)'

pourquoi??
MERCI

Autres pages sur : petit programme erreurs

Lassé par la pub ? Créez un compte

Quel-est le compilateur que tu utilises ?

( a premiere vu, tes deux fonctions ne sont pas déclarées dans ton fichier d'entête (.h), encore moins sous visual studio)

si tu compiles sous Turbo C, tu n auras pas ce probleme.

(iostream.h -> pas besoin dans ton cas) d ailleur besoin de ce fichier en C ? ..



Une petite question @ riri : bien que tu prétendes tres modestement que ton programme est petit, il est déjà énorme pour moi ; ainsi je souhaiterais savoir comment as-tu fait pour apprendre le c .
merci de ta reponse .

bai en fait le programme c'est pas moi qu'il l'ai fait je l'ai trouver dans un cours et je voulais le tester et puis ca marchait pas alors je suis venu demander pourquoi!!
Et sinon moi je trouve pas vraiment de bon cours!!!!
Voila merci a tous!!

ah ok! Je pensais que tu l'avais fait marcher ce programme (j'espère que tu sais au moins à quoi il sert :-P ). Deja est ce que tu as vérifié que tu possédais toutes les bibliotheques que tu utilises?
Sinon "srand()" et "rand" doivent etre mis à la place des "ramdom" je crois.

moi j'ai fait un programme en C...

//initialisation du random :
randomize();
//utilisation
i = random(19); // chiffre en 0 et 19

mais je ne sais plus la librairie à utiliser

edit : apparement la librairie conio.h est mal/pas gérée pas devC++

voila j'ai essayer de refaire un peux près le même code moi même mais il me dise tout le temps que le chiffre est plus petit:
voila mon code :
#include <stdlib.h>
#include <time.h>
#include <conio.h>
#include <stdio.h>

int main()
{
srand(time(NULL));
int a,b;
a = rand()%10;


do
{
printf("Entrez un chiffre entre 0 et 10 pour trouvez le chiffre aléatoire\n");
scanf("%d",b);

if(a<b)
{printf("Le chiffre qu'il faut trouver est plus petit");
printf("Appuyez sur un touche");
getch();
}
else
{
if(a>b)
{
printf("Le chiffre qu'il faut trouver est plus grand");
printf("Appuez sur une touche pour continuez");
getch();
}
}





} while (a!=b);
printf("Vous avez trouver le bon chiffre BRAVOO!!!");


getch();
return 0;


}

Citation :

TomS a écrit :
j'installe borland et je regarde à ça !

au fait pourquoi tu as : int main() ???
avec un void main (void), ça marcherait pas ?


le void main () marcherai, mais généralement on met "int main()" et le "return 0;" a la fin pr dire que tout c'est bien passé, ou "return code_erreur" s'il y a une erreur ds l'execution du prog ...

Citation :

riri a écrit :
par ex voila :
printf("Entrez un chiffre");
scanf("%d",x);
et puis comment faire pour afficher tout les chiffre entre 0 et X ???


n'oublie pas le &
sinon, pour l'affichage, un for fera bien l'affaire...

for(i=0;i<=x;i++)
{
printf("%d\n",i);
}

Voici une petite solution qui pourra te convenir sous windows mais non portable sous LINUX.


Citation :

#include <windows.h>
#include <mmsystem.h>
#pragma comment(lib, "winmm.lib")

int main() {

PlaySound ("chemin\du\fichier\wave.wav", NULL, SND_FILENAME | SND_SYNC);

return (0);
}




Mais ca peut devenir beaucoup plus complexe, et je serais incapable de rédiger un cours la-dessus.

Tu pourrais par exemple te renseigner sur la structure d'un fichier WAVE, MIDI ou autre, bref je n'aime pas la musique et je ne connais pas grand chose pour pas dire rien du tout dans le traitement de ces types de fichiers en C / C++.

encore une petite question :
quand on demande voulez vous entrez
donc
char oui_non;
printf("Voulez vous entrez o ou n");
scanf("%c",&oui_non);
if (oui_non==o) ==>> comment on fait ça !! est-ce que c'est bon pcq chez moi ca marche ps

voila mon code :
#include <stdio.h>
#include <stdlib.h>
#include <conio.h>
int main()
{
char oui_non;
printf("SLT");
printf("Voulez vous entrez o ou n");
scanf("%c",&oui_non);
if (oui_non=="o");
{
printf("SLT");
}
else
{
printf("AU REVOIR");
}
getch();
return 0;
}
voila merci

Bon alors je t'explike, tout le pb est au niveau du if:
1) il faut mettre un guillemet simple et pas double
2) Faut pas de point virgule après ton if :confused:
Voili voilou

Sinon met qques \n afin de sauter des lignes, ça sera plus clair et pis enfin le getch(); ne sert à rien quand j'utilise devC++, il faut une library speciale pour cette commande?

Citation :

#include <stdio.h>
#include <stdlib.h>
#include <conio.h>
int main()
{
char oui_non;
printf("SLT");
printf("Voulez vous entrez o ou n");
scanf("%c",&oui_non);
if (oui_non=="o"); -> pas de guillemets, ni de point-virguleif (oui_non == 'o') { ... } )
{
printf("SLT");
}
else
{
printf("AU REVOIR");
}
getch();
return 0;
}
[/b]


Citation :

Dev-C++ a écrit:

Executing gcc.exe...
gcc.exe "C:\Tests\idn\0\riritest.c" -o "C:\Tests\idn\0\riritest.exe" -I"C:\Dev-Cpp\include" -L"C:\Dev-Cpp\lib"
Execution terminated
Compilation successful



Oui désolé, c'etait histoire de lui montrer le code en entier. (bien vu).


Citation :

Fun4Ever a écrit :

(Tjs pas compris à quoi sert le getch(); , j'utilise la fonction system("PAUSE"); dans devC++ à la place)


La fonction getch(), attend une saisie au clavier, mais n'affiche pas le caractere a l'écran.

Pour l'effet inverse tu peux utiliser getchar().

Un exemple est plus parlant :

Citation :

#include <stdio.h>
#include <conio.h>

int main()
{

int c = getch();
printf ("caractere : %c\nvaleur decimale : %d\nvaleur hexadecimale : 0x%x\n\n", c, c, c);

int d = getchar();
printf ("caractere : %c\nvaleur decimale : %d\nvaleur hexadecimale : 0x%x\n\n", d, d, d);

return 0;
}
Lassé par la pub ? Créez un compte
Tom's guide dans le monde