Fixing the issues of the isprothnumber function

This commit is contained in:
Juanitoupipou 2024-11-27 16:01:18 +01:00
parent 5f54615b8b
commit fa04fdf570

View File

@ -59,7 +59,7 @@ def proth(number: int) -> int:
return proth_list[number - 1] return proth_list[number - 1]
def isProthNumber(number: int) -> bool : def isprothnumber(number: int) -> bool :
""" """
:param number: nth number to calculate in the sequence :param number: nth number to calculate in the sequence
:return: true if number is a Proth number, false etherwise :return: true if number is a Proth number, false etherwise
@ -80,13 +80,13 @@ def isProthNumber(number: int) -> bool :
msg = f"Input value of [number={number}] must be > 0" msg = f"Input value of [number={number}] must be > 0"
raise ValueError(msg) raise ValueError(msg)
N = number num = number
N -= 1 num -= 1
n = 0 n = 0
while N%2 == 0 : while num%2 == 0 :
N = N/2 N = N/2
n += 1 n += 1
return N < (2**n) return num < (2**n)
@ -106,10 +106,10 @@ if __name__ == "__main__":
print(f"The {number}th Proth number: {value}") print(f"The {number}th Proth number: {value}")
list = [3, 5, 9, 13, 49, 57, 193, 241, 163, 201] listexe = [3, 5, 9, 13, 49, 57, 193, 241, 163, 201]
for number in list : for number in listexe :
if isProthNumber(number): if isprothnumber(number):
print(f"{number} is a Proth number") print(f"{number} is a Proth number")
else : else :
print(f"{number} is not a Proth number") print(f"{number} is not a Proth number")