Home Chi sono Mappa del sito Contatti  
 
Java
Apache Wicket
Sistemistica Totocalcio
 
 
Programmare Applicativi...
Presentazione del libro
Panoramica dei contenuti
 
 
Giochi in PHP
Introduzione
Filetto (Tris)
Forza 4
Sudoku
 
 
Tutorial Linux/Unix
Archivio
 
 
Sql
Tutorial su Mysql
 
 
C++
Framework a oggetti
 
Esercizi di programmazione in Pascal->Programmazione I - Esercizio 2

Programmazione I - Esercizio 2

Secondo parziale dell'esame di Programmazione I:
Dato il file "refin.txt" contentente un albero binario, il programma deve allocare l'albero binario in memoria, calcolarne la profondità, inserire l'albero in post ordine nel file "prgout.txt", memorizzare la profondità nel file "depth.txt" ed infine deallocare l'albero dalla memoria. Il file è costruito in questo modo: se un numero è pari allora è una foglia altrimenti è un nodo interno.

Nel tutorial "Albero binario di ricerca" possiamo trovare la definizione di albero binario di ricerca, e l'implementazione delle operazioni più comuni. In questo esercizio non andremo ad utilizzare tali implementazioni ma delle semplici procedure ad hoc.

Vediamo la definizione del nodo dell'albero, e alcune variabili globali utilizzate dalle varie procedure.


La seguente procedura legge il file refin.txt e costruisce l'albero corrispondente. All'interno si trova anche un contatore per il calcolo della profondità.
Vediamo il codice:


La seguente procedura scrive nel file prgout.txt l'albero t in in postordine.
Vediamo il codice:


La seguente procedura dealloca l'albero t.
Vediamo il codice:


Vediamo di seguito il corpo del programma.



Compilato con Free Pascal 2.2.4 (compatibile con Vista)
Scarica sorgente ed eseguibile (22 Kb)