C ++ Operator Ternary (Dengan Contoh)

Dalam tutorial ini, kita akan belajar tentang operator terner di C ++ dengan bantuan contoh.

Dalam C ++, operator terner (juga dikenal sebagai operator bersyarat ) dapat digunakan untuk menggantikan if… else dalam skenario tertentu.

Operator Ternary di C ++

Operator terner mengevaluasi kondisi pengujian dan mengeksekusi blok kode berdasarkan hasil dari kondisi tersebut.

Sintaksnya adalah

 condition ? expression1 : expression2;

Di sini, conditiondievaluasi dan

  • jika conditionada true, expression1dieksekusi.
  • Dan, jika conditionada false, expression2dieksekusi.

Operator terner membutuhkan 3 operan ( condition, expression1dan expression2). Makanya, namanya operator terner .

Contoh: C ++ Operator Ternary

 #include #include using namespace std; int main() ( double marks; // take input from users cout <> marks; // ternary operator checks if // marks is greater than 40 string result = (marks>= 40) ? "passed" : "failed"; cout << "You " << result << " the exam."; return 0; )

Keluaran 1

 Masukkan nilai Anda: 80 Anda lulus ujian.

Misalkan pengguna memasukkan 80 . Kemudian, kondisi marks>= 40dievaluasi menjadi true. Oleh karena itu, ekspresi pertama "passed"ditetapkan ke hasil.

Keluaran 2

 Masukkan nilai Anda: 39,5 Anda gagal dalam ujian.

Sekarang, misalkan pengguna memasukkan 39,5 . Kemudian, kondisi marks>= 40dievaluasi menjadi false. Oleh karena itu, ekspresi kedua "failed"ditetapkan ke hasil.

Kapan menggunakan Operator Ternary?

Di C ++, operator terner dapat digunakan untuk mengganti tipe if… elsepernyataan tertentu .

Misalnya kita bisa mengganti kode ini

 #include using namespace std; int main() ( // Create a variable int number = -4; if (number> 0) cout << "Positive Number"; else cout << "Negative Number!"; return 0; )

dengan

 #include #include using namespace std; int main() ( int number = -4; string result; // Using ternary operator result = (number> 0) ? "Positive Number!" : "Negative Number!"; cout << result << endl; return 0; )

Keluaran

 Angka negatif!

Di sini, kedua program memberikan keluaran yang sama. Namun, penggunaan operator terner membuat kode kami lebih mudah dibaca dan bersih.

Catatan: Kita sebaiknya hanya menggunakan operator terner jika pernyataan yang dihasilkan pendek.

Operator Ternary Bersarang

Dimungkinkan juga untuk menggunakan satu operator terner di dalam operator terner lainnya. Ini disebut operator terner bersarang di C ++.

Berikut adalah program untuk mencari apakah suatu bilangan positif, negatif, atau nol menggunakan operator terner bersarang.

 #include #include using namespace std; int main() ( int number = 0; string result; // nested ternary operator to find whether // number is positive, negative, or zero result = (number == 0) ? "Zero" : ((number> 0) ? "Positive" : "Negative"); cout << "Number is " << result; return 0; )

Keluaran

 Angka adalah Nol

Dalam contoh di atas, perhatikan penggunaan operator terner,

 (number == 0) ? "Zero" : ((number> 0) ? "Positive" : "Negative");

Sini,

  • (number == 0)adalah kondisi tes pertama yang memeriksa apakah angka itu 0 atau tidak. Jika ya, maka itu menetapkan nilai string "Zero"ke hasil.
  • Jika tidak, kondisi pengujian kedua (number> 0)dievaluasi jika kondisi pertama adalah false.

Catatan : Tidak disarankan menggunakan operator terner bersarang. Ini karena ini membuat kode kita lebih kompleks.

Artikel yang menarik...