Corso di Potenziamento di Informatica Francesco Folino Diagrammi di Flusso Diagrammi g di flusso Inizio Elaborazione Fine Start End Ingresso/Uscita Selezione a 2 vie Si predicato Introduzione Sottoprogramma No Introduzione all’Informatica Diagrammi g di flusso I blocchi sono collegati tra di loro da archi orientati La freccia identifica il flusso dell’esecuzione SI NO Introduzione Introduzione all’Informatica Diagrammi g di flusso I blocchi condizionali … Si blocco Istruzioni … Si test No test blocco istruzioni 1 … No blocco istruzioni 2 … Introduzione Introduzione all’Informatica Diagrammi g di flusso I blocchi condizionali … Si N No test Si blocco1 test No blocco2 Si blocco n test N No blocco n+1 … Introduzione Introduzione all’Informatica Diagrammi g di flusso I blocchi condizionali Si blocco Istruzioni … … test blocco Istruzioni Si No test No … … Introduzione Introduzione all’Informatica Esempio: p massimo tra due numeri Inizio Si Lettura aeb Passo 1 cÅa–b Passo 2 c > 0? Scrittura “il max è” a No Scrittura “il max è” b Passo 3 Fine Introduzione Introduzione all’Informatica Esempio: p Massimo tra tre numeri Inizio Lettura a, b, c m = Max a, b m = Max m, m c Scrittura S i “il max è” m Fine Introduzione Introduzione all’Informatica Esempio: p Massimo tra “N” numeri naturali Inizio m=0 Lettura N N>0? No Scrittura “il max è” m Si N=N–1 Lettura A Fine m = Max m,c Introduzione Introduzione all’Informatica Esercizio: Moltiplicazione p Inizio Lettura a, b mul = 0 b>0? No Scrittura mul Si mul = mul + a Fine b=b–1 Introduzione Introduzione all’Informatica Esercizio: Divisione Inizio Lettura a, b q=0 r=a No r ≥ b? Si r=r–b Scrittura qr Fine q=q+1 Introduzione Introduzione all’Informatica Esempio: p MCD Inizio Lettura M, N M N? M>N? Si M=M–N No N>M? Si N=N–M No Scrittura N Fine Introduzione Introduzione all’Informatica Esercizio: sommare i p primi N numeri naturali Inizio Lettura N i=0 s=0 s=s+i i=i+1 No i ≤ N? Si Scrittura S itt s Introduzione Fine Introduzione all’Informatica Esercizio: Calcolare le radici di un’equazione q di II grado g Inizio Lettura a, b, c delta = b2 – 4ac delta>0? Si Scrittura “Nessuna Soluzione” No delta=0? Si No r1 = (–b – sqrt(delta))/(2a) r = – b/(2a) r2 = (–b + sqrt(delta))/(2a) S Scrittura “Radici Coincidenti:” r Scrittura “Radici distinte:” r1, r2 Fine Introduzione Introduzione all’Informatica Esercizio: Somma dei p primi N numeri naturali pari p Lettura N Inizio i=0 s=0 i%2 = 0? Si No s=s+i i=i+1 N No i ≤ N? Si Scrittura s Introduzione Fine Introduzione all’Informatica Esercizio: Visualizzare i p primi cinque q multipli p di N Inizio Lettura N i=1 i ≤ 5? N No Si Fine ris = N*i Scrittura ris i=i+1 Introduzione Introduzione all’Informatica Esercizio: inserire dall’esterno 6 numeri. Stampare quanti sono i numeri negativi tra quelli inseriti Inizio i=1 contt = 0 i ≤ 6? Si Lettura N No Scrittura cont Fine N < 0? Si cont = cont + 1 i=i+1 Introduzione Introduzione all’Informatica FINE Introduzione Introduzione all’Informatica