Problema:
dati 3 numeri stabilire se sono i lati di un triangolo equilatero, scaleno o isoscele.
Dopo aver acquisito i valori si deve verificare se questi possono realmente essere i lati di un triangolo.
Si ricordi infatti che valgono le condizioni seguenti:
Un triangolo è un poligono di 3 lati.
Dati tre segmenti di misure a, b, c, è possibile costruire un triangolo se ciascuno segmento è
minore della somma degli altri due e maggiore della loro differenza.
a < b+c | a > |b-c| |
b < a+c | b > |a-c| |
c < a+b | c > |a-b| |
Algoritmo:
Acquisisci da tastiera i valori dei tre lati e memorizzali nelle variabili LatoA, LatoB
e LatoC.
Confronta un lato con gli altri due. Se entrambi i confronti sono veri allora il triangolo
è equilatero e il procedimento termina
Confronta i lati a coppie. Se almeno una coppia di lati sono uguali allora il triangolo
è isoscele e il procedimento termina altrimenti il triangolo è Scaleno e il
procedimento termina.
È sempre una buona regola verificare che i valori inseriti siano corretti. Il mancato controllo sulla
validità dei dati potrebbe generare risultati sbagliati.
Le condizioni che devono soddisfare i valori immessi, affinchè con essi si possa costruire un triangolo,
vengono lasciati per esercizio.
Il primo test controlla se uno dei due lati è uguale agli altri due. L'operatore AND
fornisce risultato vero solo se entrambi i confronti sono veri, in ogni altro caso il risultato
è falso.
Il secondo test controlla se ci sono almeno due lati uguali. L'operatore OR, in questo caso, fornisce
risultato vero solo se almeno un confronto fornisce risultato vero
Codifica del programma
- Avviare Scratch
- Aprire il menu Variabili e premere il pulsante
- Assegnare il nome LatoA alla variabile, poi ripetere il procedimento per la creazione
delle variabili LatoB e LatoC
- Una importante regola stabilisce che prima di usare una variabile conviene assegnare un valore iniziale.
In questo caso, le tre variabili vengono inizializzate da tastiera:
Trascinare un blocco
, prelevato dal menu Sensori e al di sotto
inserire un blocco "Porta ... a ..".
Duplicare questo blocco per acquisire gli altri due valori.
- Trascinare un blocco
, prelevato dal menu Controllo
- Aprire il menu Operatori e trascinare un blocco
nell'area incavata del blocco
SE. Trascinare un blocco
nell'operando di sinistra del blocco AND.
Trascinare un secondo blocco
nel secondo operando.
- Trascinare le variabili all'interno delle caselle dei blocchi di confronto.
- nel ramo Then del blocco SE inserire l'operazione da fare se il confronto da esito vero:
- Trasferire un blocco
e completarlo
con il messaggio "Puoi costruire un triangolo equilatero"
- Nel ramo altrimenti del blocco SE incastrare un altro blocco

- Nell'area incavata di questo blocco trasferire un blocco

- All'interno delle caselle riservate ai due operandi trasferire, in entrambe, un altro blocco
.
- In tutte le caselle vuote dei blocchi OR trasportare un blocco

- Completare le caselle vuote con le opportune variabili.
- Trascinare un blocco
nel ramo Then e un altro nel ramo
Altrimenti completandoli per fornire la risposta del caso.
Lo script completo:
Problemi
- Calcolare il perimetro del triangolo
- Aggiungere i controlli per verificare se i tre valori forniti in input consentono di
costruire un triangolo
- Calcolare l'area del triangolo applicando la formula di Erone:
- Calcolare il semiperimetro: p = (LatoA+LatoB+LatoC)/2
- Calcolare l'espressione: S = p·(p - LatoA)·(p - LatoB)·(p - LatoC)
- Calcolare l'area del triangolo estraendo la radice quadrata di S: A =radQ(S)