Programmazione modulare

Похожие документы
Università degli Studi di Cassino Corso di Fondamenti di Informatica Tipi strutturati: Stringhe. Anno Accademico 2010/2011 Francesco Tortorella

HOMEWORKS. in modo che il programma stampi N ripetizioni della stringa HelloWorld (su righe diverse), con N inserito dall utente.

INTRODUZIONE ALLA PROGRAMMAZIONE

L AMBIENTE CODE BLOCKS E L IO

Bloodshed Dev-C++ Bloodshed Dev-C++ è l IDE usato durante le esercitazioni/laboratorio. IDE = Integrated Development Environment. Codice corso: 21012

Le funzioni, e le istruzioni di input/output

Introduzione alla programmazione. Alice Pavarani

Nota: Si consideri il valore di pi greco.

L AMBIENTE CODE BLOCKS E L IO

Introduzione al C++ Corso di C++ INFN LNS 13 Dicembre Corrado Santoro

Classe Squadra. #include <iostream> using namespace std;

a.a Codice corso: 21012, HOMEWORKS

Il compilatore Dev-C++

Informatica e Laboratorio di Programmazione C++ stream Alberto Ferrari. Alberto Ferrari Informatica e Laboratorio di Programmazione

Algoritmo di ordinamento per sostituzione. Esempio : dato l array :

Unità F1. Obiettivi. Il linguaggio C. Il linguaggio C++ Linguaggio C. Pseudolinguaggio. Primi programmi

Qualsiasi programma in C++ segue lo schema:

Linguaggio C: introduzione

Pr1: determinare il maggiore di n numeri interi n. Fondamenti di Informatica Prof. Vittoria de Nitto Personè

ESERCIZIO 1 (Definizione funzioni passaggio parametri per copia)

Università degli Studi di Cassino Corso di Fondamenti di Informatica Puntatori. Anno Accademico 2010/2011 Francesco Tortorella

Istituto Tecnico Industriale M. M. Milano Polistena. Classe III D a.s. 2015/2016 C++ Guida Base

Bloodshed Dev-C++ è l IDE usato durante le esercitazioni/laboratorio. IDE = Integrated Development Environment

#include <iostream.h> #include <stdlib.h> int main(){ return 0;

Tipi di dato e istruzioni elementari in C++

2 Operatori matematici e costrutto if

#include <iostream> // libreria che gestisce flusso di input e output. using namespace std; // uso di librerie standard del C++

CL 3 - Es_01.cpp. #include <iostream> using namespace std;

Qualsiasi programma in C++ segue lo schema:

Espressioni logiche. Espressioni logiche. Operatori logici. Operatori logici. Operatori logici. Espressioni Logiche e Istruzione di Test

Informatica! Appunti dal laboratorio 1!

Corso di Fondamenti di Informatica Sottoprogrammi

#include <stdio.h> main() { - 1 -

Laboratorio di Informatica

La scrittura di un programma Modellizzazione del programma Scrittura del codice Esercizi. Sperimentazioni I. Alberto Garfagnini, Marco Mazzocco

Algoritmo di ordinamento per scambio (a bolle o bubble sort)

Primo programma in C

La scrittura di un programma Modellizzazione del programma Scrittura del codice Esercizi. Sperimentazioni I. Alberto Garfagnini, Marco Mazzocco

Ricerca binaria (o dicotomica) di un elemento in un vettore

INFORMATICA File di testo in C Roberta Gerboni

Lezione 8: Stringhe ed array multidimensionali

INTRODUZIONE ALLA PROGRAMMAZIONE AD ALTO LIVELLO IL LINGUAGGIO JAVA. Fondamenti di Informatica - D. Talia - UNICAL 1. Fondamenti di Informatica

INTRODUZIONE ALLA PROGRAMMAZIONE AD ALTO LIVELLO IL LINGUAGGIO JAVA. Fondamenti di Informatica - Programma

Транскрипт:

Programmiamo in..

Programmazione modulare Un programma complesso si suddivide in più sottoprogrammi o funzioni. Un programma suddiviso in piccoli pezzi, è più semplice da gestire da aggiornare da correggere

Definizione di funzione Gruppo di istruzioni Un insieme di istruzioni che risolvono un sottoproblema Rigo iniziale della funzione { --------------------- --------------------- --------------------- Istruzioni Della funzione In C una funzione ha: un rigo di presentazione le istruzioni racchiuse tra una coppia di parentesi graffe }

Come inizia una funzione Il rigo di presentazione iniziale nome ( )? nome? Cosa restituisce? Di cosa ha bisogno?

Funzioni che non scambiano informazioni void nome ( void ) nome void void Cosa restituisce? niente Di cosa ha bisogno? di niente

Funzioni che restituiscono un numero intero int nome ( void ) nome void int Cosa restituisce? Un numero intero Di cosa ha bisogno? di niente

