SlideServe
Menu
Préférences
© SlideServe · v2026

Dal problema al programma

quin-serrano avatar
32 diapositives · 609 Views · Nov 09, 2014

Dal problema al programma. Wilkinson D Fare clic per continuare. Indice. Sequenza Selezione Ciclo o iterazione mappa. Sequenza. Calcola la media di 3 numeri Pseudocodifica Flow-chart Debug Cerchio (area, circonferenza) Pseudocodifica Flow-chart Debug Rettangolo (area, perimetro)

Dal problema al programma - slide 1
01 / 32Dal problema al programma
1 / 17

Télécharger la présentation

Dal problema al programma
Une image / un lien ci-dessous est fourni (tel quel) pour télécharger la présentation

Politique de téléchargement : le contenu du site vous est fourni TEL QUEL pour votre information et votre usage personnel ; il ne peut être vendu, concédé sous licence ni partagé sur d’autres sites sans l’accord de son auteur.Le contenu vous est fourni TEL QUEL, pour votre information et votre usage personnel uniquement. Téléchargez la présentation en cliquant sur ce lien. Lors du téléchargement, si vous ne parvenez pas à télécharger une présentation, l’éditeur a peut-être supprimé le fichier de son serveur.Pendant le téléchargement, si vous ne parvenez pas à obtenir une présentation, le fichier a peut-être été supprimé par l’éditeur.

F I N

Plus de contenu associé

