Diagrammi a blocchi 1

Documenti analoghi
Diagrammi a blocchi 1

Altrimenti, il M.C.D. di a e b è anche divisore di r (e.g. a=15,b=6,r=3 che è il M.C.D.)

Lezione 5. La macchina universale

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

DISPENSE DI PROGRAMMAZIONE

Introduzione alla programmazione

Corso di Informatica. Problemi ed algoritmi. Ing Pasquale Rota

Algoritmi e soluzione di problemi

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

Dispensa di Informatica II.1

DI D AGRA R MM M I M A BLOCC C H C I TEORI R A E D D E SERC R I C ZI 1 1

ALGORITMI E PROGRAMMAZIONE STRUTTURATA. Prof R. Bresolin a.s

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

SISTEMI DI ELABORAZIONE DELLE INFORMAZIONI Algoritmi e programmazione Prof. Andrea Borghesan

Modulo 1 Concetti di base della Tecnologia dell Informazione

ALGORITMI. Obiettivo: risolvere problemi mediante l uso di un elaboratore elettronico. Elaboratore elettronico

Formalismi per la descrizione di algoritmi

Unità di apprendimento 7. Dal problema al programma

Corso di Matematica per la Chimica. Dott.ssa Maria Carmela De Bonis a.a

LA METAFORA DELL UFFICIO

Introduzione agli Algoritmi

INFORMATICA. Strutture iterative

La rappresentazione dell algoritmo Diagrammi di flusso

PROGRAMMAZIONE: Le strutture di controllo

PROGRAMMAZIONE STRUTTURATA

Le Strutture di controllo Del Linguaggio C. Prof. Francesco Accarino IIS Altiero Spinelli Sesto San Giovanni

Le strutture di controllo

Le strutture di controllo in C++

Unità di apprendimento 6. Dal problema al programma

Come ragiona il computer. Problemi e algoritmi

Laboratorio di Informatica. Esercitazione su algoritmi e diagrammi di flusso

RAPPRESENTAZIONE GLI ALGORITMI NOTAZIONE PER LA RAPPRESENTAZIONE DI UN ALGORITMO

Rappresentazione degli algoritmi

Introduzione alla programmazione Esercizi risolti

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

COSA SONO I FLOW CHART

ELABORAZIONE DELLE INFORMAZIONI (ALGORITMI E LINGUAGGI DI PROGRAMMAZIONE)

Sviluppo di programmi. E ora, finalmente. Si comincia! 1. Analizzare il problema. 2. Progettare una soluzione (1) E necessario capire:

Risolvere un problema significa individuare un procedimento che permetta di arrivare al risultato partendo dai dati Termine algoritmo da:

Programmazione I. Fondamenti di programmazione. Problemi, Algoritmi, Diagrammi di flusso

Strutture di Controllo

LA METAFORA DELL UFFICIO

1 Esercizi in pseudocodice

ALGORITMI E PROGRAMMAZIONE STRUTTURATA. Prof R. Bresolin a.s

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

Problemi, algoritmi, calcolatore

Corso di Informatica di Base

Diagrammi di flusso. Un metodo per rappresentare graficamente gli algoritmi. sotto programma. Input/ Output. Start. predicato Elaborazione Stop

Fondamenti di Informatica

LABORATORIO DI INFORMATICA

Istruzioni, algoritmi, linguaggi

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

Dal Problema all Algoritmo. Prof. Francesco Accarino IIS Altiero Spinelli Sesto San Giovanni

Algoritmi e diagrammi di flusso

2. Algoritmi e Programmi

in termini informali: un algoritmo è una sequenza ordinata di operazioni che risolve un problema specifico

Dal problema a un programma comprensibile dal calcolatore. Il Progetto degli Algoritmi. Dall analisi del problema all esecuzione

Linguaggi, Traduttori e le Basi della Programmazione

Istruzioni Condizionali

Rappresentazione degli algoritmi

ALGORITMI 2 FINALITÁ

Sviluppo di programmi

Il concetto di calcolatore e di algoritmo

Sistemi Web per il turismo - lezione 3 -

MODULO 07. La soluzione dei problemi mediante gli algoritmi

STRUTTURA E LOGICA DI FUNZIONAMENTO DEL COMPUTER

L ELABORATORE ELETTRONICO

10 STRUTTURE DI CONTROLLO REPEAT E WHILE. Strutture di controllo e variabili strutturate

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

Algoritmi e diagrammi di flusso versione biennio

IL TEOREMA DI BOEHM-JACOPINI

Dall Algoritmo al programma

Matlab : le basi. Vediamo ora un esercizio di calcolo: Il volume di una sfera è dato da V=4*π*r 3 /3 dove r è il raggio.

