ILA - Unisinos
ILA - Unisinos
ILA - Unisinos
Create successful ePaper yourself
Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.
Aprendendo a Programar Programando numa Linguagem Algorítmica Executável (<strong>ILA</strong>) - Página 32<br />
Fim<br />
9. O exemplo a seguir tem objetivos diferentes dos anteriores. O primeiro objetivo é motivar o<br />
próximo capítulo e o segundo é mostrar que um programador só é capaz de escrever um programa<br />
que resolva um determinado problema se ele souber resolver o tal problema "na mão", ou seja, com<br />
a utilização apenas de lápis e papel. Trata-se de um programa que calcule a área de um triângulo,<br />
dados os comprimentos dos seus lados. Naturalmente, só é capaz de escrever este programa aquele<br />
que conhecer a fórmula abaixo, que dá área do triângulo cujos lados têm comprimentos x, y e z.<br />
S= p . p−x . p− y. p− z<br />
x y z<br />
onde p=<br />
2<br />
é o semiperímetro do triângulo. Com isto, temos o seguinte programa.<br />
//Programa que fornece a área de um triângulo<br />
Variaveis<br />
Numerico x, y, z, p, Area<br />
Inicio<br />
Escrever "Digite os comprimentos dos lados do triângulo"<br />
Ler x<br />
Ler y<br />
Ler z<br />
p = (x + y + z)/2<br />
Area = Raiz(p*(p - x)*(p - y)*(p - z), 2)<br />
Escrever "A área do triângulo de lados ", x, ", ", y, " e ", z, " é igual a ", Area<br />
Fim<br />
Se este programa for executado com entrada 3, 4 e 5 temos p = 6 e<br />
Area=6. 6−3 . 6−4 . 6−5 =36=6<br />
e, como era de se esperar, a área do triângulo cujos lados têm comprimento 3, 4 e 5 unidades de<br />
comprimento é igual a 6 unidades de área.<br />
Agora, se este programa fosse executado para entrada 1, 2 e 5 teríamos p = 4 e<br />
Area=4 .4−1 . 4−2 . 4−5=−24<br />
e ocorreria erro: o sistema, como era de se esperar, não calcula raiz quadrada de número negativo.<br />
O que acontece é que nem sempre três números podem ser comprimentos dos lados de um<br />
triângulo (a matemática prova que isto só acontece se cada um deles for menor do que a soma dos<br />
outros dois). Assim, o comando que calcula a Area só deveria ser executado se os valores digitados<br />
para x, y, e z pudessem ser comprimentos dos lados de um triângulo.<br />
2.12 Exercícios propostos<br />
1. Avalie cada uma das expressões abaixo.<br />
a) (-(-9) + Raiz((-9)*(-9) - 4*3*6, 2))/(2*3).<br />
b) (Inteiro(5,7) = 5) e (Raiz(9, 3) = 3)) ou Resto(4, 8) = 3.<br />
2. Escreva programas para<br />
a) Converter uma temperatura dada em graus Farenheit para graus Celsius.<br />
b) Gerar o invertido de um número com três algarismos (exemplo: o invertido de 498 é<br />
894).<br />
c) Somar duas frações ordinárias, fornecendo o resultado em forma de fração.<br />
d) Determinar o menor múltiplo de um inteiro dado maior do que um outro inteiro dado<br />
(exemplo: o menor múltiplo de 7 maior que 50 é 56).<br />
e) Determinar o perímetro de um polígono regular inscrito numa circunferência, dados o<br />
número de lados do polígono e o raio da circunferência.