C++ ٹرنری آپریٹر

C Rnry Apry R

'مشروط آپریٹر اور if-else بیان دونوں ایک ہی تکنیک کو استعمال کرتے ہیں، لیکن مشروط آپریٹر if-else کے اظہار کو ممکنہ حد تک مختصر بنا دیتا ہے جبکہ if-else اظہار زیادہ جگہ لیتا ہے۔ کچھ پروگرامنگ زبانوں میں، ایک آپریٹر ہوتا ہے جسے ٹرنری آپریٹر کہا جاتا ہے جو تین آپرینڈز کو قبول کرتا ہے جیسا کہ عام ایک یا دو آپریٹرز کو درکار ہوتا ہے۔ یہ ایک بنیادی if-else بلاک کو گاڑھا کرنے کا ایک ذریعہ پیش کرتا ہے۔ اس گائیڈ میں، C++ میں ٹرنری آپریٹر کو مثالوں کے ذریعے کور کیا جائے گا۔ کچھ معاملات میں، C++ ایپلی کیشنز میں if else بیان کو ٹرنری آپریٹر سے تبدیل کیا جا سکتا ہے، جسے اکثر مشروط آپریٹر کہا جاتا ہے۔

C++ میں ٹرنری آپریٹر کا نحو

ٹرنری آپریٹر کے لیے تین آپرینڈز درکار ہیں: مشروط، درست اور غلط۔ جیسا کہ ٹرنری آپریٹر ٹیسٹ کی حالت کا تجزیہ کرتا ہے اور نتائج پر منحصر ہے، کوڈ کے ایک بلاک پر عمل درآمد کرتا ہے، نحو یہ ہے:

# (exp_1)؟ exp_2 : exp_3

یہاں 'exp' اظہار کی نمائندگی کرتا ہے۔ اظہار کے نتائج پر منحصر ہے، یہ آپریٹر دو میں سے ایک قدر واپس کرتا ہے۔ اظہار 2 اور 3 کا جائزہ لیا جاتا ہے، اور اگر 'exp_1' کو بولین سچ میں جانچا جاتا ہے تو ان کی اقدار کو حتمی نتائج کے طور پر واپس کیا جاتا ہے۔ دوسری صورت میں، ایکسپریشن 1 کا اندازہ بولین غلط میں کیا جاتا ہے، اور ایکسپریشن 2 کا اندازہ کیا جاتا ہے، اور اس کی قدر حتمی نتیجے کے طور پر لوٹائی جاتی ہے۔



مثال 1

یہاں ایک سیدھا سیدھا مثال پروگرام ہے جس میں دکھایا گیا ہے کہ C++ کے ٹرنری آپریٹر کو کیسے استعمال کیا جائے۔



# شامل کریں

#include

نام کی جگہ کا استعمال کرتے ہوئے std ;

int مرکزی ( ) {
دگنا سی جی پی اے ;
cout <> سی جی پی اے ;

string student_result = ( سی جی پی اے >= 1.5 ) ? 'پاس' : 'ناکام' ;

cout << 'تم ' << طالب علم_نتیجہ << 'سمسٹر۔' ;

واپسی 0 ;
}



پروگرام میں، ہم نے اپنے ہیڈر سیکشن کو C++ لائبریریوں سے بھر دیا ہے۔ اس کے بعد، ہم نے نام کی جگہ std کو کلیدی لفظ 'using' کے ساتھ شامل کیا۔ پھر، اس کے اندر ڈیٹا کی قسم 'ڈبل' کے ساتھ متغیر 'CGPA' کا اعلان کیا گیا ہے۔ اگلی لائن میں، ہم نے صارف سے کہا ہے کہ cout کمانڈ پرنٹ کرکے CGPA داخل کریں۔ cin کمانڈ کے ساتھ، صارفین CGPA شامل کرتے ہیں۔

