Algoritmi, Strutture Dati e Programmi. UD 2.b: Programmazione in Pascal

Похожие документы
UD 3.2b: Programmazione in Pascal (1)

INFORMATICA GENERALE Prof. Alberto Postiglione Dipartimento Scienze della Comunicazione Università degli Studi di Salerno

Array in Fortran 90. Ing. Luca De Santis. Anno accademico 2006/2007. DIS - Dipartimento di informatica e sistemistica

Fondamenti di Informatica 6. Algoritmi e pseudocodifica

Breve Manuale di Riferimento sulla Sintassi Linguaggi C++ e FORTRAN

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

Formalismi per la descrizione di algoritmi

Introduzione agli Algoritmi

Evoluzione del FORTRAN 14/03/2016. LABORATORIO DI PROGRAMMAZIONE Corso di laurea in matematica 15 IL LINGUAGGIO FORTRAN

Introduzione alla programmazione strutturata

Cognome e Nome : Corso e Anno di Immatricolazione: Modalità di Laboratorio (Progetto/Prova) :

Introduzione alla programmazione

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

Come ragiona il computer. Problemi e algoritmi

I costrutti forniti dal linguaggio si dividono in corrispondenti classi di istruzioni

Le basi del linguaggio Java

IL TEOREMA DI BOEHM-JACOPINI

Corso di Informatica di Base

Sviluppare un programma in FORTRAN

ESECUZIONE DI PROGRAMMI C SU MACCHINE REALI. Docente: Giorgio Giacinto AA 2008/2009. formalizzazione degli algoritmi in linguaggio C

Informatica/ Ing. Meccanica/ Prof. Verdicchio/ 14/02/2012 / Foglio delle domande / VERSIONE 1

VBA Principali Comandi

Fondamenti di Informatica

CORSO DI PROGRAMMAZIONE

Costrutti condizionali e iterativi

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

