Batch scripting এ Nested IF স্টেটমেন্ট ব্যবহার করা হয় যখন একটি IF স্টেটমেন্টের মধ্যে আরও এক বা একাধিক IF স্টেটমেন্ট থাকতে পারে। এটি আপনাকে একটি শর্তের ভিত্তিতে আরও জটিল শর্ত পরীক্ষা করার সুযোগ দেয়, যাতে আরো নির্দিষ্ট এবং কাস্টমাইজড সিদ্ধান্ত নেয়া যায়।
এটি মূলত একাধিক শর্ত পরীক্ষার জন্য ব্যবহৃত হয়, যেখানে প্রথম শর্তটি যদি সত্য (True) হয়, তবে তার মধ্যে আরও একটি শর্ত পরীক্ষা করা হয়। যদি প্রথম শর্ত মিথ্যা (False) হয়, তবে দ্বিতীয় শর্ত পরীক্ষা করা হয় অথবা একটি আলাদা একশন নেওয়া হয়।
কমান্ডের সিনট্যাক্স:
IF [শর্ত ১] (
IF [শর্ত ২] (
[এখানে কোড চালানো হবে]
)
[যদি শর্ত ১ মিথ্যা হয়, তবে অন্য কোড চলবে]
)
উদাহরণ:
ধরা যাক, আপনি পরীক্ষা করতে চান যে একটি সংখ্যা পজিটিভ, নেগেটিভ, বা জিরো। এই কাজটি করতে আপনি Nested IF স্টেটমেন্ট ব্যবহার করতে পারেন।
@echo off
set /p num=একটি সংখ্যা লিখুন:
IF %num% LSS 0 (
echo সংখ্যাটি নেগেটিভ।
) ELSE (
IF %num% GTR 0 (
echo সংখ্যাটি পজিটিভ।
) ELSE (
echo সংখ্যাটি জিরো।
)
)
pause
ব্যাখ্যা:
- প্রথমে, আমরা একটি সংখ্যা গ্রহণ করেছি
set /p num=একটি সংখ্যা লিখুন:। - এরপর, প্রথম
IFস্টেটমেন্ট চেক করবে যে, সংখ্যাটি নেগেটিভ কিনা (যদি%num% LSS 0হয়)। - যদি না হয়, তাহলে পরবর্তী
ELSEঅংশে Nested IF ব্যবহার করে চেক করবে যে, সংখ্যাটি পজিটিভ কিনা (যদি%num% GTR 0হয়)। - যদি উভয় শর্তই মিথ্যা হয়, তবে পরবর্তী
ELSEঅংশটি কার্যকর হবে, অর্থাৎ সংখ্যাটি জিরো হবে।
আরেকটি উদাহরণ:
ধরা যাক, আপনি দুটি ভ্যালু তুলনা করতে চান এবং সিদ্ধান্ত নিতে চান যে কোনটি বড়:
@echo off
set /p val1=প্রথম সংখ্যা লিখুন:
set /p val2=দ্বিতীয় সংখ্যা লিখুন:
IF %val1% GTR %val2% (
echo প্রথম সংখ্যা বড়।
) ELSE (
IF %val1% LSS %val2% (
echo দ্বিতীয় সংখ্যা বড়।
) ELSE (
echo দুটি সংখ্যা সমান।
)
)
pause
ব্যাখ্যা:
- দুটি সংখ্যার মধ্যে তুলনা করা হচ্ছে।
- প্রথম
IFচেক করবে যে, প্রথম সংখ্যা দ্বিতীয়টির চেয়ে বড় কিনা। - যদি না হয়, তাহলে দ্বিতীয়
IFচেক করবে যে, দ্বিতীয় সংখ্যা প্রথমটির চেয়ে বড় কিনা। - যদি উভয় শর্ত মিথ্যা হয়, অর্থাৎ দুটি সংখ্যা সমান, তাহলে "দুটি সংখ্যা সমান" বার্তা প্রদর্শিত হবে।
Nested IF স্টেটমেন্ট এর সুবিধা:
- জটিল শর্ত পরীক্ষার ক্ষেত্রে Nested IF স্টেটমেন্ট খুবই কার্যকরী।
- আপনি একাধিক শর্ত পরীক্ষা করতে পারেন এবং প্রয়োজন অনুযায়ী বিভিন্ন সিদ্ধান্ত গ্রহণ করতে পারেন।
সতর্কতা:
- Nested IF স্টেটমেন্টের মধ্যে বেশি স্তর (levels) হতে পারে যা কোডকে কিছুটা জটিল এবং অপরিষ্কার করে ফেলতে পারে। তাই যতটা সম্ভব কোডকে পরিষ্কার এবং সহজ রাখার চেষ্টা করুন।
- সঠিক বন্ধনী
)ব্যবহার না করলে কোডে সমস্যা হতে পারে, তাই সাবধানতা অবলম্বন করুন।
সারাংশ
Nested IF স্টেটমেন্ট আপনাকে একাধিক শর্ত পরীক্ষা করতে সহায়তা করে, যার ফলে আপনি বিভিন্ন পরিস্থিতির জন্য ভিন্ন ভিন্ন কোড রান করতে পারেন। Batch script এ এই স্টেটমেন্টটি ব্যবহার করে আপনি জটিল লজিক তৈরি করতে পারেন যা একক IF স্টেটমেন্ট দিয়ে সম্ভব হয় না।
Read more