Pengendali Ternary C ++ (Dengan Contoh)

Dalam tutorial ini, kita akan belajar mengenai pengendali terner di C ++ dengan bantuan contoh.

Dalam C ++, operator ternary (juga dikenal sebagai operator bersyarat ) dapat digunakan untuk mengganti jika… yang lain dalam senario tertentu.

Operator Ternary di C ++

Pengendali ternary menilai keadaan ujian dan melaksanakan sekatan kod berdasarkan hasil keadaan.

Sintaksnya adalah

 condition ? expression1 : expression2;

Di sini, conditiondinilai dan

  • jika conditionada true, expression1dilaksanakan.
  • Dan, jika conditionada false, expression2dilaksanakan.

Pengendali terner mengambil 3 operan ( condition, expression1dan expression2). Oleh itu, nama operator ternary .

Contoh: C ++ Ternary Operator

 #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 markah anda: 80 Anda lulus dalam peperiksaan.

Katakan pengguna memasuki 80 . Kemudian, keadaan marks>= 40dinilai menjadi true. Oleh itu, ungkapan pertama "passed"ditugaskan untuk menghasilkan.

Keluaran 2

 Masukkan markah anda: 39.5 Anda gagal dalam peperiksaan.

Sekarang, anggap pengguna memasuki 39.5 . Kemudian, keadaan marks>= 40dinilai menjadi false. Oleh itu, ungkapan kedua "failed"ditugaskan untuk menghasilkan.

Bilakah menggunakan Operator Ternary?

Dalam C ++, pengendali ternary dapat digunakan untuk menggantikan jenis if… elsepernyataan tertentu .

Sebagai contoh, kita boleh menggantikan kod 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; )

Pengeluaran

 Nombor Negatif!

Di sini, kedua-dua program memberikan output yang sama. Walau bagaimanapun, penggunaan pengendali ternary menjadikan kod kami lebih mudah dibaca dan bersih.

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

Pengendali Ternary Bersarang

Anda juga boleh menggunakan satu operator terner di dalam pengendali ternary yang lain. Ia dipanggil operator ternary bersarang di C ++.

Berikut adalah program untuk mengetahui sama ada nombor positif, negatif, atau sifar menggunakan operator bersarang 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; )

Pengeluaran

 Nombor adalah Sifar

Dalam contoh di atas, perhatikan penggunaan operator ternary,

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

Di sini,

  • (number == 0)adalah syarat ujian pertama yang memeriksa sama ada nombor 0 atau tidak. Sekiranya ada, maka ia memberikan nilai rentetan "Zero"untuk menghasilkan.
  • Jika tidak, keadaan ujian kedua (number> 0)dinilai jika keadaan pertama adalah false.

Catatan : Tidak digalakkan menggunakan operator ternary bersarang. Ini kerana ia menjadikan kod kita lebih kompleks.

Artikel menarik...