Diagrammi a blocchi Prof. Giuseppe Ascia Un diagramma a blocchi è una struttura composta da blocchi e da archi orientati (che rappresentano il flusso del programma) che collegano i blocchi. I nodi possono essere: inizio / fine ingresso / uscita elaborazione decisione Un diagramma a blocchi deve avere sempre un nodo di inizio ed un nodo di fine Fondamenti di Informatica-Ingegneria Telematica 1 Visualizzare la somma di due numeri letti da tastiera Prof. Giuseppe Ascia inizio scanf(A) Legge il valore della variabile A scanf (B) Legge il valore della variabile B somma = A + B Somma A e B printf (somma) Visualizza il valore della variabile somma fine Fondamenti di Informatica-Ingegneria Telematica 2 1 Visualizzare il massimo tra due numeri letti da tastiera Prof. Giuseppe Ascia inizio scanf(A) scanf (B) vero A >= B max = A falso max=B printf (max) fine Fondamenti di Informatica-Ingegneria Telematica 3 Visualizzare il valore assoluto di A-B, con A e B letti da tastiera Prof. Giuseppe Ascia inizio scanf(A) scanf (B) vero A >= B VA = A - B falso VA = B - A printf (VA) fine Fondamenti di Informatica-Ingegneria Telematica 4 2 Visualizzare la somma di 10 numeri letti da tastiera (con ciclo a condizione iniziale) Prof. Giuseppe Ascia inizio conta = 0 somma = 0 falso vero conta < 10 scanf (numero) printf (somma) somma = somma + numero fine conta = conta + 1 Fondamenti di Informatica-Ingegneria Telematica 5 Visualizzare la somma di 10 numeri letti da tastiera (con ciclo a condizione finale) Prof. Giuseppe Ascia inizio conta = 0 somma = 0 scanf (numero) somma = somma + numero conta = conta + 1 vero falso conta < 10 printf (somma) fine Fondamenti di Informatica-Ingegneria Telematica 6 3 Somma dei primi 100 numeri Prof. Giuseppe Ascia inizio conta = 0 somma = 0 falso conta < 100 vero somma = somma + conta printf (somma) conta = conta + 1 fine Fondamenti di Informatica-Ingegneria Telematica 7 Somma dei primi N numeri Prof. Giuseppe Ascia inizio scanf (N) conta = 0 somma = 0 falso conta < N printf (somma) fine Fondamenti di Informatica-Ingegneria Telematica vero somma = somma + conta conta = conta + 1 8 4 Visualizzare la media di 50 numeri >0 letti da tastiera Prof. Giuseppe Ascia inizio conta = 0 somma = 0 falso vero conta < 50 scanf (numero) media = somma / 50 vero printf (media) fine falso numero > 0 conta = conta + 1 somma = somma + numero Fondamenti di Informatica-Ingegneria Telematica 9 Visualizzare il massimo tra 20 numeri letti da tastiera Prof. Giuseppe Ascia inizio conta = 1 scanf (max) falso conta < 20 vero scanf (numero) printf (max) fine vero max < numero falso max = numero conta = conta + 1 Fondamenti di Informatica-Ingegneria Telematica 10 5 Visualizza il massimo tra 30 numeri >0 letti da tastiera Prof. Giuseppe Ascia inizio conta = 0 max = 0 falso vero conta < 30 scanf (numero) printf (max) fine vero vero numero > 0 falso falso max < numero max = numero conta = conta + 1 Fondamenti di Informatica-Ingegneria Telematica 11 Visualizzare il minimo comune multiplo tra due numeri >0 letti da tastiera (parte 1) Prof. Giuseppe Ascia inizio scanf (A) vero A <= 0 falso scanf (B) vero B <= 0 Fondamenti di Informatica-Ingegneria Telematica falso 12 6 Visualizzare il minimo comune multiplo tra due numeri >0 letti da tastiera (parte 2) Prof. Giuseppe Ascia MCMA = A MCMB = B falso falso MCMA < MCMB MCMB = MCMB + B MCMA = MCMB vero MCMA = MCMA + A Fondamenti di Informatica-Ingegneria Telematica vero printf (VA) fine 13 7