UNIVERSIDADE ESTADUAL VALE DO ACARAÚ
Prof. Hudson Costa
EXERCÍCIOS RESOLVIDOS – algoritmos seqüenciais e com estruturas de seleção
1. Faça um algoritmo que leia um número inteiro e que imprima o seu sucessor e seu antecessor.
INICIO
NUMERO, SUC, ANT: INTEIRO;
ESCREVA(“INFORME UM NÚMERO: ”);
LEIA(NUMERO);
ANT <- NUMERO – 1;
SUC <- NUMERO + 1;
ESCREVA(“O NUMERO ANTERIO É ”, ANT, “ E O NÚMERO SUCESSOR É ”, SUC);
FIM.
2. Faça um algoritmo que leia quatro números informados pelo usuário e que depois imprima a
média ponderada, sabendo-se que os pesos são respectivamente: 1, 2, 3 e 4:
INICIO
A, B, C, D, MP: REAL;
ESCREVA(“INFORME O 1O NÚMERO: ”);
LEIA(A);
ESCREVA(“INFORME O 2O NÚMERO: ”);
LEIA(B);
ESCREVA(“INFORME O 3O NÚMERO: ”);
LEIA(C);
ESCREVA(“INFORME O 4O NÚMERO: ”);
LEIA(D);
MP <- (A*1 + B*2 + C*3 + D*4)/10;
ESCREVA(“A MÉDIA PONDERADA É: ”, MP);
FIM.
3. Antes do racionamento de energia ser decretado, quase ninguém falava em quilowatts; mas
agora, todos incorporaram essa palavra em seu vocabulário. Sabendo-se que 100 quilowatts
de energia custa um sétimo do salário mínimo, fazer um algoritmo que receba o valor do
salário mínimo e a quantidade de quilowatts gasta por uma residência e calcule:
- O valor em reais de cada quilowatt;
- O valor em reais a ser pago;
- O novo valor a ser pago por essa residência com um desconto de 10%.
INICIO
SM, QTDADE, PRECO, VP, VD: REAL;
ESCREVA(“INFORME O VALOR DO SALARIO MINIMO: ”);
LEIA(SM);
ESCREVA(“INFORME A QUANTIDADE DE QUILOWATTS: ”);
LEIA(QTDADE);
PRECO <- SM/700;
VP <- PRECO* QTDADE;
VD <- VP * 0,9;
ESCREVA(“PRECO DO QUILOWATT: ”, PRECO);
ESCREVA(“VALOR A SER PAGO: ”, VP);
ESCREVA(“VALOR COM DESCONTO: ”, VD);
FIM.
4. Faça um algoritmo que o usuário informe os valores dos catetos de um triângulo retângulo e
que ao final escreva a sua hipotenusa.
INICIO
A, B, C: REAL;
ESCREVA(“INFORME O 1O CATETO: ”);
LEIA(A);
ESCREVA(“INFORME O 2O CATETO: ”);
LEIA(B);
C <- 2//A**2 + B**2;
ESCREVA(“O VALOR DA HIPOTENUSA É: ”, C);
FIM.
5. Em épocas de pouco dinheiro, os comerciantes estão procurando aumentar suas vendas
oferecendo desconto. Faça um algoritmo que possa receber um valor de um produto e que
escreva o novo valor tendo em vista que o desconto foi de 9%.
INICIO
PRECO, NPRECO: REAL;
ESCREVA(“INFORME O VALOR DO PRODUTO: ”);
LEIA(PRECO);
NPRECO <- PRECO * 0,91;
ESCREVA(“PRECO COM DESCONTO: ”, NPRECO);
FIM.
6. Faça um algoritmo que efetue o cálculo da quantidade de litros de combustível gastos em uma
viagem, sabendo-se que o carro faz 12 Km com um litro. Deverão ser fornecidos o tempo
gasto na viagem e a velocidade média.
Utilizar as seguintes fórmulas:
distância = tempo * velocidade
distância
litros usados =
12
O algoritmo deverá apresentar os valores da velocidade média, tempo gasto na viagem,
distância percorrida e a quantidade de litros utilizados na viagem.
INICIO
TEMPO, VEL, DIST, LITROS: REAL;
ESCREVA(“INFORME O TEMPO GASTO: ”);
LEIA(TEMPO);
ESCREVA(“INFORME A VELOCIDADE MÉDIA: ”);
LEIA(VEL);
DIST <- TEMPO * VEL;
LITROS <- DIST/12;
ESCREVA(“A VELOCIDADE MÉDIA FOI ”, VEL);;
ESCREVA(“O TEMPO GASTO NA VIAGEM FOI ”, TEMPO);
ESCREVA(“A DISTÂNCIA PERCORRIDA FOI ”, DIST);
ESCREVA(“O CONSUMO DE COMSBUTÍVEL FOI ”, LITROS);
FIM.
7. Uma pessoa resolveu fazer uma aplicação em uma poupança programada. Para calcular seu
rendimento, ela deverá fornecer o valor constante da aplicação mensal, a taxa e o número de
meses. Sabendo-se que a fórmula usada para este cálculo é:
Valor acumulado = P *
(1 + i ) n − 1
onde: i= taxa, P = aplicação mensal e n= número de meses
i
INICIO
VA, I, P: REAL;
N: INTEIRO;
ESCREVA(“INFORME O VALOR DA APLICAÇÃO: ”);
LEIA(P);
ESCREVA(“INFORME A TAXA (0 – 1): ”);
LEIA(I);
ESCREVA(“INFORME O NÚMERO DE MESES: ”);
LEIA(N);
VA <- P * ((1+I)**N)-1)/I;
ESCREVA(“O VALOR ACUMULADO É: ”, VA);
FIM.
8. Faça um algoritmo que leia um número e se ele for maior que 20, então escreva a metade
desse número.
INICIO
NUMERO, METADE: REAL;
ESREVA(“INFORME O NÚMERO: ”);
LEIA(NUMERO);
SE (NUMERO > 20) ENTAO
METADE <- NUMERO/2;
ESCREVA(“A METADE É: ”, METADE);
FIMSE
FIM.
9. Faça um algoritmo que leia um número e escreva se ele é par ou impar.
INICIO
A : INTEIRO;
ESCREVA(“INFORME UM NÚMERO: ”);
LEIA(A);
SE (A MOD 2 = 0) ENTÃO
ESCREVA(“NÚMERO PAR”);
SENÃO
ESCREVA(“NÚMERO IMPAR”);
FIMSE
FIM.
10. Faça um algoritmo que leia três números e que armazene numa variável o maior dos três.
INICIO
A, B, C, MAX: REAL;
ESCREVA(“INFORME O 1O NÚMERO: ”);
LEIA(A);
ESCREVA(“INFORME O 2O NÚMERO: ”);
LEIA(B);
ESCREVA(“INFORME O 3O NÚMERO: ”);
LEIA(C);
SE (A > B) ENTAO
SE (A > C) ENTAO
MAX <- A;
SENAO
MAX <- C;
FIMSE
SENAO
SE (B > C) ENTAO
MAX <- B;
SENÃO
MAX <- C;
FIMSE
FIMSE
ESCREVA(“O MAIOR NÚMERO É: ”, MAX);
FIM.
11. Escreva um algoritmo que leia um peso na Terra e o número de um planeta e imprima o valor
do seu peso neste planeta. A relação de planetas é dada a seguir juntamente com o valor das
gravidades relativas à Terra.
Nro.
1
2
3
4
5
6
Gravidade relativa
0,37
0,88
0,38
2,64
1,15
1,17
Planeta
Mercúrio
Vênus
Marte
Júpiter
Saturno
Urano
Para calcular o peso no planeta use a fórmula:
Pplaneta =
Pterra
* gravidade
10
INICIO
OP: INTEIRO;
PTERRA: REAL;
ESCREVA(“ESCOLHA O PLANETA QUE VOCE QUER ANALISAR (1 – 6): ”);
LEIA(OP);
ESCREVA(“INFORME SEU PESO: ”);
LEIA(PTERRA);
ESCOLHA (OP)
CASO 1:
ESCREVA(“SEU PESO NO PLANETA MARCURIO É: ”, (PTERRA/10)*0.37);
CASO 2:
ESCREVA(“SEU PESO NO PLANETA VÊNUS É: ”, (PTERRA/10)*0.88);
CASO 3:
ESCREVA(“SEU PESO NO PLANETA MARTE É: ”, (PTERRA/10)*0.38);
CASO 4:
ESCREVA(“SEU PESO NO PLANETA JUPITER É: ”, (PTERRA/10)*2.64);
CASO 5:
ESCREVA(“SEU PESO NO PLANETA SATURNO É: ”, (PTERRA/10)*1.15);
CASO 6:
ESCREVA(“SEU PESO NO PLANETA MARCURIO É: ”, (PTERRA/10)*1.17);
FIMESCOLHA
FIM.
12. Construa um algoritmo que leia dois números e efetue a adição. Caso o valor somado seja
maior que 20, este deverá ser apresentado somando-se a ele mais 8; caso o valor somado
seja menor ou igual a 20, este deverá ser apresentado subtraindo-se 5.
INICIO
NUM1, NUM2, SOMA: REAL;
ESCREVA(“DIGITE UM NUMERO: ”);
LEIA(NUM1);
ESCREVA(“DIGITE OUTRO NUMERO: ”);
LEIA(NUM2);
SOMA <- NUM1 + NUM2;
SE (SOMA > 20) ENTAO
ESCREVA(“SOMA: ”, SOMA + 8);
SENAO
ESCREVA(“SOMA: ”, SOMA - 5);
FIMSE
FIM
13. Faça um algoritmo onde o usuário informa um número e o algoritmo verifica se o mesmo é
divisível por 10, por 5, por 2 ou se não é divisível por nenhum destes.
INICIO
NUMERO: INTEIRO;
ESCREVA (“INFORME UM NÚMERO: ”);
LEIA(NUMERO);
SE (NÚMERO MOD 10 = 0) ENTAO
ESCREVA(“MÚLTIPLO DE 10!”);
SENAO
SE (NÚMERO MOD 2 = 0) ENTAO
ESCREVA(“MÚLTIPLO DE 2!”);
SENAO
SE (NÚMERO MOD 5 = 0) ENTAO
ESCREVA(“MÚLTIPLO DE 5!”);
SENAO
ESCREVA(“NÃO É MÚLTIPLO DE 10,. DE 5 OU DE 2!”);
FIMSE
FIMSE
FIMSE
FIM
14. Faça um algoritmo que receba o nome, o sexo e a idade de uma pessoa. Se a pessoa for do
sexo feminino e tiver menos que 25 anos, escrever o nome e a mensagem: ACEITA. Caso
contrário, escrever o nome e a mensagem: NÃO ACEITA.
INICIO
IDADE: INTEIRO;
NOME, SEXO: CARACTER;
ESCREVA(“INFORME UM NOME: ”);
LEIA(NOME);
ESCREVA(“INFORME O SEXO: ”);
LEIA(SEXO);
ESCREVA(“INFORME A IDADE: ”);
LEIA(IDADE);
SE ((SEXO = FEMININO OU SEXO=F) E (IDADE < 25)) ENTAO
ESCREVA(NOME, “ACEITA”);
SENAO
ESCREVA(NOME, “NÃO ACEITA”);
FIMSE
FIM
15. Faça um algoritmo que receba três números que devem ser armazenados em três variáveis
com os seguintes nomes: MAIOR, INTERMEDIÁRIO, MENOR (suponha três números
diferentes).
INICIO
A, B, C, MAIOR, INTERMEDIARIO, MENOR: REAL;
ESCREVA(“DIGITE O 1O NÚMERO: ”);
LEIA(A);
ESCREVA(“DIGITE O 2O NÚMERO: ”);
LEIA(B);
ESCREVA(“DIGITE O 3O NÚMERO: ”);
LEIA(C);
SE (A > B) ENTAO
SE (C > A) ENTAO
MAIOR <- C;
INTERMEDIARIO <- A;
MENOR <- B;
SENAO
SE (C > B) ENTAO
MAIOR <- A;
INTERMEDIARIO <- C;
MENOR <- B;
SENAO
MAIOR <- A;
INTERMEDIARIO <- B;
MENOR <- C;
FIMSE
FIMSE
SENAO
SE (C > A) ENTAO
MAIOR <- C;
INTERMEDIARIO <- B;
MENOR <- A;
SENAO
MAIOR <- B;
INTERMEDIARIO <- A;
MENOR <- C;
FIMSE
FIMSE
ESCREVA(“MAIOR :”, MAIOR);
ESCREVA(“INTERMEDIÁRIO :”, INTERMEDIARIO);
ESCREVA(“MENOR :”, MENOR);
FIM.
Download

UNIVERSIDADE ESTADUAL VALE DO ACARAÚ