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