La presentazione è in caricamento. Aspetta per favore

La presentazione è in caricamento. Aspetta per favore

Luca Chichisola1 Dal problema al programma LUCA CHICHISOLA.

Presentazioni simili


Presentazione sul tema: "Luca Chichisola1 Dal problema al programma LUCA CHICHISOLA."— Transcript della presentazione:

1 Luca Chichisola1 Dal problema al programma LUCA CHICHISOLA

2 Luca Chichisola2 Indice Sequenza selezione Ciclo o iterazione mappa

3 Luca Chichisola3 Sequenza Calcola la media di tre numeri Cerchio (area,circonferenza) Rettangolo (area,perimetro) PseudocodificaFlow-chart Debug PseudocodificaFlow-chartDebug PseudocodificaFlow-chartDebug codifica

4 Luca Chichisola4 Selezione Trova il massimo di tre numeri Definisci il triangolo Reciproco PseudocodificaFlow-chartDebug PseudocodificaFlow-chartDebug PseudocodificaFlow-chartDebug codifica

5 Luca Chichisola5 Ciclo o iterazione mese per vero mese per falso spesa PseudocodificaFlow-chartDebug PseudocodificaFlow-chartDebug PseudocodificaFlow-chartDebug codifica

6 Luca Chichisola6 Pseudocodifica: calcola la media di tre numeri Algoritmo media Variabili A,B,Cnumerica,intera,input Mnumerica,reale,output Inizio scrivi (“inserisci tre numeri interi”); leggi (A,B,C); M = (A+B+C)/3; scrivi (“media =“,M); fine

7 Luca Chichisola7 Flow-chart: calcola la media di tre numeri inizio A,B,C M = (A+B+C)/3 M fine

8 Luca Chichisola8 Debug: Calcola la media di tre numeri Algoritmo media scrivi (“inserisci tre numeri interi”); leggi (A,B,C); M = (A+B+C)/3; scrivi (“media =“,M); Debug 1.Inserisci tre numeri interi 2. A  4, B  6, C  8 3.6  (4+6+8)/3 4.Media = 6

9 Luca Chichisola9 peseudocodifica: cerchio (area,circonferenza) Algoritmo cerchio Variabili Raggionumero reale,input A,Cnumero reale,output Costante Pigreco = 3,14numero reale inizio Scrivi (“inserisci raggio”); leggi (“raggio”); A = pigreco*raggio^2; C = 2*pigreco*raggio; scrivi (“area =“,A); scrivi (“circonferenza =“,C); fine

10 Luca Chichisola10 Flow-chart: cerchio (area,circonferenza) inizio raggio pigreco*raggio^2 2*pigreco*raggio A C fine

11 Luca Chichisola11 Debug:cerchio (area,circonferenza) Algoritmo area,circonferenza Scrivi (“inserisci raggio”); leggi (“raggio”); A = pigreco*raggio^2; C = 2*pigreco*raggio; scrivi (“area =“,A); scrivi (“circonferenza =“,C); Debug 1.Inserisci raggio 2.Raggio  5 3.78,5  pigreco*raggio^2 4.31,4  2*pigreco*raggio 5.Area = 78,5 6.Circonferenza = 31,4

12 Luca Chichisola12 pseudocodifica: rettangolo(area,perimetro) Algoritmo rettangolo Variabili B,Hnumerica,reale,I A,Pnumerica,reale,O Inizio scrivi(“inserisci la base e l’altezza”); leggi(B,H); A=B*H; P=2*(B+H); scrivi(“area=“,A); scrivi(“perimetro=“,P); fine

13 Luca Chichisola13 Flow-chart:rettangolo(area,perimetro) inizio B,H B*H 2*(B+H) A P fine

14 Luca Chichisola14 Debug:rettangolo(area,perimetro) Algoritmo rettangolo scrivi(“inserisci la base e l’altezza”); leggi(B,H); A=B*H; P=2*(B+H); scrivi(“area=“,A); scrivi(“perimetro=“,P); Debug 1.Inserisci la base e l’altezza 2.B  2,H  4 3.8  B*H 4.12  2*(B+H) 5.Area=8 6.Perimetro=12

15 Luca Chichisola15 Pseudocodifica:trova il massimo di tre numeri Algoritmo massimo Variabili A,B,Cnumerica,intera,I Maxnumerica,intera,O Inizio scrivi (“inserisci tre numeri interi”); leggi (A,B,C); Max = A; se (B>Max)allora Max = B; fine se se (C>Max) allora Max = C; fine se scrivi (“il massimo è =“, Max); fine

16 Luca Chichisola16 Flow-chart:trova il massimo di tre numeri inizio A,B,C Max=A B>Max Max=B C>Max Max=C Max fine NO SI NO SI