Per gli esercizi sulla algebra booleana, si consiglia di verificare tramite tabelle di verità le equivalenze logiche proposte sulle dispense.

Introduzione agli Algoritmi 4. Problemi. Dal Problema alla Soluzione

Lezione 7: La Formalizzazione degli Algoritmi - Strutture di Controllo e Selettive La Programmazione Strutturata (3 p) Giovedì 21 Ottobre 2010

Transcript:

Diagrammi a blocchi 1

Sommario Diagrammi di flusso, o a blocchi." Analisi strutturata." Esercizi. 2

Diagrammi a blocchi È un linguaggio formale di tipo grafico per rappresentare gli algoritmi." Attraverso il diagramma a blocchi (o flow chart) si può indicare lordine di esecuzione delle istruzioni." Un particolare simbolo grafico detto blocco elementare è associato a ciascun tipo di istruzione elementare." I blocchi sono collegati fra loro tramite frecce che indicano il susseguirsi delle istruzioni. 3

Diagrammi a blocchi I blocchi elementari sono i seguenti: 4

Diagrammi a blocchi Un diagramma a blocchi descrive un algoritmo se:" ha un blocco iniziale e uno finale;" è costituito da un numero finito di blocchi azione e/o blocchi lettura/scrittura e/o blocchi di controllo;" ciascun blocco elementare soddisfa le condizioni di validità. 5

Diagrammi a blocchi Condizioni di validità:" ciascun blocco azione, lettura/scrittura ha una sola freccia entrante e una sola freccia uscente;" ciascun blocco di controllo ha una sola freccia entrante e due frecce uscenti;" ciascuna freccia entra in un blocco o si innesta su unaltra freccia;" ciascun blocco è raggiungibile dal blocco iniziale;" il blocco finale è raggiungibile da qualsiasi altro blocco. 6

Esercizio Scrivere un algoritmo e rappresentarlo tramite un diagramma a blocchi per i seguenti problemi:" attraversare la strada;" preparare la pasta;" calcolare larea del triangolo;" determinare le radici di unequazione di secondo grado;" realizzare la somma di due numeri interi. 7

Analisi volta alla stesura di descrizioni di algoritmi tramite diagrammi a blocchi di tipo strutturato." Un diagramma a blocchi di tipo strutturato è più facilmente comprensibile e modificabile." In un diagramma strutturato non apparirà mai unistruzione di salto incondizionato. 8

Teorema di Böhm-Jacopini:"!!Ogni diagramma a blocchi non strutturato è!!sempre trasformabile in un diagramma a blocchi!strutturato ad esso equivalente.! Due diagrammi sono equivalenti se, partendo dagli stessi dati iniziali, producono gli stessi risultati. 9

Una descrizione è di tipo strutturato se i blocchi sono collegati tramite i seguenti schemi di flusso strutturato:" schema di sequenza;" schema di selezione;" schema di iterazione. 10

Schema di sequenza:" due o più schemi di flusso sono eseguiti in successione." Nota: lo schema di sequenza è strutturato se e solo se lo sono i blocchi S 1 e S 2. 11

Schema di selezione:" esiste un blocco di controllo che permette di scegliere quale schema di flusso debba essere eseguito tra due schemi, in funzione del valore di verità del controllo. 12

Schema di iterazione (ciclo o loop):" modo conciso per descrivere azione che devono essere ripetute. 13

Nota." I due schemi precedenti non sono equivalenti; in un caso lo schema S è eseguito almeno una volta, nellaltro potrebbe non essere mai eseguito." Le condizioni vero/falso per il controllo possono essere invertite: si parla di iterazione per vero quando S è eseguito finché la condizione su C è vera e iterazione per falso nellaltro caso. 14

Note sullo schema di iterazione Quando è necessario eseguire lo stesso insieme di operazioni per un numero specificato di volte, si adotta un particolare schema di iterazione:" inizia con una sequenza di azioni di assegnazione, dette istruzioni di inizializzazione;! possiede una sequenza di azioni (iterazione) che viene ripetuta per un numero specificato di volte. 15

16

Condizione di fine ciclo: viene controllata dopo lesecuzione di ogni blocco di iterazione." Può essere con controllo in coda al ciclo o in testa. 17

Un ciclo è detto enumerativo quando è noto a priori il numero di volte che deve essere eseguito." Si usa la tecnica del contatore per controllarne lesecuzione: si usa cioè una variabile detta contatore del ciclo che viene incrementata (o decrementata) fino a raggiungere un valore prefissato. 18

Un ciclo è indefinito quando non è noto a priori il numero di volte che deve essere eseguito." Questo accade quando la condizione di fine ciclo dipende dal valore di una o più variabili che, a loro volta, o dipendono dallinterazione con lesterno o vengono modificate dallinterno delliterazione in modo complesso. 19