Corso di Laurea in Ingegneria Meccanica
Corso di Fondamenti di Informatica - A.A. 1999/2000
Programmi visti a lezione - Prof. Diego
Calvanese
Il file PROGRAMS.ZIP contiene in formato compresso
zip tutti i file contenuti nei sottodirettori di questo direttorio. Usare il
programma winzip o unzip per estrarre i file.
DIRETTORIO\FILE VISTO IN LEZ. BREVE DESCRIZIONE
O DATO PER ES.
------------------------------------------------------------------------------
BASE\CIAO.PAS 07-08 il primo programma
BASE\VARIAB.PAS 07-08 il primo programma che usa una variabile
BASE\AREARETT.PAS 07-08 area di un rettangolo
BASE\EUROLIRE.PAS 07-08 (Es.) conversione da EURO in LIRE
BASE\CERCHIO.PAS 09-10 area e circonferenza di un cerchio
BASE\CONO.PAS 09-10 (Es.) volume di un cono
BASE\BUFFTAS.PAS 09-10 funzionamento del buffer di tastiera
BASE\MEDIA5V.PAS 11-12 (Es.) media di 5 voti
BASE\MEDIA3V.PAS 11-12 (Es.) media di 3 voti, usando l'assegnazione
BASE\EQ2DISPO.PAS 13-14 eq. quadratica a discriminante positivo
IFTE\MAGGIORE.PAS 13-14 primo esempio uso "if-then-else"
IFTE\MESESUCC.PAS 13-14 calcolo mese successivo
IFTE\EQUAQUAD.PAS 13-14 (Es.) soluzione di un'equazione quadratica
IFTE\EQUAQUAD.PAS 15-16 (Lab.) soluzione di un'equazione quadratica
IFTE\TEMPERAT.PAS 17-18 if annidati (cond. mutuam. escludentisi)
IFTE\TRIANG.PAS 17-18 classificazione di un triangolo
IFTE\TRIANG2.PAS 17-18 (Es.) classificazione triangolo (contando)
IFTE\TRIANG3.PAS 17-18 (Es.) classific. triangolo (cond. complesse)
IFTE\GIORMESE.PAS 19-20 primo esempio uso "case-of"
IFTE\DATASUCC.PAS 19-20 (Es.) calcolo data del giorno successivo
CICLI\SOMMA.PAS 19-20 primo esempio uso "for"
CICLI\MASSIMO.PAS 21-22 secondo esempio uso "for"
CICLI\MASSIMOR.PAS 21-22 (Es.) massimo di 10 numeri reali
CICLI\PARI.PAS 21-22 terzo esempio uso "for"
CICLI\PARI2.PAS 21-22 (Es.) stampa pari compresi tra due interi
CICLI\LUNG1.PAS 21-22 primo esempio uso "while"
CICLI\LUNG2.PAS 21-22 (Es.) primo esempio uso "repeat"
CICLI\PITAGOR1.PAS 21-22 primo esempio uso cicli annidati
CICLI\PITAGOR2.PAS 21-22 (Es.) tavola pitagorica con intestazione
CICLI\PIRAMID1.PAS 23-24 stampa piramide di asterischi
CICLI\PIRAMID2.PAS 23-24 (Es.) piramide di numeri di altezza variabile
CICLI\SEQUENZ1.PAS 23-24 lunghezza massima sottosequenza di 0
CICLI\SEQUENZ2.PAS 23-24 (Es.) lunghezza max. sottosequenza di 0 ottim.
CICLI\MCD1.PAS 23-24 mcd (usando la definizione)
CICLI\MASSIMOR.PAS 25-26 (Lab.) massimo di 10 numeri reali
CICLI\SOMPONE.PAS 25-26 (Lab.) somma numeri pos e neg (lunghezza nota)
CICLI\SOMPONE2.PAS 25-26 (Lab.) somma numeri pos e neg (lunghezza nota)
CICLI\CONTAMAG.PAS 25-26 (Lab.) conteggio numeri maggiori del precedente
CICLI\SOMPONE3.PAS 25-26 (Es.) somma numeri pos e neg (terminata da 0)
CICLI\MCD2.PAS 27-28 mcd (algoritmo di euclide)
CICLI\MCD3.PAS 27-28 mcd con controllo sui dati in ingresso
CICLI\MCD4.PAS 27-28 (Es.) mcd (algoritmo di euclide con i resti)
PROCFUN\FIGURE1.PAS 27-28 figure geometriche: solo messaggi
PROCFUN\FIGURE2.PAS 29-30 figure geometriche: scelta forma
PROCFUN\FIGURE3.PAS 29-30 figure geometriche: scelta forma e dim.
PROCFUN\VARLOCAL.PAS 29-30 errori nell'uso di variabili locali
PROCFUN\RETTANG1.PAS 29-30 (Es.) rettangolo di '*' di larghezza fissa
PROCFUN\RETTANG2.PAS 29-30 (Es.) rettangolo '*' larghezza fissa (ciclo)
PROCFUN\RETTANG3.PAS 29-30 (Es.) rettangolo '*' larghezza variabile
PROCFUN\FIGURE5.PAS 29-30 (Es.) f. geom.: scelta forma, dim, spost, car.
PROCFUN\FIGURE4.PAS 31-32 figure geometriche: scelta forma e dim.
PROCFUN\FIGURE6.PAS 31-32 (Es.) f. geom.: scelta forma, dim, spost, car.
PROCFUN\SCOPE.PAS 31-32 regole visibilita' del PASCAL
PROCFUN\SCOPE2.PAS 31-32 (Es.) regole visibilita' del PASCAL
PROCFUN\MAX2.PAS 33-34 definizione e uso di funzioni
PROCFUN\ROMANI1.PAS 33-34 conversione da "cifra romana" in intero
PROCFUN\ROMANI2.PAS 33-34 (Es.) da numero romano decrescente a intero
PROCFUN\ROMANI3.PAS 33-34 (Es.) da numero romano (corretto) a intero
PROCFUN\SOMMAN.PAS 33-34 esempio di funzione piu' complessa
PROCFUN\SCAMBIO.PAS 33-34 esempio di passaggio per variabile
PROCFUN\ORDINA2.PAS 33-34 (Es.) ordinamento di 2 interi
PROCFUN\DATASUN1.PAS 33-34 calcolo data n giorni successivi
PROCFUN\DATASUN2.PAS 33-34 (Es.) calcolo data n giorni succ (ottimizzata)
PROCFUN\FIGURE7.PAS 33-34 come FIGURE6.PAS con aggiunta di cerchio
PROCFUN\PESI.PAS 35-36 (Lab.) calcolo della categoria in base al peso
PROCFUN\PRESSION.PAS 35-36 (Lab.) punto di rottura di una bottiglia
PROCFUN\RADICE.PAS 35-36 (Lab.) radice quadrata con metodo di Newton
PROCFUN\PRIMI.PAS 35-36 (Lab.) verifica se un numero e` primo
PROCFUN\PRIMI2.PAS 35-36 (Lab.) verifica se un numero e` primo
PROCFUN\TABULA1.PAS 37-38 (Es.) tabulazione e istogramma di una funzione
PROCFUN\TABULA2.PAS 37-38 (Es.) tabulazione e istogramma di una funzione
ARRAY\COMPTIPI.PAS 37-38 compatibilita` di tipo tra variabili
ARRAY\CAMERA.PAS 39-40 primo esempio tipi enumerati
ARRAY\ESPERIME.PAS 39-40 primo esempio array monodimensionali
ARRAY\TESTRIP1.PAS 39-40 (Es.) selezione di test (senza array)
ARRAY\TESTRIP2.PAS 39-40 (Es.) selezione di test (con array)
ARRAY\SOMVETT1.PAS 39-40 secondo esempio array monodimensionali
ARRAY\SOMVETT2.PAS 41-42 procedure con parametri di tipo array
ARRAY\OPERVETT.PAS 41-42 (Es.) operazioni su array a 3 componenti
ARRAY\CONTMAIU.PAS 41-42 esempio array indicizzati da caratteri
ARRAY\CONTLETT.PAS 41-42 (Es.) frequenza di lettere in una sequenza
ARRAY\PALIN1.PAS 43-44 verifica se una stringa e` palindroma
ARRAY\PALIN2.PAS 43-44 verifica palindroma (usando procedure)
ARRAY\PALIN3.PAS 43-44 (Es.) verifica palindroma (usando funzione)
ARRAY\SOMMAMAT.PAS 43-44 somma di due matrici bidimensionali
ARRAY\TEMPSETT.PAS 43-44 (Es.) uso di array bidimensionali
ARRAY\SOMRICOL.PAS 43-44 (Es.) esempio di operazioni su interi vettori
PROCFUN\PPV.PAS 45-46 (Lab.) esempio di passaggio per variabile
PROCFUN\ORDINA3.PAS 45-46 (Lab.) ordinamento di 3 valori reali
PROCFUN\COMBI.PAS 45-46 (Lab.) numero ripetizioni di N oggetti a R a R
ARRAY\SOMVETT3.PAS 45-46 (Lab.) somma di vett. di esattamente N componenti
ARRAY\VETTSUPP.PAS 45-46 (Lab.) somma di vett. di al piu` N componenti
ARRAY\DIAGTRI.PAS 45-46 (Lab.) somma diag. princ. e verifica triangolare
ARRAY\PRODMAT2.PAS 45-46 (Lab.) calcolo della matrice prodotto
ARRAY\PALINFIS.PAS 47-48 (Es.) verifica palindroma (stringa lung. fissa)
FILE\TEXT1.PAS 49-50 primo esempio uso file testo (lettura)
FILE\TEXT2.PAS 49-50 secondo esempio uso file testo
FILE\SOMFILE.PAS 49-50 somma di interi letti da file testo
FILE\INDICEFI.PAS 49-50 (Es.) lista di parole distinte in un file
FILE\ESAMI.PAS 51-52 archivio esami su file strutturato
RICORSIO\STACK.PAS 53-54 esempio pila record di attivazione
FILE\PROVFILE.PAS 55-56 (Lab.) conversione frase da file in maiuscolo
FILE\FRASE.PAS 55-56 (Lab.) conversione frase da file in maiuscolo
FILE\SEQUENZA.PAS 55-56 (Lab.) lunghezza massima sottoseq. di 0 da file
FILE\SEQERROR.PAS 55-56 (Lab.) lunghezza massima sottoseq. di 0 da file
FILE\FILEREAL.PAS 55-56 (Lab.) somma e media di reali da file
FILE\FILEINT1.PAS 55-56 (Lab.) lettura seq. interi e scrittura su file
FILE\FILEINT2.PAS 55-56 (Lab.) lettura seq. interi e scrittura su file
FILE\FILEINTG.PAS 55-56 (Lab.) lettura seq. interi e scrittura su file
FILE\FILESTRG.PAS 55-56 (Lab.) conversione seq. parole da file in maiusc.
FILE\PRODMAT1.PAS 55-56 (Es.) prodotto matrici quadrate lette da file
FILE\PRODMAT2.PAS 55-56 (Es.) prodotto di due matrici lette da file
FILE\PALIN3.PAS 55-56 (Es.) palindroma per stringa letta da file
FILE\PALIN4.PAS 55-56 (Es.) palindroma per stringa letta da file
FILE\ESPERIM2.PAS 55-56 (Es.) esperimenti letti da file strutturato
RICORSIO\RICORSIO.PAS 57-58 primo esempio di procedura ricorsiva
RICORSIO\INVERTIC.PAS 57-58 inversione di una stringa di caratteri
RICORSIO\INVERTIN.PAS 57-58 (Es.) inversione delle cifre di un intero
RICORSIO\FATTORIA.PAS 57-58 funzione ricorsiva per il fattoriale
RICORSIO\FIBONACC.PAS 57-58 (Es.) funzione ricorsiva per Fibonacci
RICORSIO\FIBONACC.PAS 61-62 funzione ricorsiva per Fibonacci
RICORSIO\PALUDE.PAS 61-62 attraversamento di una palude
RICORSIO\PALUDE2.PAS 61-62 (Es.) attr. palude con mov. in ogni direzione
RICORSIO\DRIVEINT.PAS 61-62 (Es.) esercizio con programma da completare
RICORSIO\OPERINDU.PAS 61-62 (Es.) +, *, ^ tra interi usando def. induttiva
RICORSIO\ACKERMAN.PAS 61-62 (Es.) funzione ricorsiva per Ackermann
RICORSIO\DETERMIN.PAS 61-62 (Es.) calcolo del determinante di una matrice
RICORSIO\HANOI.PAS 61-62 (Es.) problema delle torri di Hanoi
PUNTATOR\PUNT.PAS 63-64 esempi sull'uso di puntatori
PUNTATOR\PUNTATOR.PAS 63-64 esempi commentati sull'uso di puntatori
PUNTATOR\TIPOLIS.PAS 63-64 definizioni di tipo per liste collegate
RICORSIO\INVINP.PAS 65-66 (Lab.) inversione sequenza caratteri term. da '.'
RICORSIO\INVINP2.PAS 65-66 (Lab.) inversione seq. caratteri con lung. data
RICORSIO\INVINP3.PAS 65-66 (Lab.) inversione seq. caratteri letta da file
RICORSIO\FATTDEB.PAS 65-66 (Lab.) funzione ricorsiva per il fattoriale
RICORSIO\FIBODEB.PAS 65-66 (Lab.) funzione ricorsiva per Fibonacci
RICORSIO\POLIDEF.PAS 65-66 (Lab.) definizioni di tipo per polinomio
RICORSIO\POLI.PAS 65-66 (Lab.) calcolo valore polinomio in un punto
RICORSIO\HORNER.PAS 65-66 (Lab.) calcolo val. pol. in un punto con Horner
RICORSIO\LABIRDEF.PAS 65-66 (Lab.) def. tipo per attraversamento labirinto
RICORSIO\LABIRINT.PAS 65-66 (Lab.) attraversamento di un labirinto
RICORSIO\LABDEF2.PAS 65-66 (Lab.) def. tipo per attraversamento labirinto
RICORSIO\LAB2.PAS 65-66 (Lab.) attraversamento di un labirinto
FILE\COMPLDEF.PAS 65-66 (Lab.) definizioni tipo per numeri complessi
FILE\COMPL.PAS 65-66 (Lab.) somma numeri complessi (iterativa)
FILE\COMPLRIC.PAS 65-66 (Lab.) somma numeri complessi (ricorsiva)
PUNTATOR\LISTEMAN.PAS 67-68 creazione a mano di una lista collegata
PUNTATOR\TIPOLIS.PAS 67-70 definizioni di tipo per liste collegate
PUNTATOR\LISTE.PAS 67-70 operazioni su liste collegate
PUNTATOR\LISTERIC.PAS 67-70 operazioni su liste collegate
PUNTATOR\LISTECON.PAS 67-70 operazioni su liste collegate
PUNTATOR\LISTEORD.PAS 67-70 operazioni su liste collegate
PUNTATOR\LISTERWE.PAS 67-70 operazioni su liste collegate
PUNTATOR\LISTERW.PAS 67-70 operazioni su liste collegate
PUNTATOR\LISTEALT.PAS 67-70 (Es.) operazioni su liste collegate
PUNTATOR\DRIVERLI.PAS 67-70 (Es.) driver per operazioni su liste collegate
PUNTATOR\FUSIONE.PAS 73-74 (Lab.) fusione di due liste ordinate
TIPIDATO\INSLETT.PAS 75-76 tipo insieme di lettere alfab. maiuscole
TIPIDATO\INSINT.PAS 75-76 (Es.) tipo insieme di interi
TIPIDATO\PILESEQ.PAS 75-76 realizzazione sequenziale di pile
TIPIDATO\PILE.PAS 75-76 (Es.) realizzazione collegata di pile
TIPIDATO\PALUDE3.PAS 75-76 (Es.) attraversamento palude usando una pila
TIPIDATO\PALUDE4.PAS 75-76 (Es.) attraversamento palude usando una pila
TIPIDATO\CODE.PAS 77-78 (Es.) realizzazione collegata di code
TIPIDATO\CODESEQ.PAS 77-78 realizzazione sequenziale di code
TIPIDATO\GRAFMAT.PAS 79-80 grafi con matrice di adiacenza
TIPIDATO\GRAFSUC.PAS 79-80 grafi con liste dei successori
TIPIDATO\GRAFIO.PAS 79-80 (Es.) lettura e scrittura di grafi da file
TIPIDATO\GRAFDRV.PAS 79-80 (Es.) driver per procedure su grafi
TIPIDATO\GRAFEMAT.PAS 79-80 grafi eticettati con mat. di adiacenza
TIPIDATO\GRAFEIO.PAS 79-80 (Es.) lett. e scritt. di grafi etic. da file
TIPIDATO\GRAFEDRV.PAS 79-80 (Es.) driver per procedure su grafi etichettati
TIPIDATO\GRAFVIS.PAS 81-82 algoritmi di visita di grafi
ESAMI\ESO1-1.PAS 83-84 (Lab.) prima simulazione prova esonero: driver
ESAMI\SOL1-1.PAS 83-84 (Lab.) prima simulazione prova esonero: soluzione
ESAMI\ESO1-2.PAS 83-84 (Lab.) prima simulazione prova esonero: driver
ESAMI\SOL1-2.PAS 83-84 (Lab.) prima simulazione prova esonero: soluzione
RICEORDI\RICEESAU.PAS 87-88 ricerca esaustiva in un vettore
RICEORDI\RICEBINR.PAS 87-88 ricerca binaria ricorsiva in vett. ord.
RICEORDI\RICEBINI.PAS 87-88 (Es.) ricerca binaria iterativa in vett. ord.
RICEORDI\ORDSEL.PAS 89-90 ordinamento per selezione
RICEORDI\ORDBUB.PAS 89-90 ordinamento a bolle non ottimizzato
RICEORDI\ORDBUBOT.PAS 89-90 (Es.) ordinamento a bolle ottimizzato
RICEORDI\ORDMERGE.PAS 89-90 ordinamento per fusione
RICEORDI\DRIVEORD.PAS 89-90 (Es.) driver per procedure di ordinamento
ESAMI\ESO2-1.PAS 93-94 (Lab.) seconda simulazione prova esonero: driver
ESAMI\SOL2-1.PAS 93-94 (Lab.) seconda simulazione prova esonero: soluz.
ESAMI\ESO2-2.PAS 93-94 (Lab.) seconda simulazione prova esonero: driver
ESAMI\SOL2-2.PAS 93-94 (Lab.) seconda simulazione prova esonero: soluz.
ESAMI\ALBERDRI.PAS 103-104 driver esercizio di esame del 15/2/99
ESAMI\ALBERSOL.PAS 103-104 soluzione esercizio di esame del 15/2/99
RICORSIO\COSAFA.PAS 103-104 evoluzione pila record attivazione
RICORSIO\RICMULT.PAS 103-104 ev. pila rec. att. con ricorsione multipla
------------------------------ PROGRAMMI FORTRAN ------------------------------
FORTRAN\CIAO.FOR 105-106 il primo programma FORTRAN
FORTRAN\VARIAB.FOR 105-106 il secondo programma FORTRAN
FORTRAN\EURO.FOR 105-106 uso costanti: conversione LIRE --> EURO
FORTRAN\MAX.FOR 105-106 primo esempio uso "IF-THEN-ELSE-ENDIF"
FORTRAN\ENDIF.FOR 105-106 dimostra che l'ENDIF e` necessario
FORTRAN\TEMPERAT.FOR 105-106 if annidati (cond. mutuam. escludentisi)
FORTRAN\SOMMA2.FOR 105-106 primo esempio uso "DO"
FORTRAN\DO.FOR 105-106 dimostra che "DO" e` non strutturato
FORTRAN\LUNG1.FOR 105-106 (Es.) primo esempio uso "DO WHILE"
FORTRAN\LUNG2.FOR 105-106 uso GOTO per simulare repeat-until
FORTRAN\LUNG3.FOR 105-106 (Es.) uso GOTO per simulare while-do
FORTRAN\FATT.FOR 107-108 calcolo del fattoriale usando funzione
FORTRAN\VISIBIL.FOR 107-108 visibilita` tra moduli
FORTRAN\ROMANI2.FOR 107-108 (Es.) da numero romano decrescente a intero
FORTRAN\ROM2INT.FOR 107-108 (Es.) da rom a int: modulo chiamato (server)
FORTRAN\R2IMAIN.FOR 107-108 (Es.) da rom a int: modulo chiamante (client)
FORTRAN\BUBSORT.FOR 107-108 modulo server per bubble sort di un vett
FORTRAN\BUBMAIN.FOR 107-108 (Es.) modulo client per bubble sort di un vett
FORTRAN\SELSORT.FOR 107-108 (Es.) modulo server per selection sort
FORTRAN\INSSORT.FOR 107-108 (Es.) modulo server per insertion sort
FORTRAN\COUNTER.FOR 109-110 modulo per singolo oggetto con COMMON
FORTRAN\USACOUN.FOR 109-110 uso modulo per singolo oggetto
FORTRAN\COUNTERP.PAS 109-110 programma corrispondente in PASCAL
FORTRAN\FORMAT.FOR 109-110 esempio di uso di FORMAT
FORTRAN\STRUTPRO.FOR 109-110 struttura di un modulo PROGRAM
FORTRAN\STRUTFUN.FOR 109-110 struttura di un modulo FUNCTION
FORTRAN\STRUTSUB.FOR 109-110 struttura di un modulo SUBROUTINE
FORTRAN\SORTFILE.FOR 109-110 lettura vettore da file e ordinamento
FORTRAN\SORTFIL2.FOR 109-110 lett. vett. da file con FORMAT e ordin.
FORTRAN\SORTMAIN.FOR 109-110 (Es.) modulo client per ordinamento di un vett