-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathl3_collatz.py
More file actions
44 lines (35 loc) · 974 Bytes
/
l3_collatz.py
File metadata and controls
44 lines (35 loc) · 974 Bytes
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
#Practice Problem - Collatz Function()
# def collatz(number):
# if number % 2 == 0:
# res_1 = number // 2
# if res_1 != 1:
# print(res_1)
# collatz(res_1)
# else:
# print(1)
# elif number % 2 == 1:
# res_2 = 3 * number + 1
# if res_2 != 1:
# print(res_2)
# collatz(res_2)
# else:
# print(1)
# else:
# return 1
# Alternate Method
# inp_num = int(input('Enter a number:\n'))
# collatz(inp_num)
from multiprocessing.sharedctypes import Value
try:
number = int(input("Enter a number:\n"))
while number > 1:
if number % 2 == 0:
number = int(number) // 2
print(number)
elif number % 2 == 1:
number = 3 * int(number) + 1
print (number)
else:
break
except ValueError:
print("Enter an integer.")