Manufaktur industri
Industri Internet of Things | bahan industri | Pemeliharaan dan Perbaikan Peralatan | Pemrograman industri |
home  MfgRobots >> Manufaktur industri >  >> Industrial programming >> Bahasa C

C++ if, if...else dan Nested if...else

C++ if, if...else dan Nested if...else

Dalam tutorial ini, kita akan belajar tentang pernyataan if...else untuk membuat program pengambilan keputusan dengan bantuan contoh.

Dalam pemrograman komputer, kami menggunakan if...else pernyataan untuk menjalankan satu blok kode dalam kondisi tertentu dan blok kode lainnya dalam kondisi berbeda.

Misalnya, memberikan nilai (A, B, C) berdasarkan nilai yang diperoleh siswa.


Ada tiga bentuk if...else pernyataan dalam C++.

  1. if pernyataan
  2. if...else pernyataan
  3. if...else if...else pernyataan

C++ jika Pernyataan

Sintaks dari if pernyataannya adalah:

if (condition) {
  // body of if statement
}

if pernyataan mengevaluasi condition di dalam tanda kurung ( ) .

Catatan: Kode di dalam { } adalah isi dari if pernyataan.


Contoh 1:C++ jika Pernyataan

// Program to print positive number entered by the user
// If the user enters a negative number, it is skipped

#include <iostream>
using namespace std;

int main() {

  int number;

  cout << "Enter an integer: ";
  cin >> number;

  // checks if the number is positive
  if (number > 0) {
    cout << "You entered a positive integer: " << number << endl;
  }

  cout << "This statement is always executed.";

  return 0;
}

Keluaran 1

Enter an integer: 5
You entered a positive number: 5
This statement is always executed.

Saat pengguna memasukkan 5 , kondisi number > 0 dievaluasi menjadi true dan pernyataan di dalam isi if dijalankan.

Keluaran 2

Enter a number: -5
This statement is always executed.

Saat pengguna memasukkan -5 , kondisi number > 0 dievaluasi menjadi false dan pernyataan di dalam tubuh if tidak dieksekusi.


C++ jika...else

if pernyataan dapat memiliki else opsional ayat. Sintaksnya adalah:

if (condition) {
  // block of code if condition is true
}
else {
  // block of code if condition is false
}

if..else pernyataan mengevaluasi condition di dalam kurung.

Jika condition mengevaluasi true ,

  • kode di dalam isi if dijalankan
  • kode di dalam isi else dilewati dari eksekusi

Jika condition mengevaluasi false ,

  • kode di dalam isi else dijalankan
  • kode di dalam isi if dilewati dari eksekusi

Contoh 2:Pernyataan C++ if...else

// Program to check whether an integer is positive or negative
// This program considers 0 as a positive number

#include <iostream>
using namespace std;

int main() {

  int number;

  cout << "Enter an integer: ";
  cin >> number;

  if (number >= 0) {
    cout << "You entered a positive integer: " << number << endl;
  }
  else {
    cout << "You entered a negative integer: " << number << endl;
  }

  cout << "This line is always printed.";

  return 0;
}

Keluaran 1

Enter an integer: 4
You entered a positive integer: 4.
This line is always printed.

Pada program di atas, kita memiliki kondisi number >= 0 . Jika kita memasukkan angka yang lebih besar atau sama dengan 0 , maka kondisi mengevaluasi true .

Di sini, kita masukkan 4 . Jadi, syaratnya adalah true . Oleh karena itu, pernyataan di dalam tubuh if dijalankan.

Keluaran 2

Enter an integer: -4
You entered a negative integer: -4.
This line is always printed.

Di sini, kita masukkan -4 . Jadi, kondisinya adalah false . Oleh karena itu, pernyataan di dalam tubuh else dijalankan.


Pernyataan C++ if...else...else if

if...else pernyataan digunakan untuk mengeksekusi blok kode di antara dua alternatif. Namun, jika kita perlu membuat pilihan di antara lebih dari dua alternatif, kita menggunakan if...else if...else pernyataan.

Sintaks dari if...else if...else pernyataannya adalah:

if (condition1) {
  // code block 1
}
else if (condition2){
  // code block 2
}
else {
  // code block 3
}

Di sini,

  • Jika condition1 mengevaluasi ke true , code block 1 dijalankan.
  • Jika condition1 mengevaluasi ke false , lalu condition2 dievaluasi.
  • Jika condition2 adalah true , code block 2 dijalankan.
  • Jika condition2 adalah false , code block 3 dijalankan.

Catatan: Bisa ada lebih dari satu else if pernyataan tetapi hanya satu if dan else pernyataan.


Contoh 3:C++ if...else...else if

// Program to check whether an integer is positive, negative or zero

#include <iostream>
using namespace std;

int main() {

  int number;

  cout << "Enter an integer: ";
  cin >> number;

  if (number > 0) {
    cout << "You entered a positive integer: " << number << endl;
  } 
  else if (number < 0) {
    cout << "You entered a negative integer: " << number << endl;
  } 
  else {
    cout << "You entered 0." << endl;
  }

  cout << "This line is always printed.";

  return 0;
}

Keluaran 1

Enter an integer: 1
You entered a positive integer: 1.
This line is always printed.

Keluaran 2

