· Andrea Pollini · informatica · 6 min read
10 Esercizi risolti sugli algoritmi
10 Esercizi risolti sugli algoritmi
Risolvere con lo pseudocodice:
Chiedere all’utente di inserire una serie di numeri positivi. Terminare l’inserimento quando viene inserito lo zero e stampare la somma di tutti i numeri inseriti.
Ecco un esempio di pseudocodice per risolvere il problema:
Questo pseudocodice utilizza una variabile SOMMA
per tenere traccia della somma dei numeri inseriti. Quando l’utente inizia a inserire numeri, il programma verifica se lo zero viene inserito. Se sì, termina l’inserimento e stampa la somma. Se no, aggiunge ogni numero all’SOMMA e chiede di nuovo all’utente di inserire un numero.
Nota che questo è solo uno degli esempi possibili per risolvere il problema e potrebbe essere necessario adattarlo alle specifiche esigenze del tuo progetto.
Chiedere all’utente di inserire una serie di caratteri. Terminare l’inserimento quando viene inserito il punto e stampare il numero di vocali presenti nella stringa.
Ecco un esempio di pseudocodice per risolvere il problema:
Questo pseudocodice utilizza due variabili: VOCI
per tenere traccia del numero di vocali presenti nella stringa e STRINGA
per memorizzare la stringa inserita dall’utente. Quando l’utente inizia a inserire caratteri, il programma verifica se lo spazio viene inserito. Se sì, termina l’inserimento e stampa il numero di vocali presenti nella stringa.
Se invece l’utente inserisce un carattere diverso dallo spazio, il programma aggiunge quel carattere alla stringa e controlla se è una vocale. Se sì, aumenta la variabile VOCI
di 1.
Nota che questo codice considera solo le vocali “a”, “e”, “i”, “o” e “u” come vocali. Se si desidera includere anche altre vocali (ad esempio “y”), è necessario aggiornare la condizione SE CARATTERE è una vocale
.
Chiedere all’utente di inserire una serie di numeri. Terminare l’inserimento quando vengono inseriti due numeri consecutivi uguali e stampare il valore di questi numeri.
Ecco un esempio di pseudocodice per risolvere il problema:
Questo pseudocodice utilizza due variabili: NUMERO_PRECEDENTE
per memorizzare il numero precedente inserito e NUMERO_CUOCHE
per memorizzare il numero consecutivo inserito. Quando l’utente inizia a inserire numeri, il programma verifica se lo zero viene inserito. Se sì, termina l’inserimento.
Se invece l’utente inserisce un numero diverso dallo zero, il programma controlla se NUMERO_CUOCHE
è uguale a NUMERO_INSERITO
. Se sì, significa che sono stati inseriti due numeri consecutivi uguali e il programma termina l’inserimento.
Se invece i numeri non sono consecutivi, il programma aggiorna la variabile NUMERO_PRECEDENTE
con il numero attuale e continua a chiedere all’utente di inserire un numero.
Nota che questo codice stampa solo il valore del numero consecutivo quando viene terminato l’inserimento. Se si desidera stampare anche il numero precedente, è necessario aggiornare la condizione SE NUMERO_CUOCHE è uguale a NUMERO_INSERITO
.
Esercizi con condizioni
Chiedere all’utente di inserire un numero. Se il numero è pari, calcolare il suo fattoriale; se è dispari, calcolare la sua radice quadrata.
Ecco un esempio di pseudocodice per risolvere il problema:
Questo pseudocodice utilizza due variabili: NUMERO
per memorizzare il numero inserito dall’utente e FATTORIALE
o RADICE_QUADRATA
per memorizzare il risultato della funzione di calcolo.
Quando l’utente inizia a inserire un numero, il programma verifica se lo zero viene inserito. Se sì, termina l’inserimento.
Se invece l’utente inserisce un numero diverso dallo zero, il programma controlla se NUMERO
è pari o dispari utilizzando la condizione % 2 == 0
. Se NUMERO
è pari, calcola il suo fattoriale utilizzando una buccia di for loop che moltiplica tutti i numeri da 2 a NUMERO
.
Se invece NUMERO
è dispari, calcola la sua radice quadrata utilizzando la funzione SQRT
. Se la radice quadrata non esiste (ad esempio se NUMERO
è negativo), assegna a RADICE_QUADRATA
il valore NULL
.
Infine, stampa il risultato della funzione di calcolo.
Chiedere all’utente di inserire un anno. Verificare se l’anno è bisestile e stampare il risultato.
Ecco un esempio di pseudocodice per risolvere il problema:
Questo pseudocodice utilizza una sola variabile: ANNO
per memorizzare l’anno inserito dall’utente.
Quando l’utente inizia a inserire un anno, il programma verifica se lo zero viene inserito. Se sì, termina l’inserimento.
Se invece l’utente inserisce un anno diverso dallo zero, il programma calcola la condizione di bisestilità utilizzando due condizioni:
ANNO MOD 4 == 0
verifica se l’anno è divisibile per 4.ANNO MOD 100 != 0
verifica se l’anno non è un anno centennale (cioè non è divisibile per 100, ma lo è per 400).RIMANDE ANNO MOD 400 == 0
verifica se l’anno è un anno centennale.
Se tutte e tre le condizioni sono soddisfatte, il programma stampa “L’anno è bisestile”. Altrimenti, stampa “L’anno non è bisestile”.
Nota che la regola per determinare se un anno è bisestile è la seguente:
- Un anno è bisestile se è divisibile per 4, ma non se è un anno centennale (cioè non è divisibile per 100). In questo caso, l’anno è bisestile se è anche divisibile per 400.
Chiedere all’utente di inserire tre numeri. Ordinare i numeri in ordine crescente e stamparli.
Esercizi con cicli
- Chiedere all’utente di inserire un numero. Stampare tutti i numeri pari da 2 fino al numero inserito.
- Chiedere all’utente di inserire un numero. Stampare la sequenza di Fibonacci fino all’n-esimo termine.