17 Luca Chichisola17 Debug:trova il massimo di tre numeri Algoritmo massimo scrivi (“inserisci tre numeri interi”); leggi (A,B,C); Max = A; se (B>Max)allora Max = B; fine se se (C>Max) allora Max = C; fine se scrivi (“il massimo è =“, Max); Debug 1 1.Inserisci tre numeri 2.A  4,B  6,C  8 3.Max=4 4.6>4 ? 5.Max  6 6.8>6 ? 7.Max  8 8.Il massimo è = 8 Debug 3 1.Inserisci tre numeri 2.A  14,B  6,C  8 3.Max = 14 4.6>14 ? 5.8>14 ? 6.Il massimo è = 14 Debug 2 1.Inserisci tre numeri 2.A  4, B  16, C  8 3.Max = 4 4.16>4 ? 5.Max  16 6.8>16 ? 7.Il massimo è = 16 Debug 4 1.Inserisci tre numeri 2.A  4, B  4, C  4 3.Max = 4 4.4>4 ? 5.4>4 ? 6.Il massimo è = 4

18 Luca Chichisola18 Pseudocodifica:definisci il triangolo Algoritmo triangolo Variabili A,B,Cnumerica,intera,I 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 Luca Chichisola19 Flow-chart: definisci triangolo inizio A,B,C (A<>B) AND (B <> C) AND (A<>C) scaleno (A = B) OR (B = C) OR (A = C) isoscele ( A = B) AND (B = C) AND (A = C) equilatero fine no si

20 Luca Chichisola20 Debug: definisci triangolo 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 1 1.Inserisci i tre lati del triangolo 2.A  2, B  3, C  6 3.(2<>3) AND (3<>6) AND (2<>6) ? (V) 4.Scaleno 5.(2 = 3) OR (3 = 6) OR (2 = 6) ? (F) 6.(2 = 3) AND (3 = 6) AND (2 = 6) ? (F) Debug 2 1.Inserisci tre lati del triangolo 2.A  2,B  2, C  6 3.(2<>3) AND (3<>6) AND (2<>6) ? (F) 4.(2 = 3) OR (3 = 6) OR (2 = 6) ? (v) 5.Isoscele 6.(2 = 3) AND (3 = 6) AND (2 = 6) ? (F) Debug 3 1.Inserisci i tre lati del triangolo 2.A  2, B  2, C  2 3.(2<>2) AND (2<>2) AND (2<>2) ? (F) 4.(2 =2) OR (2 = 2) OR (2 = 2) ? (V) 5.(2 = 2) AND (2 = 2) AND (2 = 2) ? (V) 6.equilatero

21 Luca Chichisola21 Pseudocodifica: reciproco Algoritmo reciproco Variabili Anumerica, intera, I Inizio scrivi (“inserisci un numero”); leggi (A); se ( A <> 0) allora scrivi (“1/”A); altrimenti scrivi(“errore”); fine se fine

22 Luca Chichisola22 Flow-chart: reciproco inizio A (A<>0) fine 1/A errore sino

23 Luca Chichisola23 Debug: reciproco Algoritmo reciproco scrivi (“inserisci un numero”); leggi (A); se ( A <> 0) allora scrivi (“1/”A); altrimenti scrivi(“errore”); fine se Debug 1 1.Inserisci un numero 2.A  4 3.(4 <> 0) ? (V) 4.¼ Debug 2 1.Inserisci un numero 2.A  0 3.(0 <>0) ? (F) 4.errore

24 Luca Chichisola24 Pseudocodifica: mese per vero Algoritmo mese Variabili Mnumerica, intera, I Inizio M = 0; esegui mentre ((M =12)); scrivi (“inserisci il mese”); legge(M); se (M>0) AND (M<13) allora scrivi (“mese corretto”); altrimenti scrivi (“errore”); fine se; ripeti fine

25 Luca Chichisola25 FLOW-CHART: MESE per vero inizio (M 12) M (M>0) AND (M<13) errore Mese corretto M=0 fine V F F V

26 Luca Chichisola26 Debug: mese per vero Debug per vero 1.M  0 2.0 12 ? (V) 3.Inserisci mese 4.M  14 5.Errore 6.14 12 ? (V) 7.Inserisci mese 8.M  6 9.Mese corretto 10.6 12 ? (F) Algoritmo mese per vero M = 0; esegui mentre ((M =12)); scrivi (“inserisci il mese”); legge(M); se (M>0) AND (M<13) allora scrivi (“mese corretto”); altrimenti scrivi (“errore”); fine se; ripeti

27 Luca Chichisola27 Pseudocodifica: mese per falso Algoritmo mese per falso Variabili Mnumerica, intera, I Inizio ripeti; scrivi(“inserisci il mese”); leggi (M); se (M>0) AND (M<13) allora scrivi (“mese corretto”); altrimenti scrivi (“errore”); fine se; finché (M>0) AND (M<13); fine

