Top 12 # Xem Nhiều Nhất Cấu Trúc While C++ / 2023 Mới Nhất 11/2022 # Top Like | Comforttinhdauthom.com

While Và Do…While Trong C++ / 2023

Cấu trúc while

Vòng lặp while có cấu trúc như sau:

while (condition) { }

Các biểu thức Initialization statement và Update statement không xuất hiện trong cấu trúc while. Do đó cần hiện thực chúng trước và trong vòng lặp để chương trình không bị lặp vô hạn.

Đoạn code trong thân vòng lặp (body of loop) có thể chứa các biểu thức tính toán logic, các cấu trúc điều kiện ( if ... else, switch ... case) hoặc cả các cấu trúc lặp khác. Nhờ đó có thể xây dựng được các chu trình lặp lồng nhau (sử dụng để thao tác với mảng nhiều chiều, …).

Nguyên tắc hoạt động

Giống như cấu trúc for, quá trình lặp trong while sẽ diễn ra liên tục cho đến khi biểu thức Condition trả về giá trị false.

Sơ đồ hoạt động của cấu trúc while như sau:

Vòng lặp while thường được sử dụng trong các trường hợp không biết rõ số lần lặp. Ví dụ:

using namespace std;

int main() { int s = 0; int i = 0;

while(s < 100) { i++; s += i; }

s = 0; i = 0;

while(i++, s < 100) s += i;

s = 0; i = 0;

while(1) { i++; s += i;

break; }

return 0; }

Cấu trúc do…while

Vòng lặp do ... while có cấu trúc như sau:

do { } while (Condition);

do ... while có đầy đủ các tính chất mà một vòng lặp cần phải có. Tuy nhiên, khác với cấu trúc while, biểu thức điều kiện của do ... while được đặt phía sau đoạn code, do đó vòng lặp sẽ được thực hiện ít nhất một lần, bất kể các giá trị đầu vào có thoả biểu thức điều kiện hay không.

Nguyên tắc hoạt động

Sơ đồ hoạt động của cấu trúc do ... while như sau:

Cấu trúc do ... while thường được sử dụng để kiểm tra các giá trị đầu vào (thường là các giá trị được nhập từ bàn phím).

Chương trình sau kiểm tra dữ liệu nhập vào có thể là một tháng trong năm hay không:

