Tin học 8 Bài thực hành 5: Sử dụng lệnh lặp For…Do

Xin mời các em học sinh lớp 8 cùng tham khảo nội dung bài thực hành 5 được eLib biên soạn và tổng hợp dưới đây để cùng tìm hiểu cũng như củng cố các kiến thức đã học về lệnh lặp For…Do và vận dụng chúng vào một số bài toán thực tế. eLib hy vọng đây sẽ là tài liệu tham khảo hữu ích cho các em học sinh trong quá trình học tập. Chúc các em học thật tốt!

Tin học 8 Bài thực hành 5: Sử dụng lệnh lặp For…Do

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

1.1. Mục đích, yêu cầu

- Hiểu hoạt động của câu lệnh lặp với số lần biết trước.

- Biết lệnh ghép trong pascal, biết câu lệnh gototxy(a,b) có tác dụng đưa con trỏ về cột a hàng b.

- Biết mọi ngôn ngữ lập trình đều có câu lệnh để thể hiện cấu trúc rẽ nhánh.

- Rèn luyện kĩ năng đọc hiểu chương trình có sử dụng vòng lặp for do;

- Sử dụng được câu lệnh ghép.

- Viết được chương trình có sử dụng vòng lặp for do;

- Thái độ học tập nghiêm túc, tích cực làm các bài tập thực hành.

1.2. Nội dung

a. Ôn tập kiến thức

Cú pháp:

For < biến đếm >:= < giá trị đầu > to < giá trị cuối > do

       < câu lệnh >;

Trong đó:

- FOR, TO, DO: là từ khóa.

- Biến đếm: thuộc kiểu dữ liệu số nguyên.

- Giá trị đầu, giá trị cuối: là giá trị nguyên.

- Câu lệnh: có thể là câu lệnh đơn hay câu lệnh ghép.

Ý nghĩa: Khi thực hiện, biến đếm sẽ nhận giá trị là giá trị đầu, sau mỗi vòng lặp, biến đếm sẽ tự động tăng thêm một đơn vị cho đến khi bằng giá trị cuối thì dừng lại.

b. Thực hành

Bài 1. Viết chương trình in ra màn hình bảng nhân của một số từ 1 đến 9, số được nhập từ bàn phím và dừng màn hình để có thể quan sát kết quả.

a. Khởi động Pascal. Gõ chương trình sau:

uses crt;

var N,i:integer;

begin

     clrscr;

     write('Nhap so N=');

     readln(N);

     writeln;

     writeln('Bang nhan ',N);

     writeln;

     for i:=1 to 10 do

            writeln(N,' x ', i:2,' = ',N*i:3);

     readln;

end.

b. Tìm hiểu ý nghĩa của từng câu lệnh trong chương trình;

c. Chạy chương trình với các giá trị nhập vào lần lượt bằng 1, 2, …,10. Quan sát kết quả nhận được trên màn hình.

Hướng dẫn giải

b. Ý nghĩa của câu lệnh for…do

Cho I chạy từ 1 đến 10, in ra lần lượt các biểu thức N∗i.

c. Kết quả

Kết quả in ra màn hình bảng nhân 6

Bài 2: Chỉnh sửa chương trình để làm đẹp kết quả trên màn hình như hình dưới đây:

Kết quả in ra màn hình bảng nhân 7

Hướng dẫn giải

a. Chỉnh sửa câu lệnh lặp của chương trình như sau:

uses crt;

var N,i:integer;

begin

      clrscr;

      write('Nhap so N='); readln(N);

      writeln;

      writeln('Bang nhan ',N);

      writeln;

      for i:=1 to 10 do

           begin

                GotoXY(5,WhereY);

                writeln(N,' x ',i:2,' = ',N*i:3);

                 writeln;

            end; 

       readln

end.

Lưu ý:

- Chỉ sử dụng các lệnh GotoXY, WhereX và WhereY sau khi khai báo thưu viện Crt của Pascal

- Màn hình máy tính được chia thành các cột và các hàng, được tính bắt đầu từ góc trên bên trái. Câu lệnh GotoXY(a, b) có tác dụng đưa con trỏ về cột a, hàng b.

