Questo sito utilizza cookies solo per scopi di autenticazione sul sito e nient'altro. Nessuna informazione personale viene tracciata. Leggi l'informativa sui cookies.
Username: Password: oppure
C/C++ - C++ Devo creare un codice per realizzare un programma con menu, classifica e punteggi di un campionato.
Forum - C/C++ - C++ Devo creare un codice per realizzare un programma con menu, classifica e punteggi di un campionato. - Pagina 3

Pagine: [ 1 2 3 4 ] Precedente | Prossimo
Avatar
nessuno (Normal User)
Guru^2


Messaggi: 6307
Iscritto: 03/01/2010

Segnala al moderatore
Postato alle 16:55
Lunedý, 09/05/2022
Qui

Codice sorgente - presumibilmente Plain Text

  1. for(j=0;j<5;j++)



j non Ŕ dichiarata.


Ha ragione il compilatore.

Queste

Codice sorgente - presumibilmente Plain Text

  1. v[i].punti=+1;
  2. v[i+1].punti=+1;
  3. v[i].punti=+3;



sono sbagliate, devono essere

Codice sorgente - presumibilmente Plain Text

  1. v[i].punti += 1;  ( oppure v[i].punti++; )
  2. v[i+1].punti += 1;   ( oppure v[i+1].punti++; )
  3. v[i].punti += 3;



Devi conoscere bene le basi della sintassi del linguaggio prima di scrivere codice, altrimenti Ŕ inutile dire che impazzisci.


Ultima modifica effettuata da nessuno il 09/05/2022 alle 17:00


Ricorda che nessuno Ŕ obbligato a risponderti e che nessuno Ŕ perfetto ...
---
Il grande studioso italiano Bruno de Finetti (uno dei padri fondatori del moderno Calcolo delle probabilitÓ) chiamava il gioco del Lotto Tassa sulla stupiditÓ.
PM Quote
Avatar
MrMind6767 (Normal User)
Newbie


Messaggi: 16
Iscritto: 30/04/2022

Segnala al moderatore
Postato alle 21:27
Lunedý, 09/05/2022
nonostante aver coorretto tutto non mi stampa la classifica, ma solo lo cout classifica

PM Quote
Avatar
MrMind6767 (Normal User)
Newbie


Messaggi: 16
Iscritto: 30/04/2022

Segnala al moderatore
Postato alle 22:53
Lunedý, 09/05/2022
Testo quotato