Il main la funzione principale La esecuzione del programma comincia dal main Un main educato restituisce 0 al sistema operativo (OK) Non ha bisogno di ricevere informazioni dal sistema operativo void int main (void) main int OK

Il main Le istruzioni di una funzione sono racchiuse tra parentesi graffe e terminano con il punto e virgola int main (void) { }.. ;.. ; return 0 ; Ultima istruzione return torna a chi ti ha chiamato restituisce il controllo al sistema operativo passandogli il numero zero che significa tutto OK

Il programma DEV C++ #include <cstdlib> #include <iostream> using namespace std; int main(int argc, char *argv[]) { // Le nostre istruzioni vanno messe qui sotto } system("pause"); return EXIT_SUCCESS;

Il sistema operativo non ci passa informazioni #include <cstdlib> #include <iostream> using namespace std; int main(void) { // Le nostre istruzioni vanno messe qui sotto system("pause"); return EXIT_SUCCESS; }

Le costanti predefinite EXIT_SUCCESS Espressione scritta in lettere maiuscole Ogni volta che incontra EXIT_SUCCESS il traduttore lo sostituisce con il valore 0 return 0; return EXIT_SUCCESS; Sono la stessa istruzione Uso la costante EXIT_SUCCESS al posto di 0

Applicazione console Il programma viene eseguito in una finestra DOS stdlib Quando il programma restituisce il controllo al sistema operativo (return), la finestra viene chiusa Per impedirlo prima di terminare richiediamo una pausa Il sistema operativo attenderà la pressione di un tasto system ( Pause );

Il main Ecco le due ultime istruzioni del main int main (void) { }.. ;.. ; system( Pause ) return 0 ; La funzione system è chiamata con la informazione Pause system Pause void

I caratteri e le stringhe in C I caratteri vanno racchiusi tra apici a g 3 Le parole (insieme di caratteri) vanno racchiuse tra doppi apici Pause Ciao Buongiorno Gli insiemi di caratteri si chiamano stringhe

Dove sta la funzione system? Nelle Librerie del C++ Un enorme insieme di funzioni divise per categorie che si possono inserire nel nostro programma

Le librerie del C La funzione system è a disposizione del programmatore nella libreria del C cstdlib ( c standard library) Si richiede al sistema operativo di intervenire (ma per fare cosa?) L informazione (stringa) passata tra parentesi alla funzione system ( Pause ); glielo spiega

Inserimento di una libreria Per adoperare una funzione di libreria bisogna includere la libreria nel nostro programma La libreria stdlib sta su disco nel file cstdlib.h Il rigo #include <cstdlib.h> fa parte delle dichiarazioni iniziali del nostro programma

Le librerie sempre necessarie Le librerie da includere sempre sono 2 cstdlib iostream #include <cstdlib.h> #include <iostream.h> Sono i righi iniziali dei programmi C++

L area del rettangolo #include <cstdlib> #include <iostream> using namespace std; float B ; float H ; float A ; int main ( void) { } cin >> B ; cin >> H ; A = B*H ; cout << A ; system ( Pause ); return 0; Includendo la libreria iostream.h il traduttore quando incontra cin e cout saprà dove prendere le istruzioni che corrispondono a queste due parole chiave

Difetti #include <cstdlib> #include <iostream> using namespace std; float B ; float H ; float A ; int main ( void) { } cin >> B ; cin >> H ; A = B*H ; cout << A ; system ( Pause ); return 0; Il dialogo con l utente è poco chiaro Bisogna Inserire messaggi all inizio prima della richiesta dei dati prima della comparsa di un risultato

I messaggi sul video Sintassi: cout << Messaggio ; Il messaggio va racchiuso tra doppi apici

I Messaggi per area del rettangolo Iniziale cout << Programma per il calcolo dell area del rettangolo ; Prima di ogni richiesta dati cout << Inserire il valore della base in metri ; cin >> B; Prima della visualizzazione di un risultato cout << L area misura metri quadrati ; cout << A;

Attenzione agli spazi bianchi Se le scritte risultano appiccicate Inseriamo uno spazio bianco al termine del messaggio precedente cout << L area vale (metri quadrati) ; cout << A;

Come si va a capo Fine linea Nuova linea cout << endl; cout << \n ; cout << L area vale ; cout << A; cout << metri quadrati ; cout << endl;

I messaggi tutti su un rigo cout << L area = << A << metri quadrati << endl; Significa scrivi Il messaggio L area = E poi scrivi il contenuto della variabile A E poi scrivi metri quadrati E poi scrivi endl (vai a capo)

L area del rettangolo #include <cstdlib> #include <iostream> using namespace std; float B ; float H ; float A ; int main ( void) { cout << Area del rettangolo ; cout << Valore base in metri ; cin >> B ; cout << Valore altezza in metri ; cin >> H ; A = B*H ; cout << L area = << A << mqi << endl; system ( Pause ); return 0; }