Esercitazione 2

Input da tastiera

Esaminare il programma SommaInput.java, che accetta in input due interi da tastiera e stampa la loro somma e il maggiore dei due.


Uso di cicli per esaminare sequenze

Esaminare il programma SommaSequenza.java, che accetta in input una sequenza di numeri interi terminata dal valore 0 (che non deve essere considerato parte della sequenza), e calcola la somma dei valori esaminati.

Modificare il programma in modo da ottenere i seguenti obiettivi. Perseguire un obiettivo alla volta, realizzando un programma funzionante ogni volta che si aggiunge una funzionalità.

Il programma deve funzionare correttamente, in particolare per quanto riguarda gli ultimi due punti, anche in presenza di sequenze che contengono solo valori negativi (il massimo nella sequenza -7, -3, -4 è il valore -3).

Suggerimento: Per la ricerca del minimo e del massimo, puo' essere utile sapere che il valore Integer.MAX_VALUE rappresenta il massimo valore positivo rappresentabile in una variabile di tipo int. Quindi, se a è una variabile int, è possibile assegnarle il massimo possibile con l'istruzione a = Integer.MAX_VALUE
Il minimo valore (di segno negativo) e' invece Integer.MIN_VALUE


Numeri perfetti

Scrivere un programma che determina se un numero è perfetto.

Un numero naturale n è perfetto se la somma dei suoi divisori (strettamente minori di n, compreso il numero 1) è uguale a n.
Ad esempio, il numero 6 è perfetto poiché 1+2+3 = 6, mentre 20 non è perfetto poiché 1+2+4+5+10 = 22

Il programma deve leggere da tastiera un numero naturale e visualizzare la somma dei suoi divisori. Se la somma è uguale al numero dato deve essere visualizzato il messaggio il numero è perfetto, altrimenti il messaggio il numero non è perfetto.