Anda di halaman 1dari 12

Lógica de Programação

1°) Crie uma seqüência lógica para trocar um pneu de carro


furado e parado.
• Sair do carro.
• Abrir o porta-malas.
• Retirar o pneu step.
• Pegar o macaco.
• Afrouxar os parafusos do pneu.
• Erguer o carro com o macaco.
• Retirar o pneu furado.
• Colocar o pneu step e parafusá-lo.
• Descer o carro.
• Guardar o pneu furado no porta-malas.
• Seguir viagem.

2°) Crie uma seqüência lógica para tomar banho.


• Entrar no banheiro.
• Fechar a porta.
• Retirar a roupa.
• Colocar a roupa no cesto.
• Ir para o box.
• Fechar a porta do box.
• Ligar o chuveiro.
• Pegar o sabonete.
• Pegar a bucha.
• Passar o sabonete na bucha.
• Esfregar a bucha no corpo.
• Colocar o sabonete e a bucha de volta no lugar.
• Enxagüar todo o corpo.
• Desligar o chuveiro.
• Abrir a porta do box.
• Pegar a toalha.
• Enxugar o corpo.
• Sair do box.
• Pendurar a toalha.
• Vestir a roupa.
• Abrir a porta do banheiro.
• Sair do banheiro.

3°) Faça um algoritmo para somar dois números e multiplicar


o resultado pelo primeiro número.
• Informe o 1° número.
• Informe o 2° número.
• Soma o 1° com o 2° número.
• Pegar o resultado da soma e multiplicar pelo primeiro número.
• Mostrar o resultado final.
4º) Escreva um algoritmo que leia um número qualquer e
exiba o dobro do mesmo.
• Informe um número.
• Multiplicar esse número por dois.
• Mostrar o resultado final.

Comando de atribuição

• Utilização de variáveis.
X <- Número
X*2
Escreva (X)

Ex.:
A<-2
B<-3
C<-5
A<-B*C
B<-A+A*B
C<-C-B

A B C
2 3 5
15 60 -55

1°) Determine os valores finais de A, B e C após a execução do


trecho abaixo:
A<-0
B<-1
C<-A+B
D<-C*A+(B*C+A)
A<-(C-A)*3
B<-2*C^2

A B C D
0 1 1 1
3 4 1 1

2°) A ordem das atribuições é importante? A<-B e C<-A


(vermelho) tem o mesmo efeito de C<-A e A<-B (verde)?
Sim, é importante. A ordem invertida altera os valores finais.

A B C
1 2 3
2 2 2
2 2 1
3°) Escreva um algoritmo que leia duas variáveis e troque o
conteúdo entre elas.
• Informe o primeiro número.
• Leia (X)
• Informe o segundo número.
• Leia (Y)

Estrutura Sequencial*
Não assisti a aula.

Estrutura Condicional

1°) Escreva um algoritmo para ler um número e determinar se


ele á maior, igual ou menor que zero.
“Informe um número:”
Leia (x)
Se (x > 0) então
“O número “,x,” é maior que 0”
Senão -> limita para não precisar fazer leitura desnecessária. (mais
rápido)
Se (x = 0) então
“O número “,x,” é igual a 0”
Senão
Se (x < 0) então
“O número “,x,” é menor que 0”
Fimse
Fimse
Fimse

Pode ser assim:

“Informe um número:”
Leia (x)
Se (x > 0) então
“O número “,x,” é maior que 0”
Senão
Se (x = 0) então
“O número “,x,” é igual a 0”
Senão
“O número “,x,” é menor que 0”
Fimse
Fimse
***A concatenação (separação de variáveis dos textos) na lógica de
programação (VisuAlg) é a vírgula (,). Em Asp a concatenação é o
“+”.

2°) Escreva um algoritmo que leia dois números e exiba-os em


ordem crescente.
var
x,y: real
inicio
// Seção de Comandos
Escreva ("Informe um número:")
Leia (x)
Escreva ("Informe um segundo número:")
Leia (y)
Se (x > y) entao
Escreva (y)
Escreva (x)
Senao
Se (y > x) entao
Escreva (x)
Escreva (y)
fimse
fimse

3°) Escreva um algoritmo que leia dois números e exiba o


maior deles.
var
x,y: real
inicio
// Seção de Comandos
Escreva ("Informe um número:")
Leia (x)
Escreva ("Informe um segundo número:")
Leia (y)
Se (x > y) entao
Escreva (x)
Senao
Se (x < y) entao
Escreva (y)
Senao
Se (x = y) entao
Escreva ("Os números são iguais")
fimse
fimse
fimse

4°) Deseja-se calcular a conta de energia elétrica de um


consumidor. Para isso, escreva um algoritmo que leia o código
do consumidor, o preço do KW e a quantidade de KW
consumido, e exiba o código do consumidor e o total a pagar.
Total a pagar = preço x quantidade.
Total a pagar mínimo = R$11,20.

