Oficina de Programação – CI066 – 2018-2
Oficina de Programação – CI066 – 2018-2
Lista de Exercícios 03 – Desvio do Fluxo de Execução - Parte B
Exercício 01
A Caixa Econômica Federal, CEF, concederá um crédito especial a seus clientes de acordo com o saldo médios de suas cadernetas de poupança.
Codifique um programa que leia o saldo médio referente à caderneta de poupança de um cliente e calcule o valor do crédito de acordo com a tabela abaixo. A seguir o programa imprime uma mensagem textual informando se o crédito pode ser concedido, o saldo médio e, quando for concedido, o valor do crédito.
Xxxxx Xxxxx (R$) | Percentual do Crédito |
de 0 a 500 | nenhum crédito |
de 501 a 1000 | 30 % do valor do saldo médio |
de 1001 a 3000 | 40 % do valor do saldo médio |
acima de 3000 | 50 % do valor do saldo médio |
A seguir, duas ilustrações de execuções do programa.
Execução 1 Entrada
SALDO MÉDIO DO CLIENTE (POUPANÇA – R$): 499.50
Saída
O CRÉDITO NÃO PODE SER CONCEDIDO ! SALDO MÉDIO: R$ 499.50
Execução 2 Entrada
SALDO MÉDIO DO CLIENTE (POUPANÇA – R$): 1560.89
Saída
O CRÉDITO PODE SER CONCEDIDO ! SALDO MÉDIO: R$ 1560.89
VALOR DO CRÉDITO: R$ 624.356
Exercício 02
Codifique um programa que leia a idade de uma pessoa e determine sua classificação de acordo com a tabela abaixo. O programa imprime a classificação dessa pessoa.
Intervalo de Idade | Classificação |
de 0 a 8 | Pessoa na infância |
de 9 a 13 | Pessoa na pré-adolescência |
de 14 a 17 | Pessoa na adolescência |
de 18 a 65 | Pessoa adulta |
acima de 65 | Pessoa idosa |
A seguir, uma ilustração da execução do programa.
Entrada
QUAL A IDADE DA PESSOA?: 19
Saída
PESSOA ADULTA
Exercício 03
A classe eleitoral de uma pessoa é determinada por sua idade, conforme a
tabela:
Idade (anos) | Classificação |
menor que 16 | Não é eleitor |
de 16 a 17 | Eleitor facultativo |
de 18 a 65 | Eleitor obrigatório |
acima de 65 | Eleitor facultativo |
Codifique um programa que leia a idade de uma pessoa e imprima a sua classificação eleitoral. A seguir, uma ilustração da execução do programa.
Entrada
QUAL A IDADE DA PESSOA?: 17
Saída
ELEITOR FACULTATIVO
Exercício 04
A confederação brasileira de natação promoverá as eliminatórias para seleção de atletas para o próximo mundial. A federação utiliza a seguinte tabela para determinação das categorias:
Idade (anos) | Categoria |
menor que 4 | Não pode competir |
de 5 a 7 | Infantil A |
de 8 a 10 | Infantil B |
de 11 a 13 | Juvenil A |
de 14 a 17 | Juvenil B |
de 18 a 35 | Adulto |
acima de 36 | Sênior |
Codifique um programa que leia a idade de uma pessoa e imprima a sua categoria como atleta. A seguir, uma ilustração da execução do programa.
Entrada
QUAL A IDADE DA PESSOA?: 16
Saída
CATEGORIA: JUVENIL B
Exercício 05
O Plano de Saúde das Organizações Jurubeba atende seus clientes com mensalidades coerentes com os índices inflacionários. Seus vendedores utilizam a tabela abaixo para o valor das mensalidades:
Idade (anos) | Valor da Mensalidade |
menor que 10 | 5 % do S. M. |
de 10 a 29 | 10 % do S. M. |
de 30 a 45 | 15 % do S. M. |
de 46 a 60 | 20 % do S. M. |
de 61 a 75 | 30 % do S. M. |
de 76 a 80 | 35 % do S. M. |
acima de 80 | 40 % do S. M. |
OBS.: considere R$ 622,00 o valor do Salário Mínimo (S. M.).
Codifique um programa que leia a idade de uma pessoa e imprima o valor da mensalidade do plano de saúde. A seguir, uma ilustração da execução do programa.
Entrada
QUAL A IDADE DA PESSOA?: 32
Saída
PLANO DE SAÚDE – ORGANIZAÇÕES JURUBEBA VALOR DA MENSALIDADE: R$ 93.3
Exercício 06
Codifique um programa que faça a leitura de duas notas bimestrais de um aluno. Cada nota bimestral está no intervalo de zero a dez. O programa determina a média semestral desse aluno e informa a situação do aluno, ou seja, se foi “APROVADO”, “REPROVADO” ou está em “RECUPERAÇÃO”. Utilize a tabela para informar a situação do aluno:
Nota | Situação |
menor que 3 | REPROVADO |
de 3.1 a 6.9 | RECUPERAÇÃO |
acima de 7.0 | APROVADO |
A seguir, uma ilustração da execução do programa.
Entrada
PRIMEIRA NOTA BIMESTRAL: 7.21 SEGUNDA NOTA BIMESTRAL: 8.89
Saída
MEDIA SEMESTRAL: 8.05 SITUAÇÃO DO ALUNO: APROVADO
Exercício 07
Na lojinha do Sr. Aboo encontramos produtos de informática com preços especiais. Mas o Sr. Xxxx segue uma receita de seus antepassados para acrescentar uma porcentagem sobre o valor de custo do produto, garantindo assim, a estabilidade financeira das futuras gerações de sua família. A tabela abaixo, feita pelo avô do Sr. Aboo, descreve o valor do lucro de um produto, considerando o valor de compra do mesmo:
Valor de Compra (R$) | Valor de Venda (R$) |
valor < 10.00 | Lucro de 70 % |
10.00 ≤ valor < 30.00 | Lucro de 50 % |
30.00 ≤ valor < 50.00 | Lucro de 40 % |
valor ≥ 50.00 | Lucro de 30 % |
Para auxiliar o Sr. Aboo, codifique um programa que leia o valor da compra de um produto de informática e imprima a porcentagem do lucro e o valor da venda. Abaixo, uma ilustração da execução do programa.
Entrada
LOJINHA DO SR. ABOO
DIGITE O VALOR DA COMPRA (R$): 35.88
Saída
LOJINHA DO SR. ABOO – LUCRANDO ! PORCENTAGEM DO LUCRO: 40 %
VALOR DA VENDA: R$ 50.232
Exercício 08
Codifique um programa que faça a leitura de três valores reais e verifique se estes valores representam os lados de um triângulo. O programa deve verificar existe um triângulo com estes lados e imprimir uma mensagem ao usuário informando o resultado. Para verificar a condição de existência de um triângulo, com lados A, B e C, qualquer lado deve ser menor que a soma dos outros dois, ou seja:
A < B + C e B < A + C e C < A + B
Abaixo, duas ilustrações de execuções do programa.
Execução 1 Entrada
CONDIÇÃO DE EXISTÊNCIA DE UM TRIÂNGULO DIGITE O VALOR DO LADO A: 1.25
DIGITE O VALOR DO LADO B: 2.35 DIGITE O VALOR DO LADO C: 1.25
Saída
OS VALORES 1.25, 2.35 E 1.25 REPRESENTAM OS LADOS DE UM TRIÂNGULO
Execução 2 Entrada
CONDIÇÃO DE EXISTÊNCIA DE UM TRIÂNGULO DIGITE O VALOR DO LADO A: 0.89
DIGITE O VALOR DO LADO B: 1.98 DIGITE O VALOR DO LADO C: 0.4
Saída
TRIÂNGULO INEXISTENTE !
OS VALORES 0.89, 1.98 E 0.4
NÃO REPRESENTAM OS LADOS DE UM TRIÂNGULO
Exercício 09
Aprimore o exercício anterior, 08, classificando um triângulo existente de acordo com seus lados, ou seja, se é equilátero, isósceles ou escaleno (é suficiente exibir apenas uma classificação do triangulo). Informe ao usuário quando o triângulo não existir. Abaixo, duas ilustrações de execuções do programa.
Execução 1 Entrada
CLASSIFICAÇÃO DE UM TRIÂNGULO - LADOS DIGITE O VALOR DO LADO A: 5
DIGITE O VALOR DO LADO B: 5 DIGITE O VALOR DO LADO C: 5
Saída
TRIÂNGULO EQUILÁTERO LADOS: 5, 5 E 5
Execução 2 Entrada
CLASSIFICAÇÃO DE UM TRIÂNGULO - LADOS DIGITE O VALOR DO LADO A: 4
DIGITE O VALOR DO LADO B: 1 DIGITE O VALOR DO LADO C: 1
Saída
TRIÂNGULO INEXISTENTE ! OS VALORES 4, 1 E 1
NÃO REPRESENTAM OS LADOS DE UM TRIÂNGULO
Exercício 10
Modifique o exercício 09 para classificar um triângulo de acordo com os valores de seus ângulos. Informe ao usuário quando o triângulo não existir.
Para um triângulo com os lados A, B e C, têm-se as classificações:
• Triangulo retângulo, se A2 = B2 + C2
• Triangulo obtusângulo, se A2 > B2 + C2
• Triangulo acutângulo, se A2 < B2 + C2
Abaixo, duas ilustrações de execuções do programa.
Execução 1 Entrada
CLASSIFICAÇÃO DE UM TRIÂNGULO - ÂNGULOS DIGITE O VALOR DO LADO A: 3
DIGITE O VALOR DO LADO B: 4 DIGITE O VALOR DO LADO C: 5
Saída
TRIÂNGULO RETÂNGULO LADOS: 3, 4 E 5
Execução 2 Entrada
CLASSIFICAÇÃO DE UM TRIÂNGULO - ÂNGULOS DIGITE O VALOR DO LADO A: 3
DIGITE O VALOR DO LADO B: 10 DIGITE O VALOR DO LADO C: 4
Saída
TRIÂNGULO INEXISTENTE ! OS VALORES 3, 10 E 4
NÃO REPRESENTAM OS LADOS DE UM TRIÂNGULO
Exercício 11
Codifique um programa que faça a leitura de três valores reais e verifique se estes valores representam os lados de um triângulo. Em caso afirmativo, e se também esse triângulo for um triângulo retângulo, calcular e imprimir os seus ângulos internos. Abaixo, duas ilustrações de execuções do programa.
Execução 1 Entrada
DIGITE O VALOR DO LADO A: 6 DIGITE O VALOR DO LADO B: 8 DIGITE O VALOR DO LADO C: 10
Saída
O TRIÂNGULO EXISTE
É UM TRIÂNGULO RETÂNGULO
VALOR DOS ÂNGULOS (GRAUS): 90, 54, 36
Execução 2 Entrada
DIGITE O VALOR DO LADO A: 5 DIGITE O VALOR DO LADO B: 8 DIGITE O VALOR DO LADO C: 1
Saída
TRIÂNGULO INEXISTENTE !
Exercício 12
Codifique um programa que calcule o valor de uma função f(x) de acordo com a seguinte definição:
f(x) =
1, se x ≤ 1
2, se 1 < x ≤ 2 x2, se 2 < x ≤ 3 x3, se x > 3
O programa solicita ao usuário o valor do argumento da função, x, e imprime o cálculo de f(x). Abaixo, duas ilustrações de execuções do programa.
Execução 1 Entrada
DIGITE O VALOR DE X: 1.25
Saída
O VALOR DE F(1.25) É IGUAL A 2
Execução 2 Entrada
DIGITE O VALOR DE X: 7.67
Saída
O VALOR DE F(7.67) É IGUAL A 451.21766
Exercício 13
Codifique um programa que calcule o valor de uma função f(x) de acordo com a seguinte definição:
f ( x )= 8
2− x
O programa solicita ao usuário o valor do argumento da função, x, e imprime o cálculo de f(x). Devem ser observados os valores válidos do domínio de f(x). Abaixo, duas ilustrações de execuções do programa.
Execução 1 Entrada
DIGITE O VALOR DE X: 2
Saída
O VALOR de X NÃO PERTENCE AO DOMÍNIO DE F(X)
Execução 2
Entrada
DIGITE O VALOR DE X: 4.69
Saída
O VALOR DE F(4.69) É IGUAL A - 2.9739777
Exercício 14
Codifique um programa que calcule o valor de uma função f(x) de acordo com a seguinte definição:
f ( x )= 5 x+3
√ x2 −16
O programa solicita ao usuário o valor do argumento da função, x, e imprime o cálculo de f(x). Devem ser observados os valores válidos do domínio de f(x). Abaixo, duas ilustrações de execuções do programa.
Execução 1 Entrada
DIGITE O VALOR DE X: 4
Saída
O VALOR de X NÃO PERTENCE AO DOMÍNIO DE F(X)
Execução 2 Entrada
DIGITE O VALOR DE X: 8.32
Saída
O VALOR DE F(8.32) É IGUAL A 6.1134678
Exercício 15
Codifique um programa para calcular as raízes de uma equação do segundo grau, a x2 + b x + c = 0. Os valores dos coeficientes devem ser lidos pelo teclado. Devem ser observadas as seguintes situações:
• a = 0, não se trata de uma equação do segundo grau;
• delta < 0, não existem raízes reais;
• delta > 0, existem duas raízes reais diferentes; e
• delta = 0, existem duas raízes reais iguais.
Abaixo, três ilustrações de execuções do programa.
Execução 1 Entrada
DIGITE O VALOR DE (a): 0
Saída
A EQUAÇÃO NÃO É DO SEGUNDO GRAU
Execução 2 Entrada
DIGITE O VALOR DE (a): 2 DIGITE O VALOR DE (b): 4 DIGITE O VALOR DE (c): 6
Saída
DELTA = -32; NÃO EXISTEM RAÍZES REAIS
Execução 3 Entrada
DIGITE O VALOR DE (a): 2 DIGITE O VALOR DE (b): 3 DIGITE O VALOR DE (c): -2
Saída
DELTA = 25; RAÍZES REAIS DIFERENTES X1 = 0.5
X2 = -2
Exercício 16
A dosagem de medicamento ministrada a um paciente deve ser calculada em função de sua massa (Kg) e de sua idade (anos).
Codifique um programa que informe a dosagem de um medicamento para um determinado paciente e imprima a receita informando quantas gotas do medicamento o paciente deve tomar. O medicamento em questão possui 500 mg por ml; cada ml possui 20 gotas. Para prescrição da receita considere que:
• adultos ou adolescentes desde os 12 anos, inclusive, devem tomar 1000 mg se tiverem a massa igual ou acima de 60 Kg. Com massa abaixo de 60 Kg, devem tomar 875 mg.
• para crianças e adolescentes abaixo de 12 anos, a dosagem é calculada pela massa corpórea conforme a tabela a seguir:
Massa (Kg) | Dosagem (mg) |
[ 5; 9 ] | 125 |
[ 9.1; 16 ] | 250 |
[ 16.1; 24 ] | 375 |
[ 24.1; 30 ] | 500 |
[ 30.1; +∞ [ | 750 |
Abaixo, duas ilustrações de execuções do programa.
Execução 1 Entrada
DIGITE A IDADE DO PACIENTE (ANOS): 14 DIGITE A MASSA DO PACIENTE (Kg): 59
Saída
R E C E I T A
O PACIENTE DEVE TOMAR 35 GOTAS
Execução 2 Entrada
DIGITE A IDADE DO PACIENTE (ANOS): 0.8 DIGITE A MASSA DO PACIENTE (Kg): 4.8
Saída
O PACIENTE NÃO POSSUI MASSA SUFICIENTE PARA TOMAR O MEDICAMENTO CONSULTE UM MÉDICO
Exercício 17
Na Universidade Jurubeba Org., os alunos ficam cientes de sua situação acadêmica ao digitar em um site a nota da disciplina Programação de Computadores I e a frequência às aulas dessa disciplina.
Codifique um programa que leia a nota e a frequência de um aluno e gera a resposta da situação do aluno de acordo com a tabela:
Condição | Situação |
Frequência até 75% | Reprovado |
Frequência entre 75% e 100%, e Nota até 3.0 | Reprovado |
Frequência entre 75% e 100%, e Nota de 3.0 até 7.0 | Exame Especial |
Frequência entre 75% e 100%, e Nota de 7.0 até 10.0 | Aprovado |
Abaixo, duas ilustrações de execuções do programa.
Execução 1 Entrada
DADOS DO ALUNO FREQUÊNCIA (%): 35
NOTA (0 A 10): 7.1
Saída
O ALUNO ESTÁ REPROVADO
Execução 2
Entrada
DADOS DO ALUNO
FREQUÊNCIA (%): 95
NOTA (0 A 10): 9.5
Saída
O ALUNO ESTÁ APROVADO
Exercício 18
Codifique um programa informe o total de calorias de uma refeição. O usuário deve informar o prato, a sobremesa e a bebida. Para os cálculos das calorias utilize a tabela abaixo:
Prato | Sobremesa | Calorias | |||
Vegetariano | 180 cal | Abacaxi | 75 cal | Chá | 20 cal |
Peixe | 230 cal | Sorvete diet | 110 cal | Suco de laranja | 70 cal |
Frango | 250 cal | Mouse diet | 170 cal | Suco de melão | 100 cal |
Carne | 350 cal | Mouse chocolate | 200 cal | Refrigerante diet | 65 cal |
Sugestão: enumere cada opção de prato, sobremesa e bebida. Ou seja: Prato: 1 - vegetariano, 2 – Peixe, 3 – Frango, 4 – Carne; Sobremesa: 1 – Abacaxi, 2 – Sorvete diet, 3 – Mouse diet, 4 – Mouse chocolate; Bebida: 1 – Chá, 2 - Suco de laranja, 3 – Suco de melão, 4 – Refrigerante diet.
Abaixo, uma ilustração de execução do programa.
Execução 1 Entrada
DIGITE SUA OPÇÃO DE PRATO: 2 DIGITE SUA OPÇÃO DE SOBREMESA: 4 DIGITE SUA OPÇÃO DE BEBIDA: 3
Saída
TOTAL DE CALORIAS DE SUA REFEIÇÃO: 530
Exercício 19
A Jurubeba Airlines ofecere passagens aéreas a preços irresistíveis ! De acordo com a tabela vigente, codifique um programa que solicite ao usuário a região que íra viajar e se a passagem é de ida e volta, ou somente de ida. A seguir, o programa calcula o custo da viagem e o exibe ao cliente.
Região | Ida | |
Região Norte | R$ 500,00 | R$ 900,00 |
Região Nordeste | R$ 350,00 | R$ 650,00 |
Região Centro-Oeste | R$ 350,00 | R$ 600,00 |
Região Sul | R$ 300,00 | R$ 550,00 |
Abaixo, uma ilustração de execução do programa.
Execução 1 Entrada
1 – REGIÃO NORTE
2 – REGIÃO NORDESTE
3 – REGIÃO CENTRO-OESTE
4 – REGIÃO SUL DIGITE SUA OPÇÃO: 3
5 – IDA E VOLTA
6 – SOMENTE XXX DIGITE SUA OPÇÃO: 6
Saída
PREÇO DA PASSAGEM: R$ 350.00
Exercício 20
Cada dia da semana pode ser codificado com um número inteiro do intervalo de 1 a 7. Desta forma, 1 é domingo, 2 é segunda-feira, e assim por diante. Codifique um programa que leia um código do dia da semana e imprima no formato de string o dia da semana correspondente. O programa deve tratar o erro de códigos de dias inexistentes. Abaixo, duas ilustrações de execuções do programa.
Execução 1 Entrada
DIGITE O CÓDIGO DO DIA DA SEMANA: 9
Saída
O CÓDIGO 9 NÃO CORRESPONDE A NENHUM DIA DA SEMANA
Execução 2 Entrada
DIGITE O CÓDIGO DO DIA DA SEMANA: 3
Saída
DIA DA SEMANA: TERÇA-FEIRA
Exercício 21
O último dígito da placa de um veículo determina o mês de pagamento do IPVA. Codifique um programa que leia os quatro dígitos da placa de um veículo e informe o mês de pagamento do IPVA. Para determinação do mês, consulte a tabela:
Final | Final | ||
1 | Janeiro | 6 | Junho |
2 | Fevereiro | 7 | Julho |
3 | Março | 8 | Agosto |
4 | Abril | 9 | Setembro |
5 | Maio | 0 | Outubro |
Abaixo, uma ilustração de execução do programa.
Execução 1 Entrada
DIGITE OS QUATRO DÍGITOS DA PLACA: 2013
Saída
MÊS DO PAGAMENTO DO IPVA: MARÇO
Exercício 22
Codifique um programa que leia o peso de uma pessoa na Terra e uma codificação numérica referente a um planeta do sistema solar. O programa calcula e imprime o peso relativo dessa pessoa no planeta em questão. As gravidades relativas à Terra são definidas pela tabela:
Planeta | Gravidade Relativa | |
Mercúrio | 0.37 | 1 |
Vênus | 0.88 | 2 |
Marte | 0.38 | 3 |
Júpiter | 2.64 | 4 |
Saturno | 1.15 | 5 |
Urano | 1.17 | 6 |
Abaixo, duas ilustrações de execuções do programa.
Execução 1 Entrada
1 – MERCÚRIO
2 – VÊNUS
3 – MARTE
4 – JÚPITER
5 – SATURNO
6 – URANO
DIGITE O PLANETA: 9
DIGITE O PESO NA TERRA (Newton): 90
Saída
CÓDIGO DE PLANETA INVÁLIDO
Execução 2 Entrada
1 – MERCÚRIO
2 – VÊNUS
3 – MARTE
4 – JÚPITER
5 – SATURNO
6 – URANO
DIGITE O PLANETA: 4
DIGITE O PESO NA TERRA (Newton): 90
Saída
O PESO EM MERCÚRIO É: 237.6
Exercício 23
Cada mês do ano pode ser codificado com um número inteiro do intervalo de 1 a 12. Desta forma, 1 é janeiro, 2 é fevereiro, e assim por diante. Codifique um programa que leia um código de um mês e imprima no formato de string o mês correspondente. O programa deve tratar o erro de códigos de meses inexistentes. Abaixo, duas ilustrações de execuções do programa.
Execução 1 Entrada
DIGITE O CÓDIGO DO MÊS: 15
Saída
O CÓDIGO 15 NÃO CORRESPONDE A NENHUM MÊS
Execução 2
Entrada
DIGITE O CÓDIGO DO MÊS: 10
Saída
MÊS: OUTUBRO