Corso di Laurea in Ingegneria Elettronica
Corso di Fondamenti di Informatica - A.A. 2000/2001
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.c 11-12 il primo programma
base\arearet1.c 13-14 area di un rettangolo di dimensioni fisse
base\arearet2.c 13-14 area di un rett. di dim. lette in input
base\eurolire.c 13-14 (Es.) conversione da EURO in LIRE
base\divisione.c 13-14 (Es.) quoziente e resto di una divisione
base\eq2dispo.c 13-14 (Es.) eq. quadratica a discriminante positivo
ifelse\maggiore.c 15-16 (Es.) primo esempio uso "if-then-else"
ifelse\temperat.c 15-16 if annidati (cond. mutuam. escludentisi)
ifelse\triang.c 15-16 classificazione di un triangolo
ifelse\triang2.c 15-16 (Es.) classificazione triangolo (contando)
ifelse\triang3.c 15-16 (Es.) classific. triangolo (cond. complesse)
ifelse\mesesucc.c 15-16 calcolo mese successivo
ifelse\equaquad.c 15-16 (Es.) soluzione di un'equazione quadratica
ifelse\giormese.c 17-18 primo esempio uso "case-of"
ifelse\datasucc.c 17-18 (Es.) calcolo data del giorno successivo
ifelse\datasucc.c 21-22 calcolo data del giorno successivo
cicli\massimo.c 21-22 massimo di 10 interi positivi
cicli\somma.c 21-22 (Es.) semplice esempio con ciclo definito
cicli\massimoi.c 21-22 (Es.) massimo di 10 interi
cicli\pari.c 21-22 (Es.) stampa dei primi N numeri pari
cicli\sompone.c 21-22 (Es.) somma numeri pos e neg (lunghezza nota)
cicli\sompone2.c 21-22 (Es.) somma numeri pos e neg (lunghezza nota)
cicli\lung1.c 23-24 primo esempio ciclo indefinito
cicli\lung2.c 23-24 (Es.) primo esempio uso do-while
cicli\sompone3.c 23-24 (Es.) somma numeri pos e neg (terminata da 0)
cicli\sequenz1.c 23-24 lunghezza massima sottosequenza di 0
cicli\sequenz2.c 23-24 (Es.) lunghezza max. sottosequenza di 0 ottim.
cicli\pitagor1.c 23-24 primo esempio uso cicli annidati
cicli\pitagor2.c 23-24 (Es.) tavola pitagorica con intestazione
cicli\piramid1.c 23-24 stampa piramide di asterischi
cicli\piramid2.c 23-24 (Es.) piramide di numeri di altezza variabile
cicli\mcd1.c 23-24 (Es.) mcd (usando la definizione)
cicli\mcd2.c 23-24 (Es.) mcd (algoritmo di euclide)
cicli\mcd3.c 23-24 (Es.) mcd con controllo sui dati in ingresso
cicli\mcd4.c 23-24 (Es.) mcd (algoritmo di euclide con i resti)
tipi\intlim.c 25-26 (Es.) intervalli di def. per interi senza segno
tipi\unsiglim.c 25-26 (Es.) intervalli di def. per interi con segno
ifelse\sistema.c 27-28 (Lab.) soluzione sistema due equazioni lineari
ifelse\duecifre.c 27-28 (Lab.) stampa numero di due cifre cifra/lettere
cicli\primi.c 27-28 (Lab.) verifica se un numero e` primo
tipi\charlim.c 29-30 (Es.) intervalli di def. tipi carattere
tipi\charop.c 29-30 operazione in base a operatore in input
tipi\floatlim.c 29-30 (Es.) intervalli di def. tipi reali
funzioni\figure0.c 31-32 figure geometriche: solo messaggi
funzioni\figure1.c 31-32 figure geometriche: scelta forma
funzioni\figure2.c 31-32 figure geometriche: scelta forma e dim.
funzioni\figure34.c 31-32 (Es.) f. geom.: scelta forma, dim, spost, car.
funzioni\rettang1.c 31-32 (Es.) rettangolo di '*' di larghezza fissa
funzioni\rettang2.c 31-32 (Es.) rettangolo '*' larghezza fissa (ciclo)
funzioni\rettang3.c 31-32 (Es.) rettangolo '*' larghezza e spost. variabile
funzioni\maggfun.c 33-34 maggiore due numeri con funzione
funzioni\romani1.c 33-34 conversione da "cifra romana" in intero
funzioni\romani2.c 33-34 (Es.) da numero romano decrescente a intero
funzioni\romani3.c 33-34 (Es.) da numero romano (corretto) a intero
funzioni\figure5.c 33-34 (Es.) f. geom.: scelta forma, dim, spost, car.
funzioni\combi.c 33-34 (Es.) combinazioni con ripetizione N oggetti R a R
funzioni\mcmmcd.c 35-36 (Lab.) mcm e mcd con funzioni
funzioni\sommaraz.c 35-36 (Lab.) somma razionali rappresentati come frazione
funzioni\duecifun.c 35-36 (Lab.) stampa num. due cifre cifra/lettere con fun.
funzioni\contaatt.c 37-38 contatore di attivazione di funzioni
funzioni\stack.c 37-38 evoluzione pila dei record di attivazione
ricorsio\ricorsio.c 37-38 programma che usa una funzione ricorsiva
ricorsio\fattoria.c 37-38 fattoriale usando una funzione ricorsiva
ricorsio\driveint.c 37-38 (Es.) esercizio con programma da completare
ricorsio\operindu.c 37-38 (Es.) +, *, ^ tra interi usando def. induttiva
ricorsio\invertic.c 39-40 inversione di una stringa di caratteri
ricorsio\invertin.c 39-40 (Es.) inversione delle cifre di un intero
ricorsio\fibonacc.c 39-40 funzione ricorsiva per Fibonacci
ricorsio\hanoi.c 39-40 problema delle torri di Hanoi
ricorsio\palinric.c 39-40 (Es.) funzione ricorsiva per stringa con . centr.
ricorsio\ackerman.c 39-40 (Es.) funzione ricorsiva per Ackermann
ricorsio\mcdricor.c 39-40 (Es.) mcd con funzione ricorsiva
ricorsio\primrico.c 39-40 (Es.) verifica se due numeri sono primi tra loro
ricorsio\restoric.c 39-40 (Es.) resto di divisione con funzione ricorsiva
puntator\puntind.c 41-42 operatori di indirizzo & e dereferenziam. *
funzioni\rettang.c 43-44 (Lab.) visualizzazione di un rettangolo
ricorsio\fattdeb.c 43-44 (Lab.) funzione ricorsiva per il fattoriale
ricorsio\fibodeb.c 43-44 (Lab.) funzione ricorsiva per Fibonacci
ricorsio\potenza.c 43-44 (Lab.) funzione ricorsiva per calcolo della potenza
puntator\puntsize.c 45-46 operatore sizeof con puntatori
puntator\parametr.c 45-46 passaggio di parametri per indirizzo
puntator\scambio.c 45-46 scambio dei valori di due variabili
puntator\ordina2.c 45-46 stampa di due valori ordinati
puntator\datasuN1.c 45-46 calcolo della data del giorno dopo
puntator\datasuN1.c 45-46 (Es.) calcolo della data di n giorni dopo
puntator\datasuN2.c 45-46 (Es.) calcolo della data di n giorni dopo
puntator\puntator.c 45-46 allocazione dinamica della memoria
puntator\vitadin.c 45-46 tempo di vita di variabili allocate din.
array\vettrw.c 47-48 lettura e stampa di un vettore
array\esperime.c 47-48 ripetizioni del risultato di un esperimento
array\frequen1.c 47-48 frequenza cifre in sequenza di car (switch)
array\frequen2.c 47-48 frequenza cifre in sequenza di car (diretta)
array\matrici.c 47-48 lettura e stampa di una matrice
array\matsomma.c 49-50 somma di due matrici
array\matprod.c 49-50 prodotto di due matrici
array\vettfunz.c 49-50 passaggio di un vettore ad una funzione
array\ordina3.c 51-52 (Lab.) ordinamento di un vettore di 3 elementi
ricorsio\potenza.c 51-52 (Lab.) potenza tramite una funzione ricorsiva
array\invvett.c 53-54 inversione di un vettore
array\matmax.c 53-54 matrice MxN: elemento massimo
array\matvetma.c 53-54 matrice MxN: vettore elementi massimi
array\matdiago.c 53-54 matrice MxN: verifica se e` diagonale
array\matsimm.c 53-54 matrice MxN: verifica se e` simmetrica
array\mattrasp.c 53-54 matrice MxN: calcolo matrice trasposta
array\allocdin.c 53-54 allocazione dinamica di un vettore
stringhe\stringhe.c 55-56 esempio dell'utilizzo di stringhe
array\swapmatr.c 59-60 (Lab.) scambio di righe con colonne in una matrice
stringhe\password.c 59-60 (Lab.) riconoscimento password di lunghezza fissa
stringhe\passwor1.c 59-60 (Es.) riconoscimento password di lunghezza variab.
stringhe\frase.c 63-64 (Lab.) creazioni frasi pseudocasuali in inglese
stringhe\fraseit.c 63-64 (Lab.) creazioni frasi pseudocasuali in italiano
stringhe\strequal.c 65-66 confronto di uguaglianza tra due stringhe
stringhe\argnum.c 67-68 numero di argomenti ricevuti da un programma
stringhe\argprint.c 67-68 argomenti ricevuti da un programma
stringhe\argsum.c 67-68 somma di due interi passati come argomenti
stringhe\argnoext.c 67-68 (Es.) modifica nome di file passato come argomento
ricorsio\palude.c 69-70 attraversamento di una palude
tipi\complex.c 71-72 numeri complessi come coppie di reali
tipi\voli.c 73-74 modifica dati riguardanti insieme di voli
file\contclf.c 75-76 numero caratteri e linee in un file
file\duedadif.c 75-76 (Es.) simulazione lanci di dadi e stampa su file
puntator\listeman.c 77-80 creazione a mano di una lista collegata
puntator\tipolis.c 77-80 definizioni di tipo per una lista collegata
puntator\liste.c 77-80 operazioni su liste collegate
puntator\listeric.c 77-80 operazioni su liste collegate
puntator\listecon.c 77-80 operazioni su liste collegate
puntator\listeord.c 77-80 operazioni su liste collegate
puntator\listeirw.c 77-80 operazioni su liste collegate
puntator\listerw.c 77-80 operazioni su liste collegate
puntator\listealt.c 77-80 (Es.) operazioni su liste collegate
puntator\driverli.c 77-80 (Es.) driver per operazioni su liste collegate
file\carbon.c 81-82 (Lab.) codifica del contenuto di un file
file\conta.c 81-82 (Lab.) conteggio del numero di 0 e 1 in un file
esami\doping.c 83-84 manipolazione di liste di farmaci
tipidato\inslett.c 85-86 tipo insieme di lettere alfab. maiuscole
tipidato\insint.c 85-86 (Es.) tipo insieme di interi
tipidato\pileseq.c 85-86 realizzazione sequenziale statica di pile
tipidato\piledin.c 85-86 realizzazione sequenziale dinamica di pile
tipidato\pile.c 85-86 (Es.) realizzazione collegata di pile
tipidato\code.c 87-88 (Es.) realizzazione collegata di code
tipidato\codeseq.c 87-88 realizzazione sequenziale di code
tipidato\albbin.c 89-90 alberi binari (realizz., lettura, stampa)
tipidato\albinric.c 89-90 ricerca in un albero binario di ricerca
riceordi\ricesau.c 91-92 ricerca esaustiva in un vettore
riceordi\ricbinri.c 91-92 ricerca binaria ricorsiva in vett. ord.
riceordi\ricbinit.c 91-92 (Es.) ricerca binaria iterativa in vett. ord.
riceordi\ordsel.c 93-94 ordinamento per selezione
riceordi\ordbub.c 93-94 ordinamento a bolle non ottimizzato
riceordi\ordbubot.c 93-94 (Es.) ordinamento a bolle ottimizzato
riceordi\ordmerge.c 93-94 ordinamento per fusione
riceordi\ordins.c 93-94 (Es.) ordinamento per inserimento
riceordi\drivevet.c 93-94 (Es.) driver per procedure di ordinamento
esami\assicura.c 95-96 incidenti e polizze assicurative