Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 11 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
11
Dung lượng
403,5 KB
Nội dung
Kiểm tra bài cũ: Câu 1: Các câu lệnh Pascal sau có hợp lệ không? Vì sao? a) For i := 100 to 1 do writeln(‘A’); b) For i := 1.5 to 10.5 do writeln(‘A’); c) For i = 1 to 10 do writeln(‘A’); d) For i := 1 to 10 do; writeln(‘A’); Câu 2: Trong Pascal câu lệnh For được sử dụng với số lần lặp biết trước hay chưa? a) Chưa biết trước. b) Đã biết trước. BÀI 8: BÀI 8: LẶP VỚI SỐ LẦN CHƯA BIẾT TRƯỚC LẶP VỚI SỐ LẦN CHƯA BIẾT TRƯỚC (TIẾT 1) (TIẾT 1) Tiếp tục nghiên cứu về cấu trúc lặp. Cú pháp của câu lệnh lặp với số lần chưa biết trước. Có giống bài toán Lặp với số lần biết trước không ? 1./ CÁC HOẠT ĐỘNG LẶP VỚI SỐ LẦN CHƯA BIẾT TRƯỚC Tìm thuật giải cho bài toán Ví dụ 2: Tính và đưa kết quả ra màn hình: S =1+2+3+ …; Cho đến khi S≥ 20 Ví dụ 1: SGK Cụ thể về thuật toán theo ngôn ngữ tự nhiên: B1: S ← 0 ; i ← 1 B2: Trong khi S<20 thì B2a: S ← S+i B2b: i ← i+1; → B2 B3: Đưa S ra màn hình; B4: Kết thúc • Như vậy việc thực hiện phép tính tổng ở thuật toán trên được lặp lại với số lần chưa biết trước, phụ thuộc vào một điều kiện (S<20) và chỉ dừng khi điều kiện đó sai. Việc lặp trên có thể được mô tả qua sơ đồ khối sau: Điều kiện Câu lệnh Đúng Sai Điều kiện Sai Sơ đồ khối: Để viết chương trình chỉ dẫn máy tính thực hiện các hoạt động lặp như trong thuật toán, ta có thể sử dụng câu lệnh có dạng: “Lặp với số lần chưa biết trước” WHILE <Điều kiện> DO <Câu Lệnh> 2./ VÍ DỤ VỀ LỆNH LẶP VỚI SỐ LẦN CHƯA BIẾT TRƯỚC Trong pascal câu lệnh lặp với số lần chưa biết trước có dạng: Từ khoá Thường là một phép so sánh Lệnh đơn hay câu lệnh ghép Câu lệnh lặp này được thực hiện như sau: 1./ Kiểm tra: Điều kiện 2./ Nếu điều kiện sai, câu lệnh sẽ bò bỏ qua và kết thúc vòng lặp. Nếu điều kiện đúng, thì thực hiện câu lệnh và quay về bước kiểm tra điều kiện Câu lệnh Đúng Sai Điều kiện Mô tả đường đi của chương trình trên sơ đồ khối? Sơ đồ khối của câu lệnh While Do B1: S ← 0 ; i ← 1 B2: Trong khi S<20 thì B2a: S ← S+i B2b: i ← i+1; → B2 B3: Đưa S ra màn hình; B4: Kết thúc Var S,i:Integer; Begin S:=0; i:=1; While S<20 Do Begin S := S+i ; i := i+1 ; End; Writeln(‘Tong S = ‘,S) Readln; End. Dùng lệnh này để thể hiện thuật toán trong ví dụ 2 . được sử dụng với số lần lặp biết trước hay chưa? a) Chưa biết trước. b) Đã biết trước. BÀI 8: BÀI 8: LẶP VỚI SỐ LẦN CHƯA BIẾT TRƯỚC LẶP VỚI SỐ LẦN CHƯA BIẾT TRƯỚC (TIẾT 1) (TIẾT 1) Tiếp. TRƯỚC Trong pascal câu lệnh lặp với số lần chưa biết trước có dạng: Từ khoá Thường là một phép so sánh Lệnh đơn hay câu lệnh ghép Câu lệnh lặp này được thực hiện như sau: 1./ Kiểm tra: Điều kiện 2./