Skip to content

Latest commit

 

History

History
919 lines (607 loc) · 27.9 KB

File metadata and controls

919 lines (607 loc) · 27.9 KB

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 YouTubeGitHub
Sinal YouTubeGitHub
Divisao YouTubeGitHub Prof. Neri
Media4Notas YouTubeGitHub
CalculadoraIMC YouTubeGitHub
Maior2Numeros YouTubeGitHub
Senha YouTubeGitHub
DoadorSangue YouTubeGitHub
ParImpar YouTubeGitHub
PesoIdeal YouTubeGitHub Prof. Neri
AnaliseCredito YouTubeGitHub Prof. Ermogenes
HeronSeTriangulo YouTubeGitHub
Bhaskara YouTubeGitHub

Temporada 2

Enunciado Correção Extras
MaiorDeTres GitHub
Multiplo GitHub
Quadrante GitHub
Bissexto GitHub
FluxogramaDaEngenharia GitHub
PescaAmadora GitHub
CasaDeTintas GitHub
CaixaEletronico GitHub
DiabetesGestacional GitHub
LuzDeAdvertencia GitHub
NaMosca GitHub
MesExtenso GitHub
Estacionamento GitHub
TriagemCovid GitHub
GeneticaMendeliana GitHub

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:

  1. A cada 400 anos temos com certeza um ano bissexto.
  2. A cada 100 anos o ano não é bissexto, exceto quando é bissexto pela regra 1.
  3. 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.

https://imageproxy.ifunny.co/crop:x-20,resize:640x,quality:90x75/images/e0c42862553bc72e5f217b247b3212e1ea913e08617232137a533299d6d0d3f5_1.jpg

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., ou
  • Pescaria 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.

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: o Dardo1);
  • Arremessos distantes ]1, 3] são "bons" (exemplo: um dardo na área azul);
  • Arremessos distantes ]3, 5] são "ruins" (exemplo: os Dardo2 e Dardo3);
  • 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 quando aa e rosa quando Aa).

https://1.bp.blogspot.com/-30CSmN41YOo/WsL5F-ctd3I/AAAAAAAAAVQ/A8XbKxgWVaMhoPFXf_JkyPoYkw7HaD3jgCLcBGAs/s1600/flores%2Bde%2Btres%2Bfenotipos.jpg

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