tailieunhanh - Giáo trình ngôn ngữ C++ Part 8

Cấu trúc do while Cấu trúc while mà chúng ta khảo sát ở trên luôn while kiểm tra điều kiện lặp trước khi thực hiện thân của nó. Tức là đòi hỏi trước khi vào cấu trúc while chúng ta phải xác lập được điều kiện lặp cho nó. Có lẽ bạn cũng đồng ý rằng có những cấu trúc lặp mà thân của nó phải thực hiện ít nhất một lần, tức bước lặp đầu tiên được thực hiện mà không cần điều kiện gì, sau đó các bước lặp tiếp theo sẽ được xem xét tuỳ vào. | Giáo trình tin học cơ sở II - Ngôn ngữ C . Cấu trúc do . while Cấu trúc while mà chúng ta khảo sát ở trên luôn while kiểm tra điều kiện lặp trước khi thực hiện thân của nó. Tức là đòi hỏi trước khi vào cấu trúc while chúng ta phải xác lập được điều kiện lặp cho nó. Có lẽ bạn cũng đồng ý rằng có những cấu trúc lặp mà thân của nó phải thực hiện ít nhất một lần tức bước lặp đầu tiên được thực hiện mà không cần điều kiện gì sau đó các bước lặp tiếp theo sẽ được xem xét tuỳ vào trạng thái của bước lặp trước đó. Với tình huống như thế thì while không thuận lợi bằng một cấu trúc điều khiển khác mà C cung cấp đó là cấu trúc do while. Cấu trúc của do while do S while bt Trong cú pháp trên S là 1 câu lệnh là thân của vòng lặp bt là biểu thức điều kiện có vai trò kiểm soát vòng lặp. Sự hoạt động của cấu trúc do while bước 1 thực hiện câu lệnh S bước 2 kiểm tra giá trị biểu thức bt nếu có giá trị đúng khác 0 thì lặp lại bước 1 nếu sai 0 thì kết thúc vòng lặp. 53 Giáo trình tin học cơ sở II - Ngôn ngữ C Ví dụ Viết chương trình cho phép người sử dụng nhập một ký tự trên bàn phím in kí tự và mã của nó ra màn hình kết thúc chương trình khi người dùng bấm phím ESC mã 27 Giải tương tự như ví dụ nhưng ở đây chúng ta sử dụng cấu trúc do vậy có chương trình. In ki tu include include include const int ESC 27 ma phim ESC void main int ch do printf n Hay nhap mot ki tu ch getch printf nKi tu c co ma d ch ch while ch ESC . . Ví dụ Chương trình tính tong sin x theo công thức khai triển Taylor Các bạn biết rằng sin x được tính theo tổng chuỗi vô hạn đan dấu như sau S x - x3 3 x5 5 - x7 7 . Nhưng rõ ràng chương trình không thể tính vô hạn được chúng ta chỉ có thể tính với một giới hạn nào đó. Có hai cách để giới hạn một là theo số các số hạng trong tổng tức là chỉ tính tổng với n số hạng đầu tiên của chuỗi cách này có ưu điểm là số bước lặp xác định nhưng không ước lượng được sai số. Cách thứ hai chúng ta hạn chế số bước theo độ chính xác của kết quả. .