দুই সংখ্যা N এবং K দেওয়া থাকলে, N থেকে K বিয়োগ করতে থাকব N > 0 হওয়া পর্যন্ত। N <= 0 হলে আবার K যোগ করতে থাকব মূল N পাওয়া পর্যন্ত। লুপ ছাড়া রিকার্শন দিয়ে।
উদাহরণ
N = 10, K = 4
আউটপুট: 10 6 2 -2 2 6 10
অ্যালগরিদম
- রিকার্সিভ ফাংশন PrintNumber(N, Original, K, flag)
- flag=True মানে বিয়োগ, False মানে যোগ।
- N <= 0 হলে flag টগল।
- N == Original এবং flag=False হলে বেস কেস।
পাইথন কোড উদাহরণ
def PrintNumber(N, Original, K, flag):
print(N, end=" ")
if N <= 0:
flag = not flag
if N == Original and not flag:
return
if flag:
PrintNumber(N - K, Original, K, flag)
else:
PrintNumber(N + K, Original, K, flag)
N = 10
K = 4
PrintNumber(N, N, K, True)
আউটপুট
10 6 2 -2 2 6 10
উপসংহার
রিকার্শন এবং বুলিয়ান ফ্ল্যাগ ব্যবহার করে লুপ ছাড়া নাম্বার সিরিজ প্রিন্ট করা।