通过平方和连接数字的奇数位来创建 OTP 的Python程序
给定一个数字 n。任务是通过平方和连接数字的奇数位来创建 OTP。
例子:
Input: 4365188
Output: 9256
Input: 123456
Output: 4163
解释:在第一个例子中,奇数位的整数是 3、5 和 8。所以我们必须通过数字平方返回一个 4 位 OTP。上述数字的平方是 9、25、65,所以要返回的 OTP 是前四位数字 9256。
方法:遍历字符串(数字)的长度,起始索引为1,步长为2。初始化一个空字符串,然后将奇数的平方连接到该字符串。最后,将字符串的前四个字符作为 OTP 返回。
下面是实现。
# python program to generate
# an OTP from the squares of the
# odd digits
def OTP(number):
# Finding the length
# of the string
length = len(number)
# Declaring an empty string
# for storing otp
otp = ''
# Iterating from index 1
# with step as 2
for odd in range(1, length, 2):
# Concatenating the output
# to the string
otp+= str(int(number[odd])**2)
print(otp[0:4])
# Driver code
number = '4365188'
OTP(number)
输出:
9256