Tin học 8 Bài 7: Câu lệnh lặp

Mời quý thầy cô cùng các em học sinh lớp 8 theo dõi nội dung bài học số 7 bên được eLib biên soạn và tổng hợp bên dưới đây để có cái nhìn khái quát hơn về lệnh lặp và câu lệnh lặp trong một số chương trình cơ bản. Hy vọng đây sẽ là tài liệu tham khảo hữu ích cho các em học sinh và quý thầy cô trong quá trình học tập và giảng dạy.

Tin học 8 Bài 7: Câu lệnh lặp

1. Tóm tắt lý thuyết

1.1. Câu lệnh lặp – một lệnh hay nhiều lệnh

Xét ví dụ: tính tổng 100 số tự nhiên đầu tiên, tức là tính:

S = 1 + 2 + 3 + … + 100

Hoạt động chính khi giải bài toán này là thực hiện phép cộng.

- INPUT: Dãy 100 số tự nhiên đầu tiên: 1, 2, …, 100.

- OUTPUT: Giá trị tổng 1 + 2 + … + 100.

Thuật toán:

- Bước 1: SUM ← 0; I ← 0.

- Bước 2: SUM ←SUM + I; I← I + 1.

- Bước 3: nếu I ≤ 100, thì quay lại bước 2. Ngược lại, thông báo giá trị SUM và kết thúc thuật toán.

Kết luận:

- Cách mô tả hoạt động lặp trong thuật toán như ví dụ trên gọi là cấu trúc lặp.

- Để chỉ thị cho máy tính thực hiện cấu trúc lặp với 1 câu lệnh, gọi là câu lệnh lặp.

1.2. Câu lệnh lặp for…do

- Câu lệnh lặp sẽ thực hiện câu lệnh nhiều lần, mỗi lần là 1 vòng lặp. số vòng lặp là biết trước và bằng giá trị cuối – giá trị đầu + 1

- Cú pháp: For<biến đếm > := <giá trị đầu> to <giá trị cuối> do <câu lệnh>

- Biến đếm phải là kiểu nguyên. Ban đầu sẽ có giá trị đầu, sau mỗi vòng lặp biến đếm tự động tăng cho đến khi băng giá trị cuối.

1.3. Tính tổng và tích bằng câu lệnh lặp

Ví dụ: Chương trình sau đây sẽ tính tổng N số tự nhiên đầu tiên với N nhập từ bàn phím.

Program tinh_tong;

Var   N,i: Integer;

S: longint;

Begin

         Write(‘Nhap so N =’); readln(N);

         S:=0;

         For i:=1 to N do S:=S+i;

         Witeln(‘tong = ’,S);

          Readln;

End.

2. Bài tập minh họa

Bài 1: Giả sử cần vẽ 3 hình vuông có cạnh 1 đơn vị. Mỗi hình vuông là ảnh dịch chuyển của hình bên trái nó một khoảng cách 2 đơn vị.

Ba hình vuông

Hướng dẫn giải

Thuật toán:

- Bước 1. Vẽ hình vuông (vẽ liên tiếp bốn cạnh và trở về đỉnh ban đầu)

- Bước 2. Nếu số hình vuông đã vẽ được ít hơn 3, di chuyển bút vẽ về bên phải 2 đơn vị và trở lại bước 1, ngược lại kết thúc thuật toán

Bài toán vẽ một hình vuông:

Các bước vẽ hình vuông

Thuật toán mô tả các bước để vẽ hình vuông:

- Bước 1. k   0 (k là số đoạn thẳng đã vẽ được)

- Bước 2. k   k+1. Vẽ đoạn thẳng 1 đơn vị độ dài và quay thước 900 sang phải

- Bước 3. Nếu k < 4 thì trở lại Bước 2; Ngược lại, kết thúc thuật toán

Trong đó, biến k được sử dụng như là biến đếm để ghi lại số cạnh đã vẽ được.

Bài 2: In một chữ "O" trên màn hình.

Hướng dẫn giải

Chương trình mẫu:

Program ViDu4;

Uses crt;

Var i:Integer;

Begin

     Clrscr;

      For i:=1 to 20 do

           Begin

                   Writeln('O'); Delay(100);

           End;

      Readln;

End.

Câu lệnh đơn giản writeln('O') và delay(100) được đặt trong hai từ khóa begin và end để tạo thành một câu lệnh ghép trong Pascal.

3. Luyện tập

3.1. Bài tập tự luận

Câu 1: Cú pháp câu lệnh lặp là gì?

Câu 2: Với ngôn ngữ lập trình Passcal câu lệnh lặp for i:=1 to 10 do x:=x+1; thì biến đếm i phải được khai báo là kiểu dữ liệu nào?

Câu 3: Đoạn chương trình sau giải bài toán nào?

For I:=1 to M do

If (I mod 3 = 0) and (I mod 5 = 0) then

      T := T + I;

Câu 4: Xác định số vòng lặp cho bài toán: tính tổng các số nguyên từ 1 đến 100?

Câu 5: Sau khi thực hiện đoạn chương trình sau:

S:=10;

For i:=1 to 4 do S:=S+i;

Giá trị của biến S bằng bao nhiêu?

3.2. Bài tập trắc nghiệm

Câu 1: Kiểu dữ liệu của biến đếm trong lệnh lặp For – do:

A. Cùng kiểu với giá trị đầu và giá trị cuối

B. Chỉ cần khác kiểu với giá trị đầu

C. Cùng kiểu với các biến trong câu lệnh

D. Không cần phải xác định kiểu dữ liệu

Câu 2: Hoạt động nào sau đây lặp với số lần lặp biết trước?

A. Giặt tới khi sạch

B. Học bài cho tới khi thuộc bài

C. Gọi điện tới khi có người nghe máy

D. Ngày đánh răng 2 lần

Câu 3: Câu lệnh For..to..do kết thúc :

A. Khi biến đếm nhỏ hơn giá trị cuối

B. Khi biến đếm lớn hơn giá trị cuối

C. Khi biến đếm nhỏ hơn giá trị đầu

D. Khi biến đếm lớn hơn giá trị đầu

Câu 4: Trong lệnh lặp For – do:

A. Giá trị đầu phải nhỏ hơn giá trị cuối

B. Giá trị đầu phải nhỏ hơn hoặc bằng giá trị cuối

C. Giá trị đầu phải lớn hơn giá trị cuối

D. Giá trị đầu phải bằng giá trị cuối

Câu 5: Cho các câu lệnh sau hãy chỉ ra câu lệnh đúng :

A. for i:=1 to 10; do x:=x+1;

B. for i:=1 to 10 do x:=x+1;

C. for i:=10 to 1 do x:=x+1;

D. for i =10 to 1 do x:=x+1;

4. Kết luận

Sau khi học xong bài 7 môn Tin học 8 các em học sinh cần nắm được những nội dung cơ bản sau:

  • Biết nhu cầu cần có cấu trúc lặp trong ngôn ngữ lập trình.
  • Biết ngôn ngữ lập trình dựng cấu trúc lặp để chỉ dẫn máy tính thực hiện lặp đi lặp lại công việc nào đó một số lần.
  • Hiểu hoạt động của câu lệnh với số lần biết trước for.do trong Pascal.
  • Viết đúng được lệnh lặp với số lần biết trước trong một số tình huống đơn giản.
  • Hiểu lệnh ghép trong Pascal.
  • Thái độ nghiêm túc cẩn thận.
Ngày:14/09/2020 Chia sẻ bởi:Tuyết Trịnh

CÓ THỂ BẠN QUAN TÂM