Docsity
Docsity

Prepara i tuoi esami
Prepara i tuoi esami

Studia grazie alle numerose risorse presenti su Docsity


Ottieni i punti per scaricare
Ottieni i punti per scaricare

Guadagna punti aiutando altri studenti oppure acquistali con un piano Premium


Guide e consigli
Guide e consigli


Algoritmi informatica, Appunti di Informatica

Algoritmi esempi pratici per liceo

Tipologia: Appunti

2018/2019

Caricato il 25/02/2019

giulia-falabella-1
giulia-falabella-1 🇮🇹

4.7

(3)

3 documenti

1 / 35

Toggle sidebar

Questa pagina non è visibile nell’anteprima

Non perderti parti importanti!

bg1
DIAGRAMMI A DIAGRAMMI A
BLOCCHIBLOCCHI
1
BLOCCHIBLOCCHI
TEORIA ED ESERCIZITEORIA ED ESERCIZI
1
pf3
pf4
pf5
pf8
pf9
pfa
pfd
pfe
pff
pf12
pf13
pf14
pf15
pf16
pf17
pf18
pf19
pf1a
pf1b
pf1c
pf1d
pf1e
pf1f
pf20
pf21
pf22
pf23

Anteprima parziale del testo

Scarica Algoritmi informatica e più Appunti in PDF di Informatica solo su Docsity!

DIAGRAMMI ADIAGRAMMI A^ BLOCCHIBLOCCHI

1

BLOCCHIBLOCCHI TEORIA ED ESERCIZITEORIA ED ESERCIZI

1

Il^ linguaggio^ dei^ diagrammidiagrammi

aa^ blocchiblocchi^ è^ un^ possibile formalismo per la descrizione di algoritmi Il diagramma a blocchi, o

flowchartflowchart, è una rappresentazione

grafica dell’algoritmo

2 Un diagramma a blocchi descrive il flusso

flusso delle operazioni da eseguire^ per^ realizzare

la^ trasformazione,^

definita nell’algoritmo, dai dati iniziali ai risultati Ogni istruzione dell’algoritmo viene rappresentata all’internodi un^ bloccoblocco elementareelementare, la cui forma grafica è determinatadal tipo di istruzione I blocchi sono collegati tra loro da

lineelinee didi flussoflusso, munite di frecce, che indicano il susseguirsi di azioni elementari

Un^ diagrammadiagramma^ aa^ blocchiblocchi

è^ un^ insieme^ di^ blocchi elementari composto da:^ a)^ un blocco iniziale^ b)^ un^ blocco^ finale

4 b)^ un^ blocco^ finale c)^ un numero finito n (n

≥^ 1) di blocchi di azione e/o diblocchi di lettura/scrittura d)^ un numero finito m (m

≥^ 0) di blocchi di controllo

L’insieme dei blocchi elementari che descrivono un algoritmo devesoddisfare le seguenti condizioni:^ ciascun blocco di azione o di lettura/scrittura ha una sola frecciaentrante ed una sola freccia uscente^ ciascun^ blocco^ di^ controllo

ha^ una^ sola^ freccia^ entrante

e^ due frecce^ uscenti

5 ciascun^ blocco^ di^ controllo^

ha^ una^ sola^ freccia^ entrante

e^ due frecce^ uscenti ciascuna freccia entra in un blocco oppure si innesta in un’altrafreccia ciascun blocco è raggiungibileraggiungibile dal blocco iniziale il blocco finale è raggiungibileraggiungibile da qualsiasi altro blocco Un blocco B è^ raggiungibileraggiungibile^ a partire da un blocco A se esiste unasequenza^ di^ blocchi^ X,X,…,X^12

,^ tali^ che^ A=X,^ B=X,^ en^1 n

∀^ X, i i =1,…,n−1, Xè connesso con una freccia a X i^

i +^1

Ovvero:^ un^ diagrammadiagramma

aa^ blocchiblocchi^ strutturatostrutturato

è^ un

diagramma a blocchi nel quale gli schemi di flusso sonostrutturatistrutturati Uno schema di flusso è strutturato quando soddisfa unadelle seguenti proprietà… 1)^ …è^ uno^ schema^ elementare

o^ uno^ schema^ di^ sequenza^7 1)^ …è^ uno^ schema^ elementare

o^ uno^ schema^ di^ sequenza begin^ S, S,…, Sschemi^12 n^ A di flusso strutturati end

2)^ …è uno schema di selezione

8 Nel primo caso, lo schema S viene eseguito solo se lacondizione^ C^ è^ vera;^ se^ C

è^ falsa,^ non^ viene^ eseguita alcuna azione Nel secondo caso, viene eseguito solo uno dei due schemiSo S, in dipendenza del valore di verità della condizionev^ f

Gli schemi di flusso sono

apertiaperti^ quando consentono una sola esecuzione di una sequenza di blocchi elementari, sono

chiusichiusi quando permettono più di un’esecuzione della sequenza diblocchi GliGli schemischemi didi sequenzasequenza ee di

di selezioneselezione sonosono aperti,aperti, lo

lo schemaschema didi^ iterazioneiterazione^ èè^ chiusochiuso

10 didi^ iterazioneiterazione^ èè^ chiusochiuso OgniOgni diagrammadiagramma aa blocchiblocchi non

non strutturatostrutturato èè trasformabiletrasformabile in

in unun diagrammadiagramma aa blocchiblocchi strutturatostrutturato equivalente

equivalente Due diagrammi a blocchi sono

equivalentiequivalenti^ se, operando sugli stessi dati, producono gli stessi risultati L’uso dell’analisi strutturata garantisce:^ facilità di comprensione e modifica dei diagrammi a blocchi^ maggiore uniformità nella descrizione degli algoritmi

Inoltre...^ È^ stato^ dimostrato

(teorema^ fondamentale

della programmazione di Bohm−Jacopini, 1966) che ogni programmapuò^ essere^ codificato^ riferendosi

esclusivamente^ ad^ un algoritmo^ strutturato^ e^ quindi

attenendosi^ alle^ tre^ strutture^11 algoritmo^ strutturato^ e^ quindi

attenendosi^ alle^ tre^ strutture fondamentali: Sequenziale^ Iterativa

Condizionale

In un diagramma strutturato non apparirà mai una istruzione disalto incondizionato I tre schemi fondamentali possono essere

concatenaticoncatenati,^ uno di seguito all’altro, o^ nidificatinidificati,

uno dentro l’altro; non possono in nessun caso essere “intrecciati” o “accavallati”

13 Corretto

Sbagliato

Diagramma a blocchi per laselezione,^ in^ un^ mazzo

di chiavi,^ di^ quella^ che^

apre un lucchetto

14

Usando solol’operazionesomma SOLUZIONE:

PROBLEMA^ Dati 3 numeri stabilire quale sia il valore^ maggioremaggiore SOLUZIONE^ Provate a trovare una soluzione alproblema descrivendola con diagrammi diflusso