Transcription de la présentation
  1. Dal problema al programma Wilkinson D Fare clic per continuare

  2. Indice • Sequenza • Selezione • Ciclo o iterazione • mappa

  3. Sequenza • Calcola la media di 3 numeri PseudocodificaFlow-chartDebug • Cerchio (area, circonferenza) PseudocodificaFlow-chartDebug • Rettangolo (area, perimetro) PseudocodificaFlow-chartDebug

  4. Selezione • Trova il massimo di 3 numeri PseudocodificaFlow-chartDebug • Definisci il triangolo PseudocodificaFlow-chartDebug • Il reciproco di un numero Pseudocodifica Flow-chart Debug

  5. Ciclo o iterazione • 1 esercizio Pseudocodifica Flow-chart Debug • 2 esercizio Pseudocodifica Flow-chart Debug • 3 esercizio Pseudocodifica Flow-chart Debug

  6. Pseudocodifica: Calcola la media di 3 numeri Algoritmo media Variabili A, B, C numerica, intera, input M numerica, reale, output inizio Scrivi(“Inserisci tre numeri interi”); Leggi(A, B, C); M = (A + B + C) / 3; Scrivi(“Media =“, M); fine Private Sub Calcolamedia_Click() 'VARIABILI Dim n1, n2, n3, m As Single 'LEGGO n1 = Range("a2") n2 = Range("b2") n3 = Range("c2") 'CALCOLO m = (n1 + n2 + n3) / 3 'STAMPO Range("b4") = m End Sub

  7. Flow-chart: Calcola la media di 3 numeri inizio A, B, C M = (A, B, C) / 3 M fine

  8. Debug: Calcola la media di 3 numeri Debug • Inserisci tre numeri interi • A  4, B  6, C  8; • 6  (4+6+8) / 3 • Media = 6 Algoritmo media Scrivi(“Inserisci 3 numeri interi”); Leggi(A, B, C); M = (A + B + C) / 3; Scrivi(“Media =“, M);

  9. Pseudocodifica: Cerchio (area, circonferenza) Private Sub Calcola_Click() 'VARIABILI Dim r, a, c As Single Const pi = 3.14 'LEGGO r = Range("a2") 'CALCOLO a = (r ^ 2) * pi c = (2 * r) * pi 'STAMPO Range("c2") = a Range("d2") = c End Sub Algoritmo cerchio Variabili R numerica, reale, input A, C numerica, reale, output Costanti Pi greco = 3,14 numerica, reale inizio Scrivi (“Inserisci valore raggio); Leggi (R) ; A = R^2* 3,14; C = 2* R* 3,14; Scrivi (“Area =“, A); Scrivi (“Circonferenza =“, C); fine

  10. Flow-chart: Cerchio (area, circonferenza) Inizio R; Pi Greco=3,14 A = Pi Greco*R^2 C = 2*Pi Greco*R A; C Fine

  11. Debug: Cerchio (area, circonferenza) Algoritmo cerchio Scrivi(“Inserisci valore raggio”); Leggi (R); A = R^2* 3,14; C = 2* R* 3,14; Scrivi (“Area =“, A); Scrivi (“Circonferenza =“, C); Debug • Inserisci valore raggio • R  2 • 12,56  3,14*(2^2) • 12,56  3,14*2*2 • Area = 12,56 • Circonferenza = 12,56

  12. Pseudocodifica: Rettangolo (area, perimetro) Private Sub Calcola_Click() 'VARIABILI Dim b, h, p, a As Single 'LEGGO b = Range("a2") h = Range("b2") 'CALCOLO p = (2 * b) + (2 * h) a = b * h 'STAMPO Range("d2") = p Range("e2") = a End Sub Algoritmo rettangolo Variabili B, H numerica, reale, input inizio scrivi(“Inserire valori base e altezza”); leggi(B, H); A = B*H; P = 2*B+2*H; scrivi(“Area =“, A) scrivi(“Perimetro=“, P) fine

  13. Flow-chart: Rettangolo (area, perimetro) Inizio B, H A = B*H P = 2*B+2*H A, P fine

  14. Debug: Rettangolo (area, perimetro) Algoritmo rettangolo scrivi(“Inserire valori base e altezza”); leggi(B, H); A = B*H; P = 2*B+2*H; scrivi(“Area =“, A) scrivi(“Perimetro=“, P) Debug • Inserire valori base e altezza • B  2 • H  6 • 12  6*2 • 18  2*2+6*2 • Area = 12 • Perimetro = 18

  15. Pseudocodifica: Trova il massimo di 3 numeri PrivateSubCommandButton1_Click() 'VARIABILI Dim n1, n2, n3, m As Single 'LEGGO n1 = Range("a2") n2 = Range("a3") n3 = Range("a4") 'CALCOLO m = n1 If n2 > m Then m = n2 End If If n3 > m Then m = n3 End If 'STAMPO Range("b2") = m End Sub Algoritmo max Variabili A,B,C numerica, intera, input M numerica, intera, output Inizio scrivi (“inserisci tre numeri interi”); leggi ( A,B,C); M = A; se (B > M) allora M = B; fine se se (C> M) allora M = C; fine se scrivi(“il massimo è =“ M); fine

  16. Flow-chart: Trova il massimo di 3 numeri inizio A,B,C M = A no si B > M M = B C > M no si M = C M

  17. Debug: Trova il massimo di 3 numeri • Debug 1 • 1. Inserisci tre lati • 2. A 3, B 3, C 5 • 3. 3<>3 AND 3<>5 AND 3<>5? FALSO • 4. 3 = 3 OR 3 = 5 OR 3 = 5? • 5. Isoscele • 6. 3 = 3 AND 3 = 5 AND 3 = 5? FALSO Algoritmo max. scrivi (“inserisci i tre lati del triangolo”); leggi (A,B,C); Se ( A<>B) AND (B<>C) AND ( A<>C) allora scrivi (“scaleno”); fine se Se (A = B) OR (B = C) OR (A = C) allora scrivi (“isoscele”); fine se Se (A = B) AND (B = C) AND (A = C) allora scrivi (“equilatero”); fine se Debug 3 1. inserisci tre lati 2. A 3, B 3, C 3 3. 3<>3 AND 3<>3 AND 3<>3? (F) 4. 3=3 OR 3=3 OR 3=3 ? 5. ISOSCELE 6. 3=3 AND 3=3 AND 3=3 ? 7. EQUILATERO • Debug 2 • Inserisci i tre lati • A 3, B 4, C 5 • 3<>4 AND 3<>5 AND 4<>5? • Scaleno • 3 = 4 OR 4=5 OR 3 = 5? FALSO • 3 = 4 AND 4 = 5 AND 3 = 5? FALSO

  18. Pseudocodifica: Definisci il triangolo Private Sub CommandButton1_Click() 'VARIBILI Dim l1, l2, l3 As Single 'LEGGO l1 = Range("a2") l2 = Range("a3") l3 = Range("a4") 'DEFINISCO If l1 <> l2 And l2 <> l3 And l1 <> l3 Then Range("b2") = "scaleno" End If If l1 = l2 Or l2 = l3 Or l1 = l3 Then Range("b2") = "isoscele" End If If l1 = l2 And l2 = l3 And l1 = l3 Then Range("b2") = "equilatero" End If End Sub Algoritmo triangolo Variabili A,B,C numerica, intera, input S,I,E numerica, intera, output Inizio scrivi (“inserisci i tre lati del triangolo”); leggi (A,B,C); Se ( A<>B) AND (B<>C) AND ( A<>C) allora scrivi (“scaleno”); fine se Se (A = B) OR (B = C) OR (A = C) allora scrivi (“isoscele”); fine se Se (A = B) AND (B = C) AND (A = C) allora scrivi (“equilatero”); fine se Fine

  19. Flow-chart: Definisci il triangolo inizio A,B,C no A<>B AND A<>C AND B<>C si S A = B OR B = C OR A = C no si I A = B AND A = C AND B = C si E fine

  20. Debug: Definisci il triangolo • Debug 1 • 1. Inserisci tre lati • 2. A 3, B 3, C 5 • 3. 3<>3 AND 3<>5 AND 3<>5? FALSO • 4. 3 = 3 OR 3 = 5 OR 3 = 5? • 5. Isoscele • 6. 3 = 3 AND 3 = 5 AND 3 = 5? FALSO Algoritmo triangolo scrivi (“inserisci i tre lati del triangolo”); leggi (A,B,C); Se ( A<>B) AND (B<>C) AND ( A<>C) allora scrivi (“scaleno”); fine se Se (A = B) OR (B = C) OR (A = C) allora scrivi (“isoscele”); fine se Se (A = B) AND (B = C) AND (A = C) allora scrivi (“equilatero”); fine se Debug 3 1. inserisci tre lati 2. A 3, B 3, C 3 3. 3<>3 AND 3<>3 AND 3<>3? (F) 4. 3=3 OR 3=3 OR 3=3 ? 5. ISOSCELE 6. 3=3 AND 3=3 AND 3=3 ? 7. EQUILATERO • Debug 2 • Inserisci i tre lati • A 3, B 4, C 5 • 3<>4 AND 3<>5 AND 4<>5? • Scaleno • 3 = 4 OR 4=5 OR 3 = 5? FALSO • 3 = 4 AND 4 = 5 AND 3 = 5? FALSO

  21. Pseudocodifica: Il reciproco di un numero Private Sub Reciproco_Click() 'VARIABILI Dim n As Single 'LEGGO n = Range("a2") 'CALCOLO If n <> 0 Then Range("b2") = 1 / n End If If n = 0 Then Range("b2") = "errore" End If End Sub Algoritmo reciproco: Variabili A numerica, intera I/O Inizio scrivi (“Inserisci un numero”); leggi (A); se (A<>0) allora scrivi (“il reciproco è =“ , 1/A); altrimenti scrivi (“errore”) fine se Fine

  22. Flow-chart: Il reciproco di un numero Inizio A no A<>0 si 1/A Fine

  23. Debug: Il reciproco di un numero • Debug 1 • Inserisci un numero • A 4 • 4<>0? • Il reciproco è 1/4 • Debug 2 • Inserisci un numero • A 0 • 0<>0 ? • Errore Algoritmo reciproco scrivi (“Inserisci un numero”); leggi (A); se (A<>0) allora scrivi (“il reciproco è =“ , 1/A); altrimenti scrivi (“errore”) fine se

  24. Pseudocodifica: Totale spesa (per falso) Algoritmo spesa Variabili P numerica, reale,I T numerica, reale, O Inizio T=0 ripeti scrivi (“inserisci prezzo”) leggi (P) T=T+P finché (P=0) scrivi (“totale =“ T); fine Algoritmo spesa Variabili P numerica, reale,I T numerica, reale, O Inizio T=0 ripeti scrivi (“inserisci prezzo”) leggi (P) T=T+P finché (P=0) scrivi (“totale =“ T); fine

  25. Flow-chart: Totale spesa (per falso) Inizio T=0 P T=T+P P=0 T Fine

  26. Debug: Totale spesa ( per falso) • Debug • 1. T 0 • 2. Inserisci prezzo • 3. P 10 • 4. T 0+10 (10) • 5. 10= 0 ? (F) • 6. Inserisci prezzo • 7. P 5 • 8. T 10+5 (15) • 9. 15=0 ? (F) • 10. Inserisci prezzo • 11. P 0 • 12. T 22+0 (22) • 13. 0=0 ? (V) • 14. Totale = 22 Algoritmo spesa T=0 ripeti scrivi (“inserisci prezzo”) leggi (P) T=T+P finché (P=0) scrivi (“totale =“ T);

  27. Pseudocodifica: Mese (per falso) Algoritmo mese Variabili M numerica,intera, I Inizio Ripeti scrivi (“Inserisci mese”) leggi (M) se (M > 0 ) AND (M < 13) allora scrivi (“corretto”) altrimenti scrivi (“Errore”) Fine se Finché ((M>0) AND (M<13)) Fine

  28. Flow-chart: Mese (per falso) Inizio Fine M no si M>0 AND M< 13 Corretto Errato M>0 AND M< 13

  29. Debug: Mese (per falso) • Debug • Inserisci mese • M 17 • 17>0 AND 17< 13 ? (F) • Errore • 17>0 AND 17<13 ? (F) • Inserisci mese • M 0 • 0>0 AND 0<13 ? (F) • Errore • 0>0 AND 0<13 ? (F) • Inserisci mese • M 10 • 10>0 AND 10<13 ? (V) • Corretto • 10>0 AND 10<13 ? (V) Algoritmo mese Ripeti scrivi (“Inserisci mese”) leggi (M) se (M > 0 ) AND (M < 13) allora scrivi (“corretto”) altrimenti scrivi (“Errore”) Fine se Finché ((M>0) AND (M<13))

  30. Pseudocodifica: Mese (per vero) Algoritmo mese Variabili M numerica, intera, I Inizio M=0 Esegui mentre (M<1) OR (M>12) scrivi (“inserisci mese”) leggi (M) se (M>0) AND (M< 13) allora scrivi (“corretto”) altrimenti scrivi (“errore”) fine se Ripeti fine

  31. Flow-chart: Mese (per vero) Inizio M=0 Vero M<1 OR M>12 M M>0 AND M<13 Errato Corretto Fine

  32. Debug: Mese (per vero) • Debug • M 0 • 0 <1 OR 0>12 ? (V) • Inserisci mese • M 15 • 15>0 AND 15< 13 ? (F) • Errore • 15>0 AND 15< 13 ? (F) • Inserisci mese • M 9 • 9>0 AND 9<13 ? (V) • Corretto • 9<1 OR 9>12 ? (F) Algoritmo mese M=0 Esegui mentre (M<1) OR (M>12) scrivi (“inserisci mese”) leggi (M) se (M>0) AND (M< 13) allora scrivi (“corretto”) altrimenti scrivi (“errore”) fine se Ripeti