Primi esercizi in Java

Qui trovi un insieme di esercizi che richiedono l'utilizzo delle istruzioni base del linguaggio Java.
Realizza la tua soluzione e poi confronta la tua soluzione con quella proposta dal professore. 

Primi esercizi in Java

Esercizio 1: la classe VideoGioco

Progettare su carta la classe VideoGioco specificando l'elenco degli attributi e dei metodi previsti per tale classe. In seguito indicare tre oggetti di classe VideoGioco specificando i valori che tali oggetti assumono per ogni attributo della classe.

Esercizio 2: Hello world! 

Realizzare un programma che sia in grado di mostrare a schermo la frase "Hello world".

Esercizio 3: Media tra tre numeri interi. 

Realizzare un programma che sia in grado di calcolare la media tra le età di tre persone inserite dalla tastiera.

Esercizio 4: Area e Perimetro del rettangolo

Realizzare un programma che acquisisca da tastiera (standard input) il valore della base e dell'altezza di un rettangolo e mostri a schermo il valore dell'area e del perimetro.

Esercizio 5: Swap tra due valori

Realizzare un programma che acquisisca da tastiera (standard input) due valori interi e li memorizzi nelle variabili varA e varB. In seguito, scambiare il valore di tali variabili e stamparne a schermo il nuovo contenuto. 

Esercizio 6: Che squadra tifi?

Realizzare un programma che acquisisca da tastiera (standard input):

Infine, il programma deve mostrare a schermo la frase "Ciao Alessio Rossi! La tua squadra del cuore è: Inter". 

Esercizio 7: La partita di calcio

Realizzare un programma che memorizzi in delle stringhe i seguenti elementi che l'utente deve poter inserire da tastiera:

Il programma in output mostrerà:

(Suggerimento: il casting da String a int si fa Integer.valueOf("stringa").intValue(); ).

Esercizio 8: Le app del Prof Store

Realizzare un programma che acquisisca da tastiera (standard input) 10 valori numerici interi e li elabori in base alle seguenti indicazioni.

1) Ciascuno dei valori rappresenta il numero di download relativi ad un'applicazione presente nel famoso Prof Store

2) A seconda del numero di download, un’applicazione viene associata ad una delle seguenti categorie:

3) Il programma deve visualizzare sullo schermo (standard output) il numero di applicazioni appartenenti a ciascuna delle tre categorie.

Esercizio 9: 10km for fun

Bob decide di gareggiare per la «10km for fun», gara che si tiene a Roma nel mese di novembre. In vista della gara decide di cronometrarsi durante gli allenamenti del mese di ottobre e registrare quanto tempo impiega a percorrere 10km. Si realizzi un programma che permetta a Bob di inserire i tempi registrati in un mese (indicato in minuti) e che indichi quale sia il tempo migliore ed il peggiore che si sono ottenuti durante questi allenamenti.

Esercizio 10: Meteorologi si diventa!

All'interno della seguente pagina web sono riportati i dati delle temperature minime mensili riferite agli ultimi 30 anni, basate sui dati della stazione di Roma-Ciampino.

Realizzare un'applicazione che memorizzi in un vettore di stringhe i valori delle temperature minime riportate nella pagina web. Infine, il programma deve mostrare a schermo la media di tali 12 temperature. 

Esercizio 11: Il torneo di freccette

Il signor Rossi, organizzatore del torneo di tiro al bersaglio di Roma, vuole analizzare le statistiche relative al numero di  volte in cui un giocatore ha centrato il bersaglio (quello rosso da 50 punti).

Si realizzi un'applicazione che memorizzi in un vettore di Stringhe chiamato "centri" i nomi dei giocatori e numero di volte in cui hanno centrato il bersaglio. Il programma deve poter indicare il nome del giocatore che ha effettuato il numero maggiori di centri

Il vettore deve contenere nelle posizioni pari il nome del giocatore e nelle posizioni dispari il numero di centri. 

Esempio: Tre giocatori --> Giuseppe 7 centri, Alessio 5 centri, Claudio 10 centri.
In output mostrare una frase come: "Claudio ha centrato 10 volte il bersaglio ed è stato il migliore".
Il vettore contiene le seguenti stringhe in quest'ordine: 

Esercizio 12: Passione per i numeri Random

Realizzare i seguenti programmi:

Esercizio 13: Ordinamento bubblesort

Realizzare un programma in grado di:

Esercizio 14: Ordinamento selectionsort

Realizzare un programma in grado di:

Esercizio 15: misurare i tempi dell'ordinamento

Realizzare un programma in grado di:

**Effettuare diverse esecuzioni e raccogliere dati sui tempi al variare della grandezza del vettore e al variare dei valori contenuti nel vettore. Raccogliere almeno 20 tempi diversi e salvarli in un file excel.

** aggiungere l'ordinamento tramite l'algoritmo insertionsort. 

Esercizio 16: vettore random da ordinare

Realizzare un programma in grado di:

Esercizio 17: Il Bonus informatico

Il professor Bianchi decide di stanziare un fondo di 1000 euro per una borsa di studio destinata agli studenti della scuola che riusciranno a prendere 10 in pagella a fine anno nella materia informatica. La somma di 1000€ viene ripartita in maniera equa tra tutti gli studenti.

Si realizzi un programma che:

Testare il comportamento del programma nel caso in cui ci siano 0 alunni che hanno preso 10 ad informatica:

Esercizio 18: Matrice di zeri 3x3

Si realizzi un programma in grado di dichiarare una matrice 3x3 contenente tutti valori uguali 0. Infine stampare la matrice a schermo. L'output deve essere come il seguente:

La matrice contiene:
0   0   0
0   0   0
0   0   0

Esercizio 19: Matrice delle tabelline

Si realizzi un programma in grado di dichiarare una matrice 10x10 contenente in ogni riga una tabellina. L'inizializzazione della matrice dovrà produrre in output la seguente matrice.

La matrice delle tabelline contiene:

   1   2   3   4   5   6   7   8   9  10

   2   4   6   8  10  12  14  16  18  20

   3   6   9  12  15  18  21  24  27  30

   4   8  12  16  20  24  28  32  36  40

   5  10  15  20  25  30  35  40  45  50

   6  12  18  24  30  36  42  48  54  60

   7  14  21  28  35  42  49  56  63  70

   8  16  24  32  40  48  56  64  72  80

   9  18  27  36  45  54  63  72  81  90

  10  20  30  40  50  60  70  80  90 100

Per attuare tale tipo di stampa puoi usare il metodo printf applicato a System.out. Ad esempio con l'istruzione:
System.out.printf ("%4d", numero);      
indipendentemente da quante cifre abbia il valore contenuto nella variabile numero, tale valore occuperà 4 caratteri nella stampa.  

Esercizio 20: Matrici che passione

Si realizzi un programma in grado di inizializzare con dei valori inseriti da tastiera una matrice di int grande 3x3.  Per tale matrice: 

Nota bene: la matrice trasposta è una matrice avente le stesse dimensioni, ma con righe e colonne scambiate tra loro. 

Un esempio di output del programma dopo aver assegnato i valori alla matrice.
Matrice Inserita:
        1         2         3
        4         5         6
        7         8         9

La somma delle righe della matrice:
Somma riga 0: 6
Somma riga 1: 15
Somma riga 2: 24

La somma delle colonne della matrice:
Somma colonna 0: 12
Somma colonna 1: 15
Somma colonna 2: 18

Matrice trasposta:
        1         4         7
        2         5         8
        3         6         9

Esercizio 21: Matrice diagonale

Si realizzi un programma in grado di inizializzare una matrice 4 x 4 con i valori che rappresentano la matrice identità. La matrice identità ha valori pari a 1 nella diagonale principale della matrice e 0 in tutti gli altri valori. Realizzare l'assegnazione di tali valori senza usare il metodo di assegnazione con le parentesi graffe. Infine, stampare a schermo tale matrice.

Si riporta di seguito l'output del programma atteso.

La matrice diagonale è la seguente:

   1   0   0   0

   0   1   0   0

   0   0   1   0

   0   0   0   1

Esercizio 22: Squadre in ordine di goal

Si realizzi un programma in grado di inizializzare una matrice di interi 4 x 5  chiamata goal. Ogni riga della matrice rappresenta i goal fatti da una determinata squadra di calcetto. Ipotizzando che le quattro squadre di calcetto siano Roma, Lazio, Inter e Juve: 

Si riporta di seguito l'output del programma atteso.

La matrice dei goal è:
Roma    0   3   4  20  34
Lazio   0   5   3  21  31
Inter   1   4   3  32  26
Juve    1   2   4  30  27

Le squadre ordinate in base ai goal fatti sono:
Inter
Juve
Roma
Lazio

Esercizio 23:  Realizzare copie di array

Si realizzi un programma in grado di inizializzare il vettore numeri di interi grande 5. Il programma deve poter:

Attenzione a come copi gli elementi del vettore numeri all'interno del vettore copiaNumeri. Prova le seguenti modalità ed analizza l'output ottenuto: