Soluzione esercizi do while
Qui trovi la soluzione degli esercizi relativi all'utilizzo del costrutto iterativo do while. Dopo aver sviluppato la tua soluzione potrai confrontarla con quella postata in questo sito. Per testare il codice inserito in questa pagina puoi copiare e incollare il codice nel tuo editor locale oppure compilare ed eseguire il codice tramite compilatore online premendo il pulsante sottostante la soluzione.
Esercizio 1: Le vocali preferite dai bambini
Una maestra chiede ai bambini quale sia la loro vocale preferita. Realizzare un programma che permetta alla maestra di inserire iterativamente le vocali preferite dai propri alunni di prima elementare. Dopo ogni singolo inserimento si deve chiedere alla maestra se intende proseguire inserendo un'altra preferenza oppure no.
Terminata la fase di inserimento delle preferenze, il programma deve mostrare la lettera (o più lettere se a parimeritro) preferita dagli alunni.
Esercizio 2: Indovina l'età del professor Random (tentativi illimitati)
Il professor Random ha un'età casuale tra 20 e 60 anni. Realizzare un programma che permetta all’utente di provare a indovinare l'età del professore. L’utente avrà a disposizione illimitati tentativi in cui:
Se l’utente inserisce proprio il numero scelto dal computer, il programma mostrerà la scritta “hai vinto” e terminerà la sua esecuzione.
Se l’utente inserisce un numero più piccolo rispetto a quello pensato dal computer, il programma mostrerà la scritta “Il professor Random è più grande”.
Se l’utente inserisce un numero più grande rispetto a quello pensato dal computer, il programma mostrerà la scritta “Il professor Random è più giovane”.
Esercizio 2 bis: Indovina l'età del professor Random (tentativi limitati)
Modificare il programma dell’esercizio precedente inserendo un numero limitato di tentativi.
Domanda: Un utente mediamente intelligente, che tipo di strategia adotterà nel cercare di indovinare il numero?
In base alla strategia da te scelta… quanti tentativi dovremmo dare all’utente per essere sicuri che vinca in base alla tua strategia?
Realizzare la modifica del programma introducendo una costante pari al numero di tentativi che ritieni opportuno dare all'utente.
Un'utente intelligente userebbe la tecnica della bisezione. Ossia la prima volta proverebbe il valore di mezzo tra 20 e 60, ossia tenterebbe con 40. In tal modo è sicuro che al passo successivo (se non avrà indovinato) avrà escluso almeno la metà dei numeri. E così via... Facendo così ha bisogno di al più 6 tentativi nel caso peggiore!