Identificador de numero inteiro

1. Identificador de numero inteiro

Marcos Antonio Teixeira Rosa
Entusiasta

(usa Outra)

Enviado em 19/06/2024 - 05:08h

Olá, sou iniciante e estou tendo problemas com esse código:

resposta = int(input('Digite um numero: '))
if resposta >= 0:
print(f'Voce digitou {resposta}.')
if resposta < 0:
print(f'Voce digitou {resposta}')
else:
print('Voce nao digitou um numero')

Ele identifica numeros inteiros negativos e aparece a mensagem certinha, mas quando digito um numero inteiro positivo, ele dá a mensagem do else. Alguém pode me dizer onde errei?


  


2. Re: Identificador de numero inteiro

Samuel Leonardo
SamL

(usa XUbuntu)

Enviado em 19/06/2024 - 17:34h

O problema é que seu segundo if não está ligado ao primeiro, pra juntar ele basta trocar if por elif:
resposta = int(input('Digite um numero: '))
if resposta >= 0:
print(f'Voce digitou {resposta}.')
elif resposta < 0:
print(f'Voce digitou {resposta}')
else:
print('Voce nao digitou um numero')



https://tutorialprofissa.blogspot.com/ blog com tutoriais de programação em geral
https://nerdki.blogspot.com/ acessa ai, blog dedicado Paranóia!
https://github.com/cpusam com o bug fix vem a perfeição!


3. Re: Identificador de numero inteiro

Marcelo Oliver
msoliver

(usa Debian)

Enviado em 20/06/2024 - 15:18h


Entusiasta escreveu:

Olá, sou iniciante e estou tendo problemas com esse código:

resposta = int(input('Digite um numero: '))
if resposta >= 0:
print(f'Voce digitou {resposta}.')
if resposta < 0:
print(f'Voce digitou {resposta}')
else:
print('Voce nao digitou um numero')

Ele identifica numeros inteiros negativos e aparece a mensagem certinha, mas quando digito um numero inteiro positivo, ele dá a mensagem do else. Alguém pode me dizer onde errei?

Além do erro citado pelo colega SamL,
constatei o seguinte:
A var resposta foi setada como int,
logo, somente aceita número....
Digite:X
Traceback (most recent call last):
File "/home/adminq/./teste.py", line 4, in <module>
resp = int(input('Digite: '))
^^^^^^^^^^^^^^^^^^^^^^
ValueError: invalid literal for int() with base 10: 'X'

Alternativa, usando 're'
#!/usr/bin/env python3
import re
resp = int(input('Digite: '))
if (re.search("^-?\d+$", resp)):
print(f"{resp}: É Número")
else:
print(f"{resp}: Não é Número")

#-----------------------------------------------#

______________________________________________________________________
Att.: Marcelo Oliver
______________________________________________________________________







Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts