13
Lógica de Programação 1 http://erinaldosn.wordpress.com Estruturas de Repetição O conceito de repetição (looping) é utilizando quando se deseja repetir certo trecho de instruções por um número de vezes. O número de repetições pode ser conhecido antes ou não, mas, necessariamente, precisa ser finito. Estrutura de repetição com variável de controle: Para Essa estrutura de repetição é utilizada quando se sabe o número de vezes em que um trecho do algoritmo deve ser repetido. A estrutura de repetição para utiliza variáveis de controle que definem exatamente o número de vezes que a sequência de instruções será executada. Na própria sintaxe da estrutura de repetição a variável de controle é inicializada e seu valor máximo e o incremento que deverá sofrer também são estabelecidos. Pseudocódigo PARA i ← valor inicial ATÉ valor final FAÇA Comando1 O comando1 será executado utilizando a variável i como controle, cujo conteúdo vai variar do valor inicial até o valor final, de 1 em 1, incrementando automaticamente. PARA j ← valor inicial ATÉ valor final FAÇA INÍCIO Comando1 Comando2 FIM Os comando1 e comando2 serão executados utilizando a variável j como controle, cujo conteúdo vai variar do valor inicial até o valor final, de 1 em 1, incrementando automaticamente. PARA i ← 1 ATÉ 10 FAÇA Comando1 O comando1 será executado dez vezes. Exemplo: ler 850 números fornecidos pelo usuário, calcular e exibir a média entre eles. ALGORITMO EX_PARA DECLARE SOMA, NUM, MEDIA : REAL; CONT : INTEIRO; INÍCIO SOMA ← 0; PARA CONT ← 1 ATÉ 850 FAÇA INÍCIO LEIA(NUM); SOMA ← SOMA + NUM; FIM; MEDIA ← SOMA / CONT; ESCREVA(“MÉDIA = ”, MEDIA); FIM. CONT variável de controle (contador); 1 valor inicial da variável de controle 850 valor final da variável de controle (o contador variará de 1 até 850, ou seja, cont >= 1 e cont <= 850); O incremento acrescerá a variável de controle cada vez que o loop acontecer.

Estruturas de Repetição - Tecnologia da Informação | Profº … · 2012-07-25 · Lógica de Programação – 1 ... porcentagem fixa correspondente ao plano de saúde que é

Embed Size (px)

Citation preview

Lógica de Programação – 1

http://erinaldosn.wordpress.com

Estruturas de Repetição

O conceito de repetição (looping) é utilizando quando se deseja repetir certo

trecho de instruções por um número de vezes. O número de repetições pode ser

conhecido antes ou não, mas, necessariamente, precisa ser finito.

Estrutura de repetição com variável de controle: Para Essa estrutura de repetição é utilizada quando se sabe o número de vezes em que

um trecho do algoritmo deve ser repetido.

A estrutura de repetição para utiliza variáveis de controle que definem

exatamente o número de vezes que a sequência de instruções será executada. Na própria

sintaxe da estrutura de repetição a variável de controle é inicializada e seu valor máximo

e o incremento que deverá sofrer também são estabelecidos.

Pseudocódigo PARA i ← valor inicial ATÉ valor final FAÇA

Comando1

O comando1 será executado utilizando a variável i como controle, cujo

conteúdo vai variar do valor inicial até o valor final, de 1 em 1, incrementando

automaticamente. PARA j ← valor inicial ATÉ valor final FAÇA

INÍCIO

Comando1

Comando2

FIM

Os comando1 e comando2 serão executados utilizando a variável j como

controle, cujo conteúdo vai variar do valor inicial até o valor final, de 1 em 1,

incrementando automaticamente. PARA i ← 1 ATÉ 10 FAÇA

Comando1

O comando1 será executado dez vezes.

Exemplo: ler 850 números fornecidos pelo usuário, calcular e exibir a média entre eles. ALGORITMO EX_PARA

DECLARE

SOMA, NUM, MEDIA : REAL;

CONT : INTEIRO;

INÍCIO

SOMA ← 0;

PARA CONT ← 1 ATÉ 850 FAÇA

INÍCIO

LEIA(NUM);

SOMA ← SOMA + NUM;

FIM;

MEDIA ← SOMA / CONT;

ESCREVA(“MÉDIA = ”, MEDIA);

FIM.

CONT – variável de controle (contador);

1 – valor inicial da variável de controle

850 – valor final da variável de controle (o contador variará de 1 até 850, ou seja,

cont >= 1 e cont <= 850);

O incremento acrescerá a variável de controle cada vez que o loop acontecer.

2 – Estruturas de Repetição

http://erinaldosn.wordpress.com

Fluxograma

Estrutura de repetição com teste no início: Enquanto Essa estrutura de repetição é utilizada quando não se sabe o número de vezes em

que um trecho do algoritmo deve ser repetido, embora também possa ser utilizada

quando se sabe esse número.

Existem situações em que o teste condicional da estrutura de repetição, que fica

no início, resulta em um valor falso logo na primeira comparação. Nesses casos, os

comandos de dentro da estrutura de repetição não serão executados.

Na estrutura enquanto, a condição de repetição é verificada antes de entrar no

laço, isto é, uma condição é testada inicialmente e, se o resultado for verdadeiro, o bloco

de instruções será executado.

Pseudocódigo ENQUANTO condição FAÇA

Comando1

Enquanto a condição for verdadeira, o comando1 será executado. ENQUANTO condição FAÇA

INÍCIO

Comando1

Comando2

Comando3

FIM

Enquanto a condição for verdadeira, os comando1, comando2 e comando3 serão

executados.

Exemplo 1: X ← 1;

Y ← 5;

ENQUANTO X < Y FAÇA

INÍCIO

X ← X + 2;

Y ← Y + 1;

FIM;

Início

SOMA ← 0

CONT ← 1,

850

NUM

SOMA ← SOMA + NUM

MEDIA ← SOMA / NUM

“MÉDIA = ”, MEDIA

Fim

Lógica de Programação – 3

http://erinaldosn.wordpress.com

Simulação:

X Y

1 5 Valores iniciais

3

5

7

9

6

7

8

9

Valores obtidos dentro da estrutura de repetição

No trecho do algoritmo anterior, os comandos que se localizam dentro da

estrutura de repetição serão repetidos quatro vezes.

Exemplo 2: Ler 850 números fornecidos pelo usuário, calcular e exibir a média entre

eles. ALGORITMO EX_ENQUANTO

DECLARE

SOMA, NUM, MEDIA : REAL;

CONT : INTEIRO;

INÍCIO

SOMA ← 0;

CONT ← 0;

ENQUANTO (CONT < 850) FAÇA

INÍCIO

LEIA(NUM);

SOMA ← SOMA + NUM;

CONT ← CONT + 1;

FIM;

MEDIA ← SOMA / CONT;

ESCREVA(“MÉDIA = ”, MEDIA);

FIM.

A variável cont tem a função de contar o número de vezes que as instruções

dentro do laço serão repetidas. A variável soma tem a função de acumular todos os

valores atribuídos à variável num.

Fluxograma

Simulação:

.F.

.V.

Início

SOMA ← 0 CONT ← 0

CONT < 850

NUM

SOMA ← SOMA + NUM

CONT ← CONT+1

MEDIA ← SOMA / NUM

“MÉDIA = ”, MEDIA

Fim

4 – Estruturas de Repetição

http://erinaldosn.wordpress.com

Volta SOMA CONT NUM SOMA = SOMA +

NUM

CONT = CONT

+ 1

1 0 0 3 0 + 3 = 3 0 +1 = 1

2 3 1 1 3 + 1 = 4 1 + 1 = 2

3 4 2 13 4 + 13 = 17 2 + 1 = 3

4 17 3 77 17 + 77 = 94 3 + 1 = 4

Estrutura de repetição com teste no fim: Repita Essa estrutura de repetição é utilizada quando não se sabe o número de vezes em

que um trecho do algoritmo deve ser repetido, embora também possa ser utilizada

quando se sabe esse número.

A diferença entre a estrutura ENQUANTO e a estrutura REPITA é que na

estrutura REPITA os comandos serão repetidos pelo menos uma vez, já que a condição

se encontra no final.

A estrutura de repetição com teste no fim permite que um ou mais comandos

sejam executados repetidamente até uma condição específica tornar-se verdadeira.

Pseudocódigo REPITA

Comandos

ATÉ condição

Repita os comandos até a condição se tornar verdadeira.

Exemplo 1: X ← 1;

Y ← 5;

REPITA

X ← X + 2

Y ← Y + 1

ATÉ X >= Y

Simulação:

X Y

1 5 Valores iniciais

3

5

7

9

6

7

8

9

Valores obtidos dentro da estrutura de repetição

Exemplo 2: Ler 850 números fornecidos pelo usuário, calcular e exibir a média entre

eles. ALGORITMO EX_REPITA

DECLARE

SOMA, NUM, MEDIA : REAL;

CONT : INTEIRO;

INÍCIO

SOMA ← 0;

CONT ← 0;

REPITA

LEIA (NUM);

SOMA ← SOMA + NUM;

CONT ← CONT + 1;

ATÉ CONT >= 850

MEDIA ← SOMA / CONT;

Lógica de Programação – 5

http://erinaldosn.wordpress.com

ESCREVA (“MÉDIA = ”, MEDIA);

FIM.

Exemplo 3: a cada iteração pergunta-se ao usuário se deseja continuar. Com base na

resposta, a condição estabelecida é testada. ENQUANTO (RESPOSTA = “SIM”) FAÇA

INÍCIO

<instruções>;

ESCREVA(“DESEJA CONTINUAR?”);

LEIA(RESPOSTA);

FIM;

É importante padronizar a leitura da resposta, pois sim é diferente de SIM, ou

seja, existe diferenciação entre maiúsculas e minúsculas.

Fluxograma

Exercícios Deverão ser feitos o pseudocódigo, o fluxograma e o programa em uma linguagem de

programação para os enunciados a seguir:

1. Pedro tem 1,50 metro e cresce 2 centímetros por ano, e Lucas tem 1,10 metro e

cresce 3 centímetros por ano. Calcule e imprima quantos anos serão necessários para

que:

a) Lucas e Pedro tenham o mesmo tamanho;

b) Lucas seja maior que Pedro.

2. A empresa JS Recrutamento e Seleção Ltda. faz recrutamento e seleção de

funcionários para várias empresas em diversos ramos de atuação. Atende em média

30 candidatos por dia, mas esse valor aumento quando faz divulgação de vagas. Para

facilitar o trabalho de identificação do perfil dos candidatos que se inscrevem para

as vagas, resolveu fazer um programa para registrar alguns dados para obter as

informações a seguir:

Número de candidatos do sexo feminino;

.F.

.V.

Início

SOMA ← 0 CONT ← 0

CONT >= 850

NUM

SOMA ← SOMA + NUM

CONT ← CONT+1

MEDIA ← SOMA / NUM

“MÉDIA = ”, MEDIA

Fim

6 – Estruturas de Repetição

http://erinaldosn.wordpress.com

Número de candidatos do sexo masculino;

Idade média dos homens;

Idade média das mulheres com experiência;

Porcentagem dos homens entre 35 e 45 anos entre o total dos homens;

Menor idade entre as mulheres que já têm experiência no serviço;

Nível de escolaridade dos candidatos entre: ensino fundamental, ensino médio,

graduação e pós-graduação.

Calcule as informações solicitadas anteriormente, sabendo que a cada iteração

deverá ser perguntado ao usuário se deseja cadastrar outro candidato. Quando a

resposta for negativa, os resultados deverão ser apresentados.

