begin process at 2012 05 29 08:22:27
  Trouver un code source :
 
dans
 
Accueil > Forum > 

Archive C/C++

 > 

Archives

 > 

Au secours

 > 

Erreur de débutant..je suppose [;)]


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

Erreur de débutant..je suppose [;)]

mardi 9 novembre 2004 à 19:24:30 | Erreur de débutant..je suppose [;)]

bthivent

Bonjour !
Voilà j'ai un petit problème, qui me mène dans un mauvais état, mais qd même pas au bord du suicide lol...
j'ai une erreur dans mon code, en voici un bout :
int pgcd(int a, int b)
{
int r,c;

et l'erreur est à l'acolade ( { )
Comme vous l'avez pu remarquer, c'est une fonction
l'erreur c'est : error before `{' token
voilà, ca ça doit surement indiquer qqchose, non ?
enfin c'est mes premières hueres de programmations c++, donc j'ai du mal lol..
Enfin, merci !!

bthivent, jeune programmeur c++ dans ses débuts
mardi 9 novembre 2004 à 19:32:43 | Re : Erreur de débutant..je suppose [;)]

BruNews

Administrateur CodeS-SourceS
charche l'erreur bien plus haut, les infos du compilo sont parfois a interpreter.

ciao...
BruNews, MVP VC++
mardi 9 novembre 2004 à 19:47:07 | Re : Erreur de débutant..je suppose [;)]

bthivent

euh, plus haut..... ?
bon voici mon petit code, en fait je fais juste ca pour m'entrainer, la c'est pour trouver le pgcd.. bon je n'ai pas du tout vérifié le système que j'utilise, ca ca peut se faire après je pense ? mais donc je voulais compiler et donc erreur ligne 9
#include <iostream>
#include <stdlib.h>

using namespace std;

int main(int argc, char *argv[])
{
int pgcd(int a, int b)
{
int r,c;
while (r!=0)
{
a/b=c;
a%b=r;
a=c;
b=r;
}
return (c);
}

int a,b,pgcd;

count << "A?";
cin >> a;
count << "B?";
cin >> b;

pgcd = pgcd(a,b);

cout << "PGCD de " << a << " et de " << b << " est " << pgcd << endl;
system("PAUSE");
return 0;
}

j'ai vu aussi que j'avis quelquelques variables non définies :
r undeclared l.11
a l.13
b l.13
c l.13

et pour le while, j'ai fait complétement au pif en fait lol, car je programme en php, et je me suis demander avec espoir si ca allait marcher... Car pour l'instant les seuls tutoriaux que j'ai suivis étaient sur c++ pour les (gros) nuls... et le tutorial sur les structures de contrôle n'était pas encore fait...
Donc merci pour les réponses et votre aide [;]

bthivent, jeune programmeur c++ dans ses débuts
mardi 9 novembre 2004 à 19:57:17 | Re : Erreur de débutant..je suppose [;)]

yserver

Réponse acceptée !
ta fonction il faut que tu la declare avt le int main
eventuellemetn tu peux la definire plus tard par example a la fin de ton prog mais pas ds la fonction main
en c on ne peut declarer comme en fortran ou en pascal de subroutine
ca donnerais environ ca (pas verifier le reste

#include <iostream>
#include <stdlib.h>

using namespace std;
// Declaration et initialisation de la fonction pgcd
int pgcd(int a, int b)
{
int r,c;
while (r!=0)
{
a/b=c;
a%b=r;
a=c;
b=r;
}
return (c);
}

//Debut du program
int main(int argc, char *argv[])
{


int a,b,pgcd;

count << "A?";
cin >> a;
count << "B?";
cin >> b;

pgcd = pgcd(a,b);

cout << "PGCD de " << a << " et de " << b << " est " << pgcd << endl;
system("PAUSE");
return 0;
}


ou ca

#include <iostream>
#include <stdlib.h>

using namespace std;
// Declaration de la fonction pgcd
int pgcd(int a, int b);


//Debut du program
int main(int argc, char *argv[])
{


int a,b,pgcd;

count << "A?";
cin >> a;
count << "B?";
cin >> b;

pgcd = pgcd(a,b);

cout << "PGCD de " << a << " et de " << b << " est " << pgcd << endl;
system("PAUSE");
return 0;
}

//initialisation de la fonction
int pgcd(int a, int b);
{
int r,c;
while (r!=0)
{
a/b=c;
a%b=r;
a=c;
b=r;
}
return (c);
}

une fonction ne peut etre declare ds une autre fonction (la fonction main n'est qu'une fonction particuliere)
mardi 9 novembre 2004 à 20:03:32 | Re : Erreur de débutant..je suppose [;)]

yserver

je complete le message plus
toute variable doit etre declare avt d'etre utilise contrairement au php ou java qui permet de les declarer en ligne (les fonctions sont des variables a declarer aussi avt utilisation)
si tu declare les variables aau siens de la fonction elles n'auron qu'une porte local c'est a dre qu'elle n'existerons et n'auront une valeure qu'seins de cette fonction
donc la a et b sont a definir juste avant la declaration de ta fonction



#include <iostream>
#include <stdlib.h>

using namespace std;

//Declaration des variables
unsigned int a, b; //ou encore long a, b;

// Declaration et initialisation de la fonction pgcd
int pgcd(int a, int b)
{
int r,c;
while (r!=0)
{
a/b=c;
a%b=r;
a=c;
b=r;
}
return (c);
}

//Debut du program
int main(int argc, char *argv[])
{


int a,b,pgcd;

count << "A?";
cin >> a;
count << "B?";
cin >> b;

pgcd = pgcd(a,b);

cout << "PGCD de " << a << " et de " << b << " est " << pgcd << endl;
system("PAUSE");
return 0;
}

mardi 9 novembre 2004 à 20:10:01 | Re : Erreur de débutant..je suppose [;)]

bthivent

Eh bien merci ! mais maintenant, encore une erreur (comme si j'avais pu m'e ntier comme ça....)
voici mon ma nouvelle source :
#include <iostream>
#include <stdlib.h>

using namespace std;

int pgcd(int a, int b)
{
int r,c;
while (r!=0)
{
a/b=c;
a%b=r;
a=c;
b=r;
}
return (c);
}

int main(int argc, char *argv[])
{
int a,b,pgcd;

count << "A?";
cin >> a;
count << "B?";
cin >> b;

pgcd = pgcd(a,b);

cout << "PGCD de " << a << " et de " << b << " est " << pgcd << endl;
system("PAUSE");
return 0;
}

et j'ai de drôles d'erreur :
une erreur l.11 à ca
a/b=c;

erreur : "non-lvalue in assignment"
enfin je crois qu'il y a énormément de fautes lol..
il y a la même faute ligne 12.. et plein d'autres (l.23, 25 et 28)
28 je pense que c'est normal, l'erreur est "`pgcd' cannot be used as a function" et comme il y a une erreur dedans.. mais 23 et 25, c'est : "23 C:\Documents and Settings\Bertrand T\Mes documents\C++\Helloworld\main.cpp invalid operands of types `<unknown type>' and `const char[3]' to binary `operator<<' "
?? là je bloque ...
Merci pour votre support

bthivent, jeune programmeur c++ dans ses débuts
mardi 9 novembre 2004 à 20:13:43 | Re : Erreur de débutant..je suppose [;)]

bthivent

ah j'avais pas vu ton deuxième message. Mais j'ai essayé en déffinissant a et b avant, mais ca ne change rien à mon erreur...

bthivent, jeune programmeur c++ dans ses débuts
mardi 9 novembre 2004 à 20:34:05 | Re : Erreur de débutant..je suppose [;)]

