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

projet info, merci de m aider svp

niak85
niak85
Niveau 3
31 octobre 2005 à 20:35:50

Salut tout le monde. Depuis cette année j´ai des cours d´info et nous devons savoir prgrammer en... c++. Ca va je crois que je suis pas trop nul encore , pour notre premier projet a réaliser je m´en suis sorti sauf que quand je l´essaie et bien il me reste 2 fautes avant de le compiler.. et ces fautes je ne les voie pas dutout, j ai beau passer du temps dessus... Je me demandais si une bonne ame pourrais jeter un coup d´oeuil, meme si ca va parrai trés bete, svp, je ne fais que commencer. Merci d´avance pour votre aide. Alors voici mon projet

On vous demande de réaliser un programme qui gère et affiche les résultats d’un match de tennis. L’utilisateur entre au clavier, à l’issue de chaque échange, le numéro du joueur (1 ou 2) qui marque le point, et le programme affiche un compte-rendu du score actuel : sets, jeux et points de chacun des deux joueurs. C´est un match de tennis avec les vrais regles, sauf que l´avantage est matérialiser pour le joueur qui a 45/ : S J P Joueur 1 : 2 4 30 Joueur 2 : 1 5 15 Les règles à utiliser dans le cadre de ce programme sont les suivantes : • pour gagner le match, un joueur doit gagner 3 sets ; • pour gagner un set, un joueur doit gagner 6 jeux, et avoir au moins 2 jeux d’avance sur son adversaire ; • au sein d’un jeu, un joueur gagnant un échange passe successivement de 0 à 15 points, puis à 30, et enfin à 40. Une fois à 40, s’il marque, • il gagne le jeu si l’autre joueur a 30 points ou moins ; • il passe à 45 (représentant l’avantage d’une partie traditionnelle) si l’adversaire a lui aussi 40 ; • il fait revenir l’adversaire à 40 si ce dernier avait 45 points. Enfin, si un joueur a 45 points et qu’il marque, il remporte le jeu.

Et voici mon programme:

  1. include<iostream>

using namespace std;
int main(int argc, char*const argv[]){
int a,b,c,d,e,f,g;
cin>>b>>c>>d>>e>>f>>g;
b=0;
c=0;
d=0;
e=0;
f=0;
g=0;
while (cin>>a&&d<3&&g<3)// la boucle se met en route que si le nombre de set
gagnés par un des deux joueurs est inférieur à 3.
if (a==1){// on rentre soit 1 soit 2 suivant le joueur qui gagne le point.
if (b<30)
b+=15;//tant que le joueur n´a pas 30 les points vont de 15 en 15.
else(b>=30){
if (b==30)
b+=10;//le joueur ,qui à dejà 30, ne récolte plus que 10 points
else (b>30){//on arrive au cas des avantages!!!
if (e==40)
b+=5;
else (e!=40){
if (e<40){
c+=1;
b=0;//le jeu est gagné.
}
else (e==45){//course d´avantages, 2 balles gagnées d´écart.
b+=5;
e-=5;
}
}
}
}
}
if (c==6&&f<=4)||(c>6&&c=f+2){
d+=1;
c=0;//6 jeux ou 2 de plus que l´adversaire gagnés = 1 set gagné
}
if (a==2){
e=b;
f=c;
g=d;//si le joueur 2 gagne, la boucle est la même qu´au-dessus mais les
variables changent.
}

cout<<P<<J<<S<<endl<<b<<c<<d<<endl<<e<<f<<g<<;//
on indique le résultat.
return 0;
}
Merci beaucoup

Kilyn_
Kilyn_
Niveau 10
31 octobre 2005 à 20:49:51

C´est des fautes de compilation c´est ça ? tu peux nous copier/coller ça s´il te plaît ?

dnob700
dnob700
Niveau 10
31 octobre 2005 à 20:50:01

Analyser la logique d´un programme est long et fastidieux.
Peut-être qu´il suffit de compiler le programme pour voir le problème, mais avec la déformation de la mise en page du forum c´est ennuyeux aussi.

Le mieux (et c´est toujours le mieux) dans ce genre de problème c´est de donnée les erreurs renvoyé par le compilo.

Comme ça on peut t´aider de la manière la plus efficaces pour tout le monde.

Bon, mais je crois pas que le compilo sache convertir facilement une référence vers un objets istream en un boolean. Je te conseilel donc de sortir de (cin >> a) du premier if, ça n´a aucun sens car ça renvoie une reférence vers cin. Si tux veux avoir la valeurs a, où bien tu la lis hors du test ou bien tu écrit (mais ça n´est pas une bonne méthode car elle est très peu lisible :
if ((cin>>a,a)&&...)

niak85
niak85
Niveau 3
01 novembre 2005 à 13:20:36

Merci dnob. Mais quand j´ai fais mon programme, c´etait plus structurer que ca et c´est lors du copier/coller qu´il ma tout remit sur une ligne. Mais c´est juste mon compilateur qui me met erreur a la ligne 7 et la 22?? Si la 7 n´est pas bonne je vois pas pourquoi la 6 ne l´ai pas non plus car c´est la même. Et la 22 ca doit etre un probleme de synthaxe, mais dans mon cours c´est mis commme ça. Vérifier pas la logique du programme, ca vous prendrai en effet trop de temps et de toute facon ce n´est pas sur ca ke nous somme coté. Merci beaucoup a vous.
Niak

dnob700
dnob700
Niveau 10
01 novembre 2005 à 13:42:43

Le preblème n´est as que ce soit sur une ligne ou pas (ça le compilo s´en fout) mais de mettre un cin à l´itnérieur d´un test pour une boucle while, c´est affreux et ça n´a pas de sens.

Sinon à la ligne 22 (ou à eu près) tu as effectivement une erreur :
mise à part le fait que tu fasse des dizaines de test sans aucune ouverture de crochet, donc c´est très dur à lire (mais peut-être qu´avec l´indentation c´est plus facile (la prochaine fois, mets ton code là http://rafb.net/paste/ )), mais de plus tu n´a pas le droi d´écrire :

if (truc)
machin;
else (bidule)
chose;

car après un else, il faut directement mettre chose, c´est à dire qu´il faut directement mettre l´action a effectué si le truc du premier if est faux.
Si tu veux tester quelque chose d´autre, tu as le droit de la faire mais il faut remettre if :
if (truc)
machin;
else if (bidule)
chose;

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