Concetti Chiave

  • Il codice definisce una struttura per memorizzare i dati di un paziente, inclusi nome, cognome, peso, altezza e data di nascita.
  • Viene implementata una funzione main per acquisire i dati di due pazienti utilizzando l'input da tastiera.
  • Il programma utilizza la funzione cin.getline per leggere stringhe di caratteri senza spazi, fino a una lunghezza massima specificata.
  • La differenza di età tra i due pazienti viene calcolata in base all'anno di nascita inserito e confrontato per determinare chi è più anziano.
  • Il codice include anche controlli per gestire l'input e l'output dei dati, ma presenta errori di sintassi nelle istruzioni di output.

#include

#include

#include

using namespace std;

struct data{

char anno[5];

char mese[3];

char giorno[3];

};

struct paziente{

char nome[21];

char cognome[21];

int peso;

int altezza;

data datan;

};

int main(){

paziente paz1, paz2;

Qual è l'acquisizione dati del primo paziente?

cout

cin.getline(paz1.nome, 21);

cin.getline(paz1.cognome, 21);

cout

cin.getline(paz1.datan.anno, 5);

cin.getline(paz1.datan.mese, 3);

cin.getline(paz1.datan.giorno, 3);

cin>>paz1.peso;

cin>>paz1.altezza;

cin.ignore();

Acquisizione dati del secondo paziente

cout

cin.getline(paz2.nome, 21);

cin.getline(paz2.cognome, 21);

cout

cin.getline(paz2.datan.anno, 5);

cin.getline(paz2.datan.mese, 3);

cin.getline(paz2.datan.giorno, 3);

cin>>paz2.peso;

cin>>paz2.altezza;

if(strcmp(paz1.datan.anno, paz2.datan.anno) > 0){

int annoint, eta;

annoint = atoi(paz2.datan.anno);

eta = 2014 - annoint;

cout

cout

cout

cout

cout

cout

cout

cout

cout

cout

}else{

int annoint, eta;

annoint = atoi(paz1.datan.anno);

eta = 2014 - annoint;

cout

cout

cout

cout

cout

cout

cout

cout

cout

cout

}

return 0;

}

Domande da interrogazione

  1. Quali dati vengono acquisiti per ciascun paziente?
  2. Per ogni paziente vengono acquisiti nome, cognome, data di nascita (anno, mese, giorno), peso e altezza.

  3. Come viene calcolata l'età dei pazienti nel programma?
  4. L'età viene calcolata sottraendo l'anno di nascita (convertito in intero) dall'anno corrente, che nel codice è fissato al 2014.

  5. Cosa succede se le date di nascita dei due pazienti sono diverse?
  6. Se le date di nascita sono diverse, il programma confronta gli anni e calcola l'età per ciascun paziente in base all'anno di nascita, stampando le informazioni relative.

Domande e risposte

Hai bisogno di aiuto?
Chiedi alla community