Upload files to "/"

This commit is contained in:
Vichingo455 2025-01-31 12:30:45 +00:00
parent 65f82c4bda
commit c4a0bbf0ba
1 changed files with 103 additions and 0 deletions

103
verifica_3.cpp Normal file
View File

@ -0,0 +1,103 @@
/*
AUTORE: Manuel Vichi
Verifica struct
*/
#include <iostream>
#include <cstdlib>
#include <ctime>
using namespace std;
// Struct per la funzione 1a
typedef struct {
int nMulti7;
int nMagg30;
} Struct1a;
// Struct per le funzioni 2a
typedef struct {
char car;
int num;
} Struct2ab;
// Dichiarazione delle funzioni da implementare
void funzione0a(int arr[], int size);
Struct1a funzione1a(int arr[], int size);
int funzione2a(Struct2ab arr[], int size);
// Funzioni già implementate per stampa
void stampaArray(int arr[], int size) {
for (int i = 0; i < size; ++i) {
cout << arr[i] << " ";
}
cout << endl;
}
void stampaArrayStruct2ab(Struct2ab arr[], int size) {
for (int i = 0; i < size; ++i) {
cout << "{" << arr[i].car << ", " << arr[i].num << "} ";
}
cout << endl;
}
int main() {
srand(time(0)); // Inizializza il generatore di numeri casuali
// Funzione 0a
int arr[10];
funzione0a(arr, 10);
cout << "Array riempito con numeri pari casuali:" << endl;
stampaArray(arr, 10);
// Funzione 1a
Struct1a result1a = funzione1a(arr, 10);
cout << "\nNumero di multipli di 7: " << result1a.nMulti7 << endl;
cout << "Numero di valori > 30: " << result1a.nMagg30 << endl;
// Funzione 2a
Struct2ab structArr[5] = {{'a', 6}, {'b', 4}, {'e', 7}, {'o', 5}, {'u', 3}};
cout << "\nArray di struct (Struct2ab):" << endl;
stampaArrayStruct2ab(structArr, 5);
int countVocaliMag5 = funzione2a(structArr, 5);
cout << "\nElementi con vocale e num > 5: " << countVocaliMag5 << endl;
return 0;
}
void funzione0a(int arr[], int size) {
for (int i = 0; i < size; i++) {
int s = rand() % 1000 + 1;
if (s % 2 != 0) {
arr[i] = s + 1;
}
else {
arr[i] = s;
}
}
}
Struct1a funzione1a(int arr[], int size) {
Struct1a s;
s.nMulti7 = 0;
s.nMagg30 = 0;
for (int i = 0; i < size; i++) {
if (arr[i] % 7 == 0) {
s.nMulti7++;
}
if (arr[i] > 30) {
s.nMagg30++;
}
}
return s;
}
int funzione2a(Struct2ab arr[], int size) {
int returnValue = 0; //Inizializzazione valore di return
for (int i = 0; i < size; i++) {
if (arr[i].car == 'A' || arr[i].car == 'E' || arr[i].car == 'I' || arr[i].car == 'O' || arr[i].car == 'U' || arr[i].car == 'a' || arr[i].car == 'e' || arr[i].car == 'i' || arr[i].car == 'o' || arr[i].car == 'u') {
if (arr[i].num > 5) {
returnValue++;
}
}
}
return returnValue;
}