मान लीजिए हमारे पास एक संख्या n है। हमें यह जांचना है कि विषम स्थान वाले अंकों का गुणनफल और सम स्थान वाले अंकों का गुणनफल समान है या नहीं।
तो, यदि इनपुट n = 2364 है, तो आउटपुट True होगा क्योंकि विषम स्थान वाली संख्याओं का गुणनफल 2 * 6 = 12 है और सम स्थान वाली संख्याओं का गुणनफल 3 * 4 = 12 है जो समान हैं।
हल करने के चरण
- यदि num < 10, तो:
- False लौटाएं
- odd_place := 1, even_place := 1
- जब तक num > 0, तब तक:
- d := num का अंतिम अंक
- odd_place := odd_place * d
- num := (num/10) का भागफल
- यदि num 0 के समान है, तो:
- ब्रेक करें
- d := num का अंतिम अंक
- even_place := even_place * d
- num := (num/10) का भागफल
- यदि odd_place, even_place के समान है, तो:
- True लौटाएं
- False लौटाएं
उदाहरण
def solve(num):
if num < 10:
return False
odd_place = 1
even_place = 1
while num > 0:
d = num % 10
odd_place *= d
num = num//10
if num == 0:
break
d = num % 10
even_place *= d
num = num//10
if odd_place == even_place:
return True
return False
num = 2364
print(solve(num))
इनपुट
2364
आउटपुट
True