begin process at 2012 05 27 16:39:58
  Trouver un code source :
 
dans
 
Accueil > 

Code

 > 

Chaîne de caractères

 > GESTION D'UN HIGHSCORE [VERSION 2, TOUT COMPILATEUR]

GESTION D'UN HIGHSCORE [VERSION 2, TOUT COMPILATEUR]


 Information sur la source

Note :
Aucune note
Catégorie :Chaîne de caractères Niveau :Initié Date de création :10/02/2002 Date de mise à jour :14/02/2002 19:41:48 Vu :2 937

Auteur : guguy

Ecrire un message privé
Commentaire sur cette source (0)
Ajouter un commentaire et/ou une note

 Description

Ce programme gère un highscore à l'aide de 2 fichiers, l'un contenant les scores et l'autres les noms.  

Source

  • #include <iostream>
  • #include <fstream>
  • #include <string>
  • #include <cstdlib>
  • using namespace std;
  • void reset(void)
  • {
  • int score[10];
  • string name[10];
  • fstream file("highscore.txt", ios::out);
  • if(file.is_open())
  • {
  • for(int i=0;i<10;i++)
  • {
  • score[i]=0;
  • file << score[i] << " ";
  • }
  • file.close();
  • }
  • fstream file2("highscorename.txt", ios::out);
  • if(file2.is_open())
  • {
  • for(int i=0;i<10;i++)
  • {
  • name[i]="------------";
  • file2 << name[i] << " ";
  • }
  • file2.close();
  • }
  • exit(1);
  • }
  • int main()
  • {
  • cout << "\033[2J";
  • int score[10];
  • string name[10];
  • int morethan;
  • int newscore;
  • string newname;
  • char reponse;
  • cout << "Ancien ou Reset? (a pour ancien, r pour reset)";
  • cin >> reponse;
  • switch(reponse)
  • {
  • case'a':
  • break;
  • case'r':
  • reset();
  • default:
  • break;
  • };
  • cout << "Nouveau score : ";
  • cin >> newscore;
  • cout << "Nom : ";
  • cin >> newname;
  • fstream file("highscore.txt", ios::in | ios::out);
  • if(file.is_open())
  • {
  • for(int i=0;i<10;i++)
  • {
  • file >> score[i];
  • }
  • file.seekg(0);
  • for(int i=0;i<10;i++)
  • {
  • if(score[i]<newscore) { morethan=i; }
  • }
  • score[morethan-1] = score[morethan];
  • score[morethan] = newscore;
  • file.seekg(0);
  • for(int i=0;i<10;i++)
  • {
  • file << score[i] << " ";
  • }
  • file.close();
  • }
  • fstream file2("highscorename.txt", ios::in | ios::out);
  • if(file2.is_open())
  • {
  • for(int i=0;i<10;i++)
  • {
  • file2 >> name[i];
  • }
  • name[morethan-1]=name[morethan];
  • name[morethan]=newname;
  • file2.seekg(0);
  • for(int i=0;i<10;i++)
  • {
  • file2 << name[i] << " ";
  • }
  • file2.close();
  • }
  • cout << "Highscore :" << '\n';
  • for(int i=0;i<10;i++)
  • {
  • cout << name[i];
  • cout << "\t\t\t\t" << score[i] << '\n';
  • }
  • }
#include <iostream>
#include <fstream>
#include <string>
#include <cstdlib>

using namespace std;

void reset(void)
{
int score[10];
string name[10];
fstream file("highscore.txt", ios::out);
if(file.is_open())
{
for(int i=0;i<10;i++)
{
score[i]=0;
file << score[i] << " ";
}
file.close();
}
fstream file2("highscorename.txt", ios::out);
if(file2.is_open())
{
for(int i=0;i<10;i++)
{
name[i]="------------";
file2 << name[i] << " ";
}
file2.close();
}
exit(1);
}

int main()
{
cout << "\033[2J";
int score[10];
string name[10];

int morethan;
int newscore;
string newname;
char reponse;

cout << "Ancien ou Reset? (a pour ancien, r pour reset)";
cin >> reponse;
switch(reponse)
{
case'a':
break;
case'r':
reset();
default:
break;
};

cout << "Nouveau score : ";
cin >> newscore;
cout << "Nom : ";
cin >> newname;

fstream file("highscore.txt", ios::in | ios::out);
if(file.is_open())
{
for(int i=0;i<10;i++)
{
file >> score[i];
}
file.seekg(0);
for(int i=0;i<10;i++)
{
if(score[i]<newscore) { morethan=i; }
}
score[morethan-1] = score[morethan];
score[morethan] = newscore;

file.seekg(0);
for(int i=0;i<10;i++)
{
file << score[i] << " ";
}
file.close();
}
fstream file2("highscorename.txt", ios::in | ios::out);
if(file2.is_open())
{
for(int i=0;i<10;i++)
{
file2 >> name[i];
}
name[morethan-1]=name[morethan];
name[morethan]=newname;
file2.seekg(0);
for(int i=0;i<10;i++)
{
file2 << name[i] << " ";
}
file2.close();
}
cout << "Highscore :" << '\n';
for(int i=0;i<10;i++)
{
cout << name[i];
cout  << "\t\t\t\t" << score[i] << '\n';
}
}

 Conclusion

Il se compile très bien sous g++ 2.95, je ne sais pas pour les autres compilo.  


 Sources du même auteur

CALCULE DU NOMBRE DE DIAGONALES D'UN POLYGONE EN FONCTION DU...
NOMBRE DE LIGNE DANS UN FICHIER [VERSION C++]
Source avec Zip PROGRAMME DE CALCULE DE LA DISTANCE ENTRE DEUX POINTS SUR UN...
TUTORIAL SUR L'UTILISATION DU TYPE VA_LIST
MASTERMIND NUMERIQUE [VERSION 2][TOUT COMPILATEUR]

 Sources de la même categorie

CALCUL DE CLEF RIB par Renfield
Source avec Zip [C] WD_STRING V2.2 par cyberripper
Source avec Zip LES STRING EN C, AFFECTATION, CONCATÉNATION, SPLIT, ... par appranting
Source avec Zip [C] WD_STRING V1.9 par cyberripper
Source avec Zip LIBRAIRIE LANGUAGES par astro53

Commentaires et avis

Aucun commentaire pour le moment.

 Ajouter un commentaire




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,920 sec (3)

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