// Dichiaro ed inizializzo le variabili del programma var input = require('readline-sync'); var max; var min; var scelta; var risposta; var pari = 0; var sommaPari = 0; var dispari = 0; var sommaDispari = 0; var totalizzatore = 0; var numeriInseriti = []; var numeriPari = []; var numeriDispari = []; // Inserimento di 10 numeri a caso nel vettore che servono per gestire il programma console.log("Inserisci 10 numeri interi a caso"); for (var indice = 0; indice < 10; indice++) { numeriInseriti.push(parseInt(input.question("Numero[" + (indice + 1) + "]: "))); } do { // Questo ciclo 'inizio mentre', permette di ripetere il programma mentre la scelta è diversa da 6 max = Number.MIN_VALUE //Imposta max al valore minimo possibile min = Number.MAX_VALUE //Imposta min al valore massimo possibile totalizzatore = 0 conta = 0 pari = 0 sommaPari = 0 dispari = 0 sommaDispari = 0 // Menu di scelta console.log(""); console.log("********** M E N U ********** "); console.log("1) Visualizza il valore massimo e quello minimo"); console.log("2) Visualizza il numero dei valori pari e quello dei dispari"); console.log("3) Visualizza la somma dei numeri pari e quella dei numeri dispari"); console.log("4) Visualizza la somma dei numeri"); console.log("5) Visualizza la media dei numeri"); console.log("6) Esci") // Gestione scelta scelta = parseInt(input.question("Scegli:")); // Con il ciclo while controllo se il valore inserito è un numero tra 1 e 6 // Altrimenti visualizzo un messaggio di errore e chiedo di nuovo la scelta // Se non entro nel ciclo è stato inserito un valore corretto while (scelta < 1 || scelta > 6) { console.log("Errore: inserire un numero tra 1 e 6"); scelta = parseInt(input.question("Scegli:")); } // La struttura seleziona casi permette di gestire le scelte fatte dall'utente switch (scelta) { case 1: for (var indice = 0; indice < 10; indice++) { if (numeriInseriti[indice] > max) { max = numeriInseriti[indice]; } if (numeriInseriti[indice] < min) { min = numeriInseriti[indice]; } } console.log('********** RISULTATO MASSIMO E MINIMO **********') console.log('- Numeri inseriti:', numeriInseriti.length) console.log(numeriInseriti) console.log('- Valore massimo:', max) console.log('- Valore minimo:', min) break; case 2: for (var indice = 0; indice < 10; indice++) { if (numeriInseriti[indice] % 2 == 0) { pari++; numeriPari.push(numeriInseriti[indice]) } else { dispari++; numeriDispari.push(numeriInseriti[indice]) } } console.log('********** RISULTATO PARI E DISPARI **********') console.log('- Totale numeri pari:', pari) console.log(numeriPari) console.log('- Totale numeri dispari:', dispari) console.log(numeriDispari) break; case 3: for (var indice = 0; indice < 10; indice++) { if (numeriInseriti[indice] % 2 == 0) { sommaPari += numeriInseriti[indice] } else { sommaDispari += numeriInseriti[indice] } } console.log('********** RISULTATO SOMMA PARI E DISPARI **********') console.log('- Somma dei numeri pari:', sommaPari) console.log(numeriPari) console.log('- Soma dei numeri dispari:', sommaDispari) console.log(numeriDispari) break; case 4: for (var indice = 0; indice < 10; indice++) { totalizzatore += numeriInseriti[indice]; } console.log('********** RISULTATO SOMMA NUMERI DEL VETTORE **********') console.log('- Somma dei numeri del vettore:', totalizzatore) console.log(numeriInseriti) break; case 5: for (var indice = 0; indice < 10; indice++) { totalizzatore += numeriInseriti[indice]; } console.log('********** RISULTATO MEDIA NUMERI DEL VETTORE **********') console.log('- Media dei numeri del vettore:', totalizzatore / numeriInseriti.length) console.log(numeriInseriti) break; } if (scelta != 6) { risposta = input.question("Premi invio per continuare ..."); } } while (scelta != 6); console.log("Fine programma");