3. Faça a tabuada de um número e represente o resultado de acordo com o modelo a

seguir, sabendo que o multiplicando deverá ser fornecido pelo usuário, assim como

a quantidade de iterações.

4. Dada a sequência de Fibonacci 1 1 2 3 5 8 13 ... n, gere a sequência até o enésimo

termo, o qual deverá ser fornecido pelo usuário.

5. Dada uma faixa d valores, cujo valor inicial e o valor final deverão ser fornecidos

pelo usuário, identifique;

a) A quantidade de números inteiros e positivos;

b) A quantidade de números pares;

c) A quantidade de números ímpares;

d) A quantidade de números ímpares divisíveis por 3 e 4 ao mesmo tempo;

e) A respectiva média para cada um dos itens.

6. A empresa PowerSoftware Ltda. possuía 32 funcionários até o ano passado, e a sua

folha de pagamento era calculada anualmente. Ocorre que neste ano a empresa teve

um grande crescimento e saltou para 58 funcionários com previsão de novas

contratações. Dessa maneira, fazer a folha de pagamento manualmente tornou-se

inviável. Para cada funcionário deverá ser lido seu salário e calculados os descontos

de imposto de renda e INSS que são variantes de acordo com a tabela a seguir e uma

porcentagem fixa correspondente ao plano de saúde que é de 4,5% do valor do

salário.

a) Calcule o valor total da folha de pagamento.

b) Calcule o valor do salário líquido de cada um dos 58 funcionários.

c) Calcule o valor total do imposto de renda que a empresa deverá recolher.

Veja as informações disponíveis no site da Receita da Fazenda, a tabela de alíquotas

do IRRF para o ano corrente e o desconto do INSS.

7. Leia uma quantidade desconhecida de números e conte quantos deles estão nos

seguintes intervalos:

a) 0 a 25,9

b) 26 a 50,9

c) 51 a 75,9

d) 76 a 100

A entrada de dados deve terminar quando for lido um número negativo.

8. Foi realizada uma pesquisa de algumas características físicas da população de certa

região, a qual coletou os seguintes dados referentes a cada habitante para serem

analisados:

a) Sexo (masculino e feminino);

b) Cor dos olhos (azuis, verdes ou castanhos);

c) Cor dos cabelos (louros, castanhos, pretos);

d) Idade;

e) Altura;

Lógica de Programação – 7

http://erinaldosn.wordpress.com

f) Peso.

Apresente a média da idade dos participantes, a média do peso e da altura de seus

habitantes, a porcentagem de pessoas do sexo feminino e a porcentagem de pessoas

do masculino. Quantas pessoas possuem olhos verdes e cabelos louros? A cada

iteração deverá ser perguntado ao usuário se deseja continuar ou não. Os resultados

deverão ser apresentados quando o usuário não desejar mais inserir dados.

9. Mostre os conceitos finais dos alunos de uma classe de 75 pessoas, considerando a

tabela a seguir.

Nota Conceito

de 0 a 2,9 E

de 3,0 a 4,9 D

de 5,0 a 6,9 C

de 7, a 8,9 B

de 9,0 a 10,0 A

Para isso, a nota final e o código do aluno deverão ser fornecidos pelo usuário. Ao

final do programa, apresente a quantidade de alunos e a média de nota alcançada

para cada conceito.

10. Leia um valor n inteiro e positivo e calcule e escreva o fatorial de n(n!).

11. Um funcionário de uma empresa recebe aumento salarial anualmente. Sabe-se que:

a) Esse funcionário foi contratado em 2005, com salário inicial de R$ 1.000,00;

b) Em 2006 recebeu aumento de 1,5% sobre seu salário inicial;

c) A partir de 2007 (inclusive) os aumentos salariais sempre correspondem ao

dobro do percentual do ano anterior.

Determine o salário atual desse funcionário.

12. Leia um número N e que indique quantos valores inteiros e positivos devem ser

lidos a seguir. Para cada número lido, mostre uma tabela contendo o valor lido e o

fatorial desse valor.

13. Leia cinco pares de valores (a, b), todos inteiros e positivos, um de cada vez. Mostre

os números inteiros pares de a até b (inclusive).

14. Leia dez conjuntos de dois valores, o primeiro representando o número do aluno e o

segundo representando a sua altura em centímetros. Encontre o aluno mais alto e o

mais baixo. Mostre o número do aluno mais alto e o número do mais baixo, junto

com suas alturas.

15. Foi feito uma estatística em cinco cidades brasileiras para coletar dados sobre

acidentes de trânsito. Foram obtidos os seguintes dados:

Deseja-se sabe:

a) Qual o maior e o menor índice de acidentes de trânsito e a que cidades

pertencem;

b) Qual a média de veículos nas cinco cidades juntas;

c) Qual a média de acidentes de trânsito nas cidades com menos de 2000 veículos

de passeio.

16. Leia o número de termos e um valor positivo para X, calcule e mostre o valor da

série a seguir:

17. Uma empresa possui dez funcionários com as seguintes características: código,

número de horas trabalhadas no mês, turno de trabalho (M – Matutino, V –

Vespertino ou N – Noturno), categoria (O – Operário ou G – Gerente), valor da hora

trabalhada. Sabendo-se que essa empresa deseja informatizar sua folha de

pagamento, faça um programa que:

8 – Estruturas de Repetição

http://erinaldosn.wordpress.com

a) Leia as informações dos funcionários, exceto o valor da hora trabalhada, não

permitindo que sejam informados turnos nem categorias inexistentes. Trabalhar

sempre com a digitar de letras em maiúsculas.

b) Calcule o valor da hora trabalhada, conforme a tabela a seguir:

Categoria Turno Valor da hora trabalhada

G N 18% do salário mínimo

G M ou V 15% do salário mínimo

O N 13% do salário mínimo

O M ou V 10% do salário mínimo

Adote o valor corrente do salário mínimo.

c) Calcule o salário inicial dos funcionários com base no valor da hora trabalhada e

no número de horas trabalhadas.

d) Calcule o valor do auxílio-alimentação recebido por funcionário de acordo com

o seu salário inicial, conforme a tabela a seguir:

Salário inicial Auxílio-alimentação

Até R$ 1080,00 20% do salário inicial

Entre R$ 1080,00 e R$ 2160,00 15% do salário inicial

Acima de R$ 2160,00 5% do salário inicial

e) Mostre o código, número de horas trabalhadas, valor da hora trabalhada, salário

inicial, auxílio-alimentação e o salário final (salário inicial + auxílio-

alimentação).

18. Uma empresa contratou 15 funcionários temporários. De acordo com o valor das

vendas mensais os funcionários adquirem pontos que determinarão seus salários ao

final de cada mês. Sabe-se que esses funcionários trabalharão nos meses de

novembro a janeiro do ano subsequente.

a) Leia as pontuações nos três meses de cada funcionário.

b) Calcule e mostre a pontuação geral de cada funcionário nos três meses.

c) Calcule e mostre a média das pontuações de cada funcionário nos três meses.

d) Determine e mostre a maior pontuação atingida entre todos os funcionários nos

três meses.

19. Monte os oito primeiros termos da sequência de Fibonacci. 0 – 1 – 1 2 – 3 – 5 – 8 – 13 – 21 – 34 – 55 - ...

20. Leia o número de termos, determine e mostre os valores de acordo com a série

abaixo: Série = 2, 7, 3, 4, 21, 12, 8, 63, 48, 16, 189, 192, 32, 567, 768,64, ...

21. Receba o valor de X e o número de termos desejados. Calcule e mostre o valor da

seguinte sequência:

22. Receba duas notas de seis alunos, calcule e mostre:

A média aritmética das duas notas de cada aluno.

A mensagem que está na tabela a seguir:

Média aritmética Mensagem

Até 3,0 Reprovado

Entre 3,0 e 7,0 Exame

