Elenet.net
+2 voti

Prof ho provato a fare un programma con i vettori di strutture, ma c'è qualcosa che sbaglio perché eseguendo il programma non riesce. Mi può aiutare lei? Grazie mille!!!yes

Ecco il programma:

#include <iostream>
#include <cstring>
using namespace std;

struct persone {
                 string nome;
                 string cognome;
                 float altezza;
               };
               
struct automobile {
                    string marca;
                    int cilindrata;
                    string modello; 
                  };             

int main(int argc, char **argv)
{
  persone p1,p2,p3;   
  automobile a1,a2,a3;

  cin>> p1.nome;
  cin>> p1.cognome;
  cin>> p1.altezza;
  cin>> p2.nome;
  cin>> p2.cognome;
  cin>> p2.altezza;
  cin>> p3.nome;
  cin>> p3.cognome;
  cin>> p3.altezza;
  cin>> a1.marca;
  cin>> a1.cilindrata;
  cin>> a1.modello;
  cin>> a2.marca;
  cin>> a2.cilindrata;
  cin>> a2.modello;
  cin>> a3.marca;
  cin>> a3.cilindrata;
  cin>> a3.modello;
  
  persone p[5];
  
  automobile a[7];
  
  for (int i=0; i<5; i++)
  {
    cin>> p[i].nome;
    cin>>p[i].cognome;
    cin>>p[i].altezza; 
    
    if(p[i].altezza<=1.60)
    {
      cout<<" la persona è stata trovata ! " ;
      cout<< p[i].nome;
      cout<<"\n";
      cout<<p[i].cognome;
     }
  }
    
  for(int i=0; i<7; i++)
  {
      
  cin>>a[i].marca;
    cin>>a[i].cilindrata;
    cin>>a[i].modello;
    
    if(a[i].cilindrata>=1600)
    {
      cout<<" l'automobile è stata trovata !!" << a[i].marca;
     }
   
   }
    
    
    return 0;
}

quesito posto 15 Marzo 2017 in Classe terza da ChiaraCarli Corsista (49 punti)
  
#include <iostream>
#include <cstring>
using namespace std;

struct persone {
                 string nome;
                 string cognome;
                 float altezza;
               };
               
struct automobile {
                    string marca;
                    int cilindrata;
                    string modello;
                  };             

int main(int argc, char **argv)
{
  persone p1,p2,p3;   
  automobile a1,a2,a3;

  p1.nome= "luca";
  p1.cognome= "densio";
  p1.altezza=1.80;
  
   p2.nome= "rita" ;
  p2.cognome= "caleddi";
  p2.altezza=1.55;
  
   p3.nome= "anna";
  p3.cognome="lucchetto";
  p3.altezza=1.70;
  
   a1.marca="fiat";
  a1.cilindrata=1400;
  a1.modello="punto";
  
  a2.marca="renault";
  a2.cilindrata=1700;
  a2.modello="clio";
  
  a3.marca="opel";
  a3.cilindrata=2000;
  a3.modello="go";
  
  persone p[5];
  
  automobile a[7];
  
  for (int i=0; i<5; i++)
  {
    cin>> p[i].nome;
    cin>>p[i].cognome;
    cin>>p[i].altezza;
    
    if(p[i].altezza<=1.60)
    {
      cout<<" persona trovata" ;
      cout<< p[i].nome;
      cout<<"\n";
      cout<<p[i].cognome;
     }
  }
   
  for(int i=0; i<7; i++)
  {
      
  cin>>a[i].marca;
    cin>>a[i].cilindrata;
    cin>>a[i].modello;
   
    if(a[i].cilindrata>=1600)
    {
      cout<<" l'automobile è stata trovata !!" << a[i].marca;
     }
   
   }
   
   
    return 0;
}

1 Risposta

+1 voto
Risposta migliore
ESERCIZIO CORRETTO - DOMANI FAREMO DEGLI ESERCIZI UN PO' PIU' AVANZATI

#include <iostream>
#include <cstring>
using namespace std;

struct persone {
                 string nome;
                 string cognome;
                 float altezza;
               };
               
struct automobile {
                    string marca;
                    int cilindrata;
                    string modello;
                  };             

int main(int argc, char **argv)
{
 
 
  persone p[5];
 
  automobile a[7];
  int i;
 
 // inserimento di 5 persone
  for ( i=0; i<5; i++)
  {
      cout<<" inserisci nome ";
    cin>> p[i].nome;
     cout<<" inserisci cognome ";
    cin>>p[i].cognome;
    cout<<" inserisci altezza ";
    cin>>p[i].altezza;
}

// ricerca

for ( i=0; i<5; i++)
{
    if(p[i].altezza<=1.60)
    {
      cout<<" la persona è stata trovata ! " ;
      cout<< p[i].nome;
      cout<<"\n";
      cout<<p[i].cognome;
     }
  }
 
  // inserimento di 7 auto  
  for(int i=0; i<7; i++)
  {
      cout <<" inserisci marca auto";
  cin>>a[i].marca;
   cout <<" inserisci cilindrata";
    cin>>a[i].cilindrata;
     cout <<" inserisci modello";
    cin>>a[i].modello;
   }
   
   // ricerca
   for ( i=0; i<5; i++)
{
    if(a[i].cilindrata>=1600)
    {
      cout<<" automobile trovata con cilindrata superiore a 1600 =   " << a[i].marca;
     }
   
   }
    
    
    return 0;}
risposta inviata 15 Marzo 2017 da nicolo' guarino Esperto (687 punti)
Selezionata 16 Marzo 2017 da ChiaraCarli
Grazie prof!
Gia alcuni un po piu complessi vedo che li ha lasciati

Domande correlate

0 voti
2 risposte
quesito posto 17 Marzo 2017 in Classe terza da ChiaraCarli Corsista (49 punti) | 448 visite
0 voti
1 risposta
quesito posto 26 Marzo 2017 in Classe terza da ChiaraCarli Corsista (49 punti) | 129 visite
+2 voti
2 risposte
quesito posto 18 Marzo 2017 in Classe terza da Paolo Migliarba (31 punti) | 197 visite
778 domande
1,565 risposte
639 commenti
1,445 utenti