Programmazione Procedurale in Linguaggio C++

Похожие документы
INTRODUZIONE Informatica - Modulo di Programmazione Ingegneria gestionale, a.a Patrizia Scandurra

LINGUAGGI DI ALTO LIVELLO

I Linguaggi di Programmazione

Linguaggi di Programmazione

Il linguaggio di programmazione Python

DAGLI ALGORITMI AI LINGUAGGI. Linguaggi di Programmazione

Elementi di programmazione

Linguaggi di Programmazione

Cos è un algoritmo. Si dice algoritmo la descrizione di un metodo di soluzione di un problema che sia

Introduzione alla programmazione. Walter Didimo

C++ Barriera di astrazione. Barriera di astrazione. Basic. Basic. Lisp. Lisp. Pascal. Prolog. Pascal. Prolog. Cobol. Fortran IMPERATIVI FUNZIONALI

Linguaggi di programmazione

Introduzione alla programmazione

Programma del corso. Elementi di Programmazione. Introduzione agli algoritmi. Rappresentazione delle Informazioni. Architettura del calcolatore

LINGUAGGI DI ALTO LIVELLO. Si basano su una macchina virtuale le cui mosse non sono quelle della macchina hardware

Concetti di Base sulla Programmazione. Prof.Ing.S.Cavalieri

Introduzione alla Programmazione. Giselda De Vita

Linguaggi, Traduttori e le Basi della Programmazione

Linguaggi di programmazione

Informatica 3. LEZIONE 1: Introduzione. Modulo 1: Introduzione al corso Modulo 2: Introduzione ai linguaggi di programmazione

Cosa è l Informatica?

Lez. 8 La Programmazione. Prof. Pasquale De Michele (Gruppo 2) e Raffaele Farina (Gruppo 1) 1

Linguaggi di alto livello, compilatori e interpreti

Programmazione Procedurale in Linguaggio C++

Corso di Fondamenti di Informatica Linguaggi di Programmazione

Algoritmi e Programmi

Unità Didattica 2 I Linguaggi di Programmazione

STORIA E CARATTERISTICHE

ELABORAZIONE DELLE INFORMAZIONI (ALGORITMI E LINGUAGGI DI PROGRAMMAZIONE)

INTRODUZIONE ALLA PROGRAMMAZIONE. Cosimo Laneve

Introduzione alla programmazione

Lez. 5 La Programmazione. Prof. Salvatore CUOMO

Programmazione Procedurale in Linguaggio C++

Introduzione a Java. Prof. Francesco Accarino IIS Altiero Spinelli Via Leopardi132 Sesto San Giovanni

Corso di Laurea Ingegneria Informatica Laboratorio di Informatica

Problema: dati i voti di tutti gli studenti di una classe determinare il voto medio della classe.

Concetti Introduttivi. Il Computer

Algoritmi e Linguaggi

Fondamenti VBA. Che cos è VBA

Programmazione C Massimo Callisto De Donato

Introduzione agli Algoritmi

Introduzione alla programmazione strutturata

TEORIE E TECNICHE PER LA COMUNICAZIONE DIGITALE

Linguaggi, compilatori e interpreti

Cosa è un programma. Informatica di Base -- R.Gaeta 18

Programmazione Procedurale in Linguaggio C++

Informatica Applicata

COMPILAZIONE. Tarsformazione di linguaggi

L ELABORATORE ELETTRONICO

Il Software programmabili programma algoritmo

L ELABORATORE ELETTRONICO!

Rappresentazione con i diagrammi di flusso (Flow - chart)

Scrivere il software. Scrivere il software. Interprete. Compilatore e linker. Fondamenti di Informatica

Programmazione Procedurale in Linguaggio C++

FONDAMENTI DI INFORMATICA

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

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

Introduzione a Visual Studio Prof. Francesco Accarino IIS Altiero Spinelli Sesto San Giovanni

Teoria dell Informazione

Informatica ALGORITMI E LINGUAGGI DI PROGRAMMAZIONE. Francesco Tura. F. Tura

INFORMATICA. L informatica comprende:

Modularizzazione del software

Unità di apprendimento 6. Dal problema al programma

Introduzione al funzionamento di un calcolatore elettronico

Fondamenti d Informatica: linguaggi formali. Barbara Re, Phd

Primo programma in C

Docente: Prof. Marco Patella Tutor: Vincenzo Lomonaco

FONDAMENTI DI INFORMATICA

II Esercitazione: S.O. & Fortran 77

Linguaggio C++ Linguaggi di terza generazione

CORSO DI PROGRAMMAZIONE E INFORMATICA GENERALE 1

Informatica! Appunti dal laboratorio 1!

Corso sul linguaggio Java

Elementi di C++ di base

Транскрипт:

Programmazione Procedurale in Linguaggio C++ Elementi di Base Parte 1 Introduzione G. Mecca M. Samela Università della Basilicata Elementi di Base >> Sommario Sommario Linguaggi di Programmazione Sintassi Semantica Ciclo di Vita del Programma Concetto di Algoritmo Compilazione e Caricamento Metodologia di Programmazione 2

Elementi di Base >> Linguaggi di Programmazione Linguaggi di Programmazione Linguaggi per impartire istruzioni al processore Programma sequenza di istruzioni normalmente pensato per risolvere un problema di calcolo al programma vengono forniti dei dati il programma calcola eseguendo le istruzioni il programma restituisce i risultati 3 Elementi di Base >> Linguaggi di Programmazione Evoluzione dei Linguaggi Esistono numerosi linguaggi differenti per funzionalità e tecnologia metà anni 60 BASIC 1974 C 1991 VB 1994 Java metà anni 50 FORTRAN 1968 Pascal 1990 C++ 2000 C#, VB.NET Linguaggi di Programmazione Procedurale Strutturata Linguaggi Ibridi Linguaggi Orientati agli Oggetti 4

Elementi di Base >> Linguaggi di Programmazione Linguaggi di Programmazione programmazione procedurale C clean C sostanzialmente equivalente ma più semplice del C programmazione orientata agli oggetti C++ Java, C# 5 Elementi di Base >> Linguaggi di Programmazione Linguaggi di Programmazione Attenzione i linguaggi della stessa famiglia sono normalmente basati sugli stessi concetti Differenze funzionalità: alcuni linguaggi forniscono funzionalità che altri non hanno sintassi semantica 6

Elementi di Base >> Linguaggi di Programmazione Linguaggio di Programmazione Simile al linguaggio naturale sintassi e semantica Sintassi grammatica del linguaggio insieme delle regole che stabiliscono quali frasi (programmi) sono corretti in Italiano: maiuscola dopo il punto in C++: le istruzioni si concludono con ; 7 Elementi di Base >> Linguaggi di Programmazione Linguaggio di Programmazione Processo di compilazione il codice del programma (codice sorgente) viene sottoposto ad analisi sintattica viene trasformato in codice eseguibile (codice oggetto) Compilatore divide il codice in frammenti detti token (parole chiave main, void, nomi ecc.) verifica la correttezza sintattica 8

Elementi di Base >> Linguaggi di Programmazione Linguaggio di Programmazione Semantica significato del linguaggio insieme delle regole che stabiliscono come il calcolatore esegue i programmi corretti in italiano: andrò è un azione nel futuro in C++: cout << Ciao ; Attenzione sintassi e semantica dei linguaggi di programmazione sono rigorose 9 Elementi di Base >> Linguaggi di Programmazione Linguaggio di Programmazione Attenzione ci sono due diverse nozioni di correttezza Correttezza Sintattica assenza di errori sintattici il programma è eseguibile Correttezza Semantica (o Logica) implica la correttezza sintattica il prog. risolve correttamente il problema 10

