লজিক্যাল অপারেটর: &&, ||, !
Elixir তে লজিক্যাল অপারেটর &&, ||, এবং ! ব্যবহার করা হয় বুলিয়ান মানের (true/false) ওপর অপারেশন করার জন্য। এগুলি কোডের শর্তাধীন সিদ্ধান্তে (conditional statements) খুবই গুরুত্বপূর্ণ ভূমিকা পালন করে এবং ফ্লো কন্ট্রোলের জন্য ব্যবহার করা হয়।
1. && (লজিক্যাল AND)
&& অপারেটরটি দুটি শর্তের মধ্যে লজিক্যাল AND অপারেশন করে। এটি true রিটার্ন করবে তবে যদি উভয় শর্তই সত্য (true) হয়, অন্যথায় false রিটার্ন করবে।
- সিনট্যাক্স:
condition1 && condition2 - ব্রাহ্মণ:
- যদি
condition1এবংcondition2দুটি শর্তই সত্য হয়, তবে ফলাফল হবেtrue। - অন্যথায়, যদি একটিও
falseহয়, ফলাফল হবেfalse।
- যদি
উদাহরণ:
iex> true && true
true
iex> true && false
false
iex> false && true
false
iex> false && false
falseএখানে, ফলাফল শুধুমাত্র true হবে যদি উভয় শর্ত সত্য হয়, অন্যথায় false হবে।
2. || (লজিক্যাল OR)
|| অপারেটরটি দুটি শর্তের মধ্যে লজিক্যাল OR অপারেশন করে। এটি true রিটার্ন করবে যদি যেকোনো একটি শর্ত সত্য হয়। যদি উভয় শর্তই মিথ্যা (false) হয়, তবে false রিটার্ন করবে।
- সিনট্যাক্স:
condition1 || condition2 - ব্রাহ্মণ:
- যদি
condition1বাcondition2যে কোন একটি শর্ত সত্য হয়, ফলাফল হবেtrue। - যদি উভয় শর্তই মিথ্যা হয়, ফলাফল হবে
false।
- যদি
উদাহরণ:
iex> true || true
true
iex> true || false
true
iex> false || true
true
iex> false || false
falseএখানে, ফলাফল true হবে যদি যেকোনো একটি শর্ত সত্য হয়, এবং false হবে শুধুমাত্র যখন উভয় শর্তই মিথ্যা হয়।
3. ! (লজিক্যাল NOT)
! অপারেটরটি একটি লজিক্যাল NOT অপারেশন করে। এটি একটি শর্তের মান বিপরীত করে:
- যদি শর্তটি
trueহয়, তবে এটিfalseরিটার্ন করবে। - যদি শর্তটি
falseহয়, তবে এটিtrueরিটার্ন করবে। - সিনট্যাক্স:
!condition - ব্রাহ্মণ:
- যদি শর্তটি
trueহয়, তাহলে ফলাফল হবেfalse। - যদি শর্তটি
falseহয়, তাহলে ফলাফল হবেtrue।
- যদি শর্তটি
উদাহরণ:
iex> !true
false
iex> !false
trueএখানে, ! অপারেটরটি শর্তের মান উল্টে দেয়।
লজিক্যাল অপারেটরের ব্যবহার শর্তাধীন স্টেটমেন্টে
লজিক্যাল অপারেটরগুলি শর্তাধীন স্টেটমেন্টে, যেমন if এবং unless, ব্যবহার করা হয় সিদ্ধান্ত নেয়ার জন্য।
উদাহরণ && (AND) এবং || (OR) এর সাথে:
# AND (&&) ব্যবহার করে দুটি শর্ত পরীক্ষা করা
if true && true do
IO.puts "দুটি শর্তই সত্য!"
else
IO.puts "অন্যথায়, একটি শর্তও মিথ্যা!"
end
# আউটপুট: "দুটি শর্তই সত্য!"
# OR (||) ব্যবহার করে পরীক্ষা করা
if false || true do
IO.puts "অন্তত একটি শর্ত সত্য!"
else
IO.puts "দুটি শর্তই মিথ্যা!"
end
# আউটপুট: "অন্তত একটি শর্ত সত্য!"উদাহরণ ! (NOT) এর সাথে:
# NOT (!) ব্যবহার করে শর্তটি বিপরীত করা
if !false do
IO.puts "শর্তটি সত্য হয়ে গেছে!"
else
IO.puts "শর্তটি মিথ্যা!"
end
# আউটপুট: "শর্তটি সত্য হয়ে গেছে!"শর্ট সার্কুইটিং (Short-circuiting) আচরণ
Elixir তে শর্ট সার্কুইটিং ব্যবহার করা হয় && এবং || অপারেটরের জন্য, অর্থাৎ:
&&: যদি প্রথম শর্তfalseহয়, তবে দ্বিতীয় শর্ত পরীক্ষা করা হয় না।||: যদি প্রথম শর্তtrueহয়, তবে দ্বিতীয় শর্ত পরীক্ষা করা হয় না।
উদাহরণ (Short-circuiting &&):
iex> false && (IO.puts "এটি প্রিন্ট হবে না")
falseএখানে, প্রথম শর্ত false হওয়ায়, দ্বিতীয় শর্ত পরীক্ষা করা হয়নি এবং বার্তা প্রিন্ট হয়নি।
উদাহরণ (Short-circuiting ||):
iex> true || (IO.puts "এটি প্রিন্ট হবে না")
trueএখানে, প্রথম শর্ত true হওয়ায়, দ্বিতীয় শর্ত পরীক্ষা করা হয়নি এবং বার্তা প্রিন্ট হয়নি।
সারসংক্ষেপ
&&(AND): উভয় শর্ত সত্য হলেtrue, অন্যথায়false।||(OR): যেকোনো একটি শর্ত সত্য হলেtrue, এবং যদি উভয় শর্তই মিথ্যা হয়, তবেfalse।!(NOT): শর্তের মান বিপরীত করে;trueহলেfalseএবংfalseহলেtrueরিটার্ন করে।
এই লজিক্যাল অপারেটরগুলি শর্তাধীন স্টেটমেন্টে সিদ্ধান্ত গ্রহণে সাহায্য করে এবং কোডের কার্যকারিতা এবং পারফরম্যান্স উন্নত করতে সহায়ক।
Read more