int valore; // Inizializzazione di una varibile di tipo int
double decimale; // Inizializzazione di una varibile di tipo double
float decimale; // Inizializzazione di una varibile di tipo float
char carattere; // Inizializzazione di una varibile di tipo char

// Funzione per l'ordinamento di variabili dello stesso tipo
qsort(array, numero_elementi, sozeof(tipo), funzione_comparazione);

// Funzione qsort per l'ordinamento di varibili di tipo int
comparazione_int(const void *a, const void *b) {
	const nome_struct *puntatoreA = (const nome_struct *)a;
	const nome_struct *puntatoreB = (const nome_struct *)b;
	
	return puntatoreA->valore - puntatoreB->valore;
}

// Funzione qsort per l'ordinamento di varibili di tipo double
comparazione_double(const void *a, const void *b) {
	const nome_struct *puntatoreA = (const nome_struct *)a;
	const nome_struct *puntatoreB = (const nome_struct *)b;
	
	if (puntatoreA->decimale > puntatoreB->decimale) return 1;
	if (puntatoreA->decimale < puntatoreB->decimale) return -1;
	return 0;
}

// Funzione qsort per l'ordinamento di varibili di tipo float
comparazione_float(const void *a, const void *b) {
	const nome_struct *puntatoreA = (const nome_struct *)a;
	const nome_struct *puntatoreB = (const nome_struct *)b;
	
	return (puntatoreA->a > puntatoreB->b) - (puntatoreA->a < puntatoreB->b);
}

// Funzione qsort per l'ordinamento di varibili di tipo char
comparazione_char(const void *a, const void *b) {
	const nome_struct *puntatoreA = (const nome_struct *)a;
	const nome_struct *puntatoreB = (const nome_struct *)b;
	
	return puntatoreA->carattere - puntatoreB->carattere;
}

// Conteggio dei valori duplicati
void contaDuplicati(int arr[], int n) {
	int duplicati = 0;
	
	for (int i = 0; i < n; i++) {
		for (int j = i + 1; j < n; j++) {
			if (arr[i] == arr[j]) {
				duplicati++;
			}
		}
	}
	
	cout << "Valori duplicati: ";
	cout << duplicati << endl;
}

// Somma e Media dei valori nell'array
void calcolaSommaEMedia(int arr[], int n) {
	float somma = 0;
	float media = 0;
	
	for (int i = 0; i < n; i++) {
		somma = somma + arr[i];
	}
	
	media = somma / n;
	
	cout << "Somma dei valori: ";
	cout << somma << endl;
	
	cout << "Media dei valori: ";
	cout << media << endl;
}

// Calcolo del valore massimo nell'array
void calcolaValoreMassimo(int arr[], int n) {
	int valoreMassimo = arr[0];
	
	for (int i = 1; i < n; i++) {
		if (arr[i] > valoreMassimo) {
			valoreMassimo = arr[i];
		}
	}
	
	cout << "Valore massimo: ";
	cout << valoreMassimo << endl;
}