Acima de 7,0 Aprovado

O total de alunos aprovados.

O total de alunos de exame.

O total de alunos reprovados.

Lógica de Programação – 9

http://erinaldosn.wordpress.com

A média da classe.

23. Calcule a soma dos primeiros 50 números pares. Esse programa não recebe valor do

teclado. Os primeiros números pares são: 2, 4, 6, ...

24. Em um campeonato de futebol existem cinco times e cada time possui onze

jogadores. Receba a idade, o peso e a altura de cada um dos jogadores, calcule e

mostre:

A quantidade de jogadores com idade inferior a 18 anos.

A média das idades dos jogadores de cada time.

A média das alturas de todos os jogadores do campeonato.

A percentagem de jogadores com mais de 80 quilos entre todos os jogadores do

campeonato.

25. Receba dois números. Calcule e mostre:

A soma dos números pares desse intervalo de números, incluindo os números

digitados.

A multiplicação dos números ímpares desse intervalo de números, incluindo os

números digitados.

26. Receba dois números. Calcule e mostre:

a) Caso os números forem um intervalo crescente, a média dos números do

intervalo, incluindo os números digitados.

b) Caso os números formem um intervalo decrescente, a quantidade de números

pares, incluindo os números digitados.

c) Se os números forem iguais, mostrar uma mensagem.

27. Receba um número inteiro maior que 1 e verifique se o número fornecido é primo

ou não. Mostrar mensagem de número primo ou de número não primo. OBS.: um número é primo quando é divisível apenas pelo número um e por ele mesmo.

28. Tem-se um conjunto de dados contendo a altura e o sexo (M ou F) de 15 pessoas.

Calcule e mostre:

A maior e a menor altura do grupo.

A média de altura das mulheres.

O número de homens.

O sexo da pessoa mais alta.

29. A conversão de graus Fahrenheit para Celsius é obtida por C = 5 / 9 (F –

32). Calcule e escreva uma tabela de graus Celsius e graus Fahrenheit, cujos graus

variem de 50 a 65 de 1 em 1.

30. Em uma fábrica trabalham homens e mulheres divididos em três classes:

Trabalhadores que fazem até 30 peças por mês – classe 1.

Trabalhadores que fazem de 31 a 35 peças por mês – classe 2.

Trabalhadores que fazem mais de 35 peças por mês – classe 3.

A classe 1 recebe salário mínimo. A classe 2 recebe salário mínimo mais 3% do

salário mínimo por peça acima das 30 peças iniciais. A classe 3 recebe salário

mínimo mais 5% do salário mínimo por peça, acima das 30 peças iniciais.

Receba o número do operário, o número de peças fabricadas no mês, o sexo do

operário, e também calcule e mostre:

O número do operário e seu salário.

O total da folha de pagamento da fábrica.

O número total de peças fabricadas no mês.

A média de peças fabricadas pelos homens.

A média de peças fabricadas pelas mulheres.

O número do operário ou operária de maior salário.

10 – Estruturas de Repetição

http://erinaldosn.wordpress.com

A fábrica possui 15 operários.

31. Foi feito uma pesquisa para determinar o índice de mortalidade infantil em um certo

período.

Leia o número de crianças nascidas no período.

O sexo (M ou F) e o tempo de vida para cada criança nascida.

Calcule e mostre:

A percentagem de crianças do sexo feminino mortas no período.

A percentagem de crianças do sexo masculino mortas no período.

A percentagem de crianças que viveram 24 meses ou menos no período.

32. Receba o valor de uma dívida e mostre uma tabela com os seguintes dados: valor da

dívida, valor dos juros, quantidade de parcelas e valor da parcela.

Os juros e a quantidade de parcelas seguem a tabela abaixo:

Quantidade

de parcelas

% de juros sobre o

valor inicial da dívida

1 0

3 10

6 15

9 20

12 25

Exemplos de saída:

Valor da dívida Valor dos juros Quantidade

de parcelas

Valor da parcela