Postato originariamente da AldoBaldo:
Codice sorgente - presumibilmente C#

  1. #include<iostream>
  2. using namespace std;
  3.  
  4. struct partita {
  5.     string squ1;
  6.     string squ2;
  7.     int goals1;
  8.     int goals2;
  9. };
  10.  
  11. struct squadra {
  12.     string squad;
  13.     int punti;
  14. };
  15.  
  16. int menu(void);
  17. void inser(squadra v[]);
  18. void giocata(partita p[]);
  19. void classifica(squadra v[],partita p[],int vin,int per, int par);
  20.  
  21. int main() {
  22.     int scelta;
  23.     squadra sq[5];   //array di 5 per le 5 squadre
  24.     partita par[10]; //array di 10 per le 10 partite
  25.     int vinte=0;     //contatore delle vinte
  26.     int perse=0;     //contatore delle perse
  27.     int pareggi=0;   //contatore dei pareggi
  28.    
  29.     do {
  30.         menu();
  31.         cout<<"Cosa vuoi fare?\n"<<endl;
  32.         cin>>scelta;
  33.                
  34.         switch(scelta){
  35.             case 1:
  36.                 inser(sq);
  37.                 break;
  38.            
  39.             case 2:
  40.                 giocata(par);
  41.                 break;
  42.                
  43.             case 3:
  44.                 classifica(sq,par,vinte,perse,pareggi);
  45.                 break;
  46.            
  47.             case 4:
  48.                 break;
  49.            
  50.             case 5:
  51.                 break;
  52.         }
  53.     } while(scelta!=5);
  54. }
  55.  
  56.  
  57. int menu(void) {
  58.     cout<<"******GESTIONE CAMPIONATO****** "<<endl;
  59.     cout<<"1. Inserisci squadre "<<endl;
  60.     cout<<"2. Inserisci partita "<<endl;
  61.     cout<<"3. Mostra classifica "<<endl;
  62.     cout<<"4. Decreta vincitore "<<endl;
  63.     cout<<"5. Esci"<<endl;
  64. }
  65.  
  66. void inser(squadra v[]) {
  67.     cout<<"--------INSERIMENTO SQUADRE--------\n"<<endl;
  68.     for(int i=0;i<5;i++) {
  69.         cout<<"Inserisci il nome della squadra: ";
  70.         cin>>v[i].squad;
  71.         v[i].punti=0;
  72.     }
  73. }
  74.  
  75. void giocata(partita p[]) {
  76.     cout<<"--------INSERIMENTO PARTITA--------\n"<<endl;
  77.     int num;
  78.  
  79.     do {
  80.         cout<<"Inserisci un numero delle partite tra 1 e 10 "<<endl;
  81.         cin>>num;
  82.     } while((num<=0)||(num>10));
  83.  
  84.     for(int i=0;i<1;i++) {
  85.         cout<<"Inserisci il nome della 1"<<char (167)<<"squadra: ";
  86.         cin>>p[i].squ1;
  87.         cout<<"Inserisci il risutato della partita: "<<endl;
  88.         cin>>p[i].goals1;
  89.         cout<<"Inserisci il nome della 2"<<char (167)<<"squadra: ";
  90.         cin>>p[i].squ2;
  91.         cout<<"Inserisci il risutato della partita: "<<endl;
  92.         cin>>p[i].goals2;
  93.     }
  94. }
  95.  
  96. void classifica(squadra v[],partita p[],int vin,int per, int par) {
  97.     cout<<"--------CLASSIFICA--------\n";
  98.  
  99.     for(int i=0;i<10;i++) {
  100.         if(p[i].goals1>p[i].goals2) {
  101.             for(j=0;j<5;j++) {                  // in questo blocco j non ├Ę
  102.                 if(p[j].squ1==v[j].squad)       // dichiarato - per dichiararlo
  103.                     v[j].punti=v[j].punti+3;    // basta aggiungere int prima
  104.             }                                   // di j=0...
  105.         }
  106.         else if(p[i].goals1==p[i].goals2) {    
  107.             for(int j=0;j<5;j++ ) {             // ...come hai fatto qui
  108.                 if(p[i].squ1==v[j].squad)
  109.                     v[j].punti=v[j].punti+3;
  110.             }              
  111.        
  112.             v[i].punti=+3;
  113.         }
  114.         else if(p[i].goals1>p[i].goals2) {
  115.             v[i].punti=+1;
  116.             v[i+1].punti=+1;
  117.         }
  118.         else {
  119.             v[i].punti=+3;
  120.         }
  121.     }
  122. }



Pu├▓ essere stata una svista, ma se non ├Ę cos├Č l'argomento da riconsiderare riguarda l'├ámbito di visibilit├á delle variabili (in inglese lo trovi indicato come scope).


si una svista grazieee

PM Quote
Avatar
nessuno (Normal User)
Guru^2


Messaggi: 6307
Iscritto: 03/01/2010

Segnala al moderatore
Postato alle 16:08
Martedý, 10/05/2022
Non hai fatto le modifiche.

Manca la stampa della classifica.

Ultima modifica effettuata da nessuno il 10/05/2022 alle 16:10


Ricorda che nessuno Ŕ obbligato a risponderti e che nessuno Ŕ perfetto ...
---
Il grande studioso italiano Bruno de Finetti (uno dei padri fondatori del moderno Calcolo delle probabilitÓ) chiamava il gioco del Lotto Tassa sulla stupiditÓ.
PM Quote
Avatar
MrMind6767 (Normal User)
Newbie


Messaggi: 16
Iscritto: 30/04/2022

Segnala al moderatore
Postato alle 21:28
Martedý, 10/05/2022