int main() { int month; do { return 0; }

Ngoài ra có thể tận dụng do ... while để làm một số công việc “thú vị”, chẳng hạn như sau:

using namespace std;

int main() { int n;

do { } while(n <= 0);

int i; int s = 0;

do { } while(s += i, –n);

return 0; }

Chương trình trên thực hiện việc tính tổng n số nguyên nhập vào từ bàn phím mà không cần tạo mảng để lưu trữ các số mà thực hiện cộng trực tiếp sau từng lần nhập.

Một số lưu ý

break và continue cũng có thể được sử dụng trong hai cấu trúc lặp này, break sẽ thoát khỏi vòng lặp ở mức thấp nhất (vòng lặp trong cùng nếu có nhiều vòng lặp lồng nhau).

Tương tự như trong cấu trúc for, sau dòng lệnh while không có dấu “;“.

Vòng Lặp While Trong C++ (While Statements) / 2023

Dẫn nhập

Ở bài học trước, mình đã chia cho các bạn về CÂU LỆNH GOTO TRONG C++ (Goto statements). Nhìn chung, việc sử dụng câu lệnh Goto bị xa lánh trong C++ (và hầu hết các ngôn ngữ bậc cao khác). Bạn nên hạn chế sử dụng chúng.

Trong bài hôm nay, mình sẽ giới thiệu cho các bạn về Vòng lặp While trong C++ (While statements) .

Nội dung

Trong bài ta sẽ cùng tìm hiểu các vấn đề:

Tổng quan về cấu trúc vòng lặp

Vòng lặp while

Tổng quan về cấu trúc vòng lặp

Trong cuộc sống, có rất nhiều tình huống giống nhau được lặp đi lặp lại nhiều lần. Lập trình cũng vậy, các chương trình máy tính luôn có những đoạn code được lặp đi lặp lại.

Trong ví dụ trên, lập trình viên không thể tự tay viết 1000 câu lệnh cout, vì nó mất khá nhiều thời gian và công sức.

Vì vậy, C++ đã cung cấp 4 loại vòng lặp: while, do while, for và for each (C++ 11) cho phép thực hiện lặp đi lặp lại một công việc nào đó. Trong bài học này, chúng ta cùng tìm hiểu về vòng lặp while.

Vòng lặp while (while statements)

Vòng lặp while là cấu trúc lặp đơn giản nhất trong bốn cấu trúc lặp mà C++ cung cấp, và nó có một nét rất giống với câu lệnh if:

Hoặc:

Nếu expression là true (khác 0), các câu lệnh bên trong khối lệnh sẽ được thực thi. Nếu vòng lặp while thực thi nhiều câu lệnh, bạn cần đặt các câu lệnh vào khối ngoặc nhọn {}.

Một vòng lặp có thể không được thực hiện lần nào, nếu biểu thức điều kiện sai ngay từ đầu:

Vòng lặp vô hạn (Infinite loops)

Nếu biểu thức điều kiện luôn đúng, vòng lặp while sẽ thực hiện mãi mãi. Đây gọi là một vòng lặp vô hạn.

Trong ví dụ trên, biến count không bao giờ thay đổi giá trị, nên biểu thức count < 10 luôn đúng. Vì vậy, vòng lặp sẽ lặp mãi mãi.

Bạn cũng có thể cố ý tạo ra một vòng lặp vô hạn:

while (1)

Cách duy nhất để thoát khỏi một vòng lặp vô hạn là sử dụng một trong những từ khóa: return, break, exit(), goto, throw hoặc bạn tự tắt chương trình.

Biến vòng lặp (Loop variables)

Thông thường, người ta thường sử dụng một biến vòng lặp để giới hạn số lần lặp của vòng lặp. Biến vòng lặp là một biến số nguyên với mục đích duy nhất là đếm số lần lặp đã được thực hiện.

Trong những ví dụ trên, các biến count là một biến vòng lặp.

Không sử dụng kiểu số nguyên không dấu () cho các biến vòng lặp.

Các biến vòng lặp thường được đặt những tên đơn giản ( ví dụ: i, j, k, iii, jjj, kkk, ...). Nhưng để dễ phân biệt hơn, bạn nên đặt cho nó những tên có ý nghĩa cho từng mục đích, ví dụ như count.

Vòng lặp lồng nhau (Nested loops)

Một vòng lặp while có thể lồng vào trong một vòng lặp khác. Ví dụ:

Kết luận

Qua bài học này, bạn đã nắm rõ về Vòng lặp While trong C++ (While statements). Vòng lặp while là một cấu trúc đơn giản, dễ sử dụng, lập trình viên thường sử dụng vòng lập while khi số lần lặp lại của một công việc là chưa biết trước.

Trong bài tiếp theo, mình sẽ giới thiệu cho các bạn về cấu trúc vòng lặp thứ 2 trong C++, đó là VÒNG LẶP DO WHILE TRONG C++ (Do while statements).

Tài liệu

Nhằm phục vụ mục đích học tập Offline của cộng đồng, Kteam hỗ trợ tính năng lưu trữ nội dung bài học Vòng lặp While trong C++ (While statements) dưới dạng file PDF trong link bên dưới.

Ngoài ra, bạn cũng có thể tìm thấy các tài liệu được đóng góp từ cộng đồng ở mục TÀI LIỆU trên thư viện Howkteam.com

Tải xuống

Tài liệu

Nhằm phục vụ mục đích học tập Offline của cộng đồng, Kteam hỗ trợ tính năng lưu trữ nội dung bài học Vòng lặp While trong C++ (While statements) dưới dạng file PDF trong link bên dưới.

Ngoài ra, bạn cũng có thể tìm thấy các tài liệu được đóng góp từ cộng đồng ở mục TÀI LIỆU trên thư viện Howkteam.com

Nếu bạn có bất kỳ khó khăn hay thắc mắc gì về khóa học, đừng ngần ngại đặt câu hỏi trong phần BÌNH LUẬN bên dưới hoặc trong mục HỎI & ĐÁP trên thư viện chúng tôi để nhận được sự hỗ trợ từ cộng đồng.

Vòng Lặp While Trong C# / 2023

Bài trước mình đã giới thiệu sơ lượt về vòng lặp trong C# và chúng ta cũng đã tìm hiểu về vòng lặp for trong C#. Vậy có một vấn đề đặt ra đối với vòng lặp for đó là chúng ta không biết trước được số lần lặp của đoạn lệnh. Ví dụ nhập vào một số nguyên dương lớn hơn 10, nếu số đó không thỏa thì nhập lại. Rõ ràng chúng ta hoàn toàn không thể biết người dùng sẽ nhập bao nhiêu lần cả. Vì thế nên vòng lặp while sẽ giúp chúng ta giải quyết vấn đề này.

1. Cấu trúc vòng lặp while

Như đã nói ở phần mở đầu thì đối với vòng lặp while chúng ta không xác định trước được số lần lặp của lệnh hoặc khối lệnh trong thân vòng lặp. Khi sử dụng vòng lặp while thì điều kiện lặp sẽ được kiểm tra trước khi chúng ta thực thi các lệnh trong thân vòng lặp.

Cú pháp sử dụng vòng lặp while như sau:

while (biểu thức điều kiện)

Trong đó:

Biểu thức điều kiện là điều kiện để các lệnh được thực hiện, biểu thức này bắt buộc phải trả về giá trị true hoặc false

Nếu trong while có nhiều câu lệnh được thực hiện thì phải để nó trong khối lệnh { }.

Cách thức hoạt động:

Đầu tiên mời các bạn xem sơ đồ sau rồi mình sẽ giải thích.

Trước tiên, vòng lặp while sẽ thực hiện xác định giá trị của biểu thức điều kiện. Nếu biểu thức điều kiện trả về giá trị true thì các lệnh, khối lệnh trong thân vòng lặp sẽ được thực hiện. Sau đó nó lại quay về kiểm tra điều kiện lặp có đúng hay không. Nếu điều kiện lặp trả về giá trị false thì các lệnh sẽ không được thực hiện và bỏ qua vòng lặp để đi đến lệnh tiếp theo trong chương trình.

Có một số lưu ý nhỏ khi bạn sử dụng vòng lặp while đó là:

Ta thấy trước khi thực hiện lệnh trong thân của vòng lặp thì nó sẽ kiểm tra biểu thức điều kiện trước tiên. Vậy để vòng lặp hoạt động thì biểu thức ban đầu của chúng ta sẽ trả về giá trị true.

2. Ví dụ

using System; using System.Collections.Generic; using System.Linq; using System.Text; namespace freetuts.net { class freetuts { static void Main(string[] args) { Console.WriteLine("nnhap vao so tu nhien lon hon 10 "); int x = Convert.ToInt16(Console.ReadLine()); while(x<10) { Console.WriteLine("nxin loi {0} < 10 ban oi!!! nhap lai giup minh nhe ahihi", x ); x = Convert.ToInt16(Console.ReadLine()); } Console.WriteLine("nso ban vua nhap la: " + x); Console.WriteLine("nfreetuts chuc ban hoc tot !!!"); Console.ReadKey(); } } }

Khi biên dịch và nhập một số thử nghiệm ta có kết quả như sau:

Quá trình nó chạy như sau:

Xuất ra màn hình yêu cầu nhập.

Khi bạn nhập vào x = 1thì ta thấy x < 10 nên lệnh trong vòng lặp thực hiện và yêu cầu bạn nhập lại.

Tương tự bạn nhập x = 2ta thấy đều thỏa x < 10 nên lệnh trong vòng lặp lại tiếp tục được thực thi.

Tương tự bạn nhập x = 3 ta thấy đều thỏa x < 10nên lệnh trong vòng lặp lại tiếp tục được thực thi.

Tương tự bạn nhập x = 4 ta thấy đều thỏa nên lệnh trong vòng lặp lại tiếp tục được thực thi.

Tương tự bạn nhập x = 5ta thấy đều thỏa x < 10 nên lệnh trong vòng lặp lại tiếp tục được thực thi.

3. Lời kết

Bài 7. Cấu Trúc Lặp While / 2023

Cấu trúc lặp while: Chức năng của nó đơn giản chỉ là lặp lại [Khối lệnh] khi điều kiện [biểu thức điều khiển] còn thoả mãn.

Cú pháp:

while (biểu thức điểu khiển) { Khối lệnh; }

Trong đó:

     – [biểu thức điểu khiển] là biểu thức logic.

     – [Khối lệnh] còn thực hiện khi [biểu thức điều khiển] còn đúng.

     – Trong [khối lệnh] cần có sự tác động để [biểu thức điều khiển] sai.

Ví dụ 1:

+ Yêu cầu: Tính tổng các số từ 1 đến n, với n nhập vào từ bàn phím.

+ Code:

using namespace std; int main() { int n; cout<<“n n = “; int s = 0,i = 0; while(i<=n){ s = s+i; i++; } cout<<“n Tong = “<<s; return 0; }

Ví dụ 2:

+ Yêu cầu: Đếm số chẵn nhỏ hơn n, với n nhập vào từ bàn phím.

+ Code:

using namespace std; int main() { int n; cout<<“n n = “; int dem = 0,i = 0; while (i<=n){ if (i%2==0) dem++; i++; } cout<<“n Ket qua = “<<dem; return 0; }

Ví dụ 3:

+ Yêu cầu: In ra màn hình tất cả số nguyên gồm 4 chữ sao cho tổng các chữ số bằng 10.

+ Code:

using namespace std; int main() { cout<<“In ket qua: “; int i = 1000; while (i<=9999) { if(i%10+(i/10)%10+(i/100)%10+i/1000==10) cout<<i<<“;t”; i++; } return 0; }

Ví dụ 4:

+ Yêu cầu: In ra màn hình bảng cửu chương.

+ Code:

using namespace std; int main() { cout<<“In bang cuu chuong: n”; int i = 1; while (i<=9) { int j = 1; while (j<9){ cout<<i<<“x”<<j<<“= “<<i*j<<“;t”; j++; } cout<<“n”; i++; } return 0; }

Ví dụ 5:

+ Yêu cầu: In ra màn hình tất cả số nguyên tố nhỏ hơn 1000.

+ Code:

using namespace std; int main() { cout<<“In so nguyen to nho hon 1000: n”; int i = 1; while (i<=1000) { int test = 0,j = 2; while (j<i){ if(i%j==0) { test = 1; break; } j++; } if(test==0) cout<<i<<” ; “; i++; } return 0; }