#include #include #define MAX 100 /* Jordi Cabrera Carpio Dati N numeri interi inseriti da input, dopo averli visualizzati, si vuole stampare su schermo: 1. quanti sono i numeri positivi 2. la somma dei negativi 3. la media dei numeri primi 4. il massimo fra i numeri inseriti 5. tutti i divisori dispari del massimo trovato */ typedef enum { false, true } bool; ///!creo il tipo bool int cVet(int v[MAX]); ///Carica Vettore se il bool è settato a vero visualizzarà il risultato void vVet(int len,int v[MAX]); ///visualizza Vettore bool Primo(int n); ///Visualizza se il numero è primo void BubbleSort(int a[MAX],int len); ///Ordina crescente l'array col metodo BubbleSort int MaggioriMinori(int di,int nel[MAX],int len,bool MODE); ///Conta quanti numeri in un vettore "nel" sono maggiori(MODE 0)/minori(MODE 1) di "di" int VetSommatoR(int v[MAX],int len); ///Somma i fattori dentro il vettore in un unica variabile (Recursive) float MediaPrimi(int v[MAX],int len); ///fa la medai dei primi usando il risultato della funzione Primo() void divisori(int n); ///trova i divisori int main(){ int len; int vet[MAX]; len=cVet(vet); ///prende la lunghezza del vettore printf("i numeri positivo sono [%d]\n",MaggioriMinori(0,vet,len,0)); ///(esercizio 1) usa la funzione MaggioriMinori(immettendo 0 come valore da contare come minore, il vettore su cui eseguire l'operazione la lunghezza e la modalita' (se 1 se uno restituisce i numeri Maggiori del primo opratore se 0 quelli minori) printf("la somma dei numeri negativi sommati è [%d]\n", VetSommatoR(vet,len)); ///(esercizio 2) somma i numeri negativi printf("la media dei primi e' [%f]\n",MediaPrimi(vet,len)); ///(esercizio 3)mostra la media dei primi BubbleSort(vet,len); ///(esercizio 4)riorgasnizza l'array per trovare il massimo printf("il massimo numero inserito è [%d]\n",vet[len-1]); ///prende il massimo numero con len-1 printf("i divisori del massimo numero inserito sono"); ///(esercizio 5) divisori(vet[len-1]); } ///-----trova i divisori----//// void divisori(int n){ int i; ///indice for(i=1;inel[i]); ///restituisce il risultato booleano (0/1) dell'operazione (in questo progrramma verra' usato solo questo) else cont += (di0)div = (bool) true; ///se div non è falso (integrale maggiore di 0) allora diventa un booleano vero return div; } ///-----Visualizza Vettore-------/// void vVet(int len,int v[MAX]){ int i; ///contatore printf("Il vettore cariato è [%d",v[0]); for(i=1;i