skeleton
10-03-2011, 13:58
Salve a tutti,
ho compilato questo programma allo scopo di ordinare un gruppo di dati immessi (nome-cognome atleti e il tempo della loro prestazione) in ordine crescente. Purtroppo quando vado a dichiarare le due array, una contenente il nome-cognome dell'atleta (è una matrice di tipo char), l'altra il tempo della prestazione di ogni singolo, come variabili globali Dev-C++ mi da errore ("variable-size type declared outside of any function").
Ecco il codice:
#include <iostream>
#include <string>
#include <conio.h>
using namespace std;
int MAX;
char atl[MAX][50];
double tempo[MAX];
void InserisciDati();
void Classifica();
void PubblicaClassifica();
void Scambia(char, char);
main(){
cout<<"GARA DI CORSA CAMPESTRE\n\n\n";
cout<<"Inserire Numero Partecipanti: ";
cin>>MAX;
InserisciDati();
cout<<"GARA DI CORSA CAMPESTRE\n\n\nPartecipanti: "<<MAX;
cout<<"Classifica Finale:";
Classifica();
PubblicaClassifica();
getch();
}
void InserisciDati(){
char testo1, testo2;
for(int i=1; i<=MAX; i++){
cout<<"\n\nInserire Nome "<<i<<"° Classificato: ";
cin>>testo1;
cout<<"\nInserire Cognome "<<i<<"° Classificato: ";
cin>>testo2;
testo1 = testo1 + ' ' + testo2;
atl[i][50]=testo1;
cout<<"\nInserire Tempo: ";
cin>>tempo[i];
}
}
void Classifica(){
for(int i=2; i<=MAX;i++)
for (int j=1; j<=MAX;j++)
if (atl[j][50] < atl[i][50]) {
Scambia(atl[i][50], atl[j][50]);
}
}
void Scambia(char a, char b){
char c;
c=a;
a=b;
b=c;
}
void PubblicaClassifica(){
for (int i=0; i<=MAX; i++)
(i=0) ? cout<<"Nome Cognome Tempo" : cout<<atl[i]<<" "<<tempo[i];
}
Potreste aiutarmi a risolvere il problema?
Grazie a tutti.
ho compilato questo programma allo scopo di ordinare un gruppo di dati immessi (nome-cognome atleti e il tempo della loro prestazione) in ordine crescente. Purtroppo quando vado a dichiarare le due array, una contenente il nome-cognome dell'atleta (è una matrice di tipo char), l'altra il tempo della prestazione di ogni singolo, come variabili globali Dev-C++ mi da errore ("variable-size type declared outside of any function").
Ecco il codice:
#include <iostream>
#include <string>
#include <conio.h>
using namespace std;
int MAX;
char atl[MAX][50];
double tempo[MAX];
void InserisciDati();
void Classifica();
void PubblicaClassifica();
void Scambia(char, char);
main(){
cout<<"GARA DI CORSA CAMPESTRE\n\n\n";
cout<<"Inserire Numero Partecipanti: ";
cin>>MAX;
InserisciDati();
cout<<"GARA DI CORSA CAMPESTRE\n\n\nPartecipanti: "<<MAX;
cout<<"Classifica Finale:";
Classifica();
PubblicaClassifica();
getch();
}
void InserisciDati(){
char testo1, testo2;
for(int i=1; i<=MAX; i++){
cout<<"\n\nInserire Nome "<<i<<"° Classificato: ";
cin>>testo1;
cout<<"\nInserire Cognome "<<i<<"° Classificato: ";
cin>>testo2;
testo1 = testo1 + ' ' + testo2;
atl[i][50]=testo1;
cout<<"\nInserire Tempo: ";
cin>>tempo[i];
}
}
void Classifica(){
for(int i=2; i<=MAX;i++)
for (int j=1; j<=MAX;j++)
if (atl[j][50] < atl[i][50]) {
Scambia(atl[i][50], atl[j][50]);
}
}
void Scambia(char a, char b){
char c;
c=a;
a=b;
b=c;
}
void PubblicaClassifica(){
for (int i=0; i<=MAX; i++)
(i=0) ? cout<<"Nome Cognome Tempo" : cout<<atl[i]<<" "<<tempo[i];
}
Potreste aiutarmi a risolvere il problema?
Grazie a tutti.