R$ 1.000,00 0 1 R$ 1.000,00

R$ 1.100,00 100 3 R$ 366,67

R$ 1.150,00 150 6 R$ 191,67

33. Receba o valor unitário, a refrigeração (S para os produtos que necessitem de

refrigeração e N para os produtos que não necessitem de refrigeração) e a categoria

(A – alimentação, L – limpeza e V – vestuário) de 12 produtos. Calcule e mostre:

O custo de estocagem calculado de acordo com a tabela a seguir:

Valor unitário Refrigeração Categoria Custo de estocagem

Até R$ 20,00

A

L

V

R$ 2,00

R$ 3,00

R$ 4,00

Entre R$ 20,00

e R$ 50,00 (inclusive)

S

N

R$ 6,00

R$ 0,00

Maior que R$ 50,00

S

A

L

V

R$ 5,00

R$ 2,00

R$ 4,00

N A ou V

L

R$ 0,00

R$ 1,00

O imposto calculado de acordo com as regras a seguir:

Se o produto não preencher nenhum dos requisitos abaixo, seu imposto será de

2% sobre o preço unitário; caso contrário, será de 4%.

Os requisitos são: Categoria – A e Refrigeração – S.

O preço final calculado observando as informações anteriores;

A classificação calculada usando a tabela a seguir:

Preço final Classificação

Até R$ 20,00 Barato

Entre R$ 20,00 e R$ 100,00 Normal

Lógica de Programação – 11

http://erinaldosn.wordpress.com

Preço final Classificação

Acima de R$ 100,00 Caro

A média dos valores adicionais:

O maior preço final.

O menor preço final.

O total dos impostos.

A quantidade de produtos com classificação Barato.

A quantidade de produtos com classificação Caro.

A quantidade de produtos com classificação Normal.

34. Leia uma quantidade indeterminada de números positivos e conte quantos deles

estão nos seguintes intervalos: [0-25], [26-50], [51-75] e [76-100]. A entrada de

dados deverá terminar quando for lido um número negativo.

35. Determine e mostre os cinco primeiros múltiplos de 3, considerando números

maiores que zero.

36. O cardápio de uma lanchonete é o seguinte:

Descrição Código Preço

Cachorro quente 100 R$ 1,50

Bauru simples 101 R$ 1,80

Bauru com ovo 102 R$ 2,00

Hamburger 103 R$ 1,50

Cheeseburger 104 R$ 2,00

Refrigerante 105 R$ 1,80

Leia o código dos itens pedidos e as quantidades desejadas. Calcule e mostre o valor

a ser pago por item (preço*quantidade) e o total geral do pedido. Considere que o

cliente deve informar quando o pedido deve ser encerrado.

37. Receba o salário de um funcionário chamado Carlos. Sabe-se que o funcionário João

tem um salário equivalente a um terço do salário de Carlos. Carlos aplicará seu

salário integralmente na caderneta de poupança, que está rendendo 2% ao mês e

João aplicará seu salário integralmente no fundo de renda fixa, que está rendendo

5% ao mês. Calcule e mostre a quantidade de meses necessários para que o valor

pertencente a João iguale ou ultrapasse o valor pertencente a Carlos.

38. Leia um conjunto não determinado de valores, um de cada vez, e escreva uma tabela

com cabeçalho, que deve ser repetido a cada 20 linhas. A tabela deverá conter o

valor lido, seu quadrado, seu cubo e sua raiz quadrada. Finalizar a entrada de dados

com um valor negativo ou zero.

39. Leia dois valores inteiros e positivos, X e Y, e calcule e mostre a potência XY,

utilizando uma estrutura de repetição.

40. Leia o código, o sexo (M – masculino, F – feminino) e o número de horas/aula

dadas mensalmente pelos professores de uma universidade, sabendo-se que cada

hora/aula vale R$ 18,50. Emita uma listagem contendo o código, o salário bruto e o

salário líquido (levando em consideração os descontos da tabela do IRRF e INSS)