5°) Escreva um algoritmo que determine o grau de obesidade


de uma pessoa, sendo fornecido o peso e a altura da pessoa.
O grau de obesidade é determinado pelo índice de massa
corpórea (Massa=Peso/altura2) através da tabela abaixo:

Massa Corpórea Grau de


obesidade
< 26 Normal
≥26 e<30 Obeso
≥30 Obeso Mórbido

Escreva ("Informe o peso da pessoa:")


Leia (p)
Escreva ("Informe a altura da pessoa:")
Leia (a)

m <- p/(a*a)
escreval ()
escreval()
escreval (" ********* RESULTADO *********")
escreval ()
escreval ("Massa corpórea: ",m:2:2,"")
escreval ()
escreval ("Grau de Obesidade:")
escreval ()
Se (m<26) entao
Escreval ("Normal.")
Senao
Se (m>=26) e (m<30) entao
Escreval ("Obeso.")
Senao
Se (m>=30) entao
Escreval ("Obeso Mórbido.")
fimse
fimse
fimse

6°) Faça um algoritmo que, dado as três notas de um aluno,


determine e exiba a sua Média Fial e o conceito, sabendo-se
que:
• A média final é calculada pela média aritmética das 3
notas;
• O conceito é determinado com base na tabela abaixo:

Média Final Conceito


>=8,0 A
>=5,0 e < 8,0 B
<5,0 C

a: real
b: real
c: real
mf:real

inicio
Escreva ("Informe a primeira nota:")
Leia (a)
Escreva ("Informe a segunda nota:")
Leia (b)
Escreva ("Informe a terceira nota:")
Leia (c)

mf <- (a+b+c)/3
escreval ()
escreval()
escreval (" ********* RESULTADO *********")
escreval ()
escreval ("Média Final: ",mf:2:2,"")
escreval ()
escreval ("Conceito:")
escreval ()
Se (mf>=8.0) entao
Escreval ("A")
Senao
Se (mf>=5) e (mf<8.0) entao
Escreval ("B")
Senao
Se (mf<5.00) entao
Escreval ("C")
fimse
fimse
fimse

7°) O São Paulo Futebol Clube deseja aumentar o salário de


seus jogadores. O reajuste deve obedecer a seguinte tabela:

Salário Atual (R$) Aumento


0,00 a 1000,00 20%
1000,01 a 5000,00 10%
Acima de 5000,00 0%

Escrever um algoritmo que leia o nome e o salário atual


de um jogador, e exiba o nome, o salário atual e o salário
reajustado.

n: caracter
sa: real
sra: real
srb: real

Escreva ("Informe o nome do jogador:")


Leia (n)
Escreva ("Informe o salário atual:")
Leia (sa)
escreval()
escreval()
Se (sa>=0.00) e (sa<=1000.00) entao
sra <- (120*sa)/100
Escreval ("Jogador: ",n,"")
Escreval ("Salário atual:",sa,"")
Escreval ("O salário reajustado é: ",sra,"")
Senao
Se (sa>1000.00) e (sa<=5000.00) entao
srb <- (110*sa)/100
Escreval ("Jogador: ",n,"")
Escreval ("Salário atual:",sa,"")
Escreval ("O salário reajustado é: ",srb,"")
Senao
Se (sa>5000.00) entao
Escreval ("Jogador: ",n,"")
Escreval ("Salário atual:",sa,"")
Escreva ("Não há aumento salarial!")
Escreval ()
Escreval ("O salário é: ",sa,"")
fimse
fimse
fimse

8º) Faça um algoritmo para calcular a conta final de um


hóspede de um hotel fictício, considerando que:
a) Serão lidos o nome do hóspede, o tipo do apartamento
utilizado (A, B, C ou D), o número de diárias utilizadas
pelo hóspede e o valor do consumo interno do hóspede;
b) O valor da diária é determinado pela seguinte tabela:

Tipo de Apto. Valor da Diária (R$)


A 150,00
B 100,00
C 75,00
D 50,00

c) O valor total das diárias é calculado pela multiplicação


do número de diárias utilizadas pelo valor da diária;
d) O sub-total é calculado pela soma do valor total das
diárias e o valor do consumo interno;
e) O valor da taxa de serviço equivale a 10% do subtotal;
f) A total geral resulta da soma do subtotal com a taxa de
serviço.
g) Escreva a conta final contendo: o nome do hóspede, o
tipo de apartamento, o número de diárias utilizadas, o
valor unitário da diária, o valor total das diárias, o valor
do consumo interno, o subtotal, o valor da taxa de
serviço e o total geral.

Estrutura de Repetição

1º) Faça um algoritmo que gere a seguinte série: 10, 20,


30,..., 990, 1000.

Var

i: inteiro

