Lógica de Programação


6) Faça 1 algorítimo que leia o ano de nascimento de uma pessoa, o ano atual, calcular e expor a idade, exibir uma mensagem indicando se a pessoa já tem idade para votar (16 anos ou mais), para carteira de habilitação (18 anos ou mais).

7) Elabore 1 algoritimo que leia dois números inteiros e a operação aritmética desejada.

Calcule então a resposta adequada.

Sendo a operação = “+” uma soma, “*” multiplicar os dois números, “/” dividir o primeiro pelo segundo, “-” subtração do primeiro pelo segundo.

Lógica de programação

Prova AD dia 27/04/2007 – Sexta-Feira

Quando devido a necessidade de processamento, agrupamos várias seleções, formamos uma seleção encadeada, normalmente tal formação ocorre quando uma determinada ação ou bloco de instruções deve ser executado se um grande conjunto de possibilidades ou combinações de situações for satisfeito.

Exemplo:

se <condição1> entao

se <condição 2> entao

se <condição 3> entao

instruções

fimse

fimse

fimse

A linha instruções só será executada se as três condições retornarem verdadeiro.

Exemplo seleção composta encadeada:

se tenho mais que 10 mil reais entao

vou para Miami

senao

se tenho mais que tres mil reais entao

vou para Recife

senao

se tenho 100 reais entao

vou ao shopping

fimse

fimse

fimse

Prioridade de execução entre todos os operadores

Prioridade Operadores
1 Aritiméticos +, -, *, /
2 Relacionais <, >, =, <>
3 Lógicos e, ou

 

4) Leia nome, salário e categoria de um funcionário, se a categoria for = “m” de mensalista, conceder 10% de aumento, se for = “h” de horista, conceder 20% de aumento, se não for “m” nem “h”, exibir a mensagem categoria inválida.

algorítimo “checa categoria”

var

nome, categoria: caracter

salario: real

inicio

leia (nome, salario, categoria)

se categoria = m entao

salario <- salario + ((salario*10)/100)

fim se

se categoria = h entao

salario <- salario + ((salario*20)/100)

fim se

se (categoria <> h ) e (categoria<> m) entao

secreva (“Categoria inválida”)

fim se

fimalgoritimo

5) Leia três números inteiros, em seguida exiba-os em ordem decrescente.

Se os números forem iguais, exiba a mensagem “Os números não podem ser iguais”

Exercícios

1) Faça um algorítimo que receba as duas médias semestrais de um aluno, calcule a média anual, se a média anual for maior ou igual a cinco, exibir a mensagem “ALUNO APROVADO”, caso contrário exibir a mensagem “ALUNO REPROVADO”.

algoritimo “aprovado ou reprovado”

var

mediasemestre1, mediasemestre2, mediaanual : real

inicio

leia(mediasemestre1,mediasemestre2)

mediaanual<-(mediasemestre1+mediasemestre2)/2

se mediaanual >=5 entao

escreva (“ALUNO APROVADO”)

senao

escreva (“ALUNO REPROVADO”)

fimse

fimalgoritimo

2) Leia idade e a quantidade de dependentes de um funcionário e o salário atual, se a idade for > 49 ou o número de dependentes for > que 3 conceda 20% de aumento.

algoritimo “alegria de pobre”

var

idade, prole: inteiro

salarioatual, aumento: real

inicio

leia(idade, prole)

se idade > 49 ou prole > 3 entao

aumento<-(salarioatual*20)/100

salarioatual<-(salarioatual+aumento)

fimse

fimalgoritimo

3) Idem ao exercício 2, mas para receber 20% de aumento o funcionário deverá ter mais de 49 anos e ter mais de tres dependentes.
algoritimo “alegria de pobre2″

var

idade, prole: inteiro

salarioatual, aumento: real

inicio

leia(idade, prole)

se idade > 49 e prole > 3 entao

aumento<-(salarioatual*20)/100

salarioatual<-(salarioatual+aumento)

fimse

fimalgoritimo

Operações relacionais

 

 

Exemplos:

3=3 (retorna um valor verdadeiro)

3=8 (retorna um valor falso)

 

Operadores lógicos

var: lógico

A <- 6=3 (a variável A recebe o valor falso)

A <- 5>4 (a variável A recebe o valor verdadeiro)

 

tabela verdade: é o conjunto de todas as possibilidades combinatórias entre os valores de diversas variáveis lógicas, as quais se encontram em apenas duas situações, V ou F.

 

 

 

Exemplos:

 

  1. Se chover e relampejar, eu fico em casa.
  2. Se chover ou relampejar, eu fico em casa.

Estruturas de controle

Estrutura sequêncial : a estrutura sequêncial de um algorítimo corresponde ao fato de que o conjunto de instruções que compõem um algorítimo será executado em uma sequência linear para baixo, da esquerda para a direita, isto é, na mesma ordem em que foram escritas.

Estrutura de seleção: quando precisamos testar uma certa condição antes de excutar uma instrução usamos uma estrutura de seleção simples.

Sintaxe

Se <condição> então

