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 2

Pagine: [ 1 2 3 4 ] Precedente | Prossimo
Avatar
MrMind6767 (Normal User)
Newbie


Messaggi: 16
Iscritto: 30/04/2022

Segnala al moderatore
Postato alle 15:24
Giovedì, 05/05/2022
Testo quotato

Postato originariamente da nessuno:
Il numero della partita va in una variabile intera

int np;
cin >> np;

Non si capisce cosa vuoi fare con il while seguente.


Grazie avevo sistemato poi. Comunque con il while analizzo se viene inserito  un numero tra 1 e 10 delle partite


Codice sorgente - presumibilmente C/C++

  1. cout<<"--------INSERIMENTO PARTITA--------\n"<<endl;
  2. int num;
  3.  
  4.  
  5. do{
  6. cout<<"Inserisci un numero delle partite tra 1 e 10 "<<endl;
  7. cin>>num;
  8. }
  9. while((num<=0)||(num>10));


PM Quote
Avatar
nessuno (Normal User)
Guru^2


Messaggi: 6403
Iscritto: 03/01/2010

Segnala al moderatore
Postato alle 19:02
Giovedì, 05/05/2022
Ma non puoi usare un indice che va da 1 a 10... dovrà essere tra 0 e 9


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:06
Giovedì, 05/05/2022
Testo quotato

Postato originariamente da nessuno:
Ma non puoi usare un indice che va da 1 a 10... dovrà essere tra 0 e 9


In che senso scusa?
Come ho fatto mi fa inserire da 1 a 10, nè superiore di 10 nè inferiore a 1

PM Quote
Avatar
nessuno (Normal User)
Guru^2


Messaggi: 6403
Iscritto: 03/01/2010

Segnala al moderatore
Postato alle 21:40
Giovedì, 05/05/2022
Nel senso che poi non puoi usare num come indice ma num-1


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 23:07
Giovedì, 05/05/2022
aah okok , allora come indice num-1

PM Quote
Avatar
MrMind6767 (Normal User)
Newbie


Messaggi: 16
Iscritto: 30/04/2022

Segnala al moderatore
Postato alle 15:52
Domenica, 08/05/2022
Sto impazzendo...
Adesso ho provato a far fare l'analisi delle partiti per attribuirgli poi punti ma mi dice che j non è dichiarata e non capisco in che senso.
Sempre nella parte della classifica



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


PM Quote
Avatar
AldoBaldo (Member)
Guru


Messaggi: 700
Iscritto: 08/01/2015

Segnala al moderatore
Postato alle 22:29
Domenica, 08/05/2022
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).

Ultima modifica effettuata da AldoBaldo il 08/05/2022 alle 22:30


ATTENZIONE! Sono un hobbista e l'affidabilità delle mie conoscenze informatiche è molto limitata. Non prendere come esempio il codice che scrivo, perché non ho alcuna formazione accademica e rischieresti di apprendere pratiche controproducenti.
PM Quote
Avatar
AldoBaldo (Member)
Guru


Messaggi: 700
Iscritto: 08/01/2015

Segnala al moderatore
Postato alle 23:56
Domenica, 08/05/2022
Codice sorgente - presumibilmente Plain Text

  1. Quando scrivi
  2.  
  3.     v[i].punti=+1; (e simili)
  4.  
  5. intendi effettivamente
  6.  
  7.     v[i].punti=+1; oppure
  8.     v[i].punti+=1;


Ultima modifica effettuata da AldoBaldo il 08/05/2022 alle 23:57


ATTENZIONE! Sono un hobbista e l'affidabilità delle mie conoscenze informatiche è molto limitata. Non prendere come esempio il codice che scrivo, perché non ho alcuna formazione accademica e rischieresti di apprendere pratiche controproducenti.
PM Quote
Pagine: [ 1 2 3 4 ] Precedente | Prossimo