Elementi di Base >> Linguaggi di Programmazione Linguaggio di Programmazione Verifica della correttezza sintattica compilazione consente di eliminare gli errori sintattici Verifica della correttezza semantica esecuzione e test del programma prove di funzionamento per controllare che il programma si comporti correttamente processo più complesso e delicato 11 Elementi di Base >> Ciclo di Vita di un Programma Ciclo di Vita di un Programma Programma sequenza di istruzioni che risolve un problema di calcolo Per programmare è necessario conoscere almeno un linguaggio ma questo non basta è necessario conoscere tecniche, ovvero metodologie di programmazione 12

Elementi di Base >> Ciclo di Vita di un Programma Dal Problema al Programma Problema di Calcolo dati in ingresso -dati in ingresso -risultati attesi Es: lavare i panni Algoritmo Programma Calcolatore Es: lavatrice Es: strategia di lavaggio (colore, delicati) dati in uscita Es: programmi di lavaggio 13 Elementi di Base >> Ciclo di Vita di un Programma >> Algoritmo Algoritmo Strategia di soluzione del problema deve essere concretamente eseguibile dal calcolatore; es: separa i bianchi dai colorati deve essere corretta es: lava bianchi e colorati a 60 gradi deve essere efficiente, ovvero produrre la soluzione utilizzando le minori risorse possibili (es: tempo, memoria) es: lava ciascun capo separatamente 14

Elementi di Base >> Ciclo di Vita di un Programma Programma Scrittura codice sorgente Compilazione verifica della correttezza sintattica codice oggetto Collegamento ogni programma richiede codice esterno codice eseguibile Esecuzione verifica degli errori logici 15 Elementi di Base >> Ciclo di Vita di un Programma Ciclo di Vita di Un Programma Analisi del Problema Scelta dell Algoritmo Scrittura del Programma codice sorgente errori nella strategia Compilazione e Collegamento codice eseguibile errori sintattici errori logici Verifica Uso e Manutenzione 16

Elementi di Base >> Ciclo di Vita di un Programma Compilazione e Collegamento codice sorgente es:primo.cpp Compilazione Compilatore librerie esterne precompilate es: iostream Collegamento Collegatore ( linker ) codice oggetto (ling. macchina) es: primo.obj codice eseguibile es: primo.exe 17 Elementi di Base >> Ciclo di Vita di un Programma In Pratica Scrittura del programma editor di testi (es: Blocco Note o TextPad) Compilazione e Collegamento è necessario un compilatore del linguaggio Compilatore Borland BCC 5.5 (vedi sito) si utilizza dalla finestra del DOS Compilatore FORTRAN FTN77 (vedi sito) si utilizza dalla finestra del DOS 18

Elementi di Base >> Ciclo di Vita di un Programma Un Semplice Programma // Primo programma #include <iostream.h> void main () { cout << "Primo programma" << endl; } 19 Elementi di Base >> Ciclo di Vita di un Programma Borland BCC 5.5 >> 20

Elementi di Base >> Ciclo di Vita di un Programma Un Semplice Programma in FORTRAN C---- Primo programma program primo write (*,*) 'Primo programma' stop end 21 Elementi di Base >> Ciclo di Vita di un Programma Salford FTN77 >> 22

Elementi di Base >> Ciclo di Vita di un Programma Metodologia di Programmazione Metodo per affrontare il ciclo di vita passi e tecniche per analizzare il problema passi e tecniche per scegliere l algoritmo passi e tecniche per scrivere il codice passi e tecniche per verificare il codice passi e tecniche per manutenere il codice La metodologia è importante altrettanto che la conoscenza del linguaggio 23 Elementi di Base >> Sommario Riassumendo Varie tecnologie per la programmazione ci concentriamo sulla prog. procedurale sintassi e semantica Ciclo di Vita del Programma Problema-Algoritmo-Programma Compilazione e Collegamento Importanza della Metodologia 24