C ++ sambil dan lakukan ... sambil Gelung (Dengan Contoh)

Dalam tutorial ini, kita akan belajar penggunaan sementara dan lakukan … sambil gelung dalam pengaturcaraan C ++ dengan bantuan beberapa contoh.

Dalam pengaturcaraan komputer, gelung digunakan untuk mengulang sekatan kod.

Sebagai contoh, katakan kita mahu menunjukkan mesej 100 kali. Kemudian daripada menulis pernyataan cetak 100 kali, kita boleh menggunakan gelung.

Itu hanyalah contoh mudah; kita dapat mencapai kecekapan dan kecanggihan dalam program kita dengan menggunakan gelung yang berkesan.

Terdapat 3 jenis gelung dalam C ++.

  1. for gelung
  2. while gelung
  3. do… while gelung

Dalam tutorial sebelumnya, kami belajar mengenai gelung C ++ untuk. Di sini, kita akan belajar whiledan do… whilegelung.

C ++ sambil Gelung

Sintaksis whilegelung adalah:

 while (condition) ( // body of the loop )

Di sini,

  • A whilegelung menilaicondition
  • Sekiranya conditiondievaluasi true, kod di dalam whilegelung dijalankan.
  • Ia conditiondinilai semula.
  • Proses ini berterusan sehingga conditionadalah false.
  • Apabila conditionmenilai false, gelung berakhir.

Untuk mengetahui lebih lanjut mengenai conditions, kunjungi C ++ Relational and Logical Operators.

Carta alir sementara Loop

Carta alir C ++ sambil gelung

Contoh 1: Nombor Paparan dari 1 hingga 5

 // C++ Program to print numbers from 1 to 5 #include using namespace std; int main() ( int i = 1; // while loop from 1 to 5 while (i <= 5) ( cout << i << " "; ++i; ) return 0; )

Pengeluaran

 1 2 3 4 5

Inilah cara program ini berfungsi.

Pengulangan Pembolehubah saya <= 5 Tindakan
1hb i = 1 true 1 dicetak dan idinaikkan menjadi 2.
Ke-2 i = 2 true 2 dicetak dan idinaikkan menjadi 3.
Ke-3 i = 3 true 3 dicetak dan idinaikkan menjadi4
Ke-4 i = 4 true 4 dicetak dan idinaikkan menjadi 5.
Ke-5 i = 5 true 5 dicetak dan idinaikkan menjadi 6.
Ke-6 i = 6 false Gelung ditamatkan

Contoh 2: Jumlah Nombor Positif Sahaja

 // program to find the sum of positive numbers // if the user enters a negative number, the loop ends // the negative number entered is not added to the sum #include using namespace std; int main() ( int number; int sum = 0; // take input from the user cout <> number; while (number>= 0) ( // add all positive numbers sum += number; // take input again if the number is positive cout <> number; ) // display the sum cout << "The sum is " << sum << endl; return 0; )

Pengeluaran

 Masukkan nombor: 6 Masukkan nombor: 12 Masukkan nombor: 7 Masukkan nombor: 0 Masukkan nombor: -2 Jumlahnya 25

Dalam program ini, pengguna diminta memasukkan nombor, yang disimpan dalam nombor berubah-ubah.

Untuk menyimpan jumlah nombor, kami menyatakan jumlah berubah dan menginisialisasi dengan nilai 0.

The whilegelung berterusan sehingga pengguna memasukkan nombor negatif. Selama setiap lelaran, nombor yang dimasukkan oleh pengguna ditambahkan ke pemboleh ubah jumlah.

Apabila pengguna memasukkan nombor negatif, gelung berhenti. Akhirnya, jumlah keseluruhan dipaparkan.

C ++ lakukan … sambil Gelung

The do… whilegelung adalah variasi daripada whilegelung dengan satu perbezaan penting: badan do… whilegelung dilaksanakan sekali sebelum conditionditandakan.

Sintaksnya adalah:

 do ( // body of loop; ) while (condition);

Di sini,

  • Badan gelung dilaksanakan pada mulanya. Kemudian conditiondinilai.
  • Sekiranya conditiondinilai true, badan gelung di dalam dopenyataan dilaksanakan semula.
  • Ini conditiondinilai sekali lagi.
  • Sekiranya conditiondinilai true, badan gelung di dalam dopenyataan dilaksanakan semula.
  • Proses ini berterusan sehingga conditionpenilaian untuk false. Kemudian gelung berhenti.

Carta alir buat… sambil Loop

Carta alir C ++ lakukan… sambil gelung

Contoh 3: Nombor Paparan dari 1 hingga 5

 // C++ Program to print numbers from 1 to 5 #include using namespace std; int main() ( int i = 1; // do… while loop from 1 to 5 do ( cout << i << " "; ++i; ) while (i <= 5); return 0; )

Pengeluaran

 1 2 3 4 5

Inilah cara program ini berfungsi.

Pengulangan Pembolehubah saya <= 5 Tindakan
i = 1 tidak diperiksa 1 dicetak dan idinaikkan menjadi 2
1hb i = 2 true 2 dicetak dan idinaikkan menjadi 3
Ke-2 i = 3 true 3 dicetak dan idinaikkan menjadi 4
Ke-3 i = 4 true 4 dicetak dan idinaikkan menjadi 5
Ke-4 i = 5 true 5 dicetak dan idinaikkan menjadi 6
Ke-5 i = 6 false Gelung ditamatkan

Contoh 4: Jumlah Nombor Positif Sahaja

 // program to find the sum of positive numbers // If the user enters a negative number, the loop ends // the negative number entered is not added to the sum #include using namespace std; int main() ( int number = 0; int sum = 0; do ( sum += number; // take input from the user cout <> number; ) while (number>= 0); // display the sum cout << "The sum is " << sum << endl; return 0; )

Keluaran 1

 Masukkan nombor: 6 Masukkan nombor: 12 Masukkan nombor: 7 Masukkan nombor: 0 Masukkan nombor: -2 Jumlahnya 25

Here, the do… while loop continues until the user enters a negative number. When the number is negative, the loop terminates; the negative number is not added to the sum variable.

Output 2

 Enter a number: -6 The sum is 0.

The body of the do… while loop runs only once if the user enters a negative number.

Infinite while loop

If the condition of a loop is always true, the loop runs for infinite times (until the memory is full). For example,

 // infinite while loop while(true) ( // body of the loop )

Here is an example of an infinite do… while loop.

 // infinite do… while loop int count = 1; do ( // body of loop ) while(count == 1);

In the above programs, the condition is always true. Hence, the loop body will run for infinite times.

for vs while loops

A for loop is usually used when the number of iterations is known. For example,

 // This loop is iterated 5 times for (int i = 1; i <=5; ++i) ( // body of the loop )

Here, we know that the for-loop will be executed 5 times.

Walau bagaimanapun, whiledan do… whilegelung biasanya digunakan apabila bilangan lelaran tidak diketahui. Sebagai contoh,

 while (condition) ( // body of the loop )

Lihat contoh berikut untuk mengetahui lebih lanjut:

  • Program C ++ untuk Memaparkan Siri Fibonacci
  • Program C ++ untuk Mencari GCD
  • Program C ++ untuk Mencari LCM

Artikel menarik...