EduCzar

ChecaPositivoEinteiro

Sep 28th, 2020
1,329
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1.  
  2. def eInteiroPositivo(dado):
  3.     A = 0
  4.     A = int(float(dado)) #Atribuimos o valor da string dado a uma variavel inteira
  5.     if (A > 0):
  6.         if ((A - float(dado)) == 0): # Se a subtracao do dado da string convertido para inteiro menos a do tipo float for zero, então é um numero inteiro
  7.             return True
  8.         else:
  9.             return False
  10.     else:
  11.         return False
  12.  
  13. def eNumero(dado):
  14.     checka = True
  15.     for i in range(len(dado)):
  16.         if ((ord(dado[i]) < 48) or (ord(dado[i]) > 57)) and ((ord(dado[i]) != 46) and (ord(dado[i]) != 45)):
  17.             checka = False
  18.             break
  19.     return checka
  20.  
  21. def eUmaPalavra(dado):
  22.     if ((eNumero(dado) == False) and (dado == "SAIR")):
  23.         return True
  24.     else:
  25.         return False
  26.  
  27. def __main__():
  28.     dado = ""
  29.     erros = 0
  30.     rodadas = 0
  31.     while(dado != "SAIR"):
  32.         rodadas += 1
  33.         dado = input()
  34.         if (eUmaPalavra(dado) == True):
  35.             print("você digitou o valor incorreto " + str(erros) + " vezes" + " e " + str(rodadas - erros) + " vezes corretas\n" +  "Bye Bye :)")
  36.             break
  37.         elif (eUmaPalavra(dado) == False) and (eNumero(dado) == False):
  38.             print ("é uma palavra, e a unica palavra aceita pelo sistema é 'SAIR' ")
  39.             erros += 1
  40.         elif (eInteiroPositivo(dado) == False):
  41.             print("O numero digitado não é inteiro ou não é possitivo")
  42.             erros += 1
  43.        
  44. __main__()
RAW Paste Data