Pour information, je suis complètement novice en C++ et en tout autre langage de programmation, donc si c'est possible, je serais heureux que vous puissiez me répondre d'une manière que je puisse comprendre :)
J'ai travaillé récemment sur un jeu simple de pierre, papier, ciseaux dans lequel j'ai 3 fonctions de base, une pour l'utilisateur, une pour le robot, et une qui choisit qui gagne le jeu.
Je sais qu'en utilisant system("cls")
n'est pas la meilleure solution, mais je n'ai pas l'intention de l'utiliser en dehors de Windows.
La fonction finale results()
doivent utiliser les variables x
y brand
des deux fonctions précédentes, mais je n'arrive pas à trouver un moyen de le faire. Et lorsque les gens l'expliquent ailleurs, ils le font de manière trop avancée pour moi. N'oubliez pas que je n'ai pas besoin de les modifier, je dois simplement les comparer pour déterminer le gagnant.
Je vais vous montrer mon code ici pour que vous puissiez voir à quoi vous avez affaire. N'hésitez pas à me faire part de vos commentaires sur d'autres points à améliorer.
#include <iostream>
#include <stdlib.h>
#include <time.h>
#include <windows.h>
using namespace std;
int bgame(), ugame(), results();
int main()
{
srand(time(NULL));
cout<<"Welcome to RPS!\n" <<"You know what to do.\n" <<"\n[ENTER]";
cin.ignore();
system("cls");
ugame();
return 0;
}
int ugame()
{
int x;
cout<<"Type a number from 1-3: ";
cin>> x;
cin.ignore();
if ( x == 1 )
{
cout<<"\nYou chose rock!\n" <<"\n[ENTER]";
cin.ignore();
bgame();
}
else if ( x == 2)
{
cout<<"\nYou chose paper!\n" <<"\n[ENTER]";
cin.ignore();
bgame();
}
else if ( x == 3 )
{
cout<<"\nYou chose scissors!\n" <<"\n[ENTER]";
cin.ignore();
bgame();
}
else
{
cout<<"\nTry again.\n" <<"\n[ENTER]";
cin.ignore();
ugame();
system("cls");
}
return 0;
}
int bgame()
{
int brand = rand()>>4;
system("cls");
cout<<"The bot will now choose an item.\n" <<"\n" <<"[ENTER]\n";
cin.ignore();
brand = rand() % 3 + 1;
if ( brand == 1)
{
cout<<"\nBot chose rock!";
cin.ignore();
results();
}
else if ( brand == 2 )
{
cout<<"\nBot chose paper!";
cin.ignore();
results();
}
else if ( brand == 3 )
{
cout<<"\nBot chose scissors!";
cin.ignore();
results();
}
else
{
cout<<"\nError.";
cin.ignore();
bgame();
system("cls");
}
return 0;
}
int results()
{
}