• Non ci sono risultati.

Esame di Fondamenti di Informatica (V.O.) e II (N.O.)(prova pratica di programmazione n.1)26-giugno-2002

N/A
N/A
Protected

Academic year: 2021

Condividi "Esame di Fondamenti di Informatica (V.O.) e II (N.O.)(prova pratica di programmazione n.1)26-giugno-2002"

Copied!
2
0
0

Testo completo

(1)

Cognome___________________ Nome ____________________ Matricola____________________

Questo compito è stato discusso e definito collegialmente dalla commissione di esame di Fondamenti di Informatica.

Esame di Fondamenti di Informatica (V.O.) e II (N.O.) (prova pratica di programmazione n.1)

26-giugno-2002

Testo dell’esercizio

Sia data la seguente interfaccia Java, che descrive i metodi di una lista semplificata:

public interface EsercizioList {

/* aggiunge un elemento in testa alla lista */

public void addToHead (Object data);

/* ritorna e rimuove l’elemento in posizione i-esima: */

/* la prima posizione della lista è la posizione 0 */

public Object remove (int i);

/* stampa a video tutti gli elementi della lista */

public void printElements ();

}

1) Definire la classe EsercizioLinkedList che implementa l’interfaccia EsercizioList tramite rappresentazione collegata, utilizzando la classe Node che ha lo scheletro seguente.

public class Node {

/* variabili di istanza */

private Object elem; // l’elemento associato al nodo private Node next; // il successore del nodo

/* metodi */

public Node (); // costruttore: crea un nodo vuoto

public void setElement (Object elem); // imposta l’elemento del nodo public Object getElement (); // ritorna l’elemento del nodo

public void setNext (Node next); // imposta il successore del nodo public Node getNext (); // ritorna il successore del nodo

}

La classe Node è già implementata e presente sul dischetto.

Suggerimento: il metodo printElements() può essere implementato scandendo tutti i nodi della lista.

Sull’oggetto associato ad ogni nodo scandito si invoca il metodo toString() e si stampa il risultato.

2) Definire una semplice classe di test TestEsercizioLinkedList che contiene il solo metodo

main. Tale metodo svolge nell’ordine le seguenti azioni: (a) fa inserire all’utente un insieme di oggetti String ed inserisce tali oggetti in una lista di tipo EsercizioLinkedList (il numero di oggetti da inserire è scelto dall’utente); (b) stampa tutti gli elementi della lista; (c) fa segliere all’utente un numero i e cancella dalla lista l’elemento in posizione i. (d) stampa nuovamente tutti gli elementi della lista.

Non debbono essere gestiti errori dovuti ad inserimenti sbagliati di input. Si assuma cioè che i sia sempre una posizione valida nella lista.

Note importanti:

• Sul dischetto che ti è stato dato trovi la classe Node e la classe ReadStream già compilate.

• Salva le classi che devi definire sul dischetto.

• Scrivi Cognome, Nome e Matricola sia su questo foglio sia in un commento in testa alle classi che devi definire.

• Il dischetto va riconsegnato ben incartato in questo foglio

(2)

Cognome___________________ Nome ____________________ Matricola____________________

Questo compito è stato discusso e definito collegialmente dalla commissione di esame di Fondamenti di Informatica.

Riferimenti

Documenti correlati

• Fa creare un nuovo oggetto della classe Hotel permettendo all’utente di specificare il numero totale delle sue stanze ed i prezzi di ogni stanza.. • Fa inserire all’utente

• Sul dischetto che ti è stato dato trovi già i file delle classi GestoreDiStringhe e TestGestoreDiStringhe e gli scheletri dei metodi che devi implementare3. Dovrai pertanto

Questo compito è stato discusso e definito collegialmente dalla commissione di esame di Fondamenti di Informatica.. Esame di Fondamenti di Informatica II (N.O.) (prova pratica

• Scrivi Cognome, Nome e Matricola sia su questo foglio sia in un commento in testa alle classi che devi definire. • Il dischetto va riconsegnato ben incartato in

Restituisce un array di interi conf di lunghezza k tale che: conf[i] = -1 se l’elemento di indice i in str1 precede lessicograficamente l’elemento di indice i di str2; conf[i]=1

• Fa creare e riempire all’utente una matrice a di stringhe; le dimensioni di a (cioè numero di righe e di colonne) sono decise dall’utente.. • Fa inserire all’utente

Tale metodo svolge nell’ordine le seguenti azioni: (a) crea una nuova agenda e fa inserire all’utente un numero a sua scelta di utenze nell’agenda; (b) chiede all’utente di

Tale metodo svolge nell’ordine le seguenti azioni: (a) crea due liste lis1 e lis2 di tipo SempliceLinkedList; (b) fa inserire all’utente un numero a sua scelta di stringhe in lis1