Prova di Laboratorio del [ Corso A-B di Programmazione (A.A. 2004/05) Esempio: Media Modalità di consegna:

Linguaggio C Informatica Grafica

Strutture di Controllo

Programmazione a blocchi. Algobuild Prof. Sergio Roselli

Introduzione al MATLAB c Parte 3 Script e function

Linguaggi e Ambienti di Programmazione

Introduzione al Linguaggio C Corso di Informatica Laurea in Fisica

Introduzione alla programmazione Algoritmi e diagrammi di flusso. Sviluppo del software

Università degli studi di Roma Tor Vergata Ingegneria Medica Informatica I Programma del Corso

Programmazione web lato client con JavaScript. Marco Camurri 1

MATLAB c. Lucia Gastaldi Dipartimento di Matematica Lezione 4 (15 ottobre 2003)

STRUTTURA E LOGICA DI FUNZIONAMENTO DEL COMPUTER

Linguaggio C - le strutture di controllo: sequenza, selezione, iterazione

Rappresentazione con i diagrammi di flusso (Flow - chart)

Esempio: somma di due numeri

Diagramma a blocchi per la selezione, in un mazzo di chiavi, di quella che apre un lucchetto

Programmazione Procedurale in Linguaggio C++

Java SE 7. Strutture di programmazione (2)

Lezione 6 Introduzione al C++ Mauro Piccolo

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

Funzioni, Stack e Visibilità delle Variabili in C

Indice PARTE A. Prefazione Gli Autori Ringraziamenti dell Editore La storia del C. Capitolo 1 Computer 1. Capitolo 2 Sistemi operativi 21 XVII XXIX

PROGRAMMAZIONE STRUTTURATA

6 - Blocchi e cicli. Programmazione e analisi di dati Modulo A: Programmazione in Java. Paolo Milazzo

Algoritmi e soluzione di problemi

Programmazione con il linguaggio LibreOffice Basic

Elementi di Informatica

Linguaggio C: introduzione

Le direttive del Preprocessore

Lezione 6 programmazione in Java

Introduzione alla programmazione in linguaggio C

VBA è un linguaggio di scripting derivato da Visual Basic, da cui prende il nome. Come ogni linguaggio ha le sue regole.

Problema: calcolare il massimo tra K numeri

Modularizzazione del software

Programma svolto di INFORMATICA. Classe 3 - indirizzo MERCURIO A.S. 2009/2010

INFORMATICA. Strutture iterative

Indice. Prefazione. 3 Oggetti e Java 53

Il linguaggio di programmazione Python

Descrizione di un algoritmo

STRUTTURE DI CONTROLLO DEL C++

Fortran in pillole : prima parte

LESSICO E SINTASSI DEL PASCAL

Il computer. Il case e l'unità di elaborazione. Il computer, una macchina aggiornabile.

1 introdurre le monete per l importo necessario. 2 selezionare la quantità di zucchero. 3 selezionare la bevanda desiderata

MATLAB I/O. Informatica B - A.A. 2012/2013 ACQUISIZIONE DI INPUT DA TASTIERA

Matlab. Istruzioni condizionali, cicli for e cicli while.

Linguaggio C. strutture di controllo: strutture iterative. Università degli Studi di Brescia. Docente: Massimiliano Giacomin

Rappresentazione degli algoritmi

Транскрипт:

Algoritmi, Strutture Dati e Programmi : Programmazione in Pascal Prof. Alberto Postiglione AA 2007-2008 Università degli Studi di Salerno Il Linguaggio di Programmazione Pascal Esistono molti linguaggi di programmazione. Per motivi didattici utilizzeremo una versione ridotta di un linguaggio di programmazione tra i più semplici, il Pascal. Questo linguaggio presenta tutte le caratteristiche dei linguaggi più complessi, anche se non è molto utilizzato dai programmatori professionisti (se non nella versione, chiamata Delphi). # 2 Prof Alberto Postiglione Università Salerno 1

Il Linguaggio di Programmazione Pascal Un buon compilatore Pascal (Dev-Pascal 1.9.2 + Free Pascal compiler) lo si può scaricare, gratuitamente, all indirizzo: http://www.bloodshed.net/devpascal.html. E sicuramente utile un testo introduttivo sulla programmazione in Pascal. Un manuale di introduzione al linguaggio lo si può trovare in rete agli indirizzi http://it.wikibooks.org/wiki/programmare_in_pascal (Wikipedia). http://www.marcocantu.it/epascal/default.htm (Pascal nella versione Delphi ) http://www.matematiche.org/ (seguendo il link Dispense ) # 3 Prof Alberto Postiglione Università Salerno Il Linguaggio di Programmazione Pascal Un programma nel linguaggio di programmazione Pascal è suddiviso in due blocchi (DATI) Blocco delle dichiarazioni degli oggetti di lavoro (principalmente variabili, costanti e tipi di dato). (ISTRUZIONI) Blocco delle istruzioni racchiuse tra le parole chiave. End Ogni programma comincia con la parola program seguita dal nome che noi attribuiamo al programma Ogni istruzione termina con un punto e virgola ; # 4 Prof Alberto Postiglione Università Salerno 2

Tipi di Dato Predefiniti Tipi di dato elementari: Integer (numero intero) Real (numero reale) Char (singolo carattere) Boolean (può valere VERO o FALSO) Tipi di dato composti String (sequenza di caratteri) Array (Vettore o matrice) Record (gruppo di dati eterogenei) Text (File contenente testi) # 5 Prof Alberto Postiglione Università Salerno Esempi di dichiarazioni Const Mio_Nome = Luigi ; Mia_Età = 35; Var Numero_Brano : integer; Titolo_Brano : string; Costo_CD : real; # 6 Prof Alberto Postiglione Università Salerno 3

Istruzioni principali Principali istruzioni Lettura/scrittura Assegnazione (corrisponde alla Sequenza) Decisione (corrisponde alla decisione binaria) Ciclo Per facilitare la lettura del codice, è opportuno che le istruzioni vengano scritte indentate, in base alla profondità dell istruzione # 7 Prof Alberto Postiglione Università Salerno Istruzioni di Lettura e scrittura Servono per leggere e scrivere il valore di una variabile dall input o sull output (ad es. lettura da tastiera e scrittura su video) Write (Variabile): corrisponde ad inviare il valore corrente della Variabile alla periferica di output (tipicamente il monitor); Read (Variabile): corrisponde a inserire nella Variabile il valore che viene immesso dalla periferica di input (tipicamente la tastiera) # 8 Prof Alberto Postiglione Università Salerno 4

Istruzioni di I/O: Esempio Programma 1: Legge un carattere da input e lo manda in output program Leggi; var car: char read(car); write(car); end. # 9 Prof Alberto Postiglione Università Salerno Istruzione di Assegnazione (Sequenza) Assegnazione: Istruzione che assegna il valore attuale di un espressione ad una variabile Sintassi: Nome della Variabile := Espressione; # 10 Prof Alberto Postiglione Università Salerno 5

Istruzione di Assegnazione: Esempio 2 Programma 2: Legge due numeri e manda in output la loro somma program Somma; var totale: integer; read(x); read(y); totale :=x+y; write (totale); end. # 11 Prof Alberto Postiglione Università Salerno Istruzione condizionale (Decisione Binaria) E un istruzione che valuta una condizione ed esegue, in alternativa, un insieme di istruzioni o un altro in base all esito del confronto (VERO/FALSO). if Condizione then Istruzioni 1 end else Istruzioni 2 end Se Istruzioni 1 o Istruzioni 2 sono composte da una sola istruzione, la coppia di end può essere omessa Se la condizione è soddisfatta si esegue il then, altrimenti si esegue l else # 12 Prof Alberto Postiglione Università Salerno 6

Istruzione condizionale: Esempio Programma 3: Legge due numeri e manda in output il massimo program Massimo; var x,y: integer; read(x); read(y); if x > y then write (x) else write (y); end NOTA: in queste posizioni non va inserito il punto e virgola, in quanto l istruzione non è ancora terminata # 13 Prof Alberto Postiglione Università Salerno Istruzione ciclica E un istruzione che valuta una condizione ed esegue un insieme di istruzioni se il confronto dà esito VERO e poi torna ad eseguire il test. In caso di esito FALSO si esce dal ciclo, cioè viene eseguita l istruzione immediatamente successiva l end del ciclo Sintassi: while Condizione do Lista Istruzioni end # 14 Prof Alberto Postiglione Università Salerno 7

Istruzione ciclica: Esempio Programma 4: Calcola la somma di 10 numeri Algoritmo informale: 1) inizializza Totale con 0 2) Esegui per 10 volte le seguenti due istruzioni 2.1) leggi (x) 2.2) effettua la somma di x con Totale 3) stampa Totale Ho bisogno di un meccanismo che mi permetta di eseguire per 10 volte le istruzioni 2.1 e 2.2 (qualcosa che conti il numero di volte che 2.1 e 2.2 vengono eseguite!) # 15 Prof Alberto Postiglione Università Salerno Istruzione ciclica: Esempio Program Somma2; var x, K, totale: integer; totale := 0; K := 1; while K <= 10 do read (x); totale := totale + x; K:=K+1; end; write (totale); end # 16 Prof Alberto Postiglione Università Salerno 8

Istruzione ciclica: Esempio (alternativo) Program Somma2bis; var x, K, totale: integer; totale := 0; for K :=1 to 10 do end; write (totale); end read (x); totale := totale + x; # 17 Prof Alberto Postiglione Università Salerno 9