banner jpg
CĂN BẢN
NÂNG CAO
CÁC CHỦ ĐỀ
BÀI MỚI NHẤT
MỚI CẬP NHẬT

Vòng lặp do while trong c#

Ở các bài trước mình đã được học vòng lặp for, và vòng lặp while trong c# là gì. Trong bài này mình tiếp tục tìm hiểu về một vòng lặp khác nữa trong c# đó là vòng lặp do while

test php

banquyen png
Bài viết này được đăng tại freetuts.net, không được copy dưới mọi hình thức.

Vậy vòng lặp do while là gì? Sử dụng vòng lặp do while như thế nào? Sự khác biệt giữa vòng lặp for, whiledo while là gì?.

1. Vòng lặp do while

Trong C# vòng lặp do while được sử dụng để lặp đi lặp lại một đoạn code nào đó. Nếu số lần lặp không cố định và bạn phải thực hiện vòng lặp ít nhất một lần, thì nên sử dụng vòng lặp do while.

Vòng lặp do while được thực thi ít nhất một lần vì điều kiện được kiểm tra sau thân vòng lặp.

Bài viết này được đăng tại [free tuts .net]

Cú pháp
do{  
      //đoạn code được thực thi 
}while(điều kiện); 

csharp do while PNG

2. Ví dụ vòng lặp do while

Ví dụ
using System;

namespace ConsoleApp1
{
    class Program
    {
        static void Main(string[] args)
        {
			int i = 1;
			do
			{
				Console.WriteLine("Gia tri: " + i);
				i++;
			} while (i <= 5);
			Console.ReadKey();
		}
    }
}

Mình giải thích đoạn code trên:

  • Đầu tiên biến i được gán giá trị là 1, tiếp đến vòng lặp do while
  • Vòng lặp 1: in giá trị i = 1, tăng i lên 1, bây giờ i = 2, kiểm tra điều kiện 2 <= 5 (thỏa mãn điều kiện)
  • Vòng lặp 2: in giá trị i = 2, tăng i lên 1, bây giờ i = 3, kiểm tra điều kiện 3 <= 5  (thỏa mãn điều kiện)
  • Vòng lặp 3: in giá trị i = 3, tăng i lên 1, bây giờ i = 4, kiểm tra điều kiện 4 <= 5  (thỏa mãn điều kiện)
  • Vòng lặp 4: in giá trị i = 4, tăng i lên 1, bây giờ i = 5, kiểm tra điều kiện 5 <= 5  (thỏa mãn điều kiện)
  • Vòng lặp 5: in giá trị i = 5, tăng i lên 1, bây giờ i = 6, kiểm tra điều kiện 6 <= 5  (không thỏa mãn điều kiện), kết thúc vòng lặp

Kết quả sau khi biên dịch đoạn code trên:

csharp do while ex1 PNG

Ví dụ 2
using System;  
public class Example  
{  
    public static void Main(string[] args)  
    {  
        int i = 11;  
        do{  
              Console.WriteLine("Giá trị: " + i);  
              i++;  
        } while (i <= 5) ;     
    }  
}
Mình giải thích đoạn code trên:
  • Đầu tiên biến i được gán giá trị là 11, tiếp đến vòng lặp do while
  • Vòng lặp 1: in giá trị i = 11, tăng i lên 1, bây giờ i = 12, kiểm tra điều kiện 12 <= 5 (không thỏa mãn điều kiện), kết thúc vòng lặp
Kết quả sau khi thực thi đoạn code trên:
csharp do while ex2 PNG
 

3. Vòng lặp do while vô hạn

Trong c# nếu điều kiện của vòng lặp do while luôn đúng thì đoạn code bên trong vòng lặp được lặp lại vô hạn. 

Ví dụ 3
using System;

namespace ConsoleApp1
{
    class Program
    {
        static void Main(string[] args)
        {
			int i = 1;
			do
			{
				Console.WriteLine("Gia tri: " + i);
			} while (i==1);
			Console.ReadKey();
		}
    }
}

Và đoạn code trên sẽ chạy vô hạn:

csharp do while ex3 PNG

4. Vòng lặp do while lồng nhau

Trong C #, nếu bạn sử dụng vòng lặp do while bên trong một vòng lặp do while khác, nó được gọi là vòng lặp do while lồng nhau. Vòng lặp do while bên trong được thực thi đầy đủ cho mỗi vòng lặp do while bên ngoài.

Chúng ta hãy xem một ví dụ đơn giản về vòng lặp do while lồng nhau trong C # như sau:

Ví dụ 4
using System;

namespace ConsoleApp1
{
    class Program
    {
        static void Main(string[] args)
        {
			int i = 1;
			do
			{
				Console.WriteLine("Vong lap thu i = " + i);
				int j = 1;
				do
				{
					Console.WriteLine("gia tri j =  " + j);
					j++;
				} while (j <= 4);
				i++;
			} while (i <= 4);
			Console.ReadKey();
		}
    }
}

Và kết quả sau khi thực thi đoạn code trên:

csharp do while ex4 PNG

5. So sánh for, while, do while

Mình cùng so sánh điểm giống nhau và khác nhau giữa 3 vòng lặp forwhiledo while như sau:

Giống nhau:

  • Mục đích của cả 3 vòng lặp for, whiledo while điều dùng để lặp đi lặp lại một đoạn code nào đó.

Khác nhau:

  • Vòng lặp for: Số vòng lặp là biết trước, kiếm tra điều kiện trước và thực hiện đoạn code bên trong vòng lặp sau khi thỏa mãn điều kiện, vì vậy đoạn code bên trong vòng lặp for có thể không được thực hiện lần nào nếu điều kiện sai.
  • Vòng lặp while: Số vòng lặp là không biết trước, kiểm tra điều kiện trước và thực hiện đoạn code bên trong vòng lặp sau khi thỏa mãn điều kiện, vì vậy đoạn code bên trong vòng lặp while có thể không được thực hiện lần nào nếu điều kiện sai.
  • Vòng lặp do while: Số vòng lặp là không biết trước, thực thi đoạn code bên trong vòng lặp trước rồi mới kiểm tra điều kiện, vì vậy đoạn code bên trong vòng lặp do while được thực hiện ít nhất 1 lần.

6. Kết luận

Như vậy trong bài học này mình đã hiểu vòng lặp do while trong c#. Sự khác nhau giữa vòng lặp for, whiledo while. Tùy vào yêu cầu bài toán mà các bạn chọn vòng lặp cho phù hợp nhé.
Cám ơn các bạn đã  đọc bài viết.

Cùng chuyên mục:

Tự viết ứng dụng quản lý xe ra vào C# Winforms và Firebase

Tự viết ứng dụng quản lý xe ra vào C# Winforms và Firebase

Trong bài viết này Freetuts chia sẽ cho các bạn một ứng dụng khá thú…

Factory Design Pattern trong C# - Cách triển khai và ví dụ

Factory Design Pattern trong C# - Cách triển khai và ví dụ

Chúng ta sẽ tìm hiểu về Factory Design Pattern trong C# là gì? Cách triển…

Hướng dẫn giải phương trình bậc hai trong C#

Hướng dẫn giải phương trình bậc hai trong C#

Giải phương trình bậc nhất ax + b = 0 trong C#

Giải phương trình bậc nhất ax + b = 0 trong C#

Cách nối hai mảng trong C# bằng hai cách khác nhau

Cách nối hai mảng trong C# bằng hai cách khác nhau

Hướng dẫn chuyển đổi giờ phút giây trong C#

Hướng dẫn chuyển đổi giờ phút giây trong C#

Cách tìm số lớn nhất trong mảng C# cực dễ

Cách tìm số lớn nhất trong mảng C# cực dễ

Trong bài viết này mình sẽ hướng dẫn các bạn cách ..

Cách kiểm tra sự tồn tại của giá trị x trong mảng C#

Cách kiểm tra sự tồn tại của giá trị x trong mảng C#

Mình sẽ thực hiện một chương trình kiểm tra giá x có tồn ...

Cách tìm số nhỏ nhất và lớn nhất trong C#

Cách tìm số nhỏ nhất và lớn nhất trong C#

Mình sẽ thực hiện hai chương trình để tìm số nhỏ nhất và số lớn…

Cách tạo các số ngẫu nhiên (Random) trong C#

Cách tạo các số ngẫu nhiên (Random) trong C#

Cách tính căn bậc hai trong C# cực dễ

Cách tính căn bậc hai trong C# cực dễ

Trong bài viết này mình sẽ hướng dẫn các bạn cách tính căn bậc hai…

Cách làm tròn số trong C# bằng hàm Math.Round

Cách làm tròn số trong C# bằng hàm Math.Round

Mình sẽ thực hiện làm tròn số theo nhiều cách khác nhau để các bạn…

Cách tìm ước số của một số nguyên trong C#

Cách tìm ước số của một số nguyên trong C#

Trong bài viết này mình sẽ hướng dẫn các bạn cách tìm ...

Cách tìm bội chung nhỏ nhất trong C#

Cách tìm bội chung nhỏ nhất trong C#

Cách kiểm tra số chính phương trong C#

Cách kiểm tra số chính phương trong C#

Trước đi vào viết chương trình, các bạn cùng ...

Cách kiểm tra số hoàn hảo trong C#

Cách kiểm tra số hoàn hảo trong C#

Trong bài viết này mình sẽ hướng dẫn các bạn cách kiểm ...

Cách đảo ngược các phần tử trong mảng C#

Cách đảo ngược các phần tử trong mảng C#

Mình sẽ thực hiện một chương trình nhận các giá trị của các phần ...

Cách tính trung bình cộng các phần tử trong mảng C#

Cách tính trung bình cộng các phần tử trong mảng C#

Trong bài viết này mình sẽ hướng dẫn các bạn cách tính ...

Cách chuyển chữ thường thành chữ in hoa và ngược lại trong C#

Cách chuyển chữ thường thành chữ in hoa và ngược lại trong C#

Mình sẽ thực hiện hai chương trình để chuyển ..

Cách viết hoa ký tự đầu tiên trong C#

Cách viết hoa ký tự đầu tiên trong C#

Mình sẽ thực hiện các chương trình để viết hoa ký từ đầu với các…

Top