Lógica de Programação-básico

14
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.

Transcript of Lógica de Programação-básico

Page 1: Lógica de Programação-básico

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.

Page 2: Lógica de Programação-básico

Multiplicar esse número por dois. Mostrar o resultado final.

Comando de atribuição

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

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

A B C2 3 5

15 60 -55

1°) Determine os valores finais de A, B e C após a execução do trecho abaixo:A<-0B<-1C<-A+BD<-C*A+(B*C+A)A<-(C-A)*3B<-2*C^2

A B C D0 1 1 13 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 C1 2 32 2 22 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)

Page 3: Lógica de Programação-básico

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 FimseFimse

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” FimseFimse

***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.varx,y: real

Page 4: Lógica de Programação-básico

inicio// Seção de ComandosEscreva ("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. varx,y: realinicio// 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:

Page 5: Lógica de Programação-básico

Massa Corpórea Grau de obesidade< 26 Normal

≥26e<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: realb: realc: realmf:real

inicio

Page 6: Lógica de Programação-básico

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)/3escreval ()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$) Aumento0,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: caractersa: realsra: realsrb: real

Escreva ("Informe o nome do jogador:")Leia (n)Escreva ("Informe o salário atual:")Leia (sa)

Page 7: Lógica de Programação-básico

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,00B 100,00C 75,00D 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.

Page 8: Lógica de Programação-básico

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 <- 10enquanto (i<=1000) faca escreval (“—“,i, “—“) i <- i + 10fimenquantofimalgoritmo

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 <- 0i <- 1Enquanto (i <=5) faca Escreva (“Informe o “,i,”º número:”) Leia (x) Se (x>maior) entao Maior <- x Fimsei <- i+1FimenquantoEscreval (“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

Page 9: Lógica de Programação-básico

i,x, maior: real

Início

Escreval ("**Calculando o maior número**")Maior <- 0i <- 1Escreva ("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)FimenquantoEscreval ("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 <- 0h <- 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.

varsenha: reallogin: caracter

inicio

Page 10: Lógica de Programação-básico

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: realx: inteirosoma: realam: realmaior: realn: inteirocont: inteiro

inicio// Seção de Comandos

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

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

Page 11: Lógica de Programação-básico

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: realx: inteirosoma: realam: realmaior: realn: inteirocont: inteiro

Escreva ("Informe a 1ª altura:")leia (a)maior <- 0x <- 2soma <- 0cont <- 0Enquanto (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

Page 12: Lógica de Programação-básico

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.