diff --git a/javascript/JS_Esercizi 09 - Manipolazione Dati/calcolatrice/script.js b/javascript/JS_Esercizi 09 - Manipolazione Dati/calcolatrice/script.js index cd05bd8..ef4fdce 100644 --- a/javascript/JS_Esercizi 09 - Manipolazione Dati/calcolatrice/script.js +++ b/javascript/JS_Esercizi 09 - Manipolazione Dati/calcolatrice/script.js @@ -11,7 +11,7 @@ const operatoriValidi = ['+', '-', '*', '/']; /** - * 1. FUNZIONE: Aggiungi caratteri al display + * 1. EVENTI: Aggiungi caratteri al display * Per ogni tasto, aggiungiamo un event listener che, quando cliccato, * prende il testo del tasto e lo aggiunge al display. * Bisono fare attenzione agli spazi per gli operatori. @@ -25,7 +25,7 @@ const operatoriValidi = ['+', '-', '*', '/']; /** - * 2. FUNZIONE: Cancella display + * 2. EVENTO: Cancella display * Quando clicchiamo il tasto "C", il display deve essere svuotato. * * Passi: @@ -34,24 +34,6 @@ const operatoriValidi = ['+', '-', '*', '/']; */ -/** - * 3. FUNZIONE: Calcola - * Prendiamo in input un numero, un operatore e un altro numero, - * e restituiamo il risultato del calcolo in base all'operatore. - * Se l'operatore non è valido, mostriamo un messaggio di errore. - * - * Passi: - * - Prendiamo in input il primo numero, l'operatore e il secondo numero - * - In base all'operatore, eseguiamo il calcolo - * - Restituiamo il risultato - * - Se l'operatore non è valido, mostriamo un messaggio di errore con mostraErrore() e restituiamo null - * Nota: Si può usare uno switch per semplicità senza break (dato che restituiamo subito il risultato) - */ -function calcola(num1, operatore, num2) { - -} - - /** * 4. FUNZIONE: Calcola risultato * Quando clicchiamo il tasto "=", dobbiamo prendere il testo del display, @@ -60,11 +42,11 @@ function calcola(num1, operatore, num2) { * Passi: * A. Prendi il testo del display e puliscilo (rimuovi spazi inutili all'inizio e alla fine) * B. Spezza la stringa in parti (numero, operatore, numero) in base agli spazi - * C. Valida i dati: - * - Controlla che ci siano esattamente 3 pezzi - * - Controlla che i numeri siano validi (trasforma e controlla non NaN) - * - Controlla che l'operatore sia valido (tra quelli definiti) - * D. Esegui il calcolo chiamando la funzione calcola() + * C. Controlla che: + * - Ci siano esattamente 3 pezzi (altrimenti mostra errore e return) + * - Destruttura in num1, operatore, num2 + * - Trasforma num1 e num2 in numeri (parseFloat) + * D. Esegui il calcolo chiamando la funzione calcola(num1, operatore, num2) * E. Mostra il risultato nel display */ function calcolaRisultato() { @@ -72,6 +54,23 @@ function calcolaRisultato() { } +/** + * 3. FUNZIONE: Calcola + * Prendiamo in input un numero, un operatore e un altro numero, + * e restituiamo il risultato del calcolo in base all'operatore. + * Se l'operatore non è valido, mostriamo un messaggio di errore. + * + * Passi: + * - In base all'operatore, eseguiamo il calcolo + * - Restituiamo il risultato + * - Se l'operatore non è valido, mostriamo un messaggio di errore con mostraErrore() e restituiamo null + * Nota: Si può usare uno switch per semplicità senza break (dato che restituiamo subito il risultato) + */ +function calcola(num1, operatore, num2) { + +} + + /****************************************************/ /********* FUNZIONI HELPER E EVENT LISTENER *********/ diff --git a/javascript/JS_Esercizi 09 - Manipolazione Dati/index.html b/javascript/JS_Esercizi 09 - Manipolazione Dati/index.html index a372448..034772f 100644 --- a/javascript/JS_Esercizi 09 - Manipolazione Dati/index.html +++ b/javascript/JS_Esercizi 09 - Manipolazione Dati/index.html @@ -187,14 +187,6 @@