پھر، ہم نے ایک اور متغیر بنایا، 'student_result'، جس کا ایک ٹرنری آپریٹر ہے۔ ٹرنری آپریٹر کو یہاں تین اظہارات کی ضرورت ہے۔ سب سے پہلے وہ شرط ہے جو یہ جانچتی ہے کہ آیا صارف کا داخل کردہ CGPA '1.5' سے زیادہ ہے یا اس کے برابر ہے۔ اگر ایسا ہے تو، بیان 'پاس ہوا' پرنٹ کیا جائے گا، ورنہ تیسرا اظہار پرنٹ کیا جائے گا۔ جب آپ cout کمانڈ استعمال کریں گے تو نتیجہ دکھایا جائے گا۔

فرض کریں کہ صارف CGPA '3.5' ٹائپ کرتا ہے۔ CGPA >= 1.5 پھر معیار پر پورا اترتے ہوئے درست پر تشخیص کرتا ہے۔ لہذا، نتیجہ کو پہلی اصطلاح 'پاس' دیا جاتا ہے۔



آئیے کہتے ہیں کہ صارف کی قسم 1.00۔ نتیجے کے طور پر، شرط CGPA >= 1.5 کا غلط اندازہ لگایا جاتا ہے۔ لہذا، نتیجہ کو دوسرا اظہار دیا جاتا ہے، 'ناکام'۔

مثال 2

C++ میں کچھ قسم کے if else بیانات کو ٹرنری آپریٹر کے ساتھ تبدیل کیا جا سکتا ہے۔ ہم اس کوڈ کو بطور مثال تبدیل کر سکتے ہیں۔ پہلا مثال پروگرام if-else حالت کا استعمال کرتا ہے، اور دوسرا مثال پروگرام ٹرنری آپریٹر کا استعمال کرتا ہے۔

# شامل کریں

نام کی جگہ کا استعمال کرتے ہوئے std ;

int مرکزی ( ) {

int ایک پر = - 3 ;
cout << 'ایک پر :' < 0 )
cout << ' \n مثبت عدد' ;
اور
cout << ' \n منفی عدد!' ;

واپسی 0 ;
}

ہم نے منفی انٹیجر ویلیو کے ساتھ int ڈیٹا ٹائپ ویری ایبل 'num' کا اعلان اور آغاز کیا ہے۔ اس کے بعد، cout کمانڈ کے ساتھ، 'num' ویلیو پرنٹ ہو جاتی ہے۔ پھر، ہمارے پاس if-else شرط ہے۔ 'اگر' حالت کے اندر، ہم نے یہ شرط بتائی ہے کہ متغیر 'num' ویلیو صفر سے زیادہ ہونا چاہیے۔ اگر شرط درست ہوجاتی ہے، تو cout کمانڈ 'if' حالت کے بعد پرنٹ ہوجائے گی۔ اگر شرط غلط ہو جاتی ہے تو دوسری صورت کا بیان چھاپ دیا جائے گا۔

چونکہ نمبر ایک منفی قدر ہے، اگر شرط غلط ہو جاتی ہے اور

اگلا، ہم نے اوپر والے پروگرام کو ٹرنری آپریٹر کے ساتھ انجام دیا۔ آئیے چیک کریں کہ آیا if-else حالت اور ٹرنری آپریٹر کے ایک جیسے اثرات ہیں۔

# شامل کریں

#include

نام کی جگہ کا استعمال کرتے ہوئے std ;

int مرکزی ( ) {

int MyNum = - 7 ;
cout << 'انٹیجر:' << MyNum < 0 ) ? 'مثبت عدد!' : 'منفی عدد!' ;
cout << نتیجہ << endl ;

واپسی 0 ;
}

ہم نے متغیر 'MyNum' کا اعلان کیا ہے اور اسے منفی قدر کے ساتھ شروع کیا ہے۔ ہم نے cout کمانڈ کے اندر 'MyNum' متغیر کو کال کرکے منفی قدر پرنٹ کی ہے۔ پھر، ہم نے سٹرنگ کی قسم کے ساتھ ایک اور متغیر کو 'نتیجہ' کے طور پر سیٹ کیا۔ نتیجہ متغیر ٹرنری آپریٹر آپریشن لیتا ہے۔ سب سے پہلے، ہمارے پاس یہ شرط ہے کہ 'MyNum' صفر سے زیادہ ہونا چاہیے۔ اس کے بعد، ہم نے ایک ٹرنری آپریٹر '؟' لگایا۔ دیگر دو اظہارات شرط کے نتیجے پر عمل میں لائے جائیں گے۔

