পাইথনে ফ্ল্যাগ নিয়ে কাজ
ফ্ল্যাগ হল একটি বিশেষ ভেরিয়েবল,
যা শুধুমাত্র দুটি মান নিতে পারে:
True বা False। ফ্ল্যাগের
সাহায্যে এমন সমস্যার সমাধান করা যায়
যা কিছু না থাকা পরীক্ষা করে: উদাহরণস্বরূপ,
এটি পরীক্ষা করা যায় যে একটি তালিকায়
কোনো নির্দিষ্ট মান সহ উপাদান নেই।
আসুন নিম্নলিখিত সমস্যাটি সমাধান করি: সংখ্যার
একটি তালিকা দেওয়া আছে, এতে সমস্ত উপাদান
ধনাত্মক কিনা তা পরীক্ষা করতে হবে। এর জন্য
আমরা একটি বিশেষ ভেরিয়েবল flag
সেট করব, যা লুপ শুরু হওয়ার আগে সত্য হবে। আর
লুপের মধ্যে ঋণাত্মক সংখ্যা পাওয়া মাত্র,
এটির মান False-এ পরিবর্তন করব।
পরীক্ষার ফলাফল জানতে, লুপের পরে flag
ভেরিয়েবলটি কনসোলে আউটপুট করব:
lst = [1, 2, 3, 4, 5]
flag = True
for el in lst:
if el < 0:
flag = False
print(flag) # True আউটপুট করবে, কারণ সব সংখ্যাই ধনাত্মক
ফ্ল্যাগ ভেরিয়েবলের জন্য এমন নাম দেওয়া ভালো
অভ্যাস যা নির্ধারিত শর্তকে প্রতিফলিত করে।
আসুন flag-এর নাম পরিবর্তন করে
isAllPositive করি। এবং স্পষ্টতার জন্য
তালিকার একটি সংখ্যাকে ঋণাত্মক করে পরিবর্তন করি:
lst = [1, 2, 3, -4, 5]
isAllPositive = True
for el in lst:
if el < 0:
isAllPositive = False
print(isAllPositive) # False আউটপুট করবে, কারণ একটি ঋণাত্মক সংখ্যা আছে
যদি খোজা তালিকায় অনেক 값 থাকে এবং প্রথম
ঋণাত্মক সংখ্যা খুঁজে পাওয়ার পরে লুপটি
বন্ধ করতে হয়, তবে break নির্দেশিকা
প্রয়োগ করা উচিত:
for el in lst:
if el < 0:
isAllPositive = False
break
ফ্ল্যাগ নিয়ে কাজ করার সময়, লুপ সম্পাদনের
ফলাফল জানতে, ফ্ল্যাগের মান আউটপুট না করে,
অতিরিক্ত if ব্যবহার করে একটি নির্বিচারে
বার্তা আউটপুট করা যেতে পারে।
আসুন আগের উদাহরণটি আবার লিখি। যদি
সমস্ত উপাদান ধনাত্মক হয়, তবে যেন
'+++' আউটপুট হয়, যদি না হয় -
'---':
for el in lst:
if el < 0:
isAllPositive = False
break
if isAllPositive:
print('+++')
else:
print('---') # '---' আউটপুট করবে
একটি তালিকা দেওয়া আছে। পরীক্ষা করুন যে এর সমস্ত উপাদান ধনাত্মক সংখ্যা কিনা।
একটি পূর্ণসংখ্যা দেওয়া আছে। পরীক্ষা করুন যে এটি মৌলিক সংখ্যা কিনা, অর্থাৎ শুধুমাত্র এক এবং নিজে দ্বারা বিভাজ্য কিনা।