de todos os professores lidos. Mostre também a média dos salários líquidos dos

professores do sexo masculino e a média dos salários brutos dos professores do sexo

feminino. Considere que as informações terminarão quando for lido o código =

99999.

41. Os motoristas se preocupam com a quilometragem dos seus automóveis. Um

motorista monitorou vários tanques cheios de gasolina registrando a quilometragem

dirigida e a quantidade de combustível em litros utilizados para cada tanque cheio.

Desenvolva um aplicativo que receba como entrada os quilômetros dirigidos e os

litros de gasolina consumidos (ambos inteiros) para cada tanque cheio. O programa

12 – Estruturas de Repetição

http://erinaldosn.wordpress.com

deve calcular e exibir o consumo em quilômetros/litro para cada tanque cheio e

imprimir a quilometragem combinada e a soma total de litros de combustível

consumidos até esse ponto. Todos os cálculos de média devem produzir resultados

de ponto flutuante.

42. Desenvolva um programa que determinará se um cliente de uma loja de

departamentos excedeu o limite de crédito em uma conta-corrente. Para cada cliente,

os seguintes fatos estão disoníveis:

a) Número da conta

b) Saldo no início do mês

c) Total de todos os itens cobrados desse cliente no mês

d) Total de créditos aplicados ao cliente no mês

e) Limite de crédito autorizado

O programa deve inserir todos esses fatos como inteiros, calcular o novo saldo

(saldo inicial + despesas – créditos), exibir o novo saldo e determinar se o novo

saldo excede o limite de crédito do cliente. Para aqueles clientes cujo limite de

crédito for excedido, o programa deve exibir a mensagem “Limite de crédito

excedido”.

43. Uma grande empresa para seu pessoal de vendas com base em comissões. O pessoal

de vendas recebe R$ 200,00 por semana mais 9% de suas vendas brutas durante essa

semana. Por exemplo, um vendedor que realiza um total de vendas de mercadorias

de R$ 5.000,00 em uma semana, recebe R$ 200,0 mais 9% de R$ 5.000,00 ou um

total de R$ 650,00. Foi-lhe fornecida uma lista dos itens vendidos por cada

vendedor. Os valores desses itens são:

Item Valor

1 R$ 239,99

2 R$ 129,75

3 R$ 99,95

4 R$ 350,89

Desenvolva um programa que receba a entrada de itens vendidos por um vendedor

durante a última semana, calcule e exiba os rendimentos do vendedor. Não há

limites quanto ao número de itens podem ser vendidos por um mesmo vendedor.

44. Escreva um aplicativo que leia cinco números entre 1 e 30. Para cada número que é

lido o programa deve exibir o mesmo número de asteriscos adjacentes.

45. Uma empresa faz negócios por reembolso postal vende cinco produtos cujos preços

de varejo são como segue:

Produto Preço

1 R$ 2,98

2 R$ 4,50

3 R$ 9,98

4 R$ 4,49

5 R$ 6,87

Escreva um aplicativo que leia uma série de pares de números como segue:

a) Número do produto

b) Quantidade vendida

O programa deve calcular e exibir o valor de varejo total de todos os produtos

vendidos. Faça um loop controlado para determinar quando o programa deve parar o

loop e exibir os resultados finais.

Lógica de Programação – 13

http://erinaldosn.wordpress.com

Bibliografia Fundamentos da Programação de Computadores

Ana Fernanda Gomes Ascencio, Edilene Aparecida Veneruchi de Campos

São Paulo: Pearson Prentice Hall

Lógica de programação e estrutura de dados, com aplicações em Java

Sandra Puga, Gerson Rissetti

São Paulo: Pearson Prentice Hall, 2009

Programando com Pascal

Jaime Evaristo

São Paulo: Book Express, 2002

Algoritmos e Programação

Ricardo Reis Pereira, Jerffeson Teixeira de Souza, Jeandro de Mesquita Bezerra

Fortaleza: RDS, 2009