Codice sorgente - presumibilmente C++

  1. void classifica(squadra v[],partita p[],int vin,int per, int par){
  2.         cout<<"--------CLASSIFICA--------\n";
  3.  
  4. for(int i=0;i<10;i++){
  5.  
  6.                 if(p[i].goals1>p[i].goals2){
  7.                        
  8.                         for(int j=0;j<5;j++){
  9.                        
  10.                                 if(p[j].squ1==v[j].squad){v[j].punti=v[j].punti+3;
  11.                                 }
  12.                         }
  13.         }       else if(p[i].goals1==p[i].goals2){
  14.                 for(int j=0;j<5;j++ ){
  15.                         if(p[i].squ1==v[j].squad){
  16.                                 v[j].punti=v[j].punti+3;
  17.                        
  18.        
  19.         }
  20.         }              
  21.        
  22.         v[i].punti+=3;  }
  23.         else if(p[i].goals1>p[i].goals2){
  24.                 v[i].punti+=1;
  25.                 v[i+1].punti+=1;
  26.                
  27.         }
  28. else{
  29.        
  30.         v[i].punti+=3;
  31. }       cout<<v[i].squad<<endl<<v[i].punti;
  32. }
  33.  
  34. }




Non in questo modo giusto?

PM Quote
Avatar
MrMind6767 (Normal User)
Newbie


Messaggi: 16
Iscritto: 30/04/2022

Segnala al moderatore
Postato alle 12:02
Sabato, 21/05/2022
Risolto

Ultima modifica effettuata da MrMind6767 il 21/05/2022 alle 12:07
PM Quote
Avatar
nessuno (Normal User)
Guru^2


Messaggi: 6307
Iscritto: 03/01/2010

Segnala al moderatore
Postato alle 14:21
Sabato, 21/05/2022
Grazie per la notizia


Ricorda che nessuno Ŕ obbligato a risponderti e che nessuno Ŕ perfetto ...
---
Il grande studioso italiano Bruno de Finetti (uno dei padri fondatori del moderno Calcolo delle probabilitÓ) chiamava il gioco del Lotto Tassa sulla stupiditÓ.
PM Quote
Avatar
MrMind6767 (Normal User)
Newbie


Messaggi: 16
Iscritto: 30/04/2022

Segnala al moderatore
Postato alle 16:49
Domenica, 22/05/2022

