microsoft windows e dev-c++ -...
TRANSCRIPT
A.A. 2013/2014 Docente: A. Saetti Elementi di Informatica e Programmazione Università degli Studi di Brescia
1
Microsoft Windows e Dev-C++
Introduzione al Linguaggio C ed
all’IDE DEV-C++
A.A. 2013/2014 Docente: A. Saetti Elementi di Informatica e Programmazione Università degli Studi di Brescia
2
Le Esercitazioni in Laboratorio
! MTA + MLAB1/2: Edificio Via Valotti, primo piano e piano interrato
! Orario: Giovedì 14:30-17:30 ! Libro:
– H. M. Dietel e P. J. Dietel C: Corso completo di programmazione (3° edizione), Apogeo 2007
– Kim N. King Programmazione in C, Apogeo, 2009.
! Sito WEB: http://zeus.ing.unibs.it/FI-GES ! Esame: sufficienza nella programmazione
vincolante per il superamento ! Software utilizzati: Dev-C++, MS-Excel
A.A. 2013/2014 Docente: A. Saetti Elementi di Informatica e Programmazione Università degli Studi di Brescia
3
Programma delle Esercitazioni
! Il linguaggio C – Introduzione al C e all’ambiente di sviluppo Dev-C++ – Le variabili nel linguaggio C – Le funzioni in C – Gli operatori in C – Le strutture di controllo condizionali: L'istruzione IF in C – Le strutture di controllo iterative: Le istruzioni WHILE e DO-WHILE in C – Le strutture di controllo iterative: L'istruzione FOR in C – Gli array in C – Cicli annidati e matrici in C – Le variabili stringhe in C
! Il foglio di calcolo MS Excel ! Il linguaggio HTML
A.A. 2013/2014 Docente: A. Saetti Elementi di Informatica e Programmazione Università degli Studi di Brescia
4
Cosa è la programmazione?
! La realizzazione di un programma comprende: – L’analisi del problema – Il progetto delle strutture dati e degli algoritmi – La codifica delle strutture e degli algoritmi progettati
in un linguaggio di programmazione – La documentazione del codice prodotto – La verifica e validazione del codice prodotto – La manutenzione del codice prodotto
! La programmazione non è solo scrittura di codice: prima la testa poi la tastiera !
A.A. 2013/2014 Docente: A. Saetti Elementi di Informatica e Programmazione Università degli Studi di Brescia
5
Linguaggi di Programmazione
INFORMAZIONI Insiemi di simboli da rappresentare
DATI Insiemi di
simboli {0,1}
CODIFICA
INTERPRETAZIONE
A.A. 2013/2014 Docente: A. Saetti Elementi di Informatica e Programmazione Università degli Studi di Brescia
6
Interprete e Compilatori
! Il codice sorgente deve essere tradotto in linguaggio macchina tramite: – Interpreti: analizza le istruzioni, identifica le
azioni da eseguire e le esegue – Compilatori: traduce tutte le istruzioni in
linguaggio macchina e produce un eseguibile
! Programma interpretato meno efficiente di un programma compilato
A.A. 2013/2014 Docente: A. Saetti Elementi di Informatica e Programmazione Università degli Studi di Brescia
7
Linguaggio di Programmazione
! Linguaggio formale per la descrizione di programmi per calcolatori
! Sintassi vicina al linguaggio umano ! Se non ci fossero, bisognerebbe
scrivere in codice macchina ! Concetti chiave:
– Variabile: dato o insieme di dati – Istruzione: comando
A.A. 2013/2014 Docente: A. Saetti Elementi di Informatica e Programmazione Università degli Studi di Brescia
8
Breve storia del linguaggio C
! Nato come sottoprodotto di Unix, sviluppato presso i laboratori Bell da Ken Thompson, Dennis Ritchie ed altri
! Unix era originariamente scritto in Assembly (faticoso da gestire) ! Per un ulteriore sviluppo di Unix si rese necessario la creazione di
un linguaggio di più alto livello. Thompson sviluppa il linguaggio “B” ! Nel 1971divenne evidente che il linguaggio B fosse poco adatto per
i nuovi calcolatori. Ritchie sviluppa una versione estesa del linguaggio B, che viene chiamata “C”
! Nel 1973 Unix viene riscritto totalmente in C ! Nel 1989 l’ANSI completa lo standard del C (C89) ! Nel 1999 l’ANSI apporta alcuni cambiamenti significativi allo
standard (C99)
A.A. 2013/2014 Docente: A. Saetti Elementi di Informatica e Programmazione Università degli Studi di Brescia
9
Pregi e difetti del linguaggio C
! Pregi dei programmi C: – Efficienza: “girano” velocemente e con memoria limitata
– Portabilità: compilatori piccoli e facili da scrivere – Potenza: ottenere molto con poche linee di codice
– Semplicità: numero limitato di comandi – Flessibilità: impone poche restrizioni
! Difetti dei programmi C: – Inclini agli errori
– Difficili da capire/modificare
A.A. 2013/2014 Docente: A. Saetti Elementi di Informatica e Programmazione Università degli Studi di Brescia
10
Caratteristiche del linguaggio C
! Adatto alla programmazione di sistema – Fornisce accesso a concetti a livello macchina
– È progettato per essere efficiente
! Parecchi linguaggi sono basati sul C: – C++
– Java
– C#
– Perl
A.A. 2013/2014 Docente: A. Saetti Elementi di Informatica e Programmazione Università degli Studi di Brescia
11
Algortimo
Editor
Compilatore
Linker Librerie
Programma eseguibile
Calcolare il massimo tra 2 numeri
File sorgente Esempio: prog.c
.obj
.lib
File eseguibile Esempio: prog.exe
A.A. 2013/2014 Docente: A. Saetti Elementi di Informatica e Programmazione Università degli Studi di Brescia
12
Sistemi di sviluppo integrati
! Noti anche come IDE: Integrated Development Environment
! Un pacchetto software che permette di scrivere, preprocessare, compilare, “linkare” un programma
! Supporta la scrittura tramite caratteri e colori differenti per parole chiavi, identificatori predefiniti ed utente. Capacità di auto-completare le istruzioni
! I componenti di un IDE lavorano assieme di modo che è possibile eseguire un programma con un semplice “click” del mouse
A.A. 2013/2014 Docente: A. Saetti Elementi di Informatica e Programmazione Università degli Studi di Brescia
13
Sistemi di sviluppo integrati
/* Stampa a video una stringa */ #include <stdio.h>
int main(void) { printf(“Cogito ergo sum.\n”); return 0; }
A.A. 2013/2014 Docente: A. Saetti Elementi di Informatica e Programmazione Università degli Studi di Brescia
14
Sistemi di sviluppo integrati
#include <stdio.h> int main(void){ printf(“Cogito ergo sum.\n”);return 0;}
A.A. 2013/2014 Docente: A. Saetti Elementi di Informatica e Programmazione Università degli Studi di Brescia
15
Dev-C++
! Dev-C++ è un IDE per programmi C/C++ ! Dev-C++ compila i programmi
A.A. 2013/2014 Docente: A. Saetti Elementi di Informatica e Programmazione Università degli Studi di Brescia
16
Dev-C++: Crea/Apri un File
A.A. 2013/2014 Docente: A. Saetti Elementi di Informatica e Programmazione Università degli Studi di Brescia
17
Dev-C++: Salva Programma
A.A. 2013/2014 Docente: A. Saetti Elementi di Informatica e Programmazione Università degli Studi di Brescia
18
Dev-C++: Compila un Programma
A.A. 2013/2014 Docente: A. Saetti Elementi di Informatica e Programmazione Università degli Studi di Brescia
19
Dev-C++: Correzioni Errori di Programmazione
A.A. 2013/2014 Docente: A. Saetti Elementi di Informatica e Programmazione Università degli Studi di Brescia
20
Dev-C++: Esecuzione Programma