Esercizi

  • Scrivere un programma java che definisca:
    1. Una classe astratta che definisca un albero binario. La classe avrà una variabile statica che conterrà la radice dell'albero, scrivere:
      • un metodo astratto 'compare' che confronti il nostro nodo con uno dato
      • un metodo astratto 'print' che stampi il contenuto del nodo
      • Un metodo ricorsivo che inserisca un nodo nell'albero,
      • Un metodo statico che crei (allochi) un nodo e lo inserisca nell'albero, usando al bisogno il metodo ricorsivo di cui sopra.
      • Un metodo ricorsivo che 'traversi' l'albero, stampando il contenuto di ogni nodo, nell'ordine
  • Una classe derivata che contenga:
    1. Due attributi, un numero intero (valore - indicherà l'ordine di creazione) ed un double (chiave - sarà un valore casuale)
    2. L'implementazione dei metodi astratti 'compare' e 'print'
    3. Un metodo principale che, utilizzando le funzioni scritte:
      1. Crei un albero di venti numeri casuali
      2. Li stampi in maniera ordinata, secondo il valore casuale
  • Scrivere una classe che implementi una lista. Questa classe avra':
    1. Un membro intero che costituirà il 'dato' della lista
    2. un membro statico che costituirà la base della lista
    3. Un costruttore con parametro che inserirà un nuovo elemento nella lista
    4. Un metodo che restituirà l'elemento il cui valore corrisponde ad un valore passato come parametro. Questo metodo lancerà un'eccezione se il valore cercato non è compreso nella lista
    5. Un programma principale che costituirà una lista di 5 valori (da 5 a 9) e cercherà nella lista il valore indicato come parametro (args [0]) tradotto in numero trmite il metodo java.lang.Integer.parseInt (args [0]), gestendo le eccezioni
    Nota: il generatore di numeri casuali in Java è java.lang.Math.random() e ritorna un numero casuale di tipo double, compreso tra 0.0 ed 1.0.
  • © Ing. Stefano Salvi - All rights reserved