Estrutura condicional SE SENÃO

Em Lógica de Programação, usamos condições para tomar decisões no decorrer da execução de um programa. Através de estruturas condicionais podemos alterar todo o fluxo de processamento.

Um exemplo simples de estrutura de decisão é uma conta corrente de um banco. Entendemos que somente será possível realizar saques na conta se houver saldo disponível, caso contrário, o saque será negado. Note que esta decisão basicamente é um VERDADEIRO ou FALSO, ou seja, SE houve saldo a condição será VERDADEIRA e o saque será permitido, SENÃO, a condição falsa será negar o saque.

Tais decisões podem ser programas no VisuALG usando a seguinte estrutura;

se <condição> entao 
    <comandos da condição verdadeira> 
senao 
    <comandos da condição falsa> 
fimse

 

Exemplo 1

Num determinado Estado, para transferências de veículos, o DETRAN cobra uma taxa de 1% para carros
fabricados antes de 2000 e uma taxa de 1.5% para os fabricados de 2000 em diante, taxa esta incidindo sobre o
valor de tabela do carro. O programa abaixo lê o ano e o preço do carro e a seguir calcula e imprime imposto a ser
pago.

Algoritmo "ExemploCalculoDetran"

Var
AnoVeiculo : inteiro
ValorVeiculo, TaxaVeiculo : real

Inicio
Escreva("Informe o ano do veículo: ")
leia(AnoVeiculo)

Escreva("Informe o valor do veículo: ")
leia(ValorVeiculo)

SE (AnoVeiculo < 2000) ENTAO
 TaxaVeiculo <- ValorVeiculo * 0.01
SENAO
 TaxaVeiculo <- ValorVeiculo * 0.015
FIMSE

Escreval("A taxa para transferência: ", TaxaVeiculo)

Fimalgoritmo

Podemos também usar uma condição dentro de outra condição, isso normalmente é necessário quando precisamos testar mais de 2 condições.

Exemplo 2

Uma empresa concederá um aumento de salário aos seus funcionários de acordo com o cargo e
conforme a tabela abaixo. Faça um programa de computador que leia o salário e o cargo de um funcionário e calcule o novo salário. Se o cargo do funcionário não estiver na tabela, ele deverá, então, receber 40% de aumento. Mostre o salário antigo, o novo salário e a diferença entre eles.

Código  CargoPercentual
101Gerente10%
102Engenheiro20%
103Técnico30%

O código ficará;

Algoritmo "CalculoDoSalario"
Var
 SalarioAtual, SalarioNovo : real
 CodCargo, Reajuste : inteiro

Inicio

Escreva("Informe o código do Cargo: ")
 leia(CodCargo)

Escreva("Informe o salario atual: ")
 leia(SalarioAtual)

SE (CodCargo = 101) ENTAO
 Reajuste <- 10
 SalarioNovo <- SalarioAtual * 1.1; // acrescenta 10%
 SENAO
 SE (CodCargo = 102) ENTAO
 Reajuste <- 20
 SalarioNovo <- SalarioAtual * 1.2; // acrescenta 20%
 SENAO
 SE (CodCargo = 103) ENTAO
 Reajuste <- 30
 SalarioNovo <- SalarioAtual * 1.3; // acrescenta 20%
 SENAO
 Reajuste <- 40
 SalarioNovo <- SalarioAtual * 1.4; // acrescenta 40%
 FIMSE
 FIMSE
 FIMSE

Escreval("O novo salário é: ", SalarioNovo)
 Escreval("Houve um aumento de: ", SalarioNovo - SalarioAtual)
 Escreval("Reajuste de: ", Reajuste, "%")
 
Fimalgoritmo

No entanto, podemos resolver o mesmo problema de uma outra forma diferente;

Algoritmo "CalculoDoSalario"
Var
 SalarioAtual, SalarioNovo : real
 Reajuste, CodCargo : inteiro

Inicio

Escreva("Informe o código do Cargo: ")
 leia(CodCargo)
 
 Escreva("Informe o salario atual: ")
 leia(SalarioAtual)
 
 SE (CodCargo = 101) ENTAO
 Reajuste <- 10
 SalarioNovo <- SalarioAtual * 1.1; // acrescenta 10%
 FIMSE
 
 SE (CodCargo = 102) ENTAO
 Reajuste <- 20
 SalarioNovo <- SalarioAtual * 1.2; // acrescenta 20%
 FIMSE

SE (CodCargo = 103) ENTAO
 Reajuste <- 30
 SalarioNovo <- SalarioAtual * 1.3; // acrescenta 30%
 FIMSE

SE ((CodCargo <> 101) E (CodCargo <> 102) E (CodCargo <> 103)) ENTAO
 Reajuste <- 40
 SalarioNovo <- SalarioAtual * 1.4; // acrescenta 40%
 FIMSE

Escreval("O novo salário é: ", SalarioNovo)
 Escreval(Reajuste,"% de aumento")
 Escreval("Houve um aumento de: ", SalarioNovo - SalarioAtual)

Fimalgoritmo


Exercícios

1 – Um banco concederá um crédito especial aos seus clientes de acordo com o saldo médio no último ano. Faça um
algoritmo que leia o saldo médio de um cliente e calcule o valor do crédito de acordo com a tabela abaixo. Mostre
uma mensagem informando o saldo médio e o valor do crédito.

Saldomédio Percentual
de 0 a 2000nenhum crédito
de 2001 a 400020% do valor do saldo médio
de 4001 a 600030% do valor do saldo médio
acima de 600140% do valor do saldo médio

2 – O cardápio de uma lanchonete é o seguinte:

Especificação Preço unitário
100Cachorro quente7,90
101Bauru simples4,90
102Bauru c/ovo6,50
103Hamburger9,90
104Cheeseburger10,90
105Refrigerante3,60

Escrever um programa de computador que leia o código do item pedido, a quantidade e calcule o valor a ser pago por aquele lanche. Caso seja digitado um código que não existe, envie a mensagem “Item não encontrado no cardápio”.

3. Crie um programa que leia 3 valores inteiros e verifique se eles podem formar  um triângulo. Se for possível formar um triangulo, escreva uma mensagem informando se é um triângulo equilátero, isósceles ou escaleno.

Observações:
a) O comprimento de um lado do triângulo é sempre menor do que a soma dos outros dois.
b) Equilátero; Todos lados iguais
c) Isósceles; Dois lados iguais
d) Escaleno; Todos os lados diferentes

Bons estudos!

Exemplos Visualg para praticar

Se você quer mais exemplos, acesse este outro artigo – Exemplos para praticar no VisuAlg, nele você encontrará exemplos resolvidos e terá acesso a exercícios compartilhados na minha conta do OneDrive. Bons estudos.