Universidade Federal de Ouro Preto – UFOP
Instituto de Ciências Exatas e Biológicas – ICEB
Departamento de Computação – DECOM
PROGRAMAÇÃO DE COMPUTADORES I - BCC701 – 2014-2
Aula Prática 04
O comando if-then-elseif-...-else-end
Este comando possui a forma:
if condição_1 then
instrução_a;
instrução_b;
Bloco
...
elseif condição_2
instrução_e;
instrução_f;
Bloco
...
elseif condição_3
instrução_k;
instrução_m;
Bloco
...
// se necessário, mais elseif
else // é opcional
instrução_p;
instrução_q;
Bloco
...
1
2
3
n
end
Onde:






as condições são expressões lógicas que resultam em verdadeiro ou falso;
o fluxo de execução dos comandos é controlado pelas condições;
se a condição_1 é verdadeira, então o bloco 1 de comandos é executado. Ao final
do bloco, o fluxo de execução salta para o primeiro comando após o end;
caso contrário, a condição 2 é verificada. Se for verdadeira, o bloco 2 de comandos
é executado. Ao final do bloco, o fluxo de execução salta para o primeiro comando
após o end;
caso contrário, cada condição seguinte é verificada da mesma forma;
se todas as condições forem falsas, o fluxo de execução executa os comandos do
último bloco, após o else. Veja que não há testes no else. Ao final do bloco, o fluxo
de execução salta para o primeiro comando após o end. A cláusula else opcional.
1
Universidade Federal de Ouro Preto – UFOP
Instituto de Ciências Exatas e Biológicas – ICEB
Departamento de Computação – DECOM
Exercício 1
Cálculo das Raízes Reais de uma Equação do Segundo Grau
Codifique um programa Scilab que calcula as raízes reais de uma equação do
segundo grau, seguindo o algoritmo:
1. fazer a leitura dos coeficientes da equação: a, b e c;
2. calcule o discriminante delta;
3. se o valor de delta for negativo, imprima a mensagem "NÃO EXITEM
RAÍZES REAIS PARA A EQUAÇÃO";
4. se o valor de delta for positivo, calcule e imprima as raízes reais x1 e x2;
5. se o valor de delta for nulo, calcule e imprima somente uma raiz;
6. para indicar o término do programa, imprima a mensagem: "FIM DO
PROGRAMA".
Observe os modelos de execução abaixo para implementar as entradas e
saídas de dados.
Exemplo 1
CÁLCULO DAS RAÍZES REAIS DE UMA EQUAÇÃO DO SEGUNDO GRAU
DIGITE O COEFICIENTE a:
1
DIGITE O COEFICIENTE b:
2
DIGITE O COEFICIENTE c:
1
1 x^2 + 2 x + 1
RAÍZES IGUAIS:
X =
-1.000
FIM DO PROGRAMA
Exemplo 2
CÁLCULO DAS RAÍZES REAIS DE UMA EQUAÇÃO DO SEGUNDO GRAU
DIGITE O COEFICIENTE a:
-2
DIGITE O COEFICIENTE b:
3
DIGITE O COEFICIENTE c:
2
-2 x^2
RAÍZES
X1 =
X2 =
FIM DO
+ 3 x + 2
DISTINTAS:
-0.500
2.000
PROGRAMA
2
Universidade Federal de Ouro Preto – UFOP
Instituto de Ciências Exatas e Biológicas – ICEB
Departamento de Computação – DECOM
Exercício 2
Cálculo do Valor de Uma Função de Duas Variáveis
Considere a função de duas variáveis abaixo.
Escreva um programa Scilab que implemente o algoritmo:
1.
2.
3.
4.
5.
ler um valor para x;
ler um valor para y;
calcular o valor de f(x,y) de acordo com a definição da função;
imprimir o valor calculado seguindo os exemplos de execução.
imprimir uma mensagem finalizando o programa.
Exemplo 1
-----------------------------------------------CÁLCULO DO VALOR DE UMA FUNÇÃO DE DUAS VARIÁVEIS
-----------------------------------------------DIGITE O VALOR DO ARGUMENTO x:
12.892
DIGITE O VALOR DO ARGUMENTO y:
-44.763
f(12.89, -44.76) = 2016.6182
FIM DO PROGRAMA
Exemplo 2
-----------------------------------------------CÁLCULO DO VALOR DE UMA FUNÇÃO DE DUAS VARIÁVEIS
-----------------------------------------------DIGITE O VALOR DO ARGUMENTO x:
-1.9876
DIGITE O VALOR DO ARGUMENTO y:
-0.09876
f(-1.99, -0.10) =
FIM DO PROGRAMA
3.9603
3
Universidade Federal de Ouro Preto – UFOP
Instituto de Ciências Exatas e Biológicas – ICEB
Departamento de Computação – DECOM
Exercício 3
Peter Griffin de Mudança para a Austrália
Peter e Louis decidiram mudar-se para a Austrália, um excelente país para se
viver. Infelizmente, um país com taxas altas de impostos. Há alguns anos atrás, os
cidadãos australianos pagaram as seguintes taxas de imposto de renda:
Renda Tributável
(AUD$)
0 < renda ≤ 6000
6001 ≤ renda ≤ 20000
Imposto Sobre a Renda
Nenhum
17 centavos para cada AUD$ 1 acima de 6000
AUD$ 2380,
20001 ≤ renda ≤ 50000
mais 30 centavos para cada AUD$ 1 acima de 20000
AUD$ 11380,
50001 ≤ renda ≤ 60000
mais 42 centavos para cada AUD$ 1 acima de 50000
AUD$ 15580,
renda > 60000
mais 47 centavos para cada AUD$ 1 acima de 60000
Além desses impostos, um imposto para a saúde de 1,5 %, o Imposto Drunken
Clam, é aplicado sobre toda a renda tributável do cidadão.
Escreva um programa Scilab para calcular o imposto devido por um cidadão, a
partir de sua renda tributável. O programa tem como entrada a renda tributável. As saídas
do programa são: o calculo do imposto sobre a renda que ele deve pagar (imposto
devido), o imposto Drunken Clam, e o total que o cidadão deve pagar ao governo.
A seguir, dois exemplos de execução do programa.
Exemplo 1
CÁLCULO DO IMPOSTO - DÓLAR AUSTRALIANO (AUD$)
DIGITE A RENDA TRIBUTÁVEL DO CIDADÃO: 5000
RENDA TRIBUTÁVEL: AU$
5000.00:
IMPOSTO DEVIDO: AU$
0.00
IMPOSTO PARA A SAÚDE - Drunken Clam: AU$
IMPOSTO TOTAL A SER PAGO: AU$
75.00
75.00
Exemplo 2
CÁLCULO DO IMPOSTO - DÓLAR AUSTRALIANO (AUD$)
DIGITE A RENDA TRIBUTÁVEL DO CIDADÃO: 50200
RENDA TRIBUTÁVEL: AU$ 50200.00:
IMPOSTO DEVIDO: AU$ 11464.00
IMPOSTO PARA A SAÚDE - Drunken Clam: AU$
IMPOSTO TOTAL A SER PAGO: AU$ 12217.00
4
753.00
Download

O comando if-then-elseif-...-else-end if condição_1 then instrução_a