Enter an integer: -2
You entered a negative integer: -2.
This line is always printed.

Keluaran 3

Enter an integer: 0
You entered 0.
This line is always printed.

Dalam program ini, kami mengambil nomor dari pengguna. Kami kemudian menggunakan if...else if...else tangga untuk memeriksa apakah bilangan tersebut positif, negatif, atau nol.

Jika angkanya lebih besar dari 0 , kode di dalam if blok dieksekusi. Jika jumlahnya kurang dari 0 , kode di dalam else if blok dieksekusi. Jika tidak, kode di dalam else blok dieksekusi.


C++ Nested if...else

Terkadang, kita perlu menggunakan if pernyataan di dalam if lain penyataan. Ini dikenal sebagai if bersarang pernyataan.

Anggap saja sebagai beberapa lapisan if pernyataan. Ada if pertama, luar pernyataan, dan di dalamnya ada if bagian dalam lainnya penyataan. Sintaksnya adalah:

// outer if statement
if (condition1) {

  // statements

  // inner if statement
  if (condition2) {
    // statements
  }
}

Catatan:

  • Kita dapat menambahkan else dan else if pernyataan ke if bagian dalam pernyataan sesuai kebutuhan.
  • Bagian dalam if pernyataan juga dapat disisipkan di dalam else luar atau else if pernyataan (jika ada).
  • Kita dapat membuat beberapa lapisan if pernyataan.

Contoh 4:C++ Bersarang jika

// C++ program to find if an integer is positive, negative or zero
// using nested if statements

#include <iostream>
using namespace std;

int main() {

  int num;
    
  cout << "Enter an integer: ";  
   cin >> num;    

  // outer if condition
  if (num != 0) {
        
    // inner if condition
    if (num > 0) {
      cout << "The number is positive." << endl;
    }
    // inner else condition
    else {
      cout << "The number is negative." << endl;
    }  
  }
  // outer else condition
  else {
    cout << "The number is 0 and it is neither positive nor negative." << endl;
  }

  cout << "This line is always printed." << endl;

  return 0;
}

Keluaran 1

Enter an integer: 35
The number is positive.
This line is always printed.

Keluaran 2

Enter an integer: -35
The number is negative.
This line is always printed.

Keluaran 3

Enter an integer: 0
The number is 0 and it is neither positive nor negative.
This line is always printed.

Pada contoh di atas,

  • Kami mengambil integer sebagai input dari pengguna dan menyimpannya di variabel num .
  • Kami kemudian menggunakan if...else pernyataan untuk memeriksa apakah num tidak sama dengan 0 .
    • Jika true , lalu bagian dalam if...else pernyataan dieksekusi.
    • Jika false , kode di dalam luar else kondisi dijalankan, yang mencetak "The number is 0 and it is neither positive nor negative."
  • Bagian dalam if...else pernyataan memeriksa apakah nomor input positif yaitu jika num lebih besar dari 0 .
    • Jika true , lalu kita cetak pernyataan yang menyatakan bahwa bilangan tersebut positif.
    • Jika false , kami mencetak bahwa angka tersebut negatif.

Catatan: Seperti yang Anda lihat, if...else bersarang membuat logika Anda rumit. Jika memungkinkan, Anda harus selalu mencoba untuk menghindari if...else bersarang .


Body of if...else Dengan Hanya Satu Pernyataan

Jika isi if...else hanya memiliki satu pernyataan, Anda dapat menghilangkan { } dalam program. Misalnya, Anda dapat mengganti

int number = 5;

if (number > 0) {
  cout << "The number is positive." << endl;
}
else {
  cout << "The number is negative." << endl;
}

dengan

int number = 5;

if (number > 0)
  cout << "The number is positive." << endl;
else
  cout << "The number is negative." << endl;

Output dari kedua program akan sama.

Catatan: Meskipun tidak perlu menggunakan { } jika isi if...else hanya memiliki satu pernyataan, menggunakan { } membuat kode Anda lebih mudah dibaca.


Selengkapnya tentang Pengambilan Keputusan

Dalam situasi tertentu, operator ternary dapat menggantikan if...else penyataan. Untuk mempelajari lebih lanjut, kunjungi Operator Terner C++.

Jika kita perlu membuat pilihan di antara lebih dari satu alternatif berdasarkan kondisi pengujian yang diberikan, kode switch pernyataan dapat digunakan. Untuk mempelajari lebih lanjut, kunjungi sakelar C++.


Lihat contoh berikut untuk mempelajari lebih lanjut:

Program C++ untuk Mengecek Bilangan Genap atau Ganjil

Program C++ untuk Memeriksa Apakah suatu karakter adalah Vokal atau Konsonan.

Program C++ untuk Menemukan Angka Terbesar Diantara Tiga Angka


Bahasa C

  1. C# if, if...else, if...else if dan Nested if Statement
  2. Kelas dan Objek C++
  3. Manajemen Memori C++:baru dan hapus
  4. C++ Warisan Publik, Dilindungi, dan Pribadi
  5. Fungsi teman C++ dan Kelas teman
  6. Pernyataan Python, Indentasi dan Komentar
  7. Java Nested dan Kelas Dalam
  8. C++ Tanggal dan Waktu
  9. C++ Overloading (Operator dan Fungsi)
  10. File dan Aliran C++