bthivent

warf l'erreur de pigeon en fait !
j'ai trop fait de calculette lol !
(a/b sto-> c)... alala.. lol
bon ca va mieu, la j'ai l'erreur : "25 C:\Documents and Settings\Bertrand T\Mes documents\C++\Helloworld\main.cpp invalid operands of types `<unknown type>' and `const char[3]' to binary `operator<<' " pour ce bout de code :
count << "A?";

Donc je vais essayer de trouver ça seul, puis sinon, je l'enlèverai, ou changerai, enfin voila quoi...
eh bien Merci pour votre support !
@+ !

bthivent, jeune programmeur c++ dans ses débuts
mardi 9 novembre 2004 à 20:39:52 | Re : Erreur de débutant..je suppose [;)]

bthivent

j'en reviens même pas, mettre count au lieux de cout mdrrrr...
déoslé pour cette idiotue, @+

bthivent, jeune programmeur c++ dans ses débuts
mardi 9 novembre 2004 à 20:41:28 | Re : Erreur de débutant..je suppose [;)]

yserver

lvalue signifit left value
le msg du compilo signifit que l'expression a/b n'est pas un left value
pour le symbole "+" lvalu equivau a rvalue
mais pour certain operateur qui accepte 2 argument la gauche et la droite ne peuvent pas etre interchange c(est le ca de l'operateur d'affectation "="

attention cependant le symbole "=" peut correspondre a l'operateur de comparaison ou d'affectation ds les premier cas lvalue er rvalue peuvetn etre interverti pas dans l'autre

ds r=a%b "=" est un operateur d'affectation
ds while a=x "=" est un operateur de comparaison lvalue et rvalue peuvent etre interverti

pour plus d'info sur lvalue et rvalue voir sur http://www.developpez.com/ y a de tres bon tuto

1 2

Cette discussion est classée dans : code, int, erreur, débutant, suppose


Répondre à ce message

Sujets en rapport avec ce message

Erreur [ par LordBob ] Salut a tous,voila je voudrait faire un truc, mais je n'y arrive pas. Alors plutot que de vous expliquez ce que c'est, je vous montre le code.#include tableaux multidimentionnels [ par vecchio56 ] j'ai une petite question à propos des tableaux multidimentionnels: comment doit on déclarer un argument formel pour un tableau de ce type dans une fon Erreur de segmentation [ par cool2source ] Bon je dois encore avoir du mal avec les pointeurs ( visiblement)... Je compile le code ci-dessous avec gcc et le seul résultat que j'obtiens est : "E Probleme de Malloc sur un char ** [ par tomy46 ] Bonjour a tous, Avant tout, désole pour les accents (sauf ceux repris par la correction orthographique) mais je suis sur qwerty ... Bon voici mon pr Convert char** en int sous c [ par clavz40 ] Bonjour a tous, Je développe une petite application en c pour appareil de lecture de code barre dont je récupère les infos. J'avais besoin d'une fon code block erreur de linkage à la compilation [ par magslide ] Bonjours à tous le monde. Je travaille sous Code::Blocks en API Windows. Mon problème surviens lors de la compilation de mon project. J'ai le message sémaphore pour deux applications [ par boy09 ] Bonjour tout le monde, J'ai deux programmes, programme A écrit dans le fichier programme B lit à partir du fichier Je désire synchroniser entre ses de rectification dune code C et/ou aide sur l'algorithme [ par negets ] bonjour, besoin d'aide; j'aimerai dégager l'algorithme de ce code afin de le programmer sous matlab je connais plus rien en C et C++(je commence à lir stuctures qui s'apellent mutuellement [ par Daemonight ] Bonjour à tous, Ca fait un petit moment déjà que je me pose la question suivante : Comment faire pour que le code suivant fonctionne : [code=cpp] str combinaisons possibles C(n,k) [ par mervat ] bonjour, je veux faire la combinaison de n entiers, j'ai trouvé ce code dans un forum qui convient à ce que je veux: [code=cpp]#include #include usi


Nos sponsors


Sondage...

CalendriCode

Mai 2012
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

Consulter la suite du CalendriCode

A découvrir



 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,764 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales