1 / 22

6 marzo 2002

6 marzo 2002. Laboratorio di informatica 1 (Programmazione). Laboratorio di Informatica 1 (Programmazione). Mercoledì 11:30 –13:15 , (14:30-15:15) 11:30 –13:00 Giovedì 9:30 –11:15 9:45 –11:15 Aula T8. Docenti. Dora Giammarresi Ricevimento: orario da definire + su appuntamento

Download Presentation

6 marzo 2002

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. 6 marzo 2002 Laboratorio di informatica 1 (Programmazione)

  2. Laboratorio di Informatica 1 (Programmazione) Mercoledì11:30 –13:15 , (14:30-15:15) 11:30 –13:00 Giovedì9:30 –11:15 9:45 –11:15 Aula T8

  3. Docenti Dora Giammarresi Ricevimento: orarioda definire + su appuntamento Ufficio 2002 (piano terra, 2o dente) e-mail: giammarr@mat.uniroma2.it Miriam Di Ianni (esercizi e progetti) e-mail: diianni@mat.uniroma2.it

  4. Contenuto del corso • Programmazione strutturata • Approccio strutturato e disciplinato alla stesura di programmi • Il linguaggio C

  5. Testo consigliato H.M.Deitel , P.J.Deitel C corso completo di programmazione Apogeo

  6. Esame • Due prove in itinere (meta’ e fine corso) • prima:programma svolto fino a quella data • seconda: tutto il programma • Due appelli a fine corso • tutto il programma + (inciascuno dei modi scelti) • Progetto • modalita’ ancora da definire

  7. Per passare l’esame… (Studiare) e…. … programmare, programmare, programmare, programmare, programmare, programmare, programmare, programmare, programmare, programmare, programmare, programmare, programmare, programmare, programmare, programmae, programmare, programmare, programmare, programmare, programmare, programmare, programmare, programmare, programmare, programmare, programmare, programmare, programmare, programmare, programmare,……

  8. Pagina WEB Segui puntatore dalla pagina del corso di laurea ….. oppure www.mat.uniroma2.it\~giammarr\Teaching\Programmazione\ index.html • Programma del corso, testo consigliato • Lezioni svolte, esercizi • Codice dei programmi (“disco” con tutti i programmi del libro) • Informazioni esami • Compilatori • Avvisi vari Consultarla spesso!

  9. Compilatore Dev-C++ • Requisiti di sistema per Dev-C++ • Sistema operativo Microsoft Windows 95, 98, ME, NT 4, o 2000 • RAM: 8 Mb (consigliati 32 Mb) • CPU: Intel Pentium 100 MHz o compatibile (consigliati 233 MHz) • Spazio su disco: 30 Mb liberi (consigliati 45 Mb) • Scaricare Dev-C++ da Internet • ftp://ftp.sunet.se/pub/simtelnet/win95/prog/devcpp_4.zip Istruzioni dettagliate sulla pagina WEB del corso ! Consiglio: seguire le “scorciatoie”….

  10. Osservazioni generali su C • Chiarezza dei programmi • Programmi “intricati” sono difficili da leggere, capire, correggere, collaudare, modificare. (nessun motivo di orgoglio….) • C e’ un linguaggio “portabile” • Programmi possono essere eseguiti su computer diversi • Tuttavia la portabilita’ e’ sempre sfuggente…. • Vari dettagli non verranno trattati…. • Per dettagli tecnici • Leggere il manuale del compilatore usato • Leggere il manuale dell’ ANSI C • Leggere il libro di Kernigan e Ritchie

  11. Breve storia del C • C • Sviluppato da Ritchie a partire da due precendenti linguaggi, BCPL e B • Usato per sviluppare UNIX • Adesso, molti sistemi operativi sono scritti in C or C++ • Hardware indipedente (portabile) • Alla fine degli anni ‘70 si e’ trasformato nel " C tradizionale “ [Kerninghan, Rich ,Il linguaggio di programmazioneC , 1978-(88)] • Standard C • Esistevano diverse (leggere) variazioni del C, spesso non compatibili • Fu incaricato un comitato che creasse una definizione del C che fosse “non ambigua, indipendente dalla macchina“ • Standard creato nel 1989, aggiornato nel 1999

  12. Le Librerie del C • Programmi C sono composti da pezzi/moduli chiamati funzioni • Si possono creare delle proprie funzioni • Vantaggi: si sa esattamente come funzionano • Svantaggi: perdita di tempo • Spesso si usano le funzioni delle librerie C • … come “mattoni” • Evitare di ri-inventare la ruota! • Se la funzione esiste, in genere e’ meglio usare quella piuttosto che riscriversela… • Le funzioni di libreria sono scritte bene e sono portabili

  13. Compiler Memoria Loader Memoria CPU Preprocessor Linker Editor Disk Disk Disk Disk Disk . . . . . . . . . . . . Ambiente Tipico C Programma creato con un editor e memorizzato • Fasi di un programma C: • Edit • Preprocess • Compile • Link • Load • Execute Il programma preprocessore esegue il codice. Compilatore crea il codice oggetto e lo memorizza nel disco Linker collega il codice oggetto con le librerie, crea a.out(nome.exe) e lo memorizza sul disco Loader carica il programma in memoria. CPU esegue un’istruzione per volta, eventualmente memorizzando i nuovi dati ottenuti dall’esecuzione del programma

  14. 1 /* Fig. 2.1: fig02_01.c 2 Il primo programma in C */ 3 #include <stdio.h> 4 5 int main() 6 { 7 printf( "Welcome to C!\n" ); 8 return 0; 9 } Primo programma: Stampare una riga di testo • Commenti • Testo racchiuso tra /* e */ é ignorato dal computer • Si usano per descrivere i programmi

  15. 1 /* Fig. 2.1: fig02_01.c 2 Il primo programma in C */ 3 #include <stdio.h> 4 5 int main() 6 { 7 printf( "Welcome to C!\n" ); 8 return 0; 9 } Primo programma: Stampare una riga di testo • #include <stdio.h> • Direttiva del preprocessore – dice di caricare il contenuto di un certo file • <stdio.h> consente le operazioni standard di input/output

  16. 1 /* Fig. 2.1: fig02_01.c 2 Il primo programma in C */ 3 #include <stdio.h> 4 5 int main() 6 { 7 printf( "Welcome to C!\n" ); 8 return 0; 9 } Primo programma: Stampare una riga di testo • int main() • Un programma C++ contiene una o piu’ funzioni, una delle quali deve essere main • Le parentesi si usano per indicare una funzione • int significa che main “restituisce" un valore intero • Parentesi { } indicano un blocco • Il corpo di tutte le funzioni deve stare tra parentesi { }.

  17. 1 /* Fig. 2.1: fig02_01.c 2 Il primo programma in C */ 3 #include <stdio.h> 4 5 int main() 6 { 7 printf( "Welcome to C!\n" ); 8 return 0; 9 } Primo programma: Stampare una riga di testo • printf( "Welcome to C!\n" ); • E’ una istruzione: indica una azione • In particolare: stampa la stringa di caratteri tra “ ” • Tutte le istruzioni terminano con ; • \ carattere di escape • In particolare \n carattere newline

  18. Linker • Quando una funzione viene chiamata, il Linker la cerca nella libreria • La inserisce nel programma oggetto • Se il nome della funzione e' scritto male, il Linker segnalera' errore perche' non riuscira' a trovarla nella libreria.

  19. 1 /* Fig. 2.1: fig02_01.c 2 Il primo programma in C */ 3 #include <stdio.h> 4 5 int main() 6 { 7 printf( "Welcome to C!\n" ); 8 return 0; 9 } Primo programma: Stampare una riga di testo • return 0; • modo di terminare una funzione • in questo caso: il programma finisce normalmente

  20. 1 /* Fig. 2.1: fig02_01.c 2 Il primo programma in C */ 3 #include <stdio.h> 4 5 int main() 6 { 7 printf( "Welcome to C!\n" ); 8 return 0; 9 } Primo programma: Stampare una riga di testo • Parentesi } • Indica che il main e' finito

  21. 1 /* Fig. 2.1: fig02_01.c 2 Il primo programma in C */ 3 #include <stdio.h> 4 5 int main() 6 { 7 printf( "Welcome to C!\n" ); 8 return 0; 9 } Primo programma: Stampare una riga di testo Compilo ed eseguo. Output: Welcome to C!

  22. Esercizi: • Istallare il compilatore! • Compilare (ed eseguire) i programmi visti a lezione

More Related