...

Eser 1.8

by user

on
Category: Documents
16

views

Report

Comments

Description

Transcript

Eser 1.8
Università degli Studi di Brescia
Fondamenti di Programmazione
Docente: Alessandro Saetti
A.A. 2012/2013
ESERCITAZIONE STRUTTURE DI
CONTROLLO E VETTORI
Università degli Studi di Brescia
A.A. 2012/2013
Scrivere un programma C che:
- Acquisire da tastiera la lunghezza dei tre lati di un triangolo
fintantoché le lunghezze acquisite non sono positive e non
soddisfano la disuguaglianza triangolare (la somma del lato
maggiore è inferiore alla somma degli altri lati)
- Stampi il perimetro del triangolo.
(Suggerimento: Ad ogni iterazione calcolare il massimo lato
acquisito e la somma degli altri due dati)
Impostiamo la solita struttura di partenza di un programma C
Scrivere un programma C che:
- Acquisire da tastiera la lunghezza dei tre lati di un triangolo
fintantoché le lunghezze acquisite non sono positive e non soddisfano
la disuguaglianza triangolare (la somma del lato maggiore è inferiore
alla somma degli altri lati)
- Stampi il perimetro del triangolo.
(Suggerimento: Ad ogni iterazione calcolare il massimo lato acquisito
e la somma degli altri due dati)
float l1, l2 , l3, max_lato, somma_altri2;
do {
// INPUT
printf("Digita 1^lato: ");
scanf("%f",&l1);
printf("Digita 2^lato: ");
scanf("%f",&l2);
printf("Digita 3^lato: ");
scanf("%f",&l3);
// Determino lato max e somma
// degli altri 2 lati
max_lato=l1;
somma_altri2=l2+l3;
if (l2 > maxlato)
{
max_lato=l2;
somma_altri2=l1+l3;
}
if (l3 > maxlato)
{
max_lato=l3;
somma_altri2=l1+l2;
}
} while ( (l1<=0) || (l2<=0) || (l3<=0) ||
(max_lato>somma_altri2));
#include <stdio.h>
#include <stdlib.h>
int main()
{
// . . .
system("pause");
return(0);
}
Scrivere un programma C che:
- Acquisire da tastiera la lunghezza dei tre lati di un triangolo
fintantoché le lunghezze acquisite non sono positive e non soddisfano
la disuguaglianza triangolare (la somma del lato maggiore è inferiore
alla somma degli altri lati)
- Stampi il perimetro del triangolo.
(Suggerimento: Ad ogni iterazione calcolare il massimo lato acquisito
e la somma degli altri due dati)
Disuguaglianza triangolare recita: la somma
delle lunghezze di due lati è maggiore o uguale
della lunghezza del terzo: |X+Y| <=|X|+|Y|
la sua rappresentazione grafica è la seguente:
Possiamo limitarci a considerare: lato maggiore
<= della somma degli altri due.
Scrivere un programma C che:
- Acquisire da tastiera la lunghezza dei tre lati di un triangolo
fintantoché le lunghezze acquisite non sono positive e non soddisfano
la disuguaglianza triangolare (la somma del lato maggiore è inferiore
alla somma degli altri lati)
- Stampi il perimetro del triangolo.
(Suggerimento: Ad ogni iterazione calcolare il massimo lato acquisito
e la somma degli altri due dati)
float perimetro = l1 + l2 + l3;
printf("Il perimetro e': %.2f\n", perimetro);
Fly UP