Oparetor অপারেটর

৩। Oparetor অপারেটর

যোগ, বিয়োগ, গুন, ভাগঃ

var x = 2
var y = 3
var addition = x + y
var multiply = x*y
var division =  y/x

দুই টা ভ্যারিয়েবল যোগ, বিয়োগ, গুন ভাগ এসব করা সহজ। ভ্যারিয়েবল গুলোর মধ্যে প্রয়োজনীয় অপারেটত বসিয়ে দিলেই হবে। আচ্ছা, আমরা ইচ্ছে করলে একই টাইপের সব গুলো ভ্যারিয়েবল একই লাইনে লিখতে পারি। যেমনঃ

var x = 2 , y = 3 , z =3
var catName ="billy" , dogName = "puppy"

কিন্তু ভিন্ন ধরনের টাইপ একই সাথে আমরা লিখতে পারব না, নিচের মত করে লেখে দেখুন, ভুল দেখাবেঃ

var catAge = 2 ,  catName ="billy"

কারণ আমরা একই সাথে ইন্টিজার এবং স্টিং ডিক্লেয়ার করতে চেষ্টা করেছি।

Increment & Decrement অপারেটর

Increment এর কাজ হচ্ছে একটা ভ্যারিয়েবল এর মান এক করে বাড়ানো। Decrements অপারেটরের কাজ হচ্ছে এক করে কমানো। দুইটাই একই সাথে দেখি।


var x = 4 , y = 5
x++
y--

আবার

var x = 4 , y = 5
++x
--y

এই দুই অপারেটর আমরা ভ্যারিয়েবলের আগেও দিতে পারি, পরেও দিতে পারি। আগে দিলে মান এক বাড়বে বা কমবে এবং তাই আউটপুট দিবে। কিন্তু ভ্যারিয়েবলের পরে দিলে আগে ভ্যারিয়েবলের বর্তমান মান দেখাবে এবং পরে এক কমবে বা বাড়বে।

Comparison Operator:

দুইটা ভ্যারিয়েবল কম্পেয়ার করার জন্য Comparison Operator ব্যবহার করা হয়। কম্পেয়ার করার পর একটা Boolean মান রিটার্ন করে। True অথবা False. যেমনঃ

a == b
a != b
a < b
a > b
a <= b
a >= b
a === b
a !== b

উপরের  Comparison Operator গুলো দিয়ে একটি প্রোগ্রাম লেখার চেষ্টা করিঃ

var a = 2 , b = 8;
if a < b {
    print( "a is less then b")
}

এখানে a < b, a যদি b থেকে ছোট হয়, তাহলে এটা true হবে এবং ব্র্যাকেটের ভেতরের কোড গুলো এক্সিকিউট করবে। যদি false হয়, তাহলে ব্র্যাকেটের ভেতরের কোড গুলো এক্সিকিউট করবে না।

আমরা ইচ্ছে করলে print এর ভেতরে আমাদের ভ্যারিয়েবল প্রিন্ট করতে পারি। তার জন্যঃ

var a = 2 , b = 8;
if a < b {
   print( "\(a) is less then \(b)") 
} 

আচ্ছা, print এ স্ট্রিং এর সাথে একটি ভ্যারিয়েবল এর মান দেখানোর জন্য একটি ব্ল্যাক স্ল্যাস () লিখে এরপর ব্র্যাকেটের ভেতর ভ্যারিয়েবলটি লিখলে তা স্ট্রিং এর ভেতরে দেখাবে। যেমন উপরে আমরা (a) এবং (b) দিয়ে স্টিং এর ভেতর একটি ভ্যারিয়েবল এর মান দেখিয়েছি।

উপরের মত অন্যান্য যে কোন Comparison করে আমরা প্রোগ্রাম লিখতে পারি, যেমনঃ

var a = 2 , b = 8;
if a > b {
    print( "\(a) is greater then \(b)") 
} else {
    print( "\(a) is less then \(b)")
}

if a==b {
    print( "\(a) is equal to \(b)") 
} else {
    print( "\(a) is not equal t  \(b)") 
}

এভাবে অন্যান্য গুলো। আমরা লক্ষ করে থাকব যে অন্যান্য ল্যাঙ্গুয়েজ এর মত Comparison এর জন্য ব্র্যাকেট ব্যবহার করতে হয় না। আবার ব্যবহার করলেও ভুল হবে না। যেমনঃ

var a = 2 , b = 8;
if (a != b) {
    print( "\(a) is  not equal to \(b)") 
} 

Logical Operators

তিন ধরনের লজিক্যাল অপারেটর রয়েছে। Logical AND, Logical OR, Logical NOT

Logical And তখনি সত্য হবে যখন এর প্রত্যেকটি Operand সত্য হবে। যেমনঃ

 

var a = 2 , b = 8;
if (a != b) && (a < b) {
    print( "\(a) is  not equal to \(b) and \(a) less then \(b)") 
} 

এখানে (a != b) এবং (a < b) দুইটাই যদি সত্য হয়, তাহলে ব্র্যাকেটের ভেতরের কোড এক্সিকিউট করবে। Comparison করার সময় ব্র্যাকেট গুলো ব্যবহার না করলেও প্রোগ্রাম কাজ করবেঃ

var a = 2 , b = 8;
if a != b && a < b {
    print( "\(a) is  not equal to \(b) and \(a) less then \(b)") 
} 

আবার একই সাথে দুই এর অধিক Comparison আমরা করতে পারি। যেমনঃ

var a = 2 , b = 8;
if a != b && a < b && b > 5 {
    print( "\(a) is  not equal to \(b) and \(a) less then \(b)") 
} 

Logical OR তখনি সত্য হবে যখন এর যে কোন একটি Operand সত্য হবে। যেমনঃ

 

var a = 2 , b = 8;
if (a != b) || (a > b) {
    print( "it's a true comparison") 
} 

উপরের comparison এর একটি সঠিক, আরেকটি ভুল, তারপর ও আমাদের if স্টেটমেন্ট এর ভেতরের কোড গুলো এক্সিকিউট হচ্ছে। OR অপারেটরেও আমরা একের অধিক Comparison করতে পারি।

Logical NOT অপারেটর একটি অপারেন্ড এর উপর কাজ করে। কাজ করার পর যদি Operand টি true হয়, তাকে false করে দেয়। যদি Operand টি false থাকে, তাকে true করে দেয়। যেমনঃ

var isWinter  = true
if !isWinter {
    print("it's not winter")
} else {
    print("it's winter")
}

Leave a Reply