28 Luca Chichisola28 Flow-chart: mese per falso Inizio M M>0 AND M< 13 Fine F V Errato Corretto M>0 AND M< 13 F V

29 Luca Chichisola29 Debug: mese per falso Debug per falso 1.Inserisci mese 2.M  14 3.14>0 AND 14<13 ? (F) 4.Errore 5.14>0 AND 14<13 ? (F) 6.Inserisci mese 7.M  1 8.1>0 AND 1<13 ? (V) 9.Mese corretto 10.1>0 AND 1<13 ? (V) Algoritmo mese per falso ripeti; scrivi(“inserisci il mese”); leggi (M); se (M>0) AND (M<13) allora scrivi (“mese corretto”); altrimenti scrivi (“errore”); fine se; finché (M>0) AND (M<13);

30 Luca Chichisola30 Pseudocodifica: spesa Algoritmo spesa Variabili Pnumerica, reale,I Totnumerica, reale,O Inizio ripeti; scrivi (“ inserisci il prezzo”); leggi (P); se (

31 Luca Chichisola31 Flow-chart: spesa inizio

32 Luca Chichisola32 Debug: spesa Debug

33 Luca Chichisola33 Codifica: calcola la media di tre numeri 'VARIABILI Dim primo, secondo, terzo, media As Integer 'Acquisizione dei valori dalle celle primo = Range("a1") secondo = Range("a2") terzo = Range("a3") 'Calcolo della media media = (primo + secondo + terzo) / 3 Range("c1") = media

34 Luca Chichisola34 Codifica: cerchio (area,circonferenza) 'VARIABILI Dim raggio, area, circonferenza As Single Const pigreco = 3.14 'AQUISIZIONE DEI VALORI DELLE CELLE raggio = Range("B1") 'CALCOLO IL VALORE DELLA CIRCONFERENZA E DELL'AREA circonferenza = (2 * 3.14 * raggio) area = (3.14 * raggio ^ 2) 'STAMPO NELLA CELLA B2 IL RISULTATO: CIRCONFERENZA Range("b2") = circonferenza 'STAMPO NELLA CELLA B3 IL RISULTATO : AREA Range("b3") = area

35 Luca Chichisola35 Codifica: rettangolo (area, perimetro) 'VARIABILI Dim base, altezza, perimetro, area As Integer 'ACQUISIZIONE DEI VALORI base = Range("a1") altezza = Range("a2") 'CALCOLO AREA E PERIMETRO area = (base * altezza) perimetro = 2 * (altezza + base) Range("c1") = area Range("c2") = perimetro

36 Luca Chichisola36 Codifica: massimo 'VARIABILI Dim primo, secondo As Integer Dim maggiore As Integer 'ACQUISIZIONE DEI VALORI DALLE CELLE primo = Cells (1, 2) secondo = Cells (2, 2) 'CONTROLLO DEI NUMERI (SELEZIONE) If primo > secondo Then maggiore = primo Else maggiore = secondo End If ' VISUALIZZA I NUMERI ORDINATI Cells(2, 4) = maggiore

37 Luca Chichisola37 Codifica: triangolo 'variabili Dim lato1, lato2, lato3 As Single 'acquisisci valori dalle celle lato1 = Range("b1") lato2 = Range("b2") lato3 = Range("b3") 'definisci triangolo If (lato1 <> lato2) And (lato2 <> lato3) And (lato1 <> lato3) Then Range("a5") = "scaleno" End If If (lato1 = lato2) Or (lato2 = lato3) Or (lato1 = lato3) Then Range("a5") = "isoscele" End If If (lato1 = lato2) And (lato2 = lato3) Then Range("a5") = "equilatero" End If

38 Luca Chichisola38 Codifica: reciproco 'variabili Dim numero As Single 'acquisisci valori dalle celle numero = Range("b1") 'calcola il valore del reciproco If (numero <> 0) Then Range("a3") = 1/ numero Else: Range("a3") = "errore" End If

39 Luca Chichisola39 Codifica: mese 'variabili Dim mese As Single 'acquisisci valori dalle celle mese = Range("b1") 'calcola mese giusto If (mese 12) Then Range("a3") = "errore" Else: Range("a3") = "mese corretto" End If

40 Luca Chichisola40 Codifica: spesa 'VARIABILI Dim i, totale, spesa As Integer 'QUANTI CONTA I NUMERI >20 totale = 0 'IL CONTATORE "i" CONTA QUANTE CELLE STO LEGGENDO For i = 2 To 6 spesa = Cells (i, 1) totale = totale + spesa Next Range("b8") = totale

41 Luca Chichisola41 mappa menu sequenza Selezione ciclo media cerchio rettangolo massimo triangolo reciproco Mese vero Mese falso Spesa pseudocodifica Flow-chart debug


Scaricare ppt "Luca Chichisola1 Dal problema al programma LUCA CHICHISOLA."

Presentazioni simili


Annunci Google