جیسا کہ عددی قدر ہے '-7' تیسرا اظہار، 'منفی عدد!' پرامپٹ پر پرنٹ کیا جاتا ہے۔ یہاں، دونوں ایپلی کیشنز کا آؤٹ پٹ ایک جیسا ہے۔ ٹرنری آپریٹر، تاہم، ہمارے کوڈ کی پڑھنے کی اہلیت اور صفائی کو بہتر بناتا ہے۔

مثال 3

مزید برآں، ٹرنری آپریٹرز کو ایک دوسرے کے اندر کام کیا جا سکتا ہے۔ نیسٹڈ ٹرنری آپریٹر کا استعمال کرکے یہ چیک کریں کہ آیا درج ذیل پروگرام میں کوئی قدر مثبت، منفی یا صفر ہے۔

# شامل کریں

#include

نام کی جگہ کا استعمال کرتے ہوئے std ;

int مرکزی ( ) {
int عدد = 0 ;
سٹرنگ نتیجہ ;

نتیجہ = ( عدد == 0 ) ? 'صفر' : ( ( عدد > 0 ) ? 'مثبت' : 'منفی' ) ;

cout << 'انٹیجر ہے' << نتیجہ ;

واپسی 0 ;
}

بس پروگرام کے مرکزی طریقہ سے شروع کریں۔ int main() میں ہم نے 'انٹیجر' کے نام سے متغیر بنایا ہے اور اس کی قدر صفر کے طور پر مقرر کی ہے۔ پھر، ہم نے ڈیٹا ٹائپ سٹرنگ کے ساتھ ایک اور متغیر، 'نتیجہ' کی وضاحت کی۔ ہم نے ٹرنری آپریٹر کو نظرانداز کرتے ہوئے متغیر 'نتیجہ' سیٹ کیا ہے۔ شرط یہ ہے کہ متغیر 'انٹیجر' کی قدر صفر 'انٹیجر == 0' کے برابر ہونی چاہیے۔ ابتدائی حالت، (انٹیجر == 0)، اس بات کا تعین کرتی ہے کہ دیا گیا عدد صفر ہے یا نہیں۔ اگر ایسا ہے تو، نتیجہ سٹرنگ ویلیو 'زیرو' دیا جاتا ہے۔ اگر جواب درست ہے. دوسری صورت میں، اگر پہلی شرط غلط ہے، تو دوسری شرط (انٹیجر > 0) کی جانچ کی جاتی ہے۔

جی ہاں، فراہم کردہ عدد صفر ہے، جیسا کہ اسکرپٹ میں دکھایا گیا ہے۔ آؤٹ پٹ 'انٹیجر صفر ہے' پیدا کرتا ہے۔

نتیجہ

ہم جانتے ہیں کہ مشروط آپریٹر ٹرنری آپریٹر ہے۔ اس آپریٹر کی مدد سے، ہم کسی شرط کو چیک کر سکتے ہیں اور اس کے مطابق عمل کر سکتے ہیں۔ ہم ٹرنری آپریٹر کے بجائے if-else حالات کا استعمال کرتے ہوئے ایک ہی چیز کو پورا کر سکتے ہیں۔ اس C++ ٹیوٹوریل نے ہمیں سکھایا کہ ٹرنری آپریٹر کو اس کے نحو اور مثال کے پروگراموں کے ذریعے کیسے استعمال کیا جائے۔ ذہن میں رکھیں کہ ٹرنری آپریٹر کو صرف اس صورت میں استعمال کیا جانا چاہیے جب حتمی بیان جامع ہو۔