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

উপসংহার
এই নিবন্ধে আমরা পাইথন ৩.x-এ যেকোনো ধরনের লুপিং কনস্ট্রাক্ট ছাড়া নাম্বার সিরিজ প্রিন্ট করার টার্মিনোলজি শিখেছি।