-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy path13.decode
41 lines (36 loc) · 1.33 KB
/
13.decode
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
"""
13. DECODE
N-base notation is a system for writing numbers that uses only n different symbols, This symbols are the first n symbols from the given notation list(Including the symbol for o) Decimal to n base notation are (0:0, 1:1, 2:2, 3:3, 4:4, 5:5, 6:6, 7:7, 8:8, 9:9, 10:A,11:B and so on upto 35:Z).
Implement the following function *char DectoNBase(int n, int num):**
The function accept positive integer n and num Implement the function to calculate the n-base equivalent of num and return the same as a string
Steps:
Divide the decimal number by n,Treat the division as the integer division
Write the the remainder (in n-base notation)
Divide the quotient again by n, Treat the division as integer division Repeat step 2 and 3 until the quotient is 0
The n-base value is the sequence of the remainders from last to first
Assumption:
1<n<=36
Example
Input
n: 12 num: 718
Output
4BA
Explanation
num = 718, divisor = 12, quotient=59, remainder=10(A). num = 59, divisor = 12, quotient=4, remainder=11(B). num = 4, divisor = 12, quotient=0, remainder=4(A). Sample Input
n: 21 num: 5678
Sample Output
CI8
"""
n=int(input())
num=int(input())
resultant_str=""
q=num//n
while(q>0):
q=num//n
r=num%n
num//=n
if r<10:
resultant_str+=str(r)
else:
resultant_str+=chr(r+55)
print(resultant_str[::-1])