समस्या विवरण
एक संख्या n दी गई है, बिना किसी लूप के n के m गुणक प्रिंट करें। यहां हम रिकर्सिव फंक्शन का उपयोग करते हैं।
उदाहरण
इनपुट: n = 15
आउटपुट: 15 10 5 0 5 10 15
एल्गोरिदम
- n दिया गया है।
- यदि हम n की ओर वापस जा रहे हैं और वहां पहुंच गए हैं, तो हम खत्म हो गए।
- यदि हम 0 या ऋणात्मक की ओर जा रहे हैं।
- यदि m 5 से अधिक है, तो ट्रू फ्लैग के साथ रिकर्सिव फंक्शन अन्यथा फाल्स फ्लैग के साथ।
- यदि m 5 से अधिक नहीं है तो फ्लैग फाल्स है।
उदाहरण कोड
def printm(p, q, flag):
print(q)
if flag == False and p == q:
return
if flag:
if q - 5 > 0:
printm(p, q - 5, True)
else:
# फाल्स फ्लैग के साथ रिकर्सन
printm(p, q - 5, False)
else:
# यदि फ्लैग फाल्स है
printm(p, q + 5, False)
# ड्राइवर कोड
n = 15
printm(n, n, True)
आउटपुट
15 10 5 0 5 10 15