Sự khác nhau giữa vòng lặp for và while trong c
Các câu lệnh lặp cho phép tập lệnh thực thi lặp đi lặp lại cho đến khi điều kiện không biến thành sai. Các câu lệnh lặp trong C ++ và Java là, cho vòng lặp, vòng lặp while và vòng lặp while. Những tuyên bố này thường được gọi là vòng lặp. Ở đây, sự khác biệt chính giữa vòng lặp while và vòng lặp do là điều kiện kiểm tra vòng lặp while trước khi lặp vòng lặp, trong khi vòng lặp do-while, kiểm tra điều kiện sau khi thực hiện các câu lệnh bên trong vòng lặp.

Trong bài viết này, chúng ta sẽ thảo luận về sự khác biệt giữa vòng lặp trong khi Vòng lặp và Vòng lặp do do-trong khi.

Biểu đồ so sánh

Cơ sở để so sánhtrong khilàm trong khi
Hình thức chungtrong khi (điều kiện) {
các câu lệnh; // phần thân của vòng lặp
}
làm {
.
các câu lệnh; // thân vòng lặp.
.
} while (Điều kiện);
Kiểm soát điều kiệnTrong vòng lặp 'while', điều kiện điều khiển xuất hiện ở đầu vòng lặp.Trong vòng lặp 'do-while', điều kiện điều khiển xuất hiện ở cuối vòng lặp.
Lặp lạiCác lần lặp không xảy ra nếu, điều kiện ở lần lặp đầu tiên, xuất hiện sai.Lặp lại xảy ra ít nhất một lần ngay cả khi điều kiện là sai ở lần lặp đầu tiên.

Định nghĩa vòng lặp while

Vòng lặp while là vòng lặp cơ bản nhất có sẵn trong C ++ và Java. Hoạt động của một vòng lặp while là tương tự trong cả C ++ và Java. Dạng chung của vòng lặp while là:

while (condition) {statement; // phần thân của vòng lặp}

Vòng lặp while trước tiên xác minh điều kiện và nếu điều kiện là đúng thì nó lặp lại vòng lặp cho đến khi điều kiện biến thành sai. Điều kiện trong vòng lặp while có thể là bất kỳ biểu thức boolean nào. Khi biểu thức trả về bất kỳ giá trị khác không, thì điều kiện đó là đúng true và nếu một biểu thức trả về giá trị 0, thì điều kiện sẽ trở thành sai false. Nếu điều kiện trở thành đúng, thì vòng lặp sẽ tự lặp lại và nếu điều kiện trở thành sai, thì điều khiển chuyển sang dòng tiếp theo của mã ngay sau vòng lặp.

Các câu lệnh hoặc phần thân của vòng lặp có thể là một câu lệnh trống hoặc một câu lệnh đơn hoặc một khối các câu lệnh.

Chúng ta hãy thảo luận về hoạt động của một vòng lặp while. Trong ví dụ dưới đây, mã sẽ in từ 1 đến 10.

// ví dụ là trong Java. lớp trong khi {public static void main (args []) {int n = 0; while (n <= 10) {n ++; system.out.println ("n =" + n); }}} // đầu ra n = 1 n = 2 n = 3 n = 4 n = 5 n = 6 n = 7 n = 8 n = 9 n = 10

Ở đây, giá trị ban đầu của 'n' là 0, điều này biến điều kiện trong vòng lặp while thành true. Sau đó, điều khiển đi vào phần thân của vòng lặp while và giá trị của 'n' được tăng lên theo câu lệnh đầu tiên trong phần thân của vòng lặp while. Sau đó, giá trị của 'n' được in và một lần nữa, điều khiển quay trở lại điều kiện của một vòng lặp while, bây giờ giá trị của 'n' là 1 một lần nữa thỏa mãn điều kiện và phần thân của vòng lặp được thực hiện lại.

Điều này tiếp tục cho đến khi điều kiện là đúng, ngay khi điều kiện trở thành sai, vòng lặp kết thúc. Giống như vòng lặp for, vòng lặp while trước tiên cũng kiểm tra điều kiện và sau đó thực thi thân vòng lặp.

Định nghĩa vòng lặp do-while

Như trong vòng lặp while, nếu điều kiện điều khiển chỉ trở thành sai trong lần lặp đầu tiên, thì phần thân của vòng lặp while hoàn toàn không được thực thi. Nhưng vòng lặp do-while có phần khác với vòng lặp while. Vòng lặp do-while thực thi phần thân của vòng lặp ít nhất một lần ngay cả khi điều kiện sai ở lần thử đầu tiên.

Hình thức chung của do-while như sau.

làm {. câu lệnh // phần thân của vòng lặp. . } while (Điều kiện);

Trong một vòng lặp do-while, phần thân của vòng lặp xảy ra trước điều kiện điều khiển và câu lệnh điều kiện nằm ở dưới cùng của vòng lặp. Như trong vòng lặp while, ở đây cũng vậy, phần thân của vòng lặp có thể trống vì cả C ++ và Java đều cho phép các câu lệnh null hoặc, chỉ có thể có một câu lệnh hoặc, một khối câu lệnh. Điều kiện ở đây cũng là một biểu thức boolean, đúng với tất cả các giá trị khác không.

Trong vòng lặp do-while, điều khiển trước tiên sẽ đến câu lệnh trong phần thân của vòng lặp do-while. Các câu lệnh trong phần thân được thực thi trước và sau đó điều khiển đạt đến phần điều kiện của vòng lặp. Điều kiện được xác minh và nếu đúng, vòng lặp được lặp lại và nếu điều kiện sai, thì điều khiển sẽ tiếp tục đến dòng tiếp theo ngay sau vòng lặp.

Hãy hiểu nó bằng cách thực hiện ví dụ trên trong do-while.

// ví dụ là trong Java. class while {public static void main (args []) {int n = 1; làm {system.out.println ("n =" + n); n ++; } while (n <10)}} // đầu ra n = 1 n = 2 n = 3 n = 4 n = 5 n = 6 n = 7 n = 8 n = 9 n = 10

Ở đây, giá trị của n = 1 điều khiển sẽ tiếp tục với phần thân của vòng lặp, giá trị của 'n' được in và sau đó giá trị của nó được tăng lên. Sau đó, điều khiển nối lại với điều kiện của vòng lặp do-while; điều kiện được xác minh hóa ra đúng với n = 1, do đó, vòng lặp lại lặp lại và tiếp tục cho đến khi điều kiện trở thành sai.

Phân biệt for, while, do while?

programming
hduong (duong) March 28, 2015, 3:08pm #1

Mọi người giúp mình phân biệt khi nào dùng if else và switch case,khi nào dùng for, while và do while.Làm thế nào để khi nhìn vào đề bài ta nhận dạng được ngay dùng loại nào?

2 Likes
tandatcr2000pro (GodOfGod) March 28, 2015, 1:01pm #2

Cái này mình xin giải nghĩa như này,(mình không học C++ nên sai thì đừng gạch đá mình nhé

Sự khác nhau giữa vòng lặp for và while trong c
)
Nói thế nào nhỉ, If nó mang tính so sánh
vd Nếu nó là chó thì mang về nuôi (so sánh nó với chó)
Case mang tính phân loại
vd nó mà là chó thì… mèo thì… cá thì… gà thì…
For dùng trong vòng lặp với số lần biết trước và kiểm soát được
While thì trong vòng lặp với số lần ko biết trước, lúc code kiểm soát được, lúc chạy trời biết nó tới đâu. Túm lại lúc code phải để ý không nó lặp vô hạn lần ngồi chờ quài không thấy nó dừng.
Do tương tự while chỉ khác thứ tự
Sự khác nhau giữa vòng lặp for và while trong c

4 Likes
BreakDown (there're only 10 types of people in the world: Those who understand binary & those who dont) March 28, 2015, 2:58pm #3
Sự khác nhau giữa vòng lặp for và while trong c
tandatcr2000pro:

thì… cá thì… gà thì…For dùng trong vòng lặp với số lần biết trước và kiểm

Các vấn đề đã được giải quyêts, còn for hay while thì theo sự biết trước của số lần lặp theo mình chưa chính xác, vì đơn giản là biết dùng thì dùng cái nào cũng được.

2 Likes
tuancoi2506 (Phạm Hoàng Tuấn) March 28, 2015, 4:31pm #4

Cái này tùy trường hợp. Đây là theo kinh nghiệm a hay làm nhé.
Ví dụ phân biệt if...else và switch..case:
switch…case : Dùng khi có nhiều trường hợp có thể xảy ra, thường là từ 3 trở lên. Dùng cái này sẽ gọn code hơn.
if…else: Dùng khi có 1,2 khả năng.
E thử dùng if...else và ‘switch…case’ trong bài toán Nếu x=1 xuất một.....x=6 xuất sáu thì e sẽ hiểu rõ hơn.

While và For thì k khác nhau là mấy, nhưng Do ... While thì có.
Với While thì e phải so sánh điều kiện có thoả hay không thì mới làm việc ở trong vòng lặp, còn Do...While thì e sẽ làm 1 lần trước rồi mới so sánh điều kiện thỏa.
Ví dụ bài toán Nhập n, nếu là -1 thì thoát, e sẽ dùng Do...While

2 Likes
hduong (duong) March 30, 2015, 8:15am #5

làm sao để nhìn vào bài toán thì pit là có số lần lặp xác định hay chưa pit trước số lần lặp z bạn.mình mới học nên chưa rành lắm

1 Like
tandatcr2000pro (GodOfGod) March 30, 2015, 8:51am #6

Làm nhiều sẽ quen thôi.
VD

  1. In ra màn hình chữ "Tan dat dep trai :)) " 10 lần -> biết phải lặp 10 lần
  2. In ra màn hình chữ "Tan dat dep trai :)) " tới khi nào nhấn phím thì thôi
    ->Lặp tới khi nào bấm phím, tức là ko biết khi nào sẽ bấm phím để kết thúc.
    .
    .
    .
1 Like