Exercícios: Decisão e operações lógicas
Para cada exercício abaixo crie um repositório no GitHub contendo uma aplicação console com o nome indicado.
Revisão e Correção no YouTube (extra: revisão do Prof. Neri) e no GitHub.
Temporada 1
Enunciado | Correção | Extras |
---|---|---|
Negativo | YouTube • GitHub | |
Sinal | YouTube • GitHub | |
Divisao | YouTube • GitHub | Prof. Neri |
Media4Notas | YouTube • GitHub | |
CalculadoraIMC | YouTube • GitHub | |
Maior2Numeros | YouTube • GitHub | |
Senha | YouTube • GitHub | |
DoadorSangue | YouTube • GitHub | |
ParImpar | YouTube • GitHub | |
PesoIdeal | YouTube • GitHub | Prof. Neri |
AnaliseCredito | YouTube • GitHub | Prof. Ermogenes |
HeronSeTriangulo | YouTube • GitHub | |
Bhaskara | YouTube • GitHub |
Temporada 2
Exercício Negativo
Leia um número inteiro e exiba a mensagem “Você digitou um número negativo.” caso o número seja menor que zero.
Ex.:
Digite um número: -12
Você digitou um número negativo.
ou
Digite um número: 12
(nada a exibir)
Exercício Sinal
Leia um número inteiro e exiba “Negativo”, “Zero” ou “Positivo”, conforme o caso.
Ex.:
Digite um número: 35
Positivo
ou
Digite um número: -10
Negativo
ou
Digite um número: 0
Zero
Exercício Divisao
Receba um numerador e um denominador. Exiba o resultado da divisão ou “Não é possível dividir por zero.”, conforme o caso.
Ex.:
Digite o numerador....: 12
Digite o denominador..: 3
12 dividido por 3 é 4.
ou
Digite o numerador....: 0
Digite o denominador..: 5
0 dividido por 5 é 0.
ou
Digite o numerador....: 12
Digite o denominador..: 0
Não é possível dividir por zero.
Exercício Media4Notas
Receba 4 notas, com somente uma casa decimal. Valide se todas estão entre 0.0 e 10.0. Se alguma delas não estiver, exiba “Digite somente notas entre 0 e 10.”. Caso todas as notas sejam válidas, calcule a média aritmética das notas. Exiba uma mensagem no seguinte padrão: “Você ficou com média 7,5. Resultado: Aprovado”.
Resultados possíveis:
- “Reprovado” para médias menores que 5.0
- “Em recuperação” para médias entre 5.0 e 6.0
- “Aprovado”, para médias acima de 6.0
Ex.:
-- Média --
Digite as suas notas abaixo.
Nota 1: 5,5
Nota 2: -7,0
Nota 3: 10,5
Nota 4: 9,0
Digite somente notas entre 0 e 10.
ou
-- Média --
Digite as suas notas abaixo.
Nota 1: 5,5
Nota 2: 7,0
Nota 3: 6,5
Nota 4: 9,0
Você ficou com média 7,0. Resultado: Aprovado
ou
-- Média --
Digite as suas notas abaixo.
Nota 1: 4,5
Nota 2: 3,0
Nota 3: 6,5
Nota 4: 2,0
Você ficou com média 4,0. Resultado: Reprovado
ou
-- Média --
Digite as suas notas abaixo.
Nota 1: 5,5
Nota 2: 5,5
Nota 3: 5,5
Nota 4: 5,5
Você ficou com média 5,5. Resultado: Em recuperação
Exercício CalculadoraIMC
Calcule o Índice de Massa Corporal (IMC) do usuário.
Exemplo:
Exiba a situação, conforme tabela.
Resultado | Situação |
---|---|
Abaixo de 17 | Muito abaixo do peso |
Entre 17 e 18,49 | Abaixo do peso |
Entre 18,5 e 24,99 | Peso normal |
Entre 25 e 29,99 | Acima do peso |
Entre 30 e 34,99 | Obesidade I |
Entre 35 e 39,99 | Obesidade II (severa) |
Acima de 40 | Obesidade III (mórbida) |
Ex.:
-- Calculadora de IMC --
Digite seu peso em kg...: 90
Digite sua altura em m..: 1,75
Seu IMC é 29,39 kg/m².
Diagnóstico: Acima do peso
Exercício Maior2Numeros
Receba dois números. Exiba o maior.
Ex.:
Digite o primeiro número..: 7
Digite o segundo número...: 15
O maior número é 15
Exercício Senha
Solicite ao usuário que digite a sua senha (uma string). Exiba “Acesso permitido” caso a senha digitada seja 1234abcd
, senão exiba “Acesso negado”.
Ex.:
Olá, usuário. Por favor, digite sua senha: minha_senha_super_secreta
Acesso negado
ou
Olá, usuário. Por favor, digite sua senha: 1234abcd
Acesso permitido
Exercício DoadorSangue
Solicite a idade do usuário. Avalie se ele pode ser doador de sangue (i.e. possui idade entre 18 e 67 anos). Informe o resultado da avaliação.
Ex.:
Qual a sua idade: 35
Você pode ser doador de sangue.
ou
Qual a sua idade: 12
Você não pode ser doador de sangue.
ou
Qual a sua idade: 80
Você não pode ser doador de sangue.
Exercício ParImpar
Receba um número. Exiba “par” ou “ímpar”, conforme o caso.
Dica: um número é ímpar caso possua resto ao ser dividido por 2.
Ex.:
Digite um número: 17
17 é ímpar
Exercício PesoIdeal
Solicite que o usuário digite sua altura e o seu sexo (‘M’ para masculino, ‘F’ para feminino). Calcule e exiba seu peso ideal.
- Para homens, altura x 72.7 - 58.0
- Para mulheres, altura x 62.1 - 44.7
Ex.:
Digite sua altura em m..........: 1,73
Sexo [M]asculino / [F]eminino...: M
Seu peso ideal é 67,7kg.
ou
Digite sua altura em m..........: 1,73
Sexo [M]asculino / [F]eminino...: F
Seu peso ideal é 62,7kg.
Exercício AnaliseCredito
Um cliente quer solicitar um empréstimo. Receba o valor solicitado, a quantidade de parcelas desejada e a renda mensal comprovada. Só autorize empréstimos cuja parcela não ultrapasse 30% da renda (desconsidere os juros).
Exercício HeronSeTriangulo
Receba três números decimais maiores que zero. Valide se estes números correspondem aos lados de um triângulo (a). Exiba o tipo do triângulo (b). Exiba a sua área (c).
a. Condição de existência de um triângulo:
Para que se possa construir um triângulo é necessário que a medida de qualquer um dos lados seja menor que a soma das medidas dos outros dois e maior que o valor absoluto da diferença entre essas medidas.
Ou seja, todas as condições abaixo devem ser atendidas:
a < (b + c)
a > Math.Abs(b - c)
b < (a + c)
b > Math.Abs(a - c)
c < (a + b)
c > Math.Abs(a - b)
b. Tipo do triângulo:
- Equilátero: três lado com medidas iguais;
- Escaleno: três lados com medidas diferentes;
- Isósceles: demais triângulos.
c. Área do triângulo pelo Teorema de Heron:
Ref.: https://pt.wikipedia.org/wiki/Tri%C3%A2ngulo
Exercício Bhaskara
Calcule as raízes de uma equação de segundo grau, utilizando o método de Bhaskara.
Uma equação do segundo grau é dada pela expressão abaixo:
Assim, devemos receber do usuário os valores de a
, b
e c
, e aplicar a fórmula de Bhaskara:
Dicas:
- Precisamos validar se o valor de
a
não é zero, porque nesse caso a equação não é do segundo grau. - Calculamos o discriminante Δ (delta):
-
Como a raiz quadrada de um número negativo não é um número real, precisamos validar se Δ não é negativo.
-
Depois, é só calcular e exibir as duas raízes:
Exemplo 1 (a == 0
):
-- Equação do segundo grau --
(a): 0
(b): 2
(c): 5
Não é uma equação de segundo grau!
Exemplo 2 (Δ < 0
):
-- Equação do segundo grau --
(a): 1
(b): 2
(c): 3
Como delta = -8,00, a equação não possui raízes reais!
Exemplo 3:
-- Equação do segundo grau --
(a): 1
(b): 2
(c): -3
x1 = 1,00 e x2 = -3,00
Exercício MaiorDeTres
Receba três números inteiros. Exiba somente o maior dos 3.
Exercício Multiplo
Determine se um número é múltiplo de outro.
Exemplos:
--- Múltiplo ---
Digite um número...........: 187
Avaliar se é múltiplo de...: 11
187 é múltiplo de 11
--- Múltiplo ---
Digite um número...........: 188
Avaliar se é múltiplo de...: 11
188 não é múltiplo de 11
Exercício Quadrante
Leia as coordenadas cartesianas (x, y)
de um ponto informado pelo usuário.
Exiba o local onde o ponto se encontra no plano cartesiano:
- em um dos quadrantes;
- sobre um dos eixos;
- na origem.
Quadrantes:
Exemplos:
--- Quadrante Cartesiano ---
Entre com o ponto desejado.
Coordenada x: -5
Coordenada y: 4
O ponto (-5, 4) fica no quadrante 2.
--- Quadrante Cartesiano ---
Entre com o ponto desejado.
Coordenada x: 0
Coordenada y: 9
O ponto (0, 9) fica no eixo das ordenadas.
--- Quadrante Cartesiano ---
Entre com o ponto desejado.
Coordenada x: 0
Coordenada y: 0
O ponto (0, 0) fica na origem.
Exercício Bissexto
Determine se um ano fornecido pelo usuário é ou não bissexto.
Regra para o cálculo dos anos bissextos:
- A cada 400 anos temos com certeza um ano bissexto.
- A cada 100 anos o ano não é bissexto, exceto quando é bissexto pela regra 1.
- A cada 4 anos o ano é bissexto, exceto quando não é bissexto pela regra 2.
Exemplos de valores para teste:
- Bissextos pela regra 1: 400, 800, 1200, 1600, 2000, 2400
- Não bissextos pela regra 2: 100, 200, 300, 500, 600,… , 1500, 1700, 1800, 1900, 2100
- Bissextos pela regra 3: 4, 8, 12, …, 1992, 1996, 2004, …, 2092, 2096, 2104
Exercício FluxogramaDaEngenharia
Faça um programa que implemente o meme Fluxograma da Engenharia.
Exemplos:
--- Fluxograma da Engenharia ---
O objeto está se movendo (S/N)? N
Deveria? S
Use WD-40.
--- Fluxograma da Engenharia ---
O objeto está se movendo (S/N)? S
Deveria? N
Use Silver Tape.
--- Fluxograma da Engenharia ---
O objeto está se movendo (S/N)? N
Deveria? N
Ótimo!
Exercício PescaAmadora
Um pescador amador solicita um software para avaliação da legalidade de sua pesca. Faça um programa que receba o peso do pescado em kg e o local da pesca (C
ou M
) e exiba, conforme o caso:
Pescaria dentro dos limites legais.
, ouPescaria excede os limites legais em XXX kg. Sujeito a multa de R$ YYY.
Limites de peso para pesca amadora: Local | Limites — | — Águas continentais e estuarinas | 10kg Águas marinhas | 15kg
Multa prevista em caso de excesso de peso: R$1000,00, com acréscimo de R$20,00 por quilo excedido.
Exemplos:
--- Pesca Amadora ---
Peso (em kg)...: 50
Águas [c]ontinentais ou [m]arinhas? m
Pescaria excede os limites legais em 35kg.
Sujeito a multa de R$ 1.700,00.
--- Pesca Amadora ---
Peso (em kg)...: 5
Águas [c]ontinentais ou [m]arinhas? c
Pescaria dentro dos limites legais.
--- Pesca Amadora ---
Peso (em kg)...: 15,5
Águas [c]ontinentais ou [m]arinhas? m
Pescaria excede os limites legais em 0,5kg.
Sujeito a multa de R$ 1.010,00.
--- Pesca Amadora ---
Peso (em kg)...: 5666
Águas [c]ontinentais ou [m]arinhas? x
Local não reconhecido.
Exercício CasaDeTintas
Faça uma calculadora para uma casa de tintas. O usuário fornecerá a área a ser pintada (em m²) e será informado sobre a quantidade de produtos necessários para cobrir a área indicada.
Acrescente 10% à tinta necessária, como margem para erros.
As tintas são vendidas em dois tipos de recipientes:
Recipiente | Conteúdo |
---|---|
Lata | 18 litros |
Galão | 3,6 litros |
Considere um rendimento fixo de 3m²/l de tinta.
Exemplo:
--- Casa de Tintas ---
Área a ser pintada (m²)...: 60
Total de 22,0 litro(s) de tinta.
Distribuição:
Latas...: 1 unidade(s)
Galões..: 2 unidade(s)
Exercício CaixaEletronico
Ao realizar um saque um caixa eletrônico calcula a quantidade de notas a entregar ao solicitante. Faça um programa que dado um valor desejado para saque (o número deve ser positivo e não pode conter centavos), calcule a quantidade de cada nota a ser entregue. Dê preferência para notas de valor mais alto.
Notas disponíveis: 1, 2, 5, 10, 20, 50, 100 e 200 reais
Exemplo:
--- Caixa Eletrônico ---
Digite o valor a ser sacado...: 298,00
O caixa deve entregar:
1 nota(s) de R$200,00
1 nota(s) de R$50,00
2 nota(s) de R$20,00
1 nota(s) de R$5,00
1 nota(s) de R$2,00
1 nota(s) de R$1,00
Exercício DiabetesGestacional
Segundo a Sociedade Brasileira de Diabetes¹, a avaliação de Diabetes em grávidas é realizada através de um exame de glicemia comparado com a tabela abaixo:
< 92 mg/dL (reavaliar entre 24 e 28 semanas com TTOG 75g de glicose)
= ou > 92 mg/dL e < 126 mg/dL = Compatível com Diabetes Gestacional
= ou > 126 mg/dL = Diabetes Mellitus na Gravidez
Faça um programa que receba o valor de glicemia (em mg/dL) e exiba o diagnóstico adequado.
¹ International Association of the Diabetes and Pregnancy Study Groups (IADPSG), OMS Diretrizes da Sociedade Brasileira de Diabetes 2017-2018.
Exercício LuzDeAdvertencia
Uma luz de advertência W
é acessa no painel de um automóvel somente quando:
- o sensor
T
de temperatura está ativado, e… - …pelo menos uma das duas situações seguintes ocorrem:
- o sensor
P
de pressão está ativado. - o sensor
R
de rotação está desativado.
- o sensor
Faça um simulador do circuito que controla a luz W
. Receba o estado de cada um dos sensores ([A]tivado, [D]esativado) e calcule o estado da luz de advertência.
Exemplo:
--- Simulador de Luz de Advertência ---
[A]tivado, [D]esativado
Sensor de temperatura...: A
Sensor de pressão.......: D
Sensor de rotação.......: D
A luz de advertência estará ATIVADA.
Imagem: lbertini@UFF
Exercício NaMosca
Dardos é um esporte em que se arremessam pequenas flechas contra um alvo circular com pontuações específicas atribuídas ao acerto em cada região.
Implemente um programa em que o usuário informe o ponto de acerto do dardo através de sua coordenada cartesiana (com o centro do alvo em (0, 0)
). Calcule a distância em relação ao centro (utilizando o teorema de Pitágoras).
- Arremessos distantes
[0, 1]
acertam “na mosca” (exemplo: oDardo1
); - Arremessos distantes
]1, 3]
são “bons” (exemplo: um dardo na área azul); - Arremessos distantes
]3, 5]
são “ruins” (exemplo: osDardo2
eDardo3
); - Arremessos a distâncias maiores que 5 são considerados “erros” (exemplo: o
Dardo4
).
Exemplos:
--- Dardos ---
Digite a coordenada X..: 0,24
Digite a coordenada Y..: -0,84
Distância do centro: 0,87
Acertou na mosca!
--- Dardos ---
Digite a coordenada X..: -4
Digite a coordenada Y..: 1,54
Distância do centro: 4,28
Arremesso ruim...
Exercício MesExtenso
Faça um programa que receba um número de 1 a 12 e exiba o nome do mês correspondente.
Exemplo:
--- Mês por extenso ---
Digite o número do mês...: 9
Setembro
Exercício Estacionamento
Um estacionamento possui a seguinte política de preços:
- Primeira hora: R$ 20,00
- Horas adicionais:
- Carros grandes: R$ 20,00/hora adicional
- Carros pequenos: R$ 10,00/hora adicional
- Diária (5 horas ou mais):
- Carros grandes: R$ 80,00
- Carros pequenos: R$ 50,00
- Tolerância (na saída): 5min
- Valet (manobrista): 20% adicional no valor do estacionamento
- Lavagem:
- Carros grandes: R$ 100,00
- Carros pequenos: R$ 50,00
Faça um programa que receba o tamanho do veículo (P/G), o total de minutos que o veículo ficou estacionado, se foi utilizado o serviço de valet (S/N) e a inclusão de serviço de lavagem (S/N). Exiba o valor final a ser pago, com os valores parciais.
Não aceite tempos de permanência maiores do que 12 horas.
Exemplos:
--- Estacionamento ---
Tamanho do veículo (P/G).....: p
Tempo de permanência (min)...: 473
Serviço de valet (S/N).......: n
Serviço de lavagem (S/N).....: n
Estacionamento..: R$ 50,00
Valet...........: R$ 0,00
Lavagem.........: R$ 0,00
--------------------------------
Total...........: R$ 50,00
--- Estacionamento ---
Tamanho do veículo (P/G).....: g
Tempo de permanência (min)...: 123
Serviço de valet (S/N).......: s
Serviço de lavagem (S/N).....: s
Estacionamento..: R$ 40,00
Valet...........: R$ 8,00
Lavagem.........: R$ 100,00
--------------------------------
Total...........: R$ 148,00
Exercício TriagemCovid
Um possível procedimento¹ para triagem de pacientes com COVID-19:
Pacientes que não apresentem febre², tosse² ou outros sintomas respiratórios² não recebem nenhuma recomendação específica.
Avalia-se a presença de fatores de risco ou sinais de alarme. Caso presentes, são encaminhados para o sistema de saúde ou para uma ambulância de acordo com a gravidade². Caso contrário, recomenda-se isolamento domiciliar.
- Sinais de alarme: falta de ar², aumento de frequência respiratória², dor torácica² e sensação de desmaio².
- Fatores de risco para menores: hipertensão arterial sistêmica², diabetes melito² e outras doenças crônicas².
- Fatores de risco para maiores: 65 anos ou mais, doença coronariana prévia², doença crônica descompensada² e aumento de frequência respiratória².
Faça um programa que conduza um operador ao telefone a efetuar as perguntas necessárias para realização da triagem. Comece pela idade, e faça perguntas diretas que possam ser respondidas com [S]im ou [N]ão (itens sinalizados com a marcação ²). Evite duplicar perguntas.
Exiba um dos resultados abaixo:
- Nenhuma recomendação específica (em verde)
- Recomendar isolamento domiciliar (em amarelo)
- Encaminhar para o sistema de saúde (em magenta)
- Encaminhar ambulância para o local (em vermelho)
¹ Adaptado de https://www.slmandic.edu.br/tudo-sobre-coronavirus/.
Exercício GeneticaMendeliana
A lei da dominância de Mendel afirma que todos os descendentes de progenitores que diferem em uma característica terão o fenótipo de apenas um deles, o dominante (expressado comumente pelo alelo A
). A característica preterida é chamada recessiva (a
), e só se manifesta caso ambos os fatores sejam recessivos.
Considere dois tipos de dominância:
- dominância completa: há duas possibilidades, e a característica só ocorre em indivíduos
aa
(ex.: o albinismo em humanos). - dominância incompleta: há três possibilidades, sendo uma delas intermediária (ex.: a coloração da boca-de-leão (Antirrhinum majus) é vermelha quando
AA
, branca quandoaa
e rosa quandoAa
).
Faça um programa que receba os alelos de dois indivíduos e as probabilidades da característica se manifestar em seus descendentes diretos. Considere o caso como dominância completa ou incompleta, conforme seleção do usuário.
Exemplos:
--- Genética Mendeliana ---
Alelos do indivíduo 1 (AA, Aa ou aa)...: Aa
Alelos do indivíduo 2 (AA, Aa ou aa)...: aa
Tipo de dominância (C/I)...............: C
| A | a
-----------
a | Aa | aa
-----------
a | Aa | aa
AA: 0% - não apresenta a característica recessiva
Aa: 50% - não apresenta a característica recessiva
aa: 50% - apresenta a característica recessiva
--- Genética Mendeliana ---
Alelos do indivíduo 1 (AA, Aa ou aa)...: Aa
Alelos do indivíduo 2 (AA, Aa ou aa)...: Aa
Tipo de dominância (C/I)...............: I
| A | a
-----------
A | AA | Aa
-----------
a | Aa | aa
AA: 25% - apresenta a característica de `A`
Aa: 50% - apresenta característica distinta de `A` e de `a`
aa: 25% - apresenta a característica de `a`
🏁 Orientações para entrega (alunos do curso presencial)
Confira no Teams o link da tarefa equivalente. Lá você postará o link dos repositórios que você criou, um para cada exercício.
Repositório de exemplo:
Exercício EtecAB
(Saída em console)
Exemplo de link a ser postado: https://github.com/ermogenes/EtecAB