Andrea Marin's Homepage
Corso di Programmazione 2010/2011 (page available only in Italian)

Slides del corso

Se si individuano errori/imprecisioni o parti non chiaramente illustrate nelle slides, sono apprezzati commenti che possono essere inviati per mail a marin _AT_ dsi.unive.it.

Esercizi

  • Assegnati il 05/11/2011
    1. Scrivere un programma che acquisito un intero positivo da standard input, stampi su standard output il numero di divisore che esso ammette. Stampare anche se il numero è primo oppure no.
    2. Scrivere un programma che acquisito un intero positivo da standard input, stampi su standard output se il numero è perfetto, cioè se la somma dei suoi divisori (eccetto se stesso) dà il numero stesso. Esempi: 6=1+2+3; 28=1+2+4+7+14.

Materiali di approfondimento

I materiali di approfondimento proposti hanno lo scopo di integrare parti trattate a lezione ma non adeguatamente affrontate nel libro di testo.

Libri di testo

  • B. W. Kernichan, D. M. Ritchie. Il linguaggio C: principi di programmazione e manuale di riferimento. Pearson. II ed.
  • Bellini, A. Guidi. Linguaggio C - guida alla programmazione. Quarta edizione. McGraw-Hill

Orario delle lezioni

  • Mercoledì dalle 18.15 alle 19.45
  • Giovedì dalle 18.15 alle 19.45 (fino al 3/11 incluso)
  • Venerdì dalle 18.15 alle 19.45 (dal 7/11 al 23/12 inclusi)
  • Sabato 5 novembre dalle 10.30 alle 12.00

Avvisi

  • 16/01/2012: Esiti dell'esame dell'esame di programmazione del 16/01/2012 (testo). Negli esiti, il primo numero si riferisce alla parte di teoria, il secondo alla parte di programmazione al calcolatore, il terzo è il voto finale.
    1. Gava 838291: 9/13/22
    2. Stefani 838640: 9.5/18/28
    3. Mazzariol 828920: 7/11/18
  • 19/12/2011: Giovedì 22/12/2011 si terrà una lezione di recupero del corso di programmazione part-time
  • 18/11/2011: Si consiglia ali studenti che non possono seguire le lezioni in presenza di svolgere regolarmente gli esercizi proposti nelle slide o in questa pagina web. Le interazioni col docente sono benvenute.
  • 18/11/2011: La lezione di mercoledì 23/11 è posticipata a giovedì 24/11. La lezione di venerdì 25/11 si terrà regolarmente.
  • 03/11/2011: Purtroppo questa sera non sono riuscito ad essere a lezione a causa di un guasto improvviso all'automobile. La lezione sarà recuperata al più presto.
  • 20/10/2011: Contrariamente a quanto detto a lezione, mercoledì si terrà lezione in aula e giovedì in laboratorio. Questo a causa dei lavori di manuntenzione dei sistemi informatici previsti per mercoledì
  • 02/10/2011: La lezione di Programmazione di mercoledì 12 ottobre è sospesa e sarà recuperata giovedì 13 ottobre.
  • 02/10/2011: Scambio d'orario. Solo per la settimana corrente, la lezione di programmazione per studenti part-time di sabato 8 ottobre si scambierà con quella di calcolo di lunedì 3 ottobre.

Registro delle lezioni

  1. 23/12/2011 Cancellazione di liste. Esercizi
  2. 22/12/2011 Esercizi sulle liste: scorrimenti ed applicazione della ricorsione
  3. 21/12/2011 Manipolazione elementari delle liste (inserimenti, scorrimenti)
  4. 16/12/2011 Tipi derivati: struct. Introduzione alle liste
  5. 14/12/2011 Allocazione dinamica della memoria.
  6. 09/12/2011 Esercizi su puntatori.
  7. 07/12/2011 Puntatori ed indirizzi.
  8. 02/12/2011 Laboratorio: ricerca binaria. Soluzione iterativa e ricorsiva a confronto.
  9. 30/11/2011 Esercizi. Uso di funzioni ricorsive
  10. 25/11/2011 Array multi-dimensionali e stringhe in C
  11. 24/11/2011 Esercizi sugli array
  12. 18/11/2011 Introduzione agli array mono-dimensionali. Esercizi il laboratorio
  13. 16/11/2011 Approfondimenti ed esercizi sull'uso dei cicli
  14. 11/11/2011 Laboratorio: i file header
  15. 09/11/2011 Scopo degli identificatori. Introduzione ai sottoprogrammi
  16. 05/11/2011 (10.30-12.00) Laboratorio: esercizi sull'uso dei cicli
  17. 02/11/2011 Approfondimento sui cicli. Ciclo for e do while
  18. 27/10/2011 Laboratorio: esercizi
  19. 26/10/2011 Introduzione ai cicli: while
  20. 20/10/2011 Condizionale
  21. 19/10/2011 Assegnamento ed espressioni
  22. 13/10/2011 Laboratorio: uso di Gcc
  23. 05/10/2011 Macchina astratta C semplificata. Compilatore e linker. Input/Output di variabili
  24. 03/10/2011 Introduzione al corso. Macchina astratta C e stato.