Codice sorgente - presumibilmente C#

  1. #include<iostream>
  2. #include <cstdlib>
  3. #define N 5
  4.  
  5. using namespace std;
  6.  
  7. struct partita{                                   //utilizzo due strutture una per il tipo partita e una per il tipo squadra
  8. string squ1;                                    
  9. string squ2;
  10. int goals1;
  11. int goals2;
  12. };
  13. struct squadra{
  14.         string squad;
  15.                 int punti=0;
  16.                
  17.                
  18.  
  19. };
  20.  
  21. int menu(void);
  22. void inser(squadra v[]);
  23. void giocata(partita p[],squadra v[]);
  24. void classifica(squadra v[]);
  25. void vincitore (squadra v[]);
  26.  
  27. int main(){
  28. int scelta;
  29.     squadra sq[5];//array di 5 per le 5 squadre
  30.         partita par[10];//array di 10 per le 10 partite
  31.  
  32.  
  33.            //uno switch per poter scegliere tra le possibilit├á del menu e un do while per far ripetere il menu, fino alla scelta 5 che lo arrestA
  34. do{
  35.                 menu();                        
  36.                         cout<<"Cosa vuoi fare?\n"<<endl;
  37.                 cin>>scelta;
  38.                
  39.                 switch(scelta){
  40.                         case 1:
  41.                        
  42.                         inser(sq);
  43.                                
  44.                                         break;
  45.                                 case 2 :
  46.                                         giocata(par,sq);
  47.                        
  48.                                         break;
  49.                                         case 3 :
  50.                                                 classifica(sq);
  51.                                                         break;
  52.                                                         case 4:
  53.                                                         vincitore(sq);
  54.                                                                 break;
  55.                                                                 case 5:
  56.                                                                
  57.                                                                         break;
  58.                 }
  59.         }while(scelta!=5);
  60.        
  61.        
  62. }
  63.  
  64. //funzione per la creazione del menu anche pi├╣ sistematico
  65. int menu(void){
  66.  
  67.     cout<<"******GESTIONE CAMPIONATO****** "<<endl;
  68.        
  69.         cout<<"1. Inserisci squadre "<<endl;
  70.         cout<<"2. Inserisci partita "<<endl;
  71.         cout<<"3. Mostra classifica "<<endl;
  72.         cout<<"4. Decreta vincitore "<<endl;
  73.         cout<<"5. Esci"<<endl;
  74.        
  75.  
  76. }
  77. //funzione per l'inserimento delle 5 squadre del campionato
  78. void inser(squadra v[]){
  79. cout<<"--------INSERIMENTO SQUADRE--------\n"<<endl;
  80. for(int i=0;i<5;i++){
  81.         cout<<"Inserisci il nome della squadra: ";
  82.         cin>>v[i].squad;
  83.         v[i].punti=0;
  84. }
  85. }
  86. //funzione per l'inserimento delle squadre che giocano per ciascuna delle 10 partite
  87. void giocata(partita p[],squadra v[]) {
  88. cout<<"--------INSERIMENTO PARTITA--------\n"<<endl;
  89.  
  90. int num;
  91.  
  92.     do {
  93.         cout<<"Inserisci un numero delle partite tra 1 e 10 "<<endl;
  94.         cin>>num;
  95.     } while((num<=0)||(num>10));
  96.  
  97.  
  98. for(int i=0;i<1;i++){
  99. cout<<"Inserisci il nome della 1"<<char (167)<<"squadra: ";
  100. cin>>p[i].squ1;
  101. cout<<"Inserisci il risutato della partita: "<<endl;
  102. cin>>p[i].goals1;
  103. cout<<"Inserisci il nome della 2"<<char (167)<<"squadra: ";
  104. cin>>p[i].squ2;
  105. cout<<"Inserisci il risutato della partita: "<<endl;
  106. cin>>p[i].goals2;
  107.  
  108.  if (p[i].goals1>p[i].goals2) {
  109.         for (int j=0; j<5; j++) {
  110.             if (p[i].squ1==v[j].squad) {
  111.                 v[j].punti=v[j].punti+3;}
  112.         }
  113.     }
  114.         else if (p[i].goals1==p[i].goals2) {
  115.                 for (int j=0; j<5; j++) {
  116.                     if (p[i].squ1==v[j].squad) {
  117.                         v[j].punti=v[j].punti+1;
  118.                        
  119.                     }
  120.                     if (p[i].squ1==v[j].squad) {
  121.                         v[j].punti=v[j].punti+1;
  122.                    
  123.                 }
  124.                
  125.             }
  126.         }
  127.         else {
  128.           for (int j=0; j<5; j++) {
  129.               if (p[i].squ1==v[j].squad) {
  130.                   v[j].punti=v[j].punti+3;
  131.               }
  132.         }
  133. }
  134. }
  135. }
  136.  
  137.  
  138.  
  139.  
  140.  
  141.  
  142.  
  143.  
  144. void classifica (squadra v[]) {
  145.     squadra temp;
  146.     int min;
  147.     for(int i=0; i<N-1; i++)
  148.     {
  149.     min=i;
  150.  
  151.     for(int j=i+1; j<N; j++)
  152.       if(v[j].punti>v[min].punti)
  153.         min=j;
  154.  
  155.     temp=v[min];
  156.     v[min].punti=v[i].punti;
  157.     v[i]=temp;
  158.     }
  159.     for (int i=0; i<5; i++) {
  160.         cout<<v[i].squad<<" "<<v[i].punti<<endl;
  161.     }
  162. }
  163. void vincitore (squadra v[]) {
  164.     for (int i=0; i<1; i++) {
  165.         if (v[i].punti>v[i+1].punti) {
  166.             cout<<"La squadra "<<v[0].squad<<" vince con "<<v[0].punti<<" punti "<<endl;
  167.         }
  168.            
  169.         }
  170.     }




Che ne pensate?

Ultima modifica effettuata da MrMind6767 il 22/05/2022 alle 16:51
PM Quote
Pagine: [ 1 2 3 4 ] Precedente | Prossimo