In questa pagina gli studenti possono trovare informazioni ed indicazioni riguardanti le esercitazioni in laboratorio per il Canale I (Anno accademico 2010-2011) per il corso di Fondamenti di Programmazione a cura del Prof. Galesi.
Orario | Mercoledì, 9.00-12.00 |
Luogo | Laboratori AST di via Tiburtina |
Docente | Nicola Galesi |
Esercitatori | Massimo Lauria, Toni Mancini |
Avvisi | Iscriviti per ricevere gli avvisi! |
Nel corso abbiamo visto le funzioni in sufficiente dettaglio. E` caldamente consigliato che tutti gli esercizi elencati oggi (e in futuro) siano realizzati con un main che richiama una funzione. Questa funzione dovrebbe realizzare il compito specificato dal testo dell'esercizio.
Abbiamo discusso l'uso dell'opzione -lm per il compilatore GCC. Questa opzione è necessaria per fare in modo che il compilatore inserisca nell'eseguibile finale i sottoprogrammi che realizzano funzioni matematiche come sqrt.
Abbiamo anche discusso gli intervalli numerici rappresentabili in C utilizzando i vari tipi di dati, interi ed in virgola mobile. Abbiamo discusso le differenze in questo senso tra compilatori a 64 bit e compilatori a 32 bit.
A lezione è stato spiegato in dettaglio il codice dell’esercizio Xmas. L’esercizio è un esempio di codice che contiene cicli annidati.
Un’annotazione riguardante numeri grandi. Su una macchina a 32 bit i long int sono interi realizzati utilizzando 32 bit, mentre su una macchina a 64 bit vengono realizzati utilizzando 64 bit. Per avere 64 bit su entrambi i tipi di macchine, consiglio di utilizzare i long long int, che vengono gestiti da printf/scanf utilizzando il pattern %lld.
Introduzione ad altre optioni del compilatore GCC:
I seguenti esercizi di C sono stati proposti a lezione
Dovete provare a usare il costrutto IF-ELSE per verificare che i dati inseriti in input siano corretti.
Unix, Linux e GCC
Gli studenti devono prendere confidenza con gli ambiente Unix,
Linux, GNU/Linux. Oltretutto devono imparare ad utilizzare un
editor di testi a scelta, per scrivere i programmi C. Devono
anche essere in grado di compilare ed eseguire i loro
programmi, utilizzando gli strumenti disponibili sul sistema;
in primo luogo devono saper utilizzare le funzioni base del
compilatore GCC.
L'esercitazione non si è svolta, poiché è stata recuperata la giornata di didattica del 18 Ottobre 2010. Il 18 ottobre, infatti, si è svolto un evento di particolare importanza per il Dipartimento e per la neonata facoltà: la Lectio Magistralis “The quantitative analysis of user behavior online” del Dott. Prabhakar Raghavan.
Lo scopo delle esercitazioni di questo corso è quello di introdurre gli studenti alla programmazione, utilizzando in particolare il linguaggio C. Le peculiarità di questo linguaggio permettono agli studenti di acquisire familiarità con il concetto di memoria, di puntatore, di gestione degli indirizzi ed in generale di concetti che i linguaggi di programmazione più moderni tendono a nascondere. Per acquisire conoscenza del linguaggio C è necessario esercitarsi molto, per questo è stato messo on line un catalogo di esercizi su cui potete cimentarvi.
Il regolamento per lo svolgimento degli “Homework” è spiegato alla pagina relativa. La nota che segue approfondisce su alcuni degli aspetti etici legati allo svolgimento del compito.
Imbrogliare in un corso universitario equivale ad una truffa. Per evitare dubbi e fraintendimenti mi raccomando di leggere questa nota con attenzione.
Nel contesto accademico, è considerato un atto disonesto ricevere, richiedere o distribuire ad altri, qualunque materiale riguardante gli homework assegnati.
Chi commette uno qualunque di questi atti è ritenuto colpevole di disonestà accademica. Nei casi (peraltro non previsti per questo esame) in cui la soluzione di un homework può essere consegnata in gruppo e uno dei membri si renda responsabile di un atto disonesto, tutti gli elementi del gruppo sono ritenuti colpevoli allo stesso modo del collega. Affermare di non essere a conoscenza della condotta scorretta di un collega nel proprio gruppo non assolve lo studente in nessun caso. Tutti gli studenti coinvolti sono ritenuti pienamente e personalmente responsabili.
Non si fanno distinzioni tra chi copia e chi permette di copiare. Se sospettiamo che uno studente abbia copiato da un altro, assumiamo che ci sia stata cooperazione e ci comportiamo di conseguenza. Entrambi verranno ritenuti colpevoli di condotta scorretta: ogni studente è responsabile del fatto che nessuno possa accedere al suo materiale, e quindi deve fare attenzione.
La sanzione per chi copia, fa copiare o comunque adotta un comportamento disonesto parte dal semplice annullamento dell'esame e arriva all'espulsione dal corso di laurea. In ogni caso lo studente viene segnalato ed il suo comportamento viene segnalato nel suo profilo. La sanzione viene aggravata in caso di comportamento recidivo.
Nel caso in cui l'atto di disonestà accademica dovesse avere aspetti di rilevanza penale, le eventuali responsabilità saranno valutate dall'autorità competente.
Teniamo archiviati i compiti che vengono consegnati, e ci riserviamo il diritto di verificare comportamenti disonesti anche diverso tempo dopo la verbalizzazione dell'esame.