Upload files to "struct"

This commit is contained in:
Vichingo455 2025-01-30 16:23:28 +00:00
parent 009e79611c
commit 0119bcb670
1 changed files with 56 additions and 0 deletions

View File

@ -0,0 +1,56 @@
/*
AUTORE: Manuel Vichi
Elaborazione di Dati Studente
*/
#include <iostream>
using namespace std;
struct Studente{
char inizialeNome;
char inizialeCognome;
int matricola;
float media;
};
struct Risultato{
int matricola;
char esito;
};
void elaboraStudenti(struct Studente studenti[], size_t size, struct Risultato risultati[]) {
for (size_t i = 0; i < size; i++) {
risultati[i].matricola = studenti[i].matricola;
if (studenti[i].media >= 6.0f) {
risultati[i].esito = 'P';
} else {
risultati[i].esito = 'B';
}
}
}
int elaboraPromossi(struct Risultato risultati[], size_t size) {
int promossi = 0;
for (size_t i = 0; i < size; i++) {
if (risultati[i].esito == 'P') {
promossi++;
}
}
return promossi;
}
void stampa(struct Risultato risultati[], size_t size, int promossi) {
for (size_t i = 0; i < size; i++) {
cout << "Studente con matricola #" << risultati[i].matricola << " | Esito: " << risultati[i].esito << endl;
}
cout << "Numero di promossi: " << promossi << endl;
}
int main(void) {
struct Studente studenti[2];
struct Risultato risultati[2];
studenti[0] = {'M','V',1535574,8.2f};
studenti[1] = {'M','R',8456457,4.7f};
studenti[2] = {'M','V',2583562,6.0f};
elaboraStudenti(studenti,3,risultati);
stampa(risultati,3,elaboraPromossi(risultati,3));
return 0;
}