240 likes | 435 Views
Lab 1: 17 -20 Marzo 2014. Marco D. Santambrogio – marco.santambrogio@polimi.it Gianluca Durelli - durellinux@gmail.com Ver. aggiornata al 17 Marzo 2014. 17 Marzo. Obiettivi. Imparare ad usare l ’ ambiente di sviluppo Cosa è e come funziona un compilatore
E N D
Lab 1: 17 -20 Marzo 2014 Marco D. Santambrogio – marco.santambrogio@polimi.it Gianluca Durelli - durellinux@gmail.com Ver. aggiornata al 17 Marzo 2014
Obiettivi • Imparare ad usare l’ambiente di sviluppo • Cosa è e come funziona un compilatore • Sistemazione degli ambienti di sviluppo • Comandi base da linea di comando • Esercitarsi sui costrutti visti a lezione • Inserimento dati da tastiera • Controllo dei dati • Uso delle funzioni
Lab 1: Agenda • Informazioni sui laboratori • Benvenuti nel fantastico mondo del C • Esercizi Lab1
Lab 1: Agenda • Informazioni sui laboratori • Benvenuti nel fantastico mondo del C • Esercizi Lab1
Calendario dei Labs • Dove: EG 7 • Quando • Lunedì: 15.30 – 18.30 • Giovedì: 13.30 – 16.30 • Macchine per il lab: • Il vostro portatile • Macchina lab: virtualdesktop
Per macchine PoliMI http://virtualdesktop.polimi.it
Struttura • Tolte le slide di “contesto” su • Obiettivi • Elenco esercizi • Approccio dritto al sodo, niente "fronzoli": • Introduzione all'uso di un editor di testo e di una shell • Non useremo un IDE (e.g., code::blocks, eclipse, ...) • È una proposta, ci sono molti modi diversi di ottenere gli stessi risultati • Per info, fare riferimento al sito del corso: Home: http://home.dei.polimi.it/santambr/dida/ieim/2014/ Calendario: http://home.dei.polimi.it/santambr/dida/ieim/calendario.htm
Feedback Come per le lezioni, anche per i lab si possono dare feedback http://tinyurl.com/IEIM2014-FeedbackLab
Lab 1: Agenda • Informazioni sui laboratori • Benvenuti nel fantastico mondo del C • Ambiente di sviluppo • Un primo programma • Esercizi Lab1
Ambiente di sviluppo • Useremo un ambiente basato su distribuzioni Linux: • Sulle macchine del lab, CentOS • Sui vostri portatili… • Per sviluppare del codice C, è sufficiente avere: • Un editor di testo, magari con syntax highlighting (e.g., geany, gedit) - Un compilatore (e.g., gcc)
Ambiente – CentOS o VM Editor: gedit Shell: bash
Struttura di un programma C parte dichiarativa globale parte dichiarativa locale parte esecutiva inclusione librerie / per poter invocare funzioni utili (i/o, ...) / dichiarazione di variabili globali e funzioni int main ( ) { dichiarazione di variabili locali istruzione 1; / tutti i tipi di operazioni, e cioè: / istruzione 2; / istr. di assegnamento / istruzione 3; / istr. di input / output / istruzione 4; / istr. di controllo (condizionali, cicli) / ... istruzione N; } Ogni programma C deve contenere un modulo int main() {...}
Tutorial: bash e gcc • Ecco alcuni comandi utili per utilizzare la shellbash: • $ pwd - (PrintWorking Directory) visualizza la directory corrente • $ ls - elenca i file presenti nella cartella corrente • $ cd CARTELLA - cambia la cartella corrente a CARTELLA • $ ./PROG - esegue il programma specificato (se è nella cartella corrente) • Questi pochi comandi sono sufficienti per individuare ed eseguire un programma • Per compilare un sorgente, abbiamo usato il comando gcc • gccFILE.c -o PROG • Questo comando traduce il codice sorgente presente in FILE.c e lo salva nel file eseguibile PROG
HowTo: compilare ed eseguire • Per poter eseguire il nostro programma, bisogna tradurlo in codice macchina • Questa operazione viene eseguita dal compilatore (e.g., gcc) • Scritto e salvato il file sorgente (e.g., sul Desktop, nel file primo.c), • Dobbiamo compilare ed eseguire un programma utilizzando una shell (e.g., bash) $ cd Desktop $ gcc primo.c –o exe $ ./exe
Lab 1: Agenda • Informazioni sui laboratori • Benvenuti nel fantastico mondo del C • Esercizi Lab1
Exe 1: Stampa a video • Scrivere un programma in C che visuallizzi a video la seguente scritta: IEIM - 2013/2014 Laboratorio 1 Studente: Nome Cognome Matricola: #mat
Exe 2: Trova errori • Il seguente programma non funziona…
Exe 3: Mostra caratteri • Si scriva un programma che richieda l’inserimento di un carattere e lo mostri a video, con anche la sua codifica ASCII
Exe 4: Gestione errori sui caratteri • Si scriva un programma in C che richiede l’inserimento di due caratteri e li mostra a video
Exe 5: Inserimento dati • Si scriva un “convertitore” di unità dal sistema SI al US customary units • Un programma per conversione • Ci interessano solo le seguenti conversioni • piedi in metri (1ft= 0.3048 m) • pound in Kg (1lb = 453.59237g) • yard in metri (1yd = 0.9144m)