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, condition
dinilai dan
- jika
condition
adatrue
,expression1
dilaksanakan. - Dan, jika
condition
adafalse
,expression2
dilaksanakan.
Pengendali terner mengambil 3 operan ( condition
, expression1
dan 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>= 40
dinilai 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>= 40
dinilai menjadi false
. Oleh itu, ungkapan kedua "failed"
ditugaskan untuk menghasilkan.
Bilakah menggunakan Operator Ternary?
Dalam C ++, pengendali ternary dapat digunakan untuk menggantikan jenis if… else
pernyataan 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 adalahfalse
.
Catatan : Tidak digalakkan menggunakan operator ternary bersarang. Ini kerana ia menjadikan kod kita lebih kompleks.