Problème de code...

Fermé
MrTrickxy Messages postés 13 Date d'inscription samedi 21 septembre 2013 Statut Membre Dernière intervention 18 juin 2014 - 29 janv. 2014 à 16:57
sambia39 Messages postés 610 Date d'inscription vendredi 31 juillet 2009 Statut Membre Dernière intervention 9 février 2023 - 31 janv. 2014 à 13:13
Bonjour à tous,

Je débute à peine l'apprentissage du langage C++ et je ne comprends pas ce qui est faux :

#include <iostream>
int const nombreMeilleursScores(5);
int meilleursScores[nombreMeilleursScores];

meilleursScores[0] = 118218;
meilleursScores[1] = 100432;
meilleursScores[2] = 87347;
meilleursScores[3] = 64523;
meilleursScores[4] = 31415;

for(int i(0); int i<nombreMeilleursScores; ++i)
{
cout << meilleursScores[i] << endl;
}

S'affiche alors,
meilleursScores
n'est pas un type, alors que je l'ai déclaré précédemment. Que dois-je faire ?

Je vous remercie d'avance.
A voir également:

4 réponses

buyaman Messages postés 694 Date d'inscription mardi 3 décembre 2013 Statut Membre Dernière intervention 16 janvier 2019 206
29 janv. 2014 à 17:01
bonjour,

essaye avec ça

#include <iostream>
int const nombreMeilleursScores[5];
int meilleursScores[nombreMeilleursScores];

meilleursScores[0] = 118218;
meilleursScores[1] = 100432;
meilleursScores[2] = 87347;
meilleursScores[3] = 64523;
meilleursScores[4] = 31415;

for(int i = 0; int i<nombreMeilleursScores; ++i)
{
cout << meilleursScores[i] << endl;
}

cordialement
0
Utilisateur anonyme
29 janv. 2014 à 17:08
nombreMeilleursScores n'est pas un tableau mais un entier ...
0
Utilisateur anonyme
29 janv. 2014 à 17:10
salut,

le problème est que tu assigne tes valeurs en deho d'un espace de traitement je pense.

Ecris nous tout ca dans main plutot :



#include <iostream>
int const nombreMeilleursScores(5);         
int meilleursScores[nombreMeilleursScores];   


int main
{
meilleursScores[0] = 118218;  
meilleursScores[1] = 100432;  
meilleursScores[2] = 87347;   
meilleursScores[3] = 64523; 
meilleursScores[4] = 31415;   

for(int i(0); int i<nombreMeilleursScores; ++i)
{
    cout << meilleursScores[i] << endl;
}

system("PAUSE");
}


naga
0
ElementW Messages postés 4816 Date d'inscription dimanche 12 juin 2011 Statut Contributeur Dernière intervention 5 octobre 2021 1 228
Modifié par gravgun le 29/01/2014 à 17:43
naga, je peux te massacrer pour avoir osé mettre
system("PAUSE");
?
Surtout que ça se fait aussi facilement de manière standard:
std::getchar();

Et t'as oublié les parenthèses du
main
.

Et on ne met pas
int
devant le i de la 2e partie du
for
.

#include <iostream>
#include <cstdio>
const int nombreMeilleursScores(5);         
int meilleursScores[nombreMeilleursScores];   

int main() {
    meilleursScores[0] = 118218;  
    meilleursScores[1] = 100432;  
    meilleursScores[2] = 87347;   
    meilleursScores[3] = 64523; 
    meilleursScores[4] = 31415;   

    for(int i = 0; i<nombreMeilleursScores; ++i) {
        std::cout << meilleursScores[i] << std::endl;
    }

    std::getchar();
    return 0;
}


from human import idiocy
del idiocy
0
Utilisateur anonyme
30 janv. 2014 à 07:55
pour ce qui est du system, c'est plutot une vieille habitude pour le débug car je m'en f*** mais c'est vrai que c'est à éviter en cas de réponse =p

bon sinon c'est surtout des copies trop rapides ... au moins ton code est plus propre et indenté ^^ (j'avais pas le temps de tester une compil -_-')
0
sambia39 Messages postés 610 Date d'inscription vendredi 31 juillet 2009 Statut Membre Dernière intervention 9 février 2023 49
31 janv. 2014 à 10:45
Bonjour
Une petite remarque, la commande
système("PAUSE")
est tout à fait correcte, pour afficher le résultat d'une portion de code, ou en mode débogage, Elle fait appel au système d'exploitation pour mettre notre système en pause, et demande par la suite l'intervention de l'utilisateur pour continuer. Sur certains systèmes le résultat de l'affichage n'est pas forcément évident à voir, car la fenêtre se ferme automatiquement dès la fin de l'instruction, exemple Windows, donc il y a aucune raison de ne pas utiliser
system(" PAUSE ")
, contrairement à
std::getchar()
qui attend une entrée de la part de l'utilisateur, celui-ci utilise le flux d'entrée du clavier, ce qui force le programmeur à vider à chaque fois le buffer pour une saisie correcte, pour la suite d'une instruction.

Et cette ligne
 int const nombreMeilleursScores(5);
je ne sais grand chose sur ton code mais sert à quoi ?

#include <iostream>

const int iMScore=5;		/* constante */

int main(void){
	
	int meilleursScores[iMScore]={0};  	/* initialisation */ 
	meilleursScores[0] = 118218;  
	meilleursScores[1] = 100432;  
	meilleursScores[2] = 87347;   
	meilleursScores[3] = 64523; 
	meilleursScores[4] = 31415;   

	/* affichage */
	for(int i=0;i<iMScore;i++)
    	   std::cout<<meilleursScores[i]<<std::endl;
    
	return 0;
}

0
ça sert a afficher des nombre en entier.
0
sambia39 Messages postés 610 Date d'inscription vendredi 31 juillet 2009 Statut Membre Dernière intervention 9 février 2023 49
31 janv. 2014 à 13:13
Ok mais elle est fausse ta fonction, car si tu veux afficher que des valeurs ou autre msg par exemple, tu doit utiliser une fonction qui renvoie rien ? hors dans le cas de ton prototype elle renvoie un entier pourquoi ??, Sachant que, bien plus loin la boucle affichage les éléments de ton tableau, Perso je vois pas l'utilité de cette fonction explique moi.
0