[resolu][newbie]programmation c++


#1

Bonjour

je voudrais programmer en C++

j’ai comme logiciel kate ou bluefish editor.

j’ai fait un apt-get install g++

mais la quand j’execute mon code esai.cpp
il m’indique pas mal d’erreur :

Dans le fichier inclus à partir de /usr/include/c++/3.3/backward/iostream.h:31,
à partir de esai.cpp:1:
/usr/include/c++/3.3/backward/backward_warning.h:32:2: attention : #warning This file includes at least one deprecated or antiquated header. Please consider using one of the 32 headers found in section 17.4.1.2 of the C++ standard. Examples include substituting the header for the <X.h> header for C++ includes, or instead of the deprecated header <strstream.h>. To disable this warning use -Wno-deprecated.
esai.cpp:4: error: erreur de syntaxe before {' token esai.cpp:6: error: erreur de syntaxe before<<’ token
esai.cpp:8: error: erreur de syntaxe before <<' token esai.cpp:9: error: erreur de syntaxe before>>’ token
esai.cpp:14: error: le C++ ISO interdit la déclaration de « x » sans type
esai.cpp:14: error: y' was not declared in this scope esai.cpp:15: error: le C++ ISO interdit la déclaration de « y » sans type esai.cpp:15: error:i’ was not declared in this scope
esai.cpp:16: error: erreur d’analyse syntaxique before }' token esai.cpp:18: error: erreur d'analyse syntaxique before;’ token
esai.cpp:18: error: le C++ ISO interdit la déclaration de « i » sans type
esai.cpp:18: error: erreur d’analyse syntaxique before )' token esai.cpp:22: error: erreur de syntaxe before<<’ token
esai.cpp:23:2: attention : pas de retour chariot à la fin du fichier

est ce quil ne compren pas la lib iostream.h ???

si vous pouvez m’aiguiller merci :slightly_smiling::slight_smile:


#2

Normalement il doit la comprendre je pencherais plus pour une erreur dans le code poste le que l’on puisse t’aider :slightly_smiling:

Sinon tu l’as compilé avec quelle commande ton prog?


#3

la commande est
g++ esai.cpp

mon code est :

[b]#include <iostream.h>

int main
{
int x,y,z,somme=0,i;
cout << “entrer la valeur de x:”;
cin >> x;
cout <<“entrer la valeur de y :” ;
cin >> y;

if (x>y)
{
i=x;
x=y;
y=i;
}

for (i=x;i<y;i=i+1)
{
somme=somme+i;
}
cout << sommme<<endl;
}
[/b]

et aussi a chaque fois que je lance kate par la cmd kate il me met pas mal d’erreur.
QPixmap: Cannot create a QPixmap when no GUI is being used
QPixmap: Cannot create a QPixmap when no GUI is being used
QPixmap: Cannot create a QPixmap when no GUI is being used
QPixmap: Cannot create a QPixmap when no GUI is being used
kbuildsycoca running…
kdecore (KAction): WARNING: KActionCollection::KActionCollection( QObject *parent, const char *name, KInstance *instance )
kio (KMimeType): WARNING: KServiceType::offers : servicetype ThumbCreator not found

si vous pouvez m’aider à comprendre merci :slightly_smiling:


#4

[code]#include
using namespace std;

int main(){
int x,y,z,i;
int somme = 0;
cout<<“entrer la valeur de x:”<<endl;
cin>>x;
cout<<“entrer la valeur de y :”<<endl;
cin>>y;

if (x>y){
	i=x;
	x=y;
	y=i;
}

for (i=x;i<y;i=i++){
	somme = somme + i;
}
cout << somme<<endl;
return 0;

}
[/code]tu avais quelques erreurs de syntaxe c’est tout
pour appeler iostream pas besoin du .h a la fin
tu avais 3 m a somme
et il te manquais l’allocation de memoire using namespace std;main retourne toujours quelque chose et il est aussi toujours du type int donc a la fin return 0;
ah oui une derniere chose toujours laissé une ligne vide de libre à la fin de ton fichier :slightly_smiling:


#5

ook j’avais pas vu le ‘m’ de somme

pour le .h je ne savais pas
merci

pour l’alloc de memoire ok le prof ne nous l’avais pas appris

merci aussi

je test


#6

bon j’ai teste :
il mindique l’erreur suivante

sai.cpp:23:2: attention : pas de retour chariot à la fin du fichier

je vais faire différents test
si vous avez différent test.

et pour les erreurs au lancement de kate.???

merci en tout cas


#7

En fait tu te met a la fin de ton fichier juste derriere ta derniere accolade et tu rajoute une ligne vide en pressant la touche entrée :slightly_smiling:

je compile comme ca moi

[quote]et pour les erreurs au lancement de kate.???
[/quote]Je ne sais pas trop poste un nouveau topic dans le forum general :slightly_smiling:


#8

merci pour ces info

j ai bien une ligne à la fin du fichier

mais pas d’amélioration


#9

Je viens de m’apercevoir d’une petite erreur dans le script ainsi qu’une petite optimisation
si le script fait bien la somme de tous les nombres compris entre x et y il faut rajouter un = dans la boucle.

et pour l’optimisation au lieu d’ecrire i=i+1 tu peut tout simplement mettre i++ ce qui donnerais donc

[code]#include
using namespace std;

int main(){
int x,y,z,i;
int somme = 0;
cout<<“entrer la valeur de x:”<<endl;
cin>>x;
cout<<“entrer la valeur de y :”<<endl;
cin>>y;

if (x>y){
i=x;
x=y;
y=i;
}

for (i=x;i<=y;i++){
somme = somme + i;
}
cout << somme<<endl;
return 0;
}
[/code]


#10

alors la je fais la commande :

et la pas de resultat il me rend la main dans le prompt

desolé de tant vous embeter :slightly_smiling:


#11

C’est normal il faut que tu compile comme ca!

g++ ex.cpp -o ex le deuxieme ex sera la nom de ton executable en faisant g++ ex.cpp -o ex.cpptu ecrase ton fichier source

ensuite pour le tester tu lance la commande ./ex


#12

trop merci ca marc he bien :slightly_smiling: :slightly_smiling:
desole de l embetement