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

(Dev-C++)Probleme de prog

tommy_355
tommy_355
Niveau 10
30 mars 2004 à 12:25:22

Ca y est, je me suis mit a la prog,

je ne fais pas encore de jeux video mais des tout petit log et j´ai probleme :

sur un log avec mot de passe que j´ai creer, des que le mot de passe est entre windows dit qu´il y a une erreur et me demande d´envoyer un rapport d´erreur,

pour ceux qui veulent m´aider, voila le script :

  1. include < stdio.h>

int main ( void)
{
int motpasse;
int choix;

printf ( "Mot de passe requis :\n");
scanf ( "%d", X ) ;
if ( motpasse = X ) ;
{

printf ( "\n Bonjour, que veux tu faire ? \n");
printf ( "1 = calculatrice \n");
printf ( "2 = Quitter \n");
scanf ( "%d", choix);

};

};

et j´aimerais aussi savoir ce que veux dire " parse error before ´...´"

merci

MrGoTo
MrGoTo
Niveau 8
30 mars 2004 à 13:14:24

parse error c´est des erreurs dans la " ponctuation". Si je ne m´abuse parse signifie parenthèse. Ya donc un pb à ce niveau.
Ensuite je ne comprend pas pourquoi quand tu met l´accolade fermante d´une fonction, tu ajoute un point-virgule. Ce n´est pas nécéssaire.

Ruffi
Ruffi
Niveau 9
30 mars 2004 à 13:49:32

Attention :

if ( motpasse = X )
sa renvera toujours vrais, car tu fit une affectation

A mon avis, c´est plutot sa que tu veux faire : if ( motpasse == X )
maintenant tu fait le test

Et fait gaffe au pont virgule comme t´a dis MrGOTO

kokoala
kokoala
Niveau 7
30 mars 2004 à 13:52:22

scanf veut des adresses donc & avant le nom de la variable

dans le if c´est un == pour tester si c´est vrai ou pas.
un seul = envoie la valeur de X dans motdepasse, donc ce sera toujours juste, donc tu entreras toujours dans le if.

tu n´as pas déclaré X

MrGoTo
MrGoTo
Niveau 8
30 mars 2004 à 14:41:52

kokoala: tu n´es pas obliger de mettre le & dans le cas d´une chaine de caractère ou d´un tableau ( c´est pas le cas ici mais c´est pour étaler ma science lol).

tommy_355
tommy_355
Niveau 10
30 mars 2004 à 17:18:55

Merci
je vais essayer

tommy_355
tommy_355
Niveau 10
30 mars 2004 à 17:22:15

c´est bon, j´ai rectifier pour le if et pour les points virgules.

Mais ca me mets :"parse error at end of input"

MathieuN7
MathieuN7
Niveau 10
30 mars 2004 à 17:54:55

redonne le nouveau code plz :)

tommy_355
tommy_355
Niveau 10
30 mars 2004 à 17:57:56

ok

tommy_355
tommy_355
Niveau 10
30 mars 2004 à 17:59:27

voila :

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

int main ( void)
{
int motpasse;
int choix;

do
{
printf ( "Mot de passe requis :\n");
scanf ( "%d", motpasse);
while ( motpasse == X);
{

do
{
printf ( "\n Bonjour , que veux tu faire ? \n");
printf ( "1 = calculatrice \n");
printf ( "2 = Quitter \n");
scanf ( "%d", choix);
}
while ( choix = 2);

}
system ( "PAUSE");
return 0;
}

X = mot de passe

tommy_355
tommy_355
Niveau 10
30 mars 2004 à 18:34:11

He, Mathieun7, ca y est,
je l´ai poster le nouveau code

kokoala
kokoala
Niveau 7
30 mars 2004 à 18:47:33

t´as un } en trop ( entre while et system) et un { à l´envers et pas à la bonne ligne ( faut mettre avant le while)

ensuite, == dans le 2° while aussi ( ou ! =) mais il m´a pas l´air bien placé...

i_am_the_law
i_am_the_law
Niveau 6
30 mars 2004 à 18:49:35

Tu devrais lire un cours de C avant d´essayer de faire un truc complique comme ca.

Essaye deja de faire un programme tout bete qui affiche ce que l´utilisateur a tape.
" Genre entrez votre age"
" vous avez XXX ans"

Ensuite tu peux essayer de demander de rentrer le mot de passe et verifier s´il est correct ou non
" entre mot passe"
si c´est le bon
afficher " c´est ok"
sinon afficher " mauvais mot de passe"

Ensuite si tu arrives a faire ca, tu peux essayer de faire l´etape suivante qui est de faire une boucle tant que l´utilisateur ne rentre pas le bon mot de passe.

Les quelques trucs que tu devrais approfondir :
- les points virgules
- les variables ( ton X est jamais defini).
- les tests d´egalite
- la lecture au clavier
- les boucles do/while

J´espere que tu es bien conscient qu´en mettant int motpasse, ton mot de passe est un nombre et non une chaine de caractere.

tommy_355
tommy_355
Niveau 10
30 mars 2004 à 18:52:18

Merci

mais ca marche toujours pas,

a la ligne 32 ( ou il n´y a rien d´ecris)
sa mets " parse error at the end of output"

i_am_the_law
i_am_the_law
Niveau 6
30 mars 2004 à 19:01:12

Verifie la bonne place de tes accolades

la syntaxe c´est
do
{

qqc qui sera repete
}
while(....);

Verifie donc bien quelles sont correctement placees, pcq dans ton code y´en a certaines qui sont mal placees...

kokoala
kokoala
Niveau 7
30 mars 2004 à 19:10:34

je suis genereux aujourd´hui...

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

int main ( )
{
int motpasse;
int choix;

do
{
printf ( " Mot de passe requis :\n");
scanf ( " %d", &);
}while ( motpasse ! = 15); / /c´est pas bien 15 ?

do
{
printf ( " \n Bonjour , que veux tu faire ? \n");
printf ( " 1 = calculatrice \n");
printf ( " 2 = Quitter \n");
scanf ( " %d", &);
if(choix==1)
{
/ /tout ce qu´il ya à faire pour " calculatrice"
}
else
{}
}while ( choix ! = 2);
return 0;
}

tommy_355
tommy_355
Niveau 10
30 mars 2004 à 19:15:44

sinon pour i_am_the_law,

j´ai deja fait les deux premiers prog,
sinon j´ai deja pris un cours sur internet ( sur http://prografix.games-creators.org/doc_cat/94 )

et ma variable mot de passe est definie pour sortir de la boucle

et les points virgules, a quoi ils servent ?

merci pour les reponses

Crayon2000
Crayon2000
Niveau 8
30 mars 2004 à 19:18:01

tommy_355: Les points vigules fonct partie de la syntaxe C++/C. Ils servent à dire au compilateur la fin d´une ligne de commande.

i_am_the_law
i_am_the_law
Niveau 6
30 mars 2004 à 19:29:11

Je parlais des points virgule pcq dans ton 1er exemple tu avais ecris
if ( motpasse = X ) ;
{
. ..

Il ne faut pas en mettre ici, pcq ca compte comme une instruction et ca ne va pas faire ce a quoi tu t´attends.

Le tutorial que tu as montre, c´est un truc sur opengl.. Soit tu t´es trompe, soit tu devrais en chercher un autre ( par ex http://fvirtman.tripod.com/info/tuto/index.html )

Si tu avais fait les 2 premiers progs que je te disais, tu saurais que pour faire un test d´egalite c´est == et non =

tommy_355
tommy_355
Niveau 10
30 mars 2004 à 19:33:45

Merci

mais c´est pas le meme langage pour tous les compileurs ?

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