Olá pessoal!
Estou com uma dificuldade nesse exercício.
Na parte da operação de divisão, não importa qual número escolha, o resultado será sempre decimal.
Testei esse código do Bruno também, dividi 45 por 5 (deu 9.0). Apesar de o resultado ser inteiro, o programa entendeu como tipo float.
Abaixo o resultado do teste do código do Bruno:
Escolha uma operação:
1-Soma;
2-Subtração;
3-Multiplicação;
4-Divisão;
4
Digite um número: 45
Digite outro número: 5
opcao: 4
Divisão:45/5=9.0
número ímpar
número positivo
número decimal
===============================================
E aqui meu código (mais bagunçado, claro) com o resultado:
numero1 = int(input('Digite um número de 1 a 100: '))
numero2 = int(input('Digite outro número de 1 a 100: '))
operador = input('\nEscolha uma opção: \n1: Adição \n2: Subtração \n3: Multiplicação \n4: Divisão\n')
if operador == '1':
soma = numero1 + numero2
print(f'A operação é adição: {numero1} + {numero2} = {soma}')
restoSoma = soma % 2
if restoSoma >= 1:
print(f'O número {soma} é ímpar.')
else:
print(f'O número {soma} é par.')
if type(soma) is float:
print(f'O número {soma} é decimal.')
else:
print(f'O número {soma} é inteiro.')
if soma < 0:
print(f'O número {soma} é negativo.')
else:
print(f'O número {soma} é positivo.')
elif operador == '2':
sub = numero1 - numero2
print(f'A operação é subtração: {numero1} - {numero2} = {sub}')
restoSub = sub % 2
if restoSub >= 1:
print(f'O número {sub} é ímpar.')
else:
print(f'O número {sub} é par.')
if type(sub) is float:
print(f'O número {sub} é decimal.')
else:
print(f'O número {sub} é inteiro.')
if sub < 0:
print(f'O número {sub} é negativo.')
else:
print(f'O número {sub} é positivo.')
elif operador == '3':
mult = numero1 * numero2
print(f'A operação é multiplicação: {numero1} * {numero2} = {mult}')
restoMult = mult % 2
if restoMult >= 1:
print(f'O número {mult} é ímpar.')
else:
print(f'O número {mult} é par.')
if type(mult) is float:
print(f'O número {mult} é decimal.')
else:
print(f'O número {mult} é inteiro.')
if mult < 0:
print(f'O número {mult} é negativo.')
else:
print(f'O número {mult} é positivo.')
elif operador == '4':
div = numero1 / numero2
print(f'A operação é divisão: {numero1} / {numero2} = {div}')
restoDiv = div % 2
if restoDiv >= 1:
print(f'O número {div} é ímpar.')
else:
print(f'O número {div} é par.')
if type(div) is float:
print(f'O número {div} é decimal.')
else:
print(f'O número {div} é inteiro.')
if div < 0:
print(f'O número {div} é negativo.')
else:
print(f'O número {div} é positivo.')
Digite um número de 1 a 100: 45
Digite outro número de 1 a 100: 5
Escolha uma opção:
1: Adição
2: Subtração
3: Multiplicação
4: Divisão
4
A operação é divisão: 45 / 5 = 9.0
O número 9.0 é ímpar.
O número 9.0 é decimal.
O número 9.0 é positivo.
=====================================
Como havia dito, o resultado da divisão é um número inteiro, mas ele é interpretado como float.
Como resolver isso?
Obrigado pela atenção equipe!