1
resposta

Desafio: ### Atividade Estruturas de dados: Momento dos projetos part 1

Eu acredito que atendi a proposta dos projetos porém não sei se deixei os código clean e legivel. Gostaria de um feedback sobre se possível: 10) Um programa deve ser escrito para ler dois números e, em seguida, perguntar à pessoa usuária qual operação ele deseja realizar. O resultado da operação deve incluir informações sobre o número - se é par ou ímpar, positivo ou negativo e inteiro ou decimal.

valor1 = input('Digite o primeiro numero: ')
valor2 = input('Digite o segundo numero: ')
operacao = input('Selecione a operação que deseja fazer: (+  -  *  /  ): ')

try:
  valor1 = float(valor1)
  valor2 = float(valor2)

  if valor1.is_integer():
    print(f'O {valor1} é um valor inteiro')
  else:
    print(f'O {valor1} é um valor decimal')
  if valor2.is_integer():
    print(f'O {valor2} é um inteiro')
  else:
    print(f'O {valor2} é um valor decimal')
except ValueError:
    print("Valor inválido! Digite um número válido.")

if operacao == '+':
  print(f'O resultado de {valor1} + {valor2} = {valor1 + valor2:.2f}')
elif operacao == '-':
  print(f'O resultado de {valor1} - {valor2} = {valor1 - valor2:.2f}')
elif operacao == '*':
  print(f'O resultado de {valor1} * {valor2} = {valor1 * valor2:.2f}')
elif operacao == '/':
  print(f'O resultado de {valor1} / {valor2} = {valor1 / valor2:.2f}')
else:
  print('Impossível fazer a operação pois o valor recebido não corresponde com as operações disponivel (+ , - , * , /)')
  1. Escreva um programa que peça à pessoa usuária três números que representam os lados de um triângulo. O programa deve informar se os valores podem ser utilizados para formar um triângulo e, caso afirmativo, se ele é equilátero, isósceles ou escaleno. Tenha em mente algumas dicas:
  • Três lados formam um triângulo quando a soma de quaisquer dois lados for maior que o terceiro;
  • Triângulo Equilátero: três lados iguais;
  • Triângulo Isósceles: quaisquer dois lados iguais;
  • Triângulo Escaleno: três lados diferentes.
# Recebendo os dados
valor1 = int(input('Digite o primeiro valor do triangulo: '))
valor2 = int(input('Digite o segundo valor do triangulo: '))
valor3 = int(input('Digite o terceiro valor do triangulo: '))

# Criando a operação
triangulo = valor1 + valor2
resultado = valor1 + valor2 + valor3

# Criando as condições
# Condição se os valores formam um triangulo

if triangulo > valor3:
  print('A soma dos lados é maior que o terceiro valor o que corresponde ser um triangulo')
  # Triangulo Equilátero: três lados iguais;
  if valor1 == valor2 and valor1 == valor3 and valor2 == valor3:
    print('Com base nos valores é considerado um Triangulo Equilátero')
  # Triângulo Isósceles: quaisquer dois lados iguais;
  elif valor1 == valor2:
    print('Com base nos valores é considerado um Triangulo Isóceles')
    #Triângulo Escaleno: três lados diferentes.
  elif valor1 != valor2 and valor1 != valor3 and valor2 != valor3:
    print(f'Com base nos valores é considerado um Triângulo Escaleno')
1 resposta

Oi, Danilo! Tudo bem?

Obrigada por compartilhar seu código com a comunidade Alura.

Gostei que você tratou bem as conversões de tipo usando float() e verificou se o número é inteiro ou decimal com o método is_integer(). Seu código ficou claro, principalmente com as mensagens detalhadas de erro e o uso adequado de condicionais.

Para deixar ainda mais limpo, você pode melhorar um pouco separando as operações em funções menores. Por exemplo:

def realiza_operacao(num1, num2, operacao):
    if operacao == '+':
        return num1 + num2
    elif operacao == '-':
        return num1 - num2
    elif operacao == '*':
        return num1 * num2
    elif operacao == '/':
        return num1 / num2
    else:
        return 'Operacao invalida'

num1 = float(input('Digite o primeiro numero: '))
num2 = float(input('Digite o segundo numero: '))
operacao = input('Escolha a operacao (+, -, *, /): ')
resultado = realiza_operacao(num1, num2, operacao)
print(f'O resultado e {resultado:.2f}')

Esse código separa bem as responsabilidades e fica mais fácil de manter e ler.

Alura Conte com o apoio da comunidade Alura na sua jornada. Abraços e bons estudos!