.

.

.

instruções

Fimse

<condição> é uma expressão lógica que quando inspecionada pode gerar um resultado falso ou verdadeiro.

Se <condição> for verdadeiro, a instrução entre as cláusulas então e fim se será executada, caso contrário (<condição> for falsa) encerra-se a seleção (fimse), neste caso sem executar nenhuma instrução.

Exemplo:

Se media>=5 então

escreva(“Aluno Aprovado”)->instrução executada caso a condição media retorne verdadeiro

fimse

Seleção Composta

Quando tivermos situações em que duas alternativas dependem de uma mesma condição, sendo uma quando a condição retorna verdadeiro e outra quando a condição retorna falso, deve-se utilizar uma seleção composta.

Sintaxe

Se <condição> então

instruções

senao

instruções

fimse

Exemplo:

Se media >= 5 então

escreva (“Aluno aprovado”) -> instrução executada quando a condição media >=5 retornar verdadeiro

senão

escreva (“Aluno reprovado”) -> instrução executada caso falso

fim se

Exercícios:

1) Faça um algorítimo que receba três números inteiros, faça a soma do primeiro com o segundo, multiplique o resultado da soma pelo terceiro número.

Exibir o valor da soma.

Exibir o valor da multiplicação.

Algoritimo ”Números”

var

a,b,c,soma,produto : inteiro

inicio

escreva(“digitar o primeiro número”)

leia(a)

escreva(“digitar o segundo número”)

leia(b)

escreva(“digitar o terceiro número”)

leia(c)

soma<- a+b

produto<-c*soma

leia(“a soma é”, soma)

leia(“a multiplicação é”,produto)

fim algorítimo

2) Faça um algorítimo que receba o nome e o salário atual de um funcionário, depois solicitar o % de aumento concedido a este usuário, calcular o valor do aumento e o salário atualizado, exibir estas duas informações.

algoritimo “calcula salario”

var

nome : caracter

salario, porcentagem, calculasalario, valoraumento : real

inicio

escreva(“Favor digitar o nome do funcionario”)

leia(nome)

escreva(“Favor digitar o salário deste funcionário”)

leia(salario)

escreva(“Favor digitar o percentual de aumento do salário deste funcionário”)

leia(porcentagem)

valoraumento<-(salario*porcentagem)/100

calculasalario<-salario+valoraumento

escreva (“O valor do aumento é”,valoraumento)

escreva(“O salário atualizado é”, calculasalario)

fimalgoritimo

3) Dado quatro números inteiros quaisquer, pede-se:

Calcular a raiz quadrada do primeiro
Calcular 0 2º elevado ao 3º
Calcular o resto da divisão do 1º pelo 4º
Apresentar todos resultado calculados

algoritimo”calcula”

var

n1,n2,n3,n4, restodiv : inteiro

raiz, expoente : real

inicio

escreva(“Digite o primeiro número”)

leia(n1)

escreva(“Digite o segundo número”)

leia(n2)

escreva(“Digite o terceiro número”)

leia(n3)

escreva(“Digite o quarto número”)

leia(n4)

raiz<-raizq n1

expoente<-exp (n2,n3)

restodiv<- n1 mod n4

escreva(“Raiz quadrade de “,n1,”é”,raiz)

escreva(“O 2º elevado ao 3º é”, expoente)

escreva( “O resto da divisão de “,n1,”por”,n4,”é”,restodiv)

fimalgoritimo

4) Dado a kilometragem percorrida por um carro e a quantidade de litros de combustível que foram consumidos neste percurso, faça um algorítimo que leia esses dados, calcule e apresente a média de consumo do veículo.

algoritimo “calcula consumo”

var

kilometragem, litrosc, media : real

inicio

escreva(“Digite a kilometragem percorrida”)

leia(kilometragem)

escreva(“Digite a quantidade de litros consumidos”)

leia(litrosc)

media<-kilometragem/litrosc

escreva(“A média de consumo foi de”, media)

fimalgoritimo

 5) Leia cinco números inteiros e faça os cálculos

  • A subtração do 1º pelo 2º
  • Elevar o resultado da subtração ao quadrado
  • Ache o quociente inteiro da divisão do 4º pelo 5º número

algoritimo “5 numeros”

var

n1,n2,n3,n4,n5,sub,quad,quocint : inteiro

inicio

escreva(“Digite o 1º número”)

leia(n1)

escreva(“Digite o 2º número”)

leia(n2)

escreva(“Digite o 3º número”)

leia(n3)

escreva(“Digite o 4º número”)

leia(n4)

escreva(“Digite o 5º número”)

leia(n5)

sub<-n1-n2

quad<-exp (sub,n2)

quocint<- div (n4,n5)

escreva(“Os números são”, n1,n2,n3,n4,”e”,n5)

escreva(“A subtração de”, n1,”por”,n2,”é”,sub)

escreva(“O resultado da subtração ao quadrado é”, quad)

escreva(“O quociente inteiro da divisão de”,n4,”e”,n5,”é”,,quocint)

fimalgoritimo

Próxima Página »