- WhereX cho biết số thứ tự của cột và WhereY cho biết số thứ tự của hàng đang có con trỏ.

Ví dụ: GotoXY(5,WhereY) đưa con trỏ về vị trí cột 5 của hàng hiện tại

b. Dịch và chạy chương trình với các giá trị gõ vào từ bàn phím. Quan sát kết quả nhận được trên màn hình

Bài 3: Cũng như câu lệnh if, có thể dùng câu lệnh for lồng trong một câu lệnh for khác khi thực hiện lặp. Sử dụng các câu lệnh for…do lồng nhau để in ra màn hình các số từ 0 đến 99 theo dạng bảng như hình sau:

Kết quả in ra màn hình các số từ 0 đến 99

Hướng dẫn giải

Program Tao_bang;

Uses Crt;

Var

     i: byte;  {chi so cua hang}

     j: byte;  {chi so cua cot}

Begin

     Clrscr; {xoa man hinh}

     For i:=0 to 9 do  {viet theo tung hang}

     begin

          For j:=0 to 9 do   {viet theo tung cot tren moi hang}

          write(10*i+j:4); {viet cac so ij ra man hinh}

          writeln;  {xuong hang moi}

      end;  {xong hang thu i}

     readln;  {dung chuong trinh de xem ket qua}

end. 

Tổng kết

- Cấu trúc lặp với sô lần lặp cho trước được thể hiện bằng câu lệnh Pascal for…do

- Giống như các câu lệnh rẽ nhánh if…then, các câu lệnh for…do cũng có thể lồng nhau. Khi đó các biến đếm trong các câu lệnh lặp phải khác nhau.

- Câu lệnh GotoXY(a, b) có tác dụng đưa con trỏ về cột a, hàng b. WhereX cho biết số thứ tự của cột và WhereY cho biết số thứ tự của hàng đang có con trỏ.

- Có thể kết hợp câu lệnh GotoXY(a, b) với các hàm chuẩn WhereX và WhereY để điều khiển vị trí con trỏ trên màn hình.

2. Luyện tập

Câu 1: Câu lệnh pascal nào sau đây là hợp lệ?

A. For i:=100 to 1 do writeln(‘A’);

B. For i:= 1 to 10 do writeln(‘A’);

C. For i= 1 to 10 do writeln(‘A’);

D. For i:=1.5 to 10.5 do writeln(‘A’);

Câu 2: Lệnh lặp nào sau đây là đúng?

A. For < biến đếm > := < giá trị cuối > to < giá trị đầu > do < câu lệnh >;

B. For < biến đếm > = < giá trị đầu > to < giá trị cuối > do < câu lệnh >;

C. For < biến đếm > := < giá trị đầu > to < giá trị cuối> do ;

D. For < biến đếm > : < giá trị đầu > to < câu lệnh > do < giá trị cuối >;

Câu 3: Vòng lặp for ..do là vòng lặp:

A. Biết trước số lần lặp

B. Biết trước số lần lặp nhưng giới hạn là >=50

C. Chưa biết trước số lần lặp

D. Biết trước số lần lặp nhưng giới hạn là <=50

Câu 4: Lệnh lặp For, mỗi lần lặp giá trị của biến đếm thay đổi như thế nào?

A. Tăng 3

B. Tăng 4

C. Tăng 1

D. Tăng 2

Câu 5: Với ngôn ngữ lập trình Pascal 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:

A. Real

B. String

C. Integer

D. Tất cả các kiểu trên đều được

3. Kết luận

Sau khi học xong bài thực hành 5 về sử dụng lệnh lặp For...do các em học sinh nắm được một số nội dung chính sau đây:

  • Biết các hệ thống lại toàn bộ các kiến thức đã học một cách logic, khoa học
  • Vận dụng kiến thức của vòng lặp for do, câu lệnh ghép để viết chương trình.
  • Rèn luyện kỹ năng đọc hiểu chương trình có sử dụng vòng lặp for . do.
  • Viết được chương trình có sử dụng vòng lặp for do;
  • Sử dụng thành thạo câu lệnh ghép vào một số chương trình đơn giản.
Ngày:14/09/2020 Chia sẻ bởi:

CÓ THỂ BẠN QUAN TÂM