সি শার্প (C#) প্রোগ্রামিংয়ে অপারেটরস এবং এক্সপ্রেশন গুরুত্বপূর্ণ ভূমিকা পালন করে। অপারেটরস হলো বিশেষ চিহ্ন বা প্রতীক যা ভেরিয়েবল বা মানের উপর নির্দিষ্ট কাজ সম্পন্ন করতে ব্যবহৃত হয়, এবং এক্সপ্রেশন হলো এক বা একাধিক অপারেটর ও অপারেন্ডের সমন্বয়ে গঠিত একটি নির্দিষ্ট মান প্রদানে সক্ষম।
অপারেটরস (Operators)
সি শার্পে বিভিন্ন ধরনের অপারেটর রয়েছে, যা বিভিন্ন প্রয়োজন অনুযায়ী ব্যবহৃত হয়। নিচে সি শার্পে ব্যবহৃত কিছু সাধারণ অপারেটর সম্পর্কে আলোচনা করা হলো:
১. অ্যারিথমেটিক অপারেটরস (Arithmetic Operators)
এই অপারেটরগুলো গণনার জন্য ব্যবহৃত হয়।
| অপারেটর | বর্ণনা | উদাহরণ |
|---|---|---|
+ | যোগ | a + b |
- | বিয়োগ | a - b |
* | গুণ | a * b |
/ | ভাগ | a / b |
% | ভাগশেষ (মডুলাস) | a % b |
int a = 10;
int b = 3;
Console.WriteLine(a + b); // Output: 13
Console.WriteLine(a - b); // Output: 7
Console.WriteLine(a * b); // Output: 30
Console.WriteLine(a / b); // Output: 3
Console.WriteLine(a % b); // Output: 1
২. এসাইনমেন্ট অপারেটরস (Assignment Operators)
এসাইনমেন্ট অপারেটর একটি ভেরিয়েবলে মান সংরক্ষণ করতে ব্যবহৃত হয়।
| অপারেটর | বর্ণনা | উদাহরণ |
|---|---|---|
= | এসাইন | a = b |
+= | যোগ এবং এসাইন | a += b |
-= | বিয়োগ এবং এসাইন | a -= b |
*= | গুণ এবং এসাইন | a *= b |
/= | ভাগ এবং এসাইন | a /= b |
%= | ভাগশেষ এবং এসাইন | a %= b |
int a = 10;
a += 5; // a = a + 5; -> a = 15
Console.WriteLine(a); // Output: 15
৩. তুলনা অপারেটরস (Comparison Operators)
তুলনা অপারেটর দুটি মানের মধ্যে তুলনা করতে ব্যবহৃত হয় এবং একটি বুলিয়ান মান রিটার্ন করে।
| অপারেটর | বর্ণনা | উদাহরণ |
|---|---|---|
== | সমান | a == b |
!= | অসমান | a != b |
> | বড় | a > b |
< | ছোট | a < b |
>= | বড় বা সমান | a >= b |
<= | ছোট বা সমান | a <= b |
int a = 10;
int b = 5;
Console.WriteLine(a == b); // Output: False
Console.WriteLine(a > b); // Output: True
৪. লজিক্যাল অপারেটরস (Logical Operators)
লজিক্যাল অপারেটরগুলি একাধিক শর্ত একসাথে যাচাই করতে ব্যবহৃত হয়। এগুলো সাধারণত bool টাইপের এক্সপ্রেশন হিসেবে ব্যবহৃত হয়।
| অপারেটর | বর্ণনা | উদাহরণ |
|---|---|---|
&& | AND | a && b |
| ` | ` | |
! | NOT | !a |
bool x = true;
bool y = false;
Console.WriteLine(x && y); // Output: False
Console.WriteLine(x || y); // Output: True
Console.WriteLine(!x); // Output: False
৫. ইনক্রিমেন্ট এবং ডিক্রিমেন্ট অপারেটর (Increment and Decrement Operators)
ইনক্রিমেন্ট অপারেটর (++) এবং ডিক্রিমেন্ট অপারেটর (--) কোনো ভেরিয়েবলের মান বাড়ানো বা কমানোর জন্য ব্যবহৃত হয়।
| অপারেটর | বর্ণনা | উদাহরণ |
|---|---|---|
++ | মান ১ বাড়ায় | a++ |
-- | মান ১ কমায় | a-- |
int a = 5;
a++;
Console.WriteLine(a); // Output: 6
a--;
Console.WriteLine(a); // Output: 5
৬. কন্ডিশনাল অপারেটর (Conditional/Ternary Operator)
কন্ডিশনাল অপারেটর (? :) এক লাইনে শর্ত যাচাই করতে ব্যবহৃত হয়। এটি তিনটি অংশ নিয়ে গঠিত।
int a = 10;
string result = (a > 5) ? "Greater" : "Smaller";
Console.WriteLine(result); // Output: Greater
এক্সপ্রেশন (Expression)
এক্সপ্রেশন হলো এক বা একাধিক অপারেটর এবং অপারেন্ডের সমন্বয়, যা একটি নির্দিষ্ট মান প্রদান করে। এক্সপ্রেশন সাধারণত প্রোগ্রামের বিভিন্ন স্থানে ব্যবহৃত হয় এবং প্রয়োজন অনুযায়ী অপারেটর ও ভেরিয়েবলের উপর ভিত্তি করে কাজ সম্পন্ন করে।
উদাহরণ: অ্যারিথমেটিক এক্সপ্রেশন
int a = 10;
int b = 5;
int sum = a + b;
Console.WriteLine(sum); // Output: 15
উদাহরণ: লজিক্যাল এক্সপ্রেশন
int a = 10;
int b = 5;
bool result = (a > b) && (a != 0);
Console.WriteLine(result); // Output: True
উদাহরণ: কন্ডিশনাল এক্সপ্রেশন
int age = 18;
string eligibility = (age >= 18) ? "Eligible" : "Not Eligible";
Console.WriteLine(eligibility); // Output: Eligible
অপারেটর প্রাধান্য (Operator Precedence)
সি শার্পে অপারেটর প্রাধান্যের একটি নির্দিষ্ট ক্রম রয়েছে। কিছু অপারেটরের প্রাধান্য বেশি এবং তারা আগে এক্সিকিউট হয়। উদাহরণস্বরূপ, গুণ ও ভাগ অপারেটরের প্রাধান্য যোগ ও বিয়োগ অপারেটরের চেয়ে বেশি।
| অপারেটর | প্রাধান্য |
|---|---|
*, /, % | গুণ, ভাগ, মডুলাস |
+, - | যোগ, বিয়োগ |
<, >, <=, >= | তুলনা |
==, != | সমান, অসমান |
&& | AND |
| ` |
int result = 10 + 5 * 2; // Output: 20, কারণ গুণ অপারেটর আগে কাজ করে
উদাহরণ প্রোগ্রাম: বিভিন্ন অপারেটরের ব্যবহার
using System;
namespace OperatorsAndExpressions
{
class Program
{
static void Main(string[] args)
{
int a = 10;
int b = 3;
int sum = a + b;
bool isGreater = a > b;
string message = (a > b) ? "A is greater" : "B is greater";
Console.WriteLine("Sum: " + sum); // Output: 13
Console.WriteLine("Is A greater than B? " + isGreater); // Output: True
Console.WriteLine("Message: " + message); // Output: A is greater
}
}
}
সারসংক্ষেপ
সি শার্পে বিভিন্ন ধরনের অপারেটর রয়েছে, যেমন অ্যারিথমেটিক, এসাইনমেন্ট, তুলনা, লজিক্যাল, এবং কন্ডিশনাল অপারেটর, যা বিভিন্ন ধরনের গাণিতিক, শর্তমূলক এবং লজিক্যাল কাজ সম্পন্ন করে। অপারেটর এবং এক্সপ্রেশন সঠিকভাবে ব্যবহার করে প্রোগ্রামের কার্যকারিতা বৃদ্ধি করা যায়।
অ্যারিথমেটিক অপারেটর (Arithmetic Operators) হলো এমন অপারেটর যা গণিতের বিভিন্ন কাজ সম্পন্ন করতে ব্যবহার করা হয়, যেমন যোগ, বিয়োগ, গুণ, ভাগ এবং ভাগশেষ নির্ণয়। C# সহ বিভিন্ন প্রোগ্রামিং ভাষায় অ্যারিথমেটিক অপারেটরগুলো প্রচলিত এবং গুরুত্বপূর্ণ।
C# এ মোট পাঁচটি অ্যারিথমেটিক অপারেটর রয়েছে:
| অপারেটর | ব্যবহার | বর্ণনা |
|---|---|---|
+ | a + b | যোগ |
- | a - b | বিয়োগ |
* | a * b | গুণ |
/ | a / b | ভাগ |
% | a % b | ভাগশেষ নির্ণয় (মডুলো) |
উদাহরণ সহ ব্যাখ্যা
ধরা যাক, আমাদের দুটি ভেরিয়েবল রয়েছে: a = 15 এবং b = 4। নিচে প্রতিটি অপারেটরের উদাহরণ দেওয়া হলো:
using System;
namespace ArithmeticOperatorsExample
{
class Program
{
static void Main(string[] args)
{
int a = 15;
int b = 4;
// যোগ
int sum = a + b;
Console.WriteLine("Sum (a + b) = " + sum); // Output: 19
// বিয়োগ
int difference = a - b;
Console.WriteLine("Difference (a - b) = " + difference); // Output: 11
// গুণ
int product = a * b;
Console.WriteLine("Product (a * b) = " + product); // Output: 60
// ভাগ
int quotient = a / b;
Console.WriteLine("Quotient (a / b) = " + quotient); // Output: 3
// ভাগশেষ নির্ণয় (মডুলো)
int remainder = a % b;
Console.WriteLine("Remainder (a % b) = " + remainder); // Output: 3
}
}
}
অপারেটরগুলোর বিস্তারিত
যোগ অপারেটর (+):
- দুটি সংখ্যাকে যোগ করে।
- উদাহরণ:
15 + 4 = 19
বিয়োগ অপারেটর (-):
- প্রথম সংখ্যা থেকে দ্বিতীয় সংখ্যা বিয়োগ করে।
- উদাহরণ:
15 - 4 = 11
গুণ অপারেটর (*):
- দুটি সংখ্যাকে গুণ করে।
- উদাহরণ:
15 * 4 = 60
ভাগ অপারেটর (/):
- প্রথম সংখ্যাকে দ্বিতীয় সংখ্যা দ্বারা ভাগ করে ভাগফল প্রদান করে।
- উদাহরণ:
15 / 4 = 3(কোনো দশমিক অংশ থাকলে ইন্টিজারে ভাগফল রূপান্তর করা হয়)
মডুলো অপারেটর (%):
- প্রথম সংখ্যাকে দ্বিতীয় সংখ্যা দ্বারা ভাগ করে ভাগশেষ প্রদান করে।
- উদাহরণ:
15 % 4 = 3
কিছু গুরুত্বপূর্ণ বিষয়
ভাগ (/) এবং মডুলো (%): দুইটি ভিন্ন অপারেটর হলেও, অনেক সময় একসাথে ব্যবহার করা হয়। ভাগ অপারেটর কেবল ভাগফল দেয়, আর মডুলো অপারেটর ভাগশেষ দেয়।
ভগ্নাংশ সংখ্যা (decimal): যদি ভগ্নাংশের সাথে কাজ করতে হয়, তাহলে double বা float টাইপের ভেরিয়েবল ব্যবহার করা হয়। উদাহরণস্বরূপ:
double x = 15;
double y = 4;
double result = x / y; // Output: 3.75
সারসংক্ষেপে
অ্যারিথমেটিক অপারেটরগুলো C# প্রোগ্রামিংয়ে গণিতের বিভিন্ন কাজ সম্পন্ন করতে ব্যবহৃত হয়। যোগ, বিয়োগ, গুণ, ভাগ, এবং ভাগশেষ নির্ণয়ের মাধ্যমে বিভিন্ন গাণিতিক কার্যক্রম সহজেই সম্পন্ন করা যায়।
সি শার্পে (C#) রিলেশনাল অপারেটরস দুটি মানের মধ্যে তুলনা করার জন্য ব্যবহৃত হয়। এই অপারেটরগুলো সাধারণত শর্ত যাচাই করতে এবং লজিক্যাল এক্সপ্রেশন তৈরি করতে সহায়ক। রিলেশনাল অপারেটরস একটি বুলিয়ান মান (সত্য বা মিথ্যা) প্রদান করে।
রিলেশনাল অপারেটরসের তালিকা এবং তাদের কার্যপ্রণালী
| অপারেটর | বর্ণনা | উদাহরণ | ফলাফল |
|---|---|---|---|
== | সমান কি না | a == b | True যদি a এবং b সমান হয় |
!= | অসমান কি না | a != b | True যদি a এবং b অসমান হয় |
> | বড় কি না | a > b | True যদি a, b থেকে বড় হয় |
< | ছোট কি না | a < b | True যদি a, b থেকে ছোট হয় |
>= | বড় বা সমান কি না | a >= b | True যদি a, b থেকে বড় বা সমান হয় |
<= | ছোট বা সমান কি না | a <= b | True যদি a, b থেকে ছোট বা সমান হয় |
উদাহরণসহ রিলেশনাল অপারেটরসের ব্যবহার
নিচে কিছু উদাহরণ দেয়া হলো যেখানে C# এ রিলেশনাল অপারেটর ব্যবহার করে শর্ত যাচাই করা হয়েছে:
using System;
namespace RelationalOperatorsExample
{
class Program
{
static void Main(string[] args)
{
int a = 10;
int b = 5;
// == অপারেটর
Console.WriteLine("a == b : " + (a == b)); // Output: False
// != অপারেটর
Console.WriteLine("a != b : " + (a != b)); // Output: True
// > অপারেটর
Console.WriteLine("a > b : " + (a > b)); // Output: True
// < অপারেটর
Console.WriteLine("a < b : " + (a < b)); // Output: False
// >= অপারেটর
Console.WriteLine("a >= b : " + (a >= b)); // Output: True
// <= অপারেটর
Console.WriteLine("a <= b : " + (a <= b)); // Output: False
}
}
}
আউটপুট
a == b : False
a != b : True
a > b : True
a < b : False
a >= b : True
a <= b : False
উদাহরণ: রিলেশনাল অপারেটর ব্যবহার করে শর্ত যাচাই
রিলেশনাল অপারেটরগুলো if, else if, এবং else শর্তের মধ্যে ব্যবহার করা যায়, যা প্রোগ্রামে বিভিন্ন শর্ত যাচাই এবং সিদ্ধান্ত নিতে সাহায্য করে।
int age = 18;
if (age >= 18)
{
Console.WriteLine("Eligible for voting.");
}
else
{
Console.WriteLine("Not eligible for voting.");
}
উপরের উদাহরণে, age >= 18 শর্তটি >= অপারেটর ব্যবহার করে যাচাই করা হয়েছে। যদি age 18 বা তার বেশি হয়, তাহলে "Eligible for voting" মেসেজ প্রিন্ট করবে; অন্যথায় "Not eligible for voting" মেসেজ প্রিন্ট করবে।
সারসংক্ষেপ
সি শার্পের রিলেশনাল অপারেটরস দুটি মানের তুলনা করতে এবং শর্ত যাচাই করতে ব্যবহৃত হয়। এগুলো সাধারণত শর্তমূলক স্টেটমেন্ট বা লজিক্যাল এক্সপ্রেশন তৈরিতে সহায়ক এবং তুলনার ফলাফল হিসাবে true বা false প্রদান করে, যা প্রোগ্রামিংয়ের বিভিন্ন স্থানে সিদ্ধান্ত নিতে সাহায্য করে।
লজিক্যাল অপারেটর (Logical Operators) হলো এমন অপারেটর, যা শর্ত বা একাধিক শর্ত পরীক্ষা করতে ব্যবহৃত হয়। এগুলো সাধারণত if স্টেটমেন্ট এবং লুপের ভেতরে ব্যবহার করা হয় এবং একাধিক শর্তের উপর ভিত্তি করে ফলাফল প্রদান করে। C# এ তিনটি প্রধান লজিক্যাল অপারেটর রয়েছে:
| অপারেটর | নাম | বর্ণনা |
|---|---|---|
&& | AND | দুইটি শর্তই সত্য হলে ফলাফল সত্য হয় |
|| | OR | যেকোনো একটি শর্ত সত্য হলে ফলাফল সত্য হয় |
! | NOT | শর্তকে বিপরীত মানে রূপান্তর করে (সত্য হলে মিথ্যা, মিথ্যা হলে সত্য) |
উদাহরণসহ ব্যাখ্যা
নিচে লজিক্যাল অপারেটরগুলোর ব্যবহার উদাহরণসহ দেখানো হলো:
using System;
namespace LogicalOperatorsExample
{
class Program
{
static void Main(string[] args)
{
int age = 20;
bool hasVoterId = true;
// AND অপারেটর (&&)
if (age >= 18 && hasVoterId)
{
Console.WriteLine("You are eligible to vote.");
}
else
{
Console.WriteLine("You are not eligible to vote.");
}
// OR অপারেটর (||)
bool isStudent = false;
bool hasLibraryCard = true;
if (isStudent || hasLibraryCard)
{
Console.WriteLine("You have access to the library.");
}
else
{
Console.WriteLine("You do not have access to the library.");
}
// NOT অপারেটর (!)
bool isMarried = false;
if (!isMarried)
{
Console.WriteLine("You are not married.");
}
else
{
Console.WriteLine("You are married.");
}
}
}
}
অপারেটরগুলোর বিস্তারিত ব্যাখ্যা
AND অপারেটর (&&):
- দুটি শর্তই সত্য হলে ফলাফল সত্য হয়।
- উদাহরণ:
age >= 18 && hasVoterId - যদি
age১৮ বা তার বেশি হয় এবংhasVoterIdসত্য হয়, তাহলে ফলাফল হবে সত্য। অন্যথায় মিথ্যা।
OR অপারেটর (||):
- দুটি শর্তের মধ্যে যেকোনো একটি সত্য হলে ফলাফল সত্য হয়।
- উদাহরণ:
isStudent || hasLibraryCard - যদি
isStudentবাhasLibraryCardসত্য হয়, তাহলে ফলাফল সত্য হবে। উভয়ই মিথ্যা হলে ফলাফল মিথ্যা।
NOT অপারেটর (!):
- কোনো শর্তের মানকে বিপরীত মানে রূপান্তর করে।
- উদাহরণ:
!isMarried - যদি
isMarriedমিথ্যা থাকে, তাহলে!isMarriedসত্য হবে এবং বিপরীত।
লজিক্যাল অপারেটরের সংমিশ্রণ
লজিক্যাল অপারেটরগুলিকে একসাথে ব্যবহার করে জটিল শর্ত তৈরি করা যায়। উদাহরণস্বরূপ:
int age = 22;
bool hasVoterId = true;
bool isCitizen = true;
if ((age >= 18 && hasVoterId) || isCitizen)
{
Console.WriteLine("You are eligible to vote.");
}
else
{
Console.WriteLine("You are not eligible to vote.");
}
এখানে (age >= 18 && hasVoterId) || isCitizen শর্তটি পরীক্ষা করে দেখবে, যদি age ১৮ বা তার বেশি হয় এবং hasVoterId সত্য হয় অথবা isCitizen সত্য হয়, তাহলে ফলাফল হবে সত্য।
সারসংক্ষেপে
লজিক্যাল অপারেটরগুলো C# প্রোগ্রামিংয়ে শর্ত নির্ধারণ ও লজিক্যাল কার্যক্রম পরিচালনার জন্য অত্যন্ত গুরুত্বপূর্ণ। && AND অপারেটর, || OR অপারেটর এবং ! NOT অপারেটর ব্যবহার করে প্রোগ্রামিংয়ে জটিল শর্ত ও লজিক্যাল কার্যক্রম সহজে সম্পন্ন করা যায়।
সি শার্প (C#) এ অ্যাসাইনমেন্ট অপারেটরস এবং ইনক্রিমেন্ট/ডিক্রিমেন্ট অপারেটরস প্রোগ্রামের ভেরিয়েবলের মান সেট এবং পরিবর্তন করতে ব্যবহৃত হয়।
অ্যাসাইনমেন্ট অপারেটরস (Assignment Operators)
অ্যাসাইনমেন্ট অপারেটরস ভেরিয়েবলে মান সংরক্ষণ বা নির্দিষ্ট মান সেট করতে ব্যবহৃত হয়। এতে সাধারণ অ্যাসাইনমেন্ট অপারেটর (=) ছাড়াও বিভিন্ন কম্বাইন্ড অ্যাসাইনমেন্ট অপারেটরস রয়েছে, যা ভেরিয়েবলের মান আপডেট করতে সহায়ক।
| অপারেটর | বর্ণনা | উদাহরণ | ফলাফল (যদি a = 5 এবং b = 3) |
|---|---|---|---|
= | সরাসরি অ্যাসাইনমেন্ট | a = b | a = 3 |
+= | যোগ করে অ্যাসাইন | a += b | a = 8 |
-= | বিয়োগ করে অ্যাসাইন | a -= b | a = 2 |
*= | গুণ করে অ্যাসাইন | a *= b | a = 15 |
/= | ভাগ করে অ্যাসাইন | a /= b | a = 1 |
%= | ভাগশেষ অ্যাসাইন | a %= b | a = 2 |
উদাহরণ: অ্যাসাইনমেন্ট অপারেটরস
int a = 10;
int b = 5;
a += b; // a = a + b; -> a = 15
Console.WriteLine("a += b: " + a);
a -= b; // a = a - b; -> a = 10
Console.WriteLine("a -= b: " + a);
a *= b; // a = a * b; -> a = 50
Console.WriteLine("a *= b: " + a);
a /= b; // a = a / b; -> a = 10
Console.WriteLine("a /= b: " + a);
a %= b; // a = a % b; -> a = 0
Console.WriteLine("a %= b: " + a);
ইনক্রিমেন্ট এবং ডিক্রিমেন্ট অপারেটরস (Increment and Decrement Operators)
ইনক্রিমেন্ট এবং ডিক্রিমেন্ট অপারেটরস কোনো ভেরিয়েবলের মান এক ইউনিট বাড়ানো বা কমানোর জন্য ব্যবহৃত হয়।
| অপারেটর | বর্ণনা | উদাহরণ | ফলাফল (যদি a = 5) |
|---|---|---|---|
++ | মান ১ বাড়ায় | a++ বা ++a | a = 6 |
-- | মান ১ কমায় | a-- বা --a | a = 4 |
প্রি-ইনক্রিমেন্ট এবং পোস্ট-ইনক্রিমেন্ট
- প্রি-ইনক্রিমেন্ট (
++a): মান বাড়ানোর পরে এক্সপ্রেশন এক্সিকিউট হয়। - পোস্ট-ইনক্রিমেন্ট (
a++): এক্সপ্রেশন এক্সিকিউট হওয়ার পরে মান বাড়ে।
উদাহরণ: ইনক্রিমেন্ট এবং ডিক্রিমেন্ট অপারেটরস
int a = 5;
// প্রি-ইনক্রিমেন্ট
Console.WriteLine("++a: " + ++a); // Output: 6 (a = 6)
// পোস্ট-ইনক্রিমেন্ট
Console.WriteLine("a++: " + a++); // Output: 6 (a = 7)
Console.WriteLine("a after a++: " + a); // Output: 7
// প্রি-ডিক্রিমেন্ট
Console.WriteLine("--a: " + --a); // Output: 6 (a = 6)
// পোস্ট-ডিক্রিমেন্ট
Console.WriteLine("a--: " + a--); // Output: 6 (a = 5)
Console.WriteLine("a after a--: " + a); // Output: 5
উদাহরণ প্রোগ্রাম: অ্যাসাইনমেন্ট এবং ইনক্রিমেন্ট/ডিক্রিমেন্ট অপারেটরস
নিচে একটি উদাহরণ দেওয়া হলো যেখানে অ্যাসাইনমেন্ট এবং ইনক্রিমেন্ট/ডিক্রিমেন্ট অপারেটরস ব্যবহার করা হয়েছে:
using System;
namespace OperatorsExample
{
class Program
{
static void Main(string[] args)
{
int x = 10;
int y = 5;
// অ্যাসাইনমেন্ট অপারেটরস
x += y; // x = 10 + 5 -> x = 15
Console.WriteLine("x += y : " + x);
x -= y; // x = 15 - 5 -> x = 10
Console.WriteLine("x -= y : " + x);
// ইনক্রিমেন্ট অপারেটর
Console.WriteLine("x++ : " + x++); // Output: 10 (পোস্ট-ইনক্রিমেন্ট)
Console.WriteLine("After x++ : " + x); // Output: 11
// ডিক্রিমেন্ট অপারেটর
Console.WriteLine("--x : " + --x); // Output: 10 (প্রি-ডিক্রিমেন্ট)
}
}
}
আউটপুট
x += y : 15
x -= y : 10
x++ : 10
After x++ : 11
--x : 10
সারসংক্ষেপ
সি শার্পে (C#) অ্যাসাইনমেন্ট অপারেটরস এবং ইনক্রিমেন্ট/ডিক্রিমেন্ট অপারেটরস ভেরিয়েবলের মান নির্ধারণ এবং পরিবর্তনে ব্যবহৃত হয়। অ্যাসাইনমেন্ট অপারেটরস ভেরিয়েবলের মান আপডেট করে এবং ইনক্রিমেন্ট/ডিক্রিমেন্ট অপারেটরস মান এক ইউনিট বাড়ায় বা কমায়। এই অপারেটরগুলোর সঠিক ব্যবহার প্রোগ্রামের কোড সহজ ও সংক্ষিপ্ত করতে সহায়ক।
টার্নারি অপারেটর সি শার্পে (C#) একটি শর্ত যাচাইয়ের সংক্ষিপ্ত এবং কার্যকর উপায়। এটি সাধারণত if-else স্টেটমেন্টের বিকল্প হিসেবে ব্যবহৃত হয় এবং এটি একটি এক্সপ্রেশনে তিনটি অংশ নিয়ে গঠিত। তাই একে টার্নারি অপারেটর বলা হয়।
টার্নারি অপারেটরের গঠন হলো:
শর্ত ? সত্য_মান : মিথ্যা_মান;
?এর আগে শর্ত দেওয়া হয়।- শর্ত
trueহলে?এর পরের অংশটি (সত্য_মান) এক্সিকিউট হয়। - শর্ত
falseহলে:এর পরের অংশটি (মিথ্যা_মান) এক্সিকিউট হয়।
উদাহরণ: টার্নারি অপারেটর
নিচে একটি উদাহরণ দেয়া হলো যেখানে টার্নারি অপারেটর ব্যবহার করে শর্ত যাচাই করা হয়েছে:
int age = 18;
string result = (age >= 18) ? "Eligible to vote" : "Not eligible to vote";
Console.WriteLine(result);
উপরের উদাহরণে, age >= 18 শর্তটি যাচাই করা হয়েছে:
- যদি
age18 বা তার বেশি হয়, তাহলেresultএর মান হবে "Eligible to vote"। - অন্যথায়,
resultএর মান হবে "Not eligible to vote"।
আউটপুট
Eligible to vote
টার্নারি অপারেটর ব্যবহারের ক্ষেত্রে সুবিধা
১. সংক্ষিপ্ত কোড: টার্নারি অপারেটর if-else এর চেয়ে ছোট এবং সহজলভ্য। ২. সহজবোধ্য: ছোট শর্তগুলোর জন্য এটি সহজে বোঝা যায়। ৩. কোডের গঠন সুন্দর করে: এটি একই লাইনে শর্ত যাচাই ও মান নির্ধারণ করতে সহায়ক।
আরও উদাহরণ
নম্বর পজিটিভ, নেগেটিভ, বা জিরো কিনা তা নির্ধারণ
int number = -5;
string result = (number > 0) ? "Positive" : (number < 0) ? "Negative" : "Zero";
Console.WriteLine(result);
উপরের উদাহরণে, প্রথমে চেক করা হয়েছে number > 0 কিনা। যদি এটি সত্য হয়, তাহলে "Positive" আউটপুট হবে। যদি মিথ্যা হয়, তাহলে number < 0 চেক করা হবে এবং যদি এটি সত্য হয়, তাহলে "Negative" আউটপুট হবে, অন্যথায় "Zero" আউটপুট হবে।
আউটপুট
Negative
সারসংক্ষেপ
সি শার্পের টার্নারি অপারেটর শর্তের উপর ভিত্তি করে একটি মান নির্বাচন করতে একটি সংক্ষিপ্ত পদ্ধতি প্রদান করে। এটি মূলত একটি if-else এর সংক্ষিপ্ত বিকল্প, যা সহজেই একটি এক্সপ্রেশন হিসেবে লেখা যায়।
Read more