Successfully reported this slideshow.

1.01 Algoritmi

5,129 views

Published on

Presentazione Sul primo odulo ECDL: algoritmi

Published in: Education
  • Be the first to comment

1.01 Algoritmi

  1. 1. ECDL - Modulo 1 ECDL - Modulo 1 Fondamenti Angela Gay Isit Grosseto http://www.isitgrosseto.com/ 7 gennaio 2010
  2. 2. ECDL - Modulo 1 Algoritmi Definire il termine Algoritmo Il termine Algoritmo - Premesse Per comprendere il concetto di algoritmo, partiamo con un:
  3. 3. ECDL - Modulo 1 Algoritmi Definire il termine Algoritmo Il termine Algoritmo - Premesse Per comprendere il concetto di algoritmo, partiamo con un: Esempio Supponiamo di voler istruire un ’esecutore’ (macchina o persona) che sa fare moltiplicazioni e divisioni, affinché possa calcolare l’area di un triangolo del quale vengono fornite la misura della base b e dell’altezza h.
  4. 4. ECDL - Modulo 1 Algoritmi Definire il termine Algoritmo Il termine Algoritmo - Premesse Le istruzioni che dobbiamo dare all’esecutore, per renderlo capace di calcolare l’area del triangolo, potrebbero essere le seguenti:
  5. 5. ECDL - Modulo 1 Algoritmi Definire il termine Algoritmo Il termine Algoritmo - Premesse Le istruzioni che dobbiamo dare all’esecutore, per renderlo capace di calcolare l’area del triangolo, potrebbero essere le seguenti: Calcolo area triangolo di base b e altezza h 1 acquisisci b e h;
  6. 6. ECDL - Modulo 1 Algoritmi Definire il termine Algoritmo Il termine Algoritmo - Premesse Le istruzioni che dobbiamo dare all’esecutore, per renderlo capace di calcolare l’area del triangolo, potrebbero essere le seguenti: Calcolo area triangolo di base b e altezza h 1 acquisisci b e h; 2 moltiplica b per h;
  7. 7. ECDL - Modulo 1 Algoritmi Definire il termine Algoritmo Il termine Algoritmo - Premesse Le istruzioni che dobbiamo dare all’esecutore, per renderlo capace di calcolare l’area del triangolo, potrebbero essere le seguenti: Calcolo area triangolo di base b e altezza h 1 acquisisci b e h; 2 moltiplica b per h; 3 dividi il prodotto per 2;
  8. 8. ECDL - Modulo 1 Algoritmi Definire il termine Algoritmo Il termine Algoritmo - Premesse Le istruzioni che dobbiamo dare all’esecutore, per renderlo capace di calcolare l’area del triangolo, potrebbero essere le seguenti: Calcolo area triangolo di base b e altezza h 1 acquisisci b e h; 2 moltiplica b per h; 3 dividi il prodotto per 2; 4 comunica il risultato ottenuto.
  9. 9. ECDL - Modulo 1 Algoritmi Definire il termine Algoritmo Il termine Algoritmo - Premesse Le istruzioni che dobbiamo dare all’esecutore, per renderlo capace di calcolare l’area del triangolo, potrebbero essere le seguenti: Calcolo area triangolo di base b e altezza h 1 acquisisci b e h; 2 moltiplica b per h; 3 dividi il prodotto per 2; 4 comunica il risultato ottenuto. Questo sequenza di istruzioni costituisce un algoritmo.
  10. 10. ECDL - Modulo 1 Algoritmi Definire il termine Algoritmo Algoritmo Siamo ora in grado di dare una definizione intuitiva (cioè, non rigorosa) di:
  11. 11. ECDL - Modulo 1 Algoritmi Definire il termine Algoritmo Algoritmo Siamo ora in grado di dare una definizione intuitiva (cioè, non rigorosa) di: Algoritmo Per algoritmo si intende una successione finita di passi contenenti le istruzioni che specificano le operazioni da compiere per risolvere una classe di problemi.
  12. 12. ECDL - Modulo 1 Algoritmi Definire il termine Algoritmo Algoritmo Siamo ora in grado di dare una definizione intuitiva (cioè, non rigorosa) di: Algoritmo Per algoritmo si intende una successione finita di passi contenenti le istruzioni che specificano le operazioni da compiere per risolvere una classe di problemi. L’algoritmo deve essere: finito, cioè costituito da un numero finito di passi, o istruzioni;
  13. 13. ECDL - Modulo 1 Algoritmi Definire il termine Algoritmo Algoritmo Siamo ora in grado di dare una definizione intuitiva (cioè, non rigorosa) di: Algoritmo Per algoritmo si intende una successione finita di passi contenenti le istruzioni che specificano le operazioni da compiere per risolvere una classe di problemi. L’algoritmo deve essere: finito, cioè costituito da un numero finito di passi, o istruzioni; univoco, non deve essere ambiguo;
  14. 14. ECDL - Modulo 1 Algoritmi Definire il termine Algoritmo Algoritmo Siamo ora in grado di dare una definizione intuitiva (cioè, non rigorosa) di: Algoritmo Per algoritmo si intende una successione finita di passi contenenti le istruzioni che specificano le operazioni da compiere per risolvere una classe di problemi. L’algoritmo deve essere: finito, cioè costituito da un numero finito di passi, o istruzioni; univoco, non deve essere ambiguo; realizzabile: le istruzioni devono essere eseguibili materialmente
  15. 15. ECDL - Modulo 1 Algoritmi Descrivere in forma algoritmica la procedura risolutiva di semplici problemi Esempi di algoritmi Vediamo ora alcuni altri esempi di algoritmi. Determinare se un numero a è divisibile per un numero b 1 acquisisci a e b;
  16. 16. ECDL - Modulo 1 Algoritmi Descrivere in forma algoritmica la procedura risolutiva di semplici problemi Esempi di algoritmi Vediamo ora alcuni altri esempi di algoritmi. Determinare se un numero a è divisibile per un numero b 1 acquisisci a e b; 2 esegui la divisione a : b e indica con r il resto di tale divisione;
  17. 17. ECDL - Modulo 1 Algoritmi Descrivere in forma algoritmica la procedura risolutiva di semplici problemi Esempi di algoritmi Vediamo ora alcuni altri esempi di algoritmi. Determinare se un numero a è divisibile per un numero b 1 acquisisci a e b; 2 esegui la divisione a : b e indica con r il resto di tale divisione; 3 se r = 0
  18. 18. ECDL - Modulo 1 Algoritmi Descrivere in forma algoritmica la procedura risolutiva di semplici problemi Esempi di algoritmi Vediamo ora alcuni altri esempi di algoritmi. Determinare se un numero a è divisibile per un numero b 1 acquisisci a e b; 2 esegui la divisione a : b e indica con r il resto di tale divisione; 3 se r = 0 allora comunica che a è divisibile per b
  19. 19. ECDL - Modulo 1 Algoritmi Descrivere in forma algoritmica la procedura risolutiva di semplici problemi Esempi di algoritmi Vediamo ora alcuni altri esempi di algoritmi. Determinare se un numero a è divisibile per un numero b 1 acquisisci a e b; 2 esegui la divisione a : b e indica con r il resto di tale divisione; 3 se r = 0 allora comunica che a è divisibile per b altrimenti comunica che a non è divisibile per b
  20. 20. ECDL - Modulo 1 Algoritmi Rappresentare algoritmi mediante diagrammi Diagramma a blocchi Diagramma a blocchi Per rappresentare gli algoritmi, a volte si usano dei diagrammi, detti diagrammi a blocchi. Nelle prossime pagine ne vediamo qualche esempio.
  21. 21. ECDL - Modulo 1 Algoritmi Rappresentare algoritmi mediante diagrammi Diagramma a blocchi - Calcolo area triangolo
  22. 22. ECDL - Modulo 1 Algoritmi Rappresentare algoritmi mediante diagrammi Diagramma a blocchi - Determina se un numero a è divisibile per un numero b
  23. 23. ECDL - Modulo 1 Algoritmi Rappresentare algoritmi mediante diagrammi Diagramma a blocchi - Algoritmo di Euclide per il calcolo del MCD INIZIO acquisisci a e b r <- resto(a:b) SI comunica: r=0? b è il risultato NO a <- b FINE b <- r r<-resto(a:b)
  24. 24. ECDL - Modulo 1 Algoritmi Rappresentare algoritmi mediante diagrammi Diagramma a blocchi - Algoritmo di Euclide per il calcolo del MCD INIZIO a = 12; b = 20 a b r acquisisci a e b valori iniziali 12 20 1◦ iter. r <- resto(a:b) 2◦ iter. 3◦ iter. SI comunica: r=0? b è il risultato NO a <- b FINE b <- r r<-resto(a:b)
  25. 25. ECDL - Modulo 1 Algoritmi Rappresentare algoritmi mediante diagrammi Diagramma a blocchi - Algoritmo di Euclide per il calcolo del MCD INIZIO a = 12; b = 20 a b r acquisisci a e b valori iniziali 12 20 12 1◦ iter. r <- resto(a:b) 2◦ iter. 3◦ iter. SI comunica: r=0? b è il risultato NO a <- b FINE b <- r r<-resto(a:b)
  26. 26. ECDL - Modulo 1 Algoritmi Rappresentare algoritmi mediante diagrammi Diagramma a blocchi - Algoritmo di Euclide per il calcolo del MCD INIZIO a = 12; b = 20 a b r acquisisci a e b valori iniziali 12 20 12 1◦ iter. r <- resto(a:b) 2◦ iter. 3◦ iter. SI comunica: r=0? b è il risultato NO a <- b FINE b <- r r<-resto(a:b)
  27. 27. ECDL - Modulo 1 Algoritmi Rappresentare algoritmi mediante diagrammi Diagramma a blocchi - Algoritmo di Euclide per il calcolo del MCD INIZIO a = 12; b = 20 a b r acquisisci a e b valori iniziali 12 20 12 1◦ iter. 20 r <- resto(a:b) 2◦ iter. 3◦ iter. SI comunica: r=0? b è il risultato NO a <- b FINE b <- r r<-resto(a:b)
  28. 28. ECDL - Modulo 1 Algoritmi Rappresentare algoritmi mediante diagrammi Diagramma a blocchi - Algoritmo di Euclide per il calcolo del MCD INIZIO a = 12; b = 20 a b r acquisisci a e b valori iniziali 12 20 12 1◦ iter. 20 12 r <- resto(a:b) 2◦ iter. 3◦ iter. SI comunica: r=0? b è il risultato NO a <- b FINE b <- r r<-resto(a:b)
  29. 29. ECDL - Modulo 1 Algoritmi Rappresentare algoritmi mediante diagrammi Diagramma a blocchi - Algoritmo di Euclide per il calcolo del MCD INIZIO a = 12; b = 20 a b r acquisisci a e b valori iniziali 12 20 12 1◦ iter. 20 12 8 r <- resto(a:b) 2◦ iter. 3◦ iter. SI comunica: r=0? b è il risultato NO a <- b FINE b <- r r<-resto(a:b)
  30. 30. ECDL - Modulo 1 Algoritmi Rappresentare algoritmi mediante diagrammi Diagramma a blocchi - Algoritmo di Euclide per il calcolo del MCD INIZIO a = 12; b = 20 a b r acquisisci a e b valori iniziali 12 20 12 1◦ iter. 20 12 8 r <- resto(a:b) 2◦ iter. 3◦ iter. SI comunica: r=0? b è il risultato NO a <- b FINE b <- r r<-resto(a:b)
  31. 31. ECDL - Modulo 1 Algoritmi Rappresentare algoritmi mediante diagrammi Diagramma a blocchi - Algoritmo di Euclide per il calcolo del MCD INIZIO a = 12; b = 20 a b r acquisisci a e b valori iniziali 12 20 12 1◦ iter. 20 12 8 r <- resto(a:b) 2◦ iter. 12 3◦ iter. SI comunica: r=0? b è il risultato NO a <- b FINE b <- r r<-resto(a:b)
  32. 32. ECDL - Modulo 1 Algoritmi Rappresentare algoritmi mediante diagrammi Diagramma a blocchi - Algoritmo di Euclide per il calcolo del MCD INIZIO a = 12; b = 20 a b r acquisisci a e b valori iniziali 12 20 12 1◦ iter. 20 12 8 r <- resto(a:b) 2◦ iter. 12 8 3◦ iter. SI comunica: r=0? b è il risultato NO a <- b FINE b <- r r<-resto(a:b)
  33. 33. ECDL - Modulo 1 Algoritmi Rappresentare algoritmi mediante diagrammi Diagramma a blocchi - Algoritmo di Euclide per il calcolo del MCD INIZIO a = 12; b = 20 a b r acquisisci a e b valori iniziali 12 20 12 1◦ iter. 20 12 8 r <- resto(a:b) 2◦ iter. 12 8 4 3◦ iter. SI comunica: r=0? b è il risultato NO a <- b FINE b <- r r<-resto(a:b)
  34. 34. ECDL - Modulo 1 Algoritmi Rappresentare algoritmi mediante diagrammi Diagramma a blocchi - Algoritmo di Euclide per il calcolo del MCD INIZIO a = 12; b = 20 a b r acquisisci a e b valori iniziali 12 20 12 1◦ iter. 20 12 8 r <- resto(a:b) 2◦ iter. 12 8 4 3◦ iter. SI comunica: r=0? b è il risultato NO a <- b FINE b <- r r<-resto(a:b)
  35. 35. ECDL - Modulo 1 Algoritmi Rappresentare algoritmi mediante diagrammi Diagramma a blocchi - Algoritmo di Euclide per il calcolo del MCD INIZIO a = 12; b = 20 a b r acquisisci a e b valori iniziali 12 20 12 1◦ iter. 20 12 8 r <- resto(a:b) 2◦ iter. 12 8 4 3◦ iter. 8 SI comunica: r=0? b è il risultato NO a <- b FINE b <- r r<-resto(a:b)
  36. 36. ECDL - Modulo 1 Algoritmi Rappresentare algoritmi mediante diagrammi Diagramma a blocchi - Algoritmo di Euclide per il calcolo del MCD INIZIO a = 12; b = 20 a b r acquisisci a e b valori iniziali 12 20 12 1◦ iter. 20 12 8 r <- resto(a:b) 2◦ iter. 12 8 4 3◦ iter. 8 4 SI comunica: r=0? b è il risultato NO a <- b FINE b <- r r<-resto(a:b)
  37. 37. ECDL - Modulo 1 Algoritmi Rappresentare algoritmi mediante diagrammi Diagramma a blocchi - Algoritmo di Euclide per il calcolo del MCD INIZIO a = 12; b = 20 a b r acquisisci a e b valori iniziali 12 20 12 1◦ iter. 20 12 8 r <- resto(a:b) 2◦ iter. 12 8 4 3◦ iter. 8 4 0 SI comunica: r=0? b è il risultato NO a <- b FINE b <- r r<-resto(a:b)
  38. 38. ECDL - Modulo 1 Algoritmi Rappresentare algoritmi mediante diagrammi Diagramma a blocchi - Algoritmo di Euclide per il calcolo del MCD INIZIO a = 12; b = 20 a b r acquisisci a e b valori iniziali 12 20 12 1◦ iter. 20 12 8 r <- resto(a:b) 2◦ iter. 12 8 4 3◦ iter. 8 4 0 SI comunica: r=0? b è il risultato NO a <- b FINE b <- r r<-resto(a:b)
  39. 39. ECDL - Modulo 1 Algoritmi Rappresentare algoritmi mediante diagrammi Diagramma a blocchi - Algoritmo di Euclide per il calcolo del MCD INIZIO a = 12; b = 20 a b r acquisisci a e b valori iniziali 12 20 12 1◦ iter. 20 12 8 r <- resto(a:b) 2◦ iter. 12 8 4 3◦ iter. 8 4 0 SI comunica: r=0? b è il risultato NO a <- b FINE b <- r r<-resto(a:b)

×