Início

Escreval (“**Gerando Números**”)


Escreval ()
i <- 10
enquanto (i<=1000) faca
escreval (“—“,i, “—“)
i <- i + 10
fimenquanto
fimalgoritmo

2°) Escreva um algoritmo que leia um conjunto de 10


números, e determine o maior deles.

Var

i,x, maior: real

Início

Escreval (“**Gerando Números**”)


Maior <- 0
i <- 1
Enquanto (i <=5) faca
Escreva (“Informe o “,i,”º número:”)
Leia (x)
Se (x>maior) entao
Maior <- x
Fimse
i <- i+1
Fimenquanto
Escreval (“O maior número é:”, maior)
3º) Escreva um algoritmo que leia um conjunto de números e
determine qual é o maior deles. A leitura do valor 0 (zero)
indica o fim dos dados (flag).

Var

i,x, maior: real

Início

Escreval ("**Calculando o maior número**")


Maior <- 0
i <- 1
Escreva ("Informe o 1º número:")
Leia (x)
Enquanto (x <> 0) faca
Se (x > maior) entao
Maior <- x
Fimse
i <- i + 1
escreval ("Informe o ",i,"º número:")
leia (x)
Fimenquanto
Escreval ("O maior número é:", maior)

4º) Sendo H = 1 + ½ + 1/3 + ¼ +...+ 1/N faça um algoritmo p/


calcular o H. Sendo o N informado pelo usuário.

var
h, x, n: real

inicio

escreval ("**Cálculo**")
escreval ("Informe o valor de N:")
leia (n)
x <- 0
h <- 0
enquanto (x<n) faca
h <- h + 1/(x+1)
i <- i + 1
fimenquanto

5º) Crie um algoritmo que informe a mensagem: “Seja Bem-


Vindo”, caso ele informe o login=Paulo e a senha=123, caso o
valor informado seja diferente, dizer que o login ou senha é
inválido e pedir para que sejam informados novamente.

var
senha: real
login: caracter

inicio

Escreval ("Informe o login:")


leia (login)
Escreval ("Informe a senha:")
leia (senha)
escreval ()

Enquanto (login <> "paulo") e (senha<>123) faca


Escreval ("Login ou senha inválido!")
escreval ()
Escreval ("Informe o login:")
leia (login)
Escreval ("Informe a senha:")
leia (senha)
escreval ()
fimenquanto
Escreval ("Seja Bem-Vindo!!!")

6º) Faça um algoritmo que leia a altura de um grupo de 20


pessoas. Calcule e exiba:
• A maior altura do grupo;
• A altura média;
• O número de pessoas com altura superior a 2 metros.

a: real
x: inteiro
soma: real
am: real
maior: real
n: inteiro
cont: inteiro

inicio
// Seção de Comandos

maior <- 0
x <- 1
soma <- 0
cont <- 0
Enquanto (x <= 20) faca
Escreva ("Informe a ",x,"ª altura:")
leia (a)
Se (a>maior) entao
maior <- a
fimse
soma <- soma+a
Se (a>=2) entao
cont <- cont + 1
fimse
x <- x+1

fimenquanto
am <- soma/20

Escreval ()
Escreval ("***Resultado***")
Escreval ("A maior altura é:" ,maior)
Escreval ("A altura média é:" ,am)
Escreval ("O número de pessoas com altura superior a 2m é:" ,cont)

7º) Faça um algoritmo que leia a altura de um grupo


indeterminado de pessoas. A leitura do valor 0 (zero) indica o
fim dos dados (flag). Calcule e exiba:
• A maior altura do grupo;
• A altura média;
• O número de pessoas com altura superior a 2 metros.

a: real
x: inteiro
soma: real
am: real
maior: real
n: inteiro
cont: inteiro

Escreva ("Informe a 1ª altura:")


leia (a)
maior <- 0
x <- 2
soma <- 0
cont <- 0
Enquanto (a <> 0) faca

Se (a>maior) entao
maior <- a
fimse
soma <- soma+a

Se (a>=2) entao
cont <- cont + 1
fimse

Escreva ("Informe a ",x,"ª altura:")


leia (a)
x <- x+1

fimenquanto
am <- soma/(x-2)

Escreval ()
Escreval ("***Resultado***")
Escreval ("A maior altura é:" ,maior)
Escreval ("A altura média é:" ,am)
Escreval ("O número de pessoas com altura superior a 2m é:" ,cont)

8º) Faça um algoritmo que, para um número indeterminado de


pessoas:
• Leia a idade de cada pessoa, sendo que a leitura da
idade 0 (zero) indica o fim dos dados (flag) e não deve
ser considerada;
• Calcule e escreva o número total de pessoas analizadas;
• Calcule e escreva a idade média do grupo;
• Calcule e escreva a menor idade e a maior idade.

Anda mungkin juga menyukai