Top 21 # Xem Nhiều Nhất Cấu Trúc Lặp / 2023 Mới Nhất 12/2022 # Top Like | Comforttinhdauthom.com

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

BÀI GIẢNG MÔN TIN HỌC 11CHÀO MỪNG QÚY THẦY CÔ ĐẾN DỰ GiỜSỞ GD&ĐT BÀ RỊA VŨNG TÀUTRƯỜNG THPT MINH ĐẠMGiáo viên: Trương Thị LiênKiểm tra bài cũCho chương trình sau:Var a,d : byte;Begin d:=0; a:=5; If a mod 2 = 0 then d:=d+1; a:=6; If a mod 2 = 0 then d:=d+1; a:=24; If a mod 2 = 0 then d:=d+1;End. Câu 1: Chương trình trên sử dụng câu lệnh rẽ nhánh dạng nào?Câu 2: Sau khi chạy xong chương trình kết quả của d là bao nhiêu? A. 0 B. 1 C. 2 D. 3Câu 3: Chương trình trên dùng để làm gì?Bài 10 cấu trúc lặpI. Tìm hiểu lặpLặp là việc thực hiện đi thực hiện lại một hoặc một vài công việc nào đó.Vd: Múc nước đổ vào đầy thùng– Cấu trúc lặp là dùng các thao tác để thể hiện việc lặp đó trong thuật toánBài 10: Cấu trúc lặp(tiết 1/3)? lítBài 1: Có 1 thùng với dung tích 100 lít, Hãy múc nước đổ đầy thùng đó với dụng cụ chứa 1 lít.Bài 2 : Có 1 thùng chưa biết dung tích, Hãy múc nước đổ đầy thùng đó với dụng cụ chứa 1 lít.Hãy cho biết quá trình đổ nước cho hai bài toán trên có điểm giống nhau và khác nhau thế nào?Bài 10: Cấu trúc lặp(tiết 1/3)I. Tìm hiểu lặpLặp là việc thực hiện đi thực hiện lại một hoặc một vài công việc nào đó.Vd: Múc nước đổ vào đầy thùng– Cấu trúc lặp là dùng các thao tác để thể hiện việc lặp đó trong thuật toánBài 10: Cấu trúc lặp(tiết 1/3)– Có hai dạng cấu trúc lặp: Lặp với số lần biết trước và lặp với số lần chưa biết trước.II. Lặp với số lần biết trước1. Bài toán: Với a là số nguyên dương.Tính tổng

Gợi ý pp: Ta xem như s là một cái thùng, số hạng như một cái ca có dung tích nước khác nhau, khi đó việc tính tổng trên tương tự như việc đổ nước vào thùng s bằng cái ca+ Có bao nhiêu lần đổ nước vào thùng?+ Mỗi lần đổ một lượng bao nhiêu? Lần thứ n đổ bao nhiêu?+ Mỗi lần đổ 1 ca nước vào thì dung lượng thùng bao nhiêu? + Phải thực hiện bao nhiêu lần tính tổng s?– Có 100 lần (n=100) – 1/(a+n)

– s=s+1/(a+n)

– 100 lầnII. Lặp với số lần biết trước1. Bài toán: Với a là số nguyên dương.Tính tổng

Lần n=1Lần n=0……Lần n=100Lần n=2S = 0S = S + 1/(a+1)S = S + 1/(a+2)….. S = S + 1/(a+100) Input: sồ nguyên dương aOutput: Tổng sBước 1.Nhập… S..; N…;Bước 2. N……Bước 3. Điều kiện kết thúc thì chuyển đến bước 5;Bước 4. S………rồi làm gì?Bước 5. Đưa ra kết quả gì? rồi kết thúc.1. Bài toán: Với a là số nguyên dương.Tính tổng

Cấu Trúc Lặp Trong Pascal / 2023

Xin chào các bạn, Hôm nay WIKIPASCAL sẽ hướng dẫn các bạn về Cấu trúc lặp trong Pascal Pascal

Trước hết chúng ta xét một ví dụ sau.

Ví dụ 1

:

 giả sử ta phải viết ra trên màn hình các số từ 0 đến 24, mỗi số chiếm một dòng :

0

1

2

23

24

Việc này có thể thực hiện bằng 25 lệnh writeln như sau :

Code:

Writeln (0) ; Writeln (1) ; ……………. Writeln (24) ;

Cách viết này rõ ràng và tẻ nhạt trong khi nó có quy luật. Chúng ta có thể thay thế bằng cách dùng một lệnh Writeln ( I ) trong đó I là một biến nguyên bất kỳ nhận giá trị chạy từ 0 đến 24 như sau :​

Code:

For I := 0 To 24 Do Writeln ( I ) ;

Vòng lặp For này có nghĩa là cho I chạy từ 0 ( giá trị đầu ) tới 24 ( giá trị cuối ), với mỗi giá trị của I, máy sẽ thực hiện công việc viết sau chữ Do, ở đây là viết ra giá trị của I.​

Cụ thể hơn, vòng lặp For này được thực hiện từng bước như sau :

1. Đầu tiên I lấy giá trị 0 là giá trị ban đầu. I nhỏ hơn giá trị cuôí là 24 nên lệnh Writeln ( I ) được thực hiện, viết ra giá trị 0.

2. Sau đó, I nhận giá trị tiếp theo, tức là I := succ ( I ) = I + 1. Lúc này I = 1 và vẫn nhỏ hơn giá trị cuối là 24 nên lệnh writeln ( I ) được thực hiện : viết ra giá trị của I ( bằng 1 ) ra màn hình.

3. Chương trình lại quay vòng về điểm 2 cho đến khi nào I = 25, lớn hơn giá trị cuối (24) thì dừng.​

Mẫu viết tổng quát của ví dụ trên là :

Code:

For Bien_dieu_khien := Gia_tri_dau To Gia_tri_cuoi Do ;

Nếu ta muốn viết các số từ 24 đến 0 ta lại viết như sau :

Code:

For I := 24 Downto 0 Do Writeln ( I ) ;

Với mẫu viết tổng quát như sau :

Code:

For Bien_dieu_khien := Gia_tri_dau Downto Gia_tri_cuoi Do ;

Trong mẫu 2, máy tính sẽ làm theo chiều ngược lại, tức là theo chiều giảm của biến điều khiển : đầu tiên biến điều khiển nhận giá trị ban đầu và sau đó thực hiện chu kì lặp như sau : chừng nào biến điều khiển còn lớn hơn hoặc bằng giá trị cuối thì thực hiện , sau mỗi lần thực hiện, biến điều khiển nhận giá trị trước nó, tức là :​

Bien_đieu_khien := Pred (Bien_đieu_khien) ;

Ví dụ 2 : 

tính tổng các số nguyên từ 50 đến 500 ta viết như sau :

Code:

Var I : integer ; Sum : real ; BEGIN Sum := 0 ; For I := 50 To 500 Do Sum := Sum + I ; (* hoặc For I := 500 Downto 50 Do Sum := Sum + I ; *) Writeln ( ' Tong = ', Sum ) ; END.

Ví dụ 3 : 

viết hai dòng các chữ cái hoa và nhỏ từ ‘A’ đến ‘Z’ ra màn hình với quy cách mỗi chữ chiếm 2 chỗ

Code:

USES CRT ; { đơn vị chương trình CRT để dùng thủ tục Clrscr } Var ch : char ; BEGIN Clrscr ; For ch := 'A' To 'Z' Do Write (ch : 2) ; Writeln ; For ch := 'a' To 'z' Do Write (ch : 2) ; Writeln ; END.

Kết quả hiện ra màn hình :

A B C D E F G H I J K L MN O P Q R S T U V WX Y Z

A b c d e f g h I j k l m n o p q r s t u v w x y z

Ví dụ 4 

: phép thử biến ngày có phải ngày làm việc hay không được viết như sau :

Code:

Type ngay = (ChuNhat, Hai, Ba, Tu, Nam, Sau, Bay) ; Var Ngayx, ng : ngay ; BEGIN Ngayx := nam ; For ng := 'hai' To 'bay' Do If ngayx = ngay Then Writeln ( ' Ngay lam viec ' ); END.

Cần lưu ý trong sau Do, không nên thay đổi tùy tiện giá trị của biến điều khiển. Làm như vậy rất nguy hiểm vì ta sẽ không còn chủ động kiểm soát được biến điều khiển. Ví dụ không nên dùng :​

Code:

For I := 1 To 10 Do I := I + 2 ;

Ví dụ 5 

các vòng For có thể lồng nhau :

Code:

For I := 1 To 5 Do For J := 1 To 8 Do Begin K := I + J ; Writeln (K) ; End ;

Bạn hãy tự viết kết quả hiện ra màn hình.

Có hai kiểu thực hiện vòng lặp không xác định :

Với vòng lặp 

Repeat…until

..

Code:

Repeat Until ;

Với vòng lặp 

While…do

Code:

While Do Begin ; End ;

Trong lệnh Repeat… Until…, máy tính sẽ thực hiệncho đến khi có giá trị True theo chu kì xác định. Giữa Repeat và Until không cần dùng Begin và End. Có thể ví vòng Repeat… Until…với câu “Tiền trảm hậu tấu”.

Còn trong vòng lặp While… Do…máy tính sẽ lặp đi lặp lại chu kỳ sau : chừng nào có giá trị True thì đi thực hiệnđược đặt giữa Begin và End.

Như vậy sự khác nhau giữa hai loại vòng lặp trên là ở chỗ với vòng lặp Repeat, máy tính sẽ thực hiệntruớc và thử điều kiện củasau. Còn trong vòng While, máy sẽ thửtrước rồi thực hiệnsau.

Cả hai vòng lặp đều có số lần lặp không xác định trước. Cần phải lưu ý là trong khi thực hiện lặp, ta phải có một lệnh làm thay đổi một biến nằm trong để thay đổi giá trị biểu thức nhằm dừng vòng lặp lại vì nếu không như vậy các vòng lặp sẽ chạy mãi không dừng.​

Ví dụ 1:

Tính tổng sau :

A = 1 + 1/2 + 1/3 +… + 1/N

Ví dụ này hoàn toàn có thể dùng vòng lặp 

For 

song ở đây ta áp dụng vòng lặp không xác định để làm ví dụ minh họa.

Code:

Program Tinh_tong ; Var I, N : Integer ; A : Real ; BEGIN Writeln (' N = ') ; Readln ( N ) ; A := 0 ; I := 1 ; Repeat A := A + 1/ I ; I := I + 1 ; (* thay đổi giá trị biểu thức Boolean *) Writeln (' Tong = ', a :10 : 8 ) ; END.

Hoặc viết cách khác dưới dạng “đếm lùi” :

Code:

Var N : Integer ; A : Real ; BEGIN Writeln (' N = ') ; Readln ( N ) ; A := 0 ; Repeat A := A + 1/N N := N - 1 ; (* thay đổi giá trị biểu thức Boolean *) Until N = 0 ; Writeln (' Tong = ', A :10 : 8 ) ; END.

Hoặc dùng vòng lặp 

:

Code:

A := 0 ; I := 1 ; While I <= N Do Begin A := A + 1/ I ; I := I + 1 ; (* thay đổi giá trị biểu thức Boolean *) End ;

Vòng lặp While luôn luôn đi với cặp từ khoá Begin và End còn trong vòng lặp Repeat không cần sử dụng cặp Begin và End.​

Ví dụ 2:

Chúng ta thường làm các vòng lặp không xác định như sau để quay vòng theo ý muốn :

Code:

Var Traloi : Char ; BEGIN Repeat ............... (* thay đổi điều kiện thủ tục *) Writeln (' Co tiep tuc nua khong ? ') ; Readln ( Traloi ) ; Until ( Traloi = 'K' ) or ( Traloi = 'k' ) ;

III – Lệnh nhảy vô điều kiện Goto

Lệnh Goto thuộc loại lệnh đơn giản, cho phép chương trình nhẩy vô điều kiện tới một vị trí trong chương trình thông qua tên nhãn. các nhãn là các số nguyên hoặc tên được khai báo trong phần Label của phần khai báo ở đầu chương trình, đặt cách nhau qua dấu phẩy. Trong chương trình, nhãn được đặt vào vị trí thích hợp theo sau là dấu hai chấm.​

Ví dụ1

:

Code:

Program Vi_du_nhan ; Label 1, 2 ; Var X, Y, I : Real ; BEGIN ................ 1 : X := X + 1 ; ................ ................ 2 : I := X + Y ; If I < 3 Then Goto1 ; ................ END.

Sự có mặt của Goto trong chương trình chúng tỏ người lập trình chưa học cách nghĩ theo Pascal như lời của giáo sư Writh, tác giả của Pascal chuẩn, đã viết .

Một điều ràng buộc của lệnh Goto là không được dùng Goto để nhảy vào chương trình con mặc dù có thể từ trong chương trình con nhảy ra ngoài.​

Tuy được trang bị lệnh nhảy Goto song có thể nói Pascal rất ít khi dùng hoặc tuyệt đối không nên dùng lệnh Goto vì Goto sẽ làm mất tính “cấu trúc thuật toán ” của ngôn ngữ Pascal. Goto chính là khuyết điểm của ngôn ngữ Fortran. Các lệnh While…, Repeat… Until…, If… đã đủ khả năng cho phép người lập trình tránh dùng Goto. Ngôn ngữ Fortran là loại ngôn ngữ nghèo lệnh : nó chỉ có 3 kiểu lệnh : một kiểu vòng lặp Do tương tự như vòng For của Pascal, lệnh If thì chưa có cấu trúc Else và cuối cùng là Goto.Sự có mặt của Goto trong chương trình chúng tỏ người lập trình chưa học cách nghĩ theo Pascal như lời của giáo sư Writh, tác giả của Pascal chuẩn, đã viết .Một điều ràng buộc của lệnh Goto là không được dùng Goto để nhảy vào chương trình con mặc dù có thể từ trong chương trình con nhảy ra ngoài.​

Code:

I := 1 ; While I <= N Do Begin A := A + 1/ I ; I := I + 1 ; (* thay đổi giá trị biểu thức Boolean *) End ;

Vòng lặp While luôn luôn đi với cặp từ khoá Begin và End còn trong vòng lặp Repeat không cần sử dụng cặp Begin và End.​

Ví dụ 2

:

Chúng ta thường làm các vòng lặp không xác định như sau để quay vòng theo ý muốn :

Code:

Var Traloi : Char ; BEGIN Repeat ........ (* thay đổi điều kiện thủ tục *) Writeln (' Co tiep tuc nua khong ? ') ; Readln ( Traloi ) ; Until ( Traloi = 'K' ) or ( Traloi = 'k' ) ;

Bài tập :

1. Viết chương trình nhập vào số n. Tính giá trị biểu thức E = 1/1! + 1/2! + … + 1/n!.

2. Một người gửi tiết kiệm không kì hạn với số tiền A đồng với lãi suất 0.3% mỗi tháng. Hỏi sau bao nhiêu tháng, người đó rút hêt tiền thì sẽ nhận được số tiền ít nhất là B=1.5A đồng. Biết rằng gửi tiết kiệm không kì hạn thì lãi sẽ không được cộng vào tiền gốc.

Cấu Trúc Lặp Goto Trong C#. / 2023

Dẫn nhập

Ở các bài học trước, chúng ta đã cùng nhau tìm hiểu về CẤU TRÚC CƠ BẢN CỦA VÒNG LẶP. Ở bài này chúng ta sẽ cùng đi sâu vào chi tiết cách sử dụng vòng lặp goto

Nội dung

Để đọc hiểu bài này tốt nhất các bạn nên có kiến thức cơ bản về các phần:

Trong bài học này, chúng ta sẽ cùng tìm hiểu các vấn đề:

Cấu trúc của một vòng lặp goto

Cái tên goto có thể hiểu là đi đến đâu đó. Thường sử dụng cấu trúc goto người ta sẽ đi kèm một câu điều kiện (có thể không cần).

goto là từ khóa thông báo cho trình biên dịch biết sẽ đi đến nhãn ngay sau để tiếp tục thực thi code.

Các ví dụ sử dụng goto:

static void Main(string[] args) { int a = 1; switch(a) { case 1:

Trong đoạn code này chúng ta biên dịch sẽ thấy kết quả xuất ra màn hình dòng chữ “Case 1” vì a == 1.

static void Main(string[] args) { int a = 2; switch(a) { case 1:

Ta thấy chương trình đi vào case 2 sau đó gặp dòng code goto case 1; nên đã nhảy lên thực thi dòng code

case 1:

rồi mới kết thúc chương trình.

Một ví dụ khác kết hợp với câu điều kiện:

static void Main(string[] args) { int a = 1;

Ở trường hợp này kết quả màn hình sẽ xuất ra dòng chữ “A == 1” và dòng chữ “A == 2” ra màn hình.

Chúng ta có thể nhận thấy 2 điều ở ví dụ này:

label có thể được tạo ra một cách dễ dàng và không nhất thiết phải nằm trong cấu trúc switch .

Việc tạo label sẽ không ảnh hưởng gì đến code thông thường.

static void Main(string[] args) { int a = 2;

Kết quả sẽ in ra màn hình dòng chữ “A == 2”. Dòng chữ “A == 1” không được in ra do đoạn code Console.(“A == 1”); bị bỏ qua vì câu lệnh goto dịch chuyển đến label a_Is_2: nằm bên dưới nó.

Vậy rõ ràng lần này chương trình không đi theo trình tự từ trên xuống dưới mà bị dịch chuyển ngược lên trên trở lại bởi câu lệnh goto.

Bản chất của goto là nhảy đến bất cứ nơi đâu có label . Mọi câu lệnh khác khi goto bỏ qua đều bị trình biên dịch bỏ qua.

Chỉ cần câu điều kiện lặp luôn thỏa mãn thì vòng lặp sẽ lặp mãi.

static void Main(string[] args) { int a = 2; Ifinity_Loop:

Chúng ta thấy khi chạy chương trình sẽ in ra hàng loạt dòng “A == 2” do đoạn code Console.WriteLine(“A == 2”); được lặp lại liên tục. Đoạn code làm phát sinh vấn đề này là ở đây:

Ban đầu chương trình sẽ đi đến đoạn code goto a_Is_2;.

Sau đó lại bị đoạn code goto Ifinity_Loop; đưa ngược lại label Ifinity_Loop.

Mãi không thể nào kết thúc quá trình lặp lại này dẫn đến một vòng lặp vô tận.

Kết luận

Qua bài này chúng ta đã nắm được cách sử dụng goto và label. Đây là một cấu trúc được khuyến cáo là đi từ trên xuống ). hạn chế sử dụng (không dùng thì tốt hơn) trong lập trình C# vì nó có thể phá vỡ cấu trúc của một chương trình (

Bài sau chúng ta sẽ tiếp tục tìm hiểu về cấu trúc lặp tiếp theo đó là CẤU TRÚC VÒNG LẶP FOR TRONG C#.

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 Cấu trúc lặp Goto trong C#. 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.

Cấu Trúc Vòng Lặp For, While, Do / 2023

đây là bài viết về vòng lặp trong C bao gồm có vòng lặp for, vòng lặp while, vòng lặp do-while các bạn có thể tải sẵn bài tâp và code của mình TẠI ĐÂY để tiện theo dõi bài viết.

sau đây là chi tiết :

– Một trong những điểm mạnh lớn nhất của máy tính là khả năng thực hiện một chuỗi các lệnh lặp đi lặp lại. Điều đó có được là do sử dụng các cấu trúc lặp trong ngôn ngữ lập trình. Trong bài này bạn sẽ tìm hiểu các loại vòng lặp khác nhau C.

1. Vòng lặp

– Vòng lặp là một đoạn mã lệnh trong chương trình được thực hiện lặp đi lặp lại cho đến khi thỏa mãn một điều kiện nào đó. Vòng lặp là một khái niệm cơ bản trong lập trình cấu trúc. Trong C có các loại vòng lặp sau (for, while, do…while) – Ta sử dụng các toán tử quan hệ và toán tử logic trong các biểu thức điều kiện để điều khiển sự thực hiện của vòng lặp.

2. Vòng lặp “for”

– Cú pháp tổng quát của vòng lặp “for” như sau:

for (khởi tạo giá trị cho biến điều khiển; biểu thức điều kiện; biểu thức thay đổi giá trị của biến điều khiển)

– Khởi tạo giá trị cho biến điều khiển là một câu lệnh gán giá trị ban đầu cho biến điều khiển trước khi thực hiện vòng lặp. Lênh này chỉ được thực hiện duy nhất một lần. Biểu thức điều kiện là một biểu thức quan hệ, xác định điều kiện thoát cho vòng lặp. Biểu thức thay đổi giá trị của biến điều khiển xác định biến điều khiển sẽ bị thaddooior thế nào sau mỗi lần vòng lặp được lặp lại (thường là tăng hoặc giảm giá trị của biến điều khiển). Ba phần trên được phân cách bởi dấu chấm phẩy. Câu lệnh trong than vòng lặp có thể là một lệnh duy nhất (lệnh đơn) hoặc lệnh phức (nhiều lệnh).

– Vòng lặp for sẽ tiếp tục được thực hiện chừng nào mà biểu thức điều kiện còn [b]đúng(true)[b]. Khi biểu thức điều kiện là sai (false), chương trình sẽ thoát ra khỏi vòng lặp for

– Toán tử “phẩy (comma)”: phần biểu thức trong toán tử for có thể được mở rộng để thêm vào các lệnh khởi tạo hay các lệnh thay đổi giá trị của biến. Cú pháp như sau:

– Các biểu thức trên được phân tách bởi toán tử phẩy “,”, và được thực hiên từ trái sang phải. Thứ tự của các biểu thức là quan trọng trong trường hợp giá trị của biểu thức thứ hai phục thuộc vào giá trị của biểu thức thứ nhất. Toán tử này có độ ưu tiên thấp nhất trong các toán tử của C.

3. Vòng lặp “for” lông nhau

– Một vòng lặp for được gọi là lông nhau khi nó nằm bên trong một vòng lặp for khác. Nó sẽ có dạng tương tự như sau:

sơ đồ khối

– Vòng lặp for khi không có bất kỳ thành phần nào sẽ là một vòng lặp vô tận. Tùy nhiên, lệnh break bên trong vòng lặp sẽ cho phép thoát khỏi vòng lặp.

4. Vòng lặp “while”

– Cấu trúc lặp thứ hai trong C là vòng lặp while. Cú pháp tổng quát như sau:

sơ đồ khối:

– Trong đó, câu_lệnh có thể là rỗng, hay một lệnh đơn, hay một khối lệnh. Nếu vòng lặp while chứa một tập lệnh thì chúng phải được đặt trong cặp ngoặc xoắn {}. điều_kiện có thể là biểu thức bất kỳ. Vòng lặp sẽ được thực hiện lặp đi lặp lại khi điều kiện trên là đúng (true). Chương trình sẽ chuyển đến thực hiện lệnh tiếp theo sau vòng lặp khi điều kiện trên là sai (false). – Vòng lặp for có thể được sử dụng khi số lần thực hiện vòng lặp đã được xác định trước. Khi số lần lặp không biết trước, vòng lăp while có thể được sử dụng.

5. Vòng lặp “do…while”

– Vòng lặp do … while còn được gọi là vòng lặp do trong C. Không giống như vòng lặp for và while, vòng lặp này kiểm tra điều kiện tại cuối vòng lặp. Điều này có nghĩa là vòng lặp do…while sẽ được thực hiện ít nhất một lần, ngay cả khi điều kiện la sai (false) ở lần chạy đầu tiên. Cú pháp tổng quát của vòng lặp do…while viết như sau:

sơ đồ khối

– Cặp dấu ngoặc “{}” là không cần thiết khi chỉ có một câu lệnh hiện diện trong vòng lặp, nhưng việc sử dụng dấu ngoặc “{}” là một thói quen tốt. Vòng lặp do…while lặp đến khi điều_kiện mang giá trị false. Trong vòng lặp do…while, câu_lệnh (khối các câu lệnh) sẽ được thực thi trước, và sau đó điều_kiện được kiểm tra. Nếu điều_kiện là true, chương trình sẽ quay lại thực hiện lệnh do. Nếu điều kiện là false, chương trình chuyển đến thực hiện lệnh nằm sau vòng lặp. Tương tự như vòng lặp for, các vòng lặp while và do…while cũng có thể lồng vào nhau.

1. Khai báo một biến có độ tuổi của con người. In tên nhiều lần của người dùng như tuổi tác của mình

code vòng lặp do – while:

2. Chương trình sẽ hiển thị ngay cả con số 1-30.

3. Những con số hiển thị chương trình 10-0 trong thứ tự đảo ngược

4. Chương trình sẽ chấp nhận số nguyên và hiển thị chúng cho đến khi bằng không (0) được nhập

6. Viết chương trình in ra hàng loạt 100, 95, 90, 85, ………., 5.

8. Viết chương trình để tạo ra các loạt Fibonacci. (1,1,2,3,5,8,13, ………)

/* run this program using the console pauser or add your own getch, system(“pause”) or input loop */

int main(int argc, char *argv[]) { int a,b,i,j; printf(“vao so:”); scanf(“%d”,&a); i=0; j=1; b=1; printf(“0 “); while (b<=a){ b=i+j; j=i; i=b; printf(“%d “,b); } printf(“nnn”); system(“pause”); return 0; }

/* run this program using the console pauser or add your own getch, system(“pause”) or input loop */

int main(int argc, char *argv[]) { int a,b,i,j; printf(“vao so:”); scanf(“%d”,&a); i=0; j=1; b=0; do{ printf(“%d “,b); b=i+j; j=i; i=b;

} while (b<=a); printf(“nnn”); system(“pause”); return 0; }