প্রোগ্রামিংয়ের মৌলিক ধারণা/ইফ দেন এলস
সংক্ষিপ্ত বিবরণ
[সম্পাদনা]ইফ–দেন–এলস গঠন, যাকে কখনও কখনও ইফ–দেন বলা হয়, এটি একটি দ্বিমুখী নির্বাচনী কাঠামো যা অনেক প্রোগ্রামিং ভাষায় প্রচলিত। যদিও ভাষাভেদে সিনট্যাক্স পরিবর্তিত হয়, তবুও মৌলিক কাঠামোটি সাধারণত এভাবে দেখায়:[১]
If (boolean condition) Then
(consequent)
Else
(alternative)
End If
আলোচনা
[সম্পাদনা]নির্বাচন শ্রেণির অন্তর্ভুক্ত 'ইফ দেন এলস' নিয়ন্ত্রণ কাঠামোটি প্রতিটি উচ্চস্তরের প্রোগ্রামিং ভাষায় বিদ্যমান। এই কাঠামোটি একটি প্রশ্ন করে যা সত্য বা মিথ্যা উত্তর দেয়। নিচের উদাহরণটি পর্যালোচনা করুনঃ
if the answer to the question is true
then do this
else because it is false
do this
অধিকাংশ প্রোগ্রামিং ভাষায় প্রশ্নটিকে (যা একটি টেস্ট এক্সপ্রেশন নামে পরিচিত) একটি বুলিয়ান এক্সপ্রেশন হিসেবে বিবেচনা করা হয়। বুলিয়ান ডেটা টাইপের দুটি মান থাকে – সত্য (true) এবং মিথ্যা (false)। আসুন, এই বিষয়টি বিবেচনায় রেখে কাঠামোটিকে নতুনভাবে লিখি:
if expression is true
then do this
else because it is false
do this
কিছু প্রোগ্রামিং ভাষা "if" (যদি), "then" (তবে) এবং "else" (অন্যথায়) শব্দগুলোকে সংরক্ষিত শব্দ হিসেবে ব্যবহার করে। অনেক ভাষায় “then” শব্দটি বাদ দেওয়া হয়। এছাড়াও সত্য (true) ও মিথ্যা (false) উভয় অবস্থার জন্য "do this" (এটি করো) ধরনের নির্দেশ যুক্ত থাকতে পারে। আপনি এটি এভাবে দেখতে পারেন:
if expression is true
action true
else
action false
এবং অধিকাংশ প্রোগ্রামিং ভাষায় “is true” (সত্য কিনা) এটি বোঝানো হয়, স্পষ্টভাবে লিখতে হয় না। আপনি এটি নিম্নরূপ দেখতে পারেনঃ
if expression
action true
else
action false
উপরে বর্ণিত নিয়ন্ত্রণ কাঠামোর চারটি রূপ আসলে একই কথা বলছে। ইংরেজি ভাষাভাষীদের দৈনন্দিন কথোপকথনে “else” শব্দটি প্রায়ই ব্যবহৃত হয় না। তবে একজন মা এবং তার সন্তানের মধ্যে নিম্নলিখিত কথোপকথনটি বিবেচনা করুন।
সন্তান জিজ্ঞেস করে, “মা, আমি কি বাইরে গিয়ে খেলতে পারি?”
মা উত্তর দেন, “যদি তোমার ঘর পরিষ্কার থাকে, তাহলে তুমি বাইরে গিয়ে খেলতে পারো; অন্যথায়, তুমি একটি চেয়ারে পাঁচ মিনিট বসে থাকো—শাস্তিস্বরূপ, কারণ তুমি জানো তোমার ঘর নোংরা, তবুও তুমি আমাকে এই প্রশ্ন করেছ।”
আমরা লক্ষ্য করতে পারি যে, শিশুটি কী করবে—সেই কার্যক্রম (বা প্রবাহ) নির্ধারণ করার জন্য সব উপাদানই এখানে উপস্থিত। কারণ প্রশ্নটি (তোমার ঘর কি পরিষ্কার?) কেবল দুটি সম্ভাব্য উত্তর রাখতে পারে—সত্য বা মিথ্যা—তাই কর্মগুলো পরস্পর-বিরোধী (mutually exclusive)। অর্থাৎ, শিশুটি হয় ১) বাইরে গিয়ে খেলবে, অথবা ২) পাঁচ মিনিটের জন্য চেয়ারে বসে থাকবে। দুটি কর্মের মধ্যে শুধুমাত্র একটি কার্যকর হবে; কখনও একসঙ্গে দুটি নয়।
একটি পছন্দ – অন্তর্নিহিত দ্বিমুখী নির্বাচন
[সম্পাদনা]প্রায়ই প্রোগ্রামার এমন একটি কাজ করতে চান যা কেবল তখনই সম্পন্ন হবে, যখন শর্তটি সত্য (true) হবে—অর্থাৎ, মিথ্যা (false) হলে কিছুই করা হবে না। মিথ্যা অবস্থায় কোনো কাজ না করার এই বিষয়টিকে “null else” বা “শূন্য else” বলা হয় এবং এটি নিম্নরূপ লেখা হয়ঃ
if expression
action true
else
do nothing
যেহেতু “অন্য কিছুই করো না” এটি অনুমানযোগ্য, তাই সাধারণত এটি সংক্ষিপ্ত রূপে লেখা হয়, যেমনঃ
if expression
action true
মূল শব্দাবলী
[সম্পাদনা]- ইফ–দেন–এলস
- একটি দ্বিমুখী নির্বাচন নিয়ন্ত্রণ কাঠামো।
- পরস্পরবিরোধী
- যে আইটেমগুলি একে অপরকে অতিক্রম করে না। উদাহরণ: সত্য বা মিথ্যা।