Cộng đồng chia sẻ tri thức Lib24.vn

Đề thi giữa học kì 2 Tin 8 năm 2020-2021

7e8c0cf5ce7b7b931d95cd274b3f8b3d
Gửi bởi: Nguyễn Minh Lệ 28 tháng 10 2021 lúc 5:57:41 | Được cập nhật: 9 giờ trước (8:10:22) | IP: 14.165.7.152 Kiểu file: DOCX | Lượt xem: 94 | Lượt Download: 1 | File size: 0.090996 Mb

Nội dung tài liệu

Tải xuống
Link tài liệu:
Tải xuống

Các tài liệu liên quan


Có thể bạn quan tâm


Thông tin tài liệu

ĐỀ KIỂM TRA GIỮA KỲ II NĂM HỌC 2020 - 2021 MÔN TIN HỌC LỚP 8 Đề số 01 I. MỤC TIÊU: 1. Kiến thức: - Kiểm tra kiến thức học sinh về viết chương trình bằng ngôn ngữ lập trình Pascal - Kiểm tra kiến thức HS về cấu trúc, cú pháp, cách viết chương trình về câu lệnh lặp, lặp với số lần chưa biết trước. 2. Kĩ năng: - Sử dụng được lệnh lặp For...do và While...do - Rèn cách dịch, sửa lỗi chương trình, chạy chương trình xem kết quả. - Làm quen môi trường pascal. 3. Thái độ: Rèn tính tư duy độc lập, tích cực tự giác học và trình bày kiến thức, tích cực suy nghĩ độc lập. 4. Định hướng phát triển năng lực: - Năng lực chung: Phân tích, tổng hợp, giải quyết vấn đề. - Năng lực riêng: Nhận biết, giải quyết vấn đề Tin học, công nghệ II. HÌNH THỨC KIỂM TRA. - Đề kiểm tra theo hình thức trắc nghiệm khách quan và tự luận. + Trắc nghiệm khách quan: 40% + Tự luận: 60% - HS làm bài tại lớp. III. MA TRẬN: Cấp độ Vận dụng Nhận biết Thông hiểu Cộng Cấp độ thấp Cấp độ cao TN TNKQ TL TNKQ TL TNKQ TL TL Chủ đề KQ Nhận biết được Hiểu biết được 1. Câu lệnh khái niệm, cấu khái niệm, cấu lặp trúc, cú pháp câu trúc, cú pháp câu lệnh lặp lệnh lặp Số câu 4 1 4 9 C1,2,3, C18 C5,6,7,8 4 Số điểm 1 1 1 3 Tỉ lệ % 10% 10% 10% 30% 2. Lặp với số lần chưa biết trước Số câu 4 4 1 1 10 Số điểm Tỉ lệ % Tổng số câu Tổng số điểm Tỉ lệ % C9,10, 14,15 1 10% 9 3 30% C11,12, C19 13,16 1 2 10% 20% 9 4 40% C17 3 30% 1 3 30% 7 70% 19 10 100% IV. ĐỀ BÀI: A. TRẮC NGHIỆM KHÁCH QUAN: (4 điểm, mỗi câu được 0,25 điểm) * Khoanh tròn vào chữ cái đứng trước kết quả em cho là đúng trong mỗi câu sau: 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: Chọn cú pháp câu lệnh lặp là: A. for < biến đếm > : = < giá trị đầu > to < giá trị cuối > do < câu lệnh >; B. for < biến đếm > := < giá trị cuối > to < giá trị đầu > do < câu lệnh >; C. for < biến đếm > = < giá trị đầu > to < giá trị cuối >; do < câu lệnh >; D. for < biến đếm > = < giá trị đầu > to < giá trị cuối > do < câu lệnh >; Câu 4: 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 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; Câu 6: 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? A. Integer B. Real C. String D. Tất cả các kiểu trên đều được Câu 7: Đ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; A. Tổng các số chia hết cho 3 hoặc 5 trong phạm vi từ 1 đến M B. Tổng các số chia hết cho 3 và 5 trong phạm vi từ 1 đến M C. Tổng các số chia hết cho 3 trong phạm vi từ 1 đến M D. Tổng các số chia hết cho 5 trong phạm vi từ 1 đến M Câu 8: 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 A. 1 B. 100 C. 99 D. Tất cả đều sai Câu 9: Vòng lặp While – do kết thúc khi nào A. Khi một điều kiện cho trước được thỏa mãn B. Khi đủ số vòng lặp C. Khi tìm được Output D. Tất cả các phương án Câu 10: Việc đầu tiên mà câu lệnh While ... do cần thực hiện là gì? A. Thực hiện < câu lệnh > sau từ khóa Do B. Kiểm tra giá trị của < điều kiện > C. Thực hiện câu lệnh sau từ khóa Then D. Kiểm tra < câu lệnh > Câu 11: Cho biết câu lệnh sau Do thực hiện mấy lần trong đoạn chương trình sau: i := 5; While i>=1 do i := i – 1; A. 1 lần B. 2 lần C. 5 lần D. 6 lần Câu 12: Hãy cho biết kết quả của đoạn chương trình dưới đây: a:=10; While a < 11 do write (a); A. Trên màn hình xuất hiện một số 10 B. Trên màn hình xuất hiện 10 chữ a C. Trên màn hình xuất hiện một số 11 D. Chương trình bị lặp vô tận Câu 13: Câu lệnh sau giải bài toán nào: While M
N do If M > N then M:=M-N else N:=N-M; A. Tìm UCLN của M và N B. Tìm BCNN của M và N C. Tìm hiệu nhỏ nhất của M và N D. Tìm hiệu lớn nhất của M và N Câu 14: Hoạt động nào sau đây lặp với số lần lặp chưa biết trước? A. Ngày tắm hai lần B. Học bài cho tới khi thuộc bài C. Mỗi tuần đi nhà sách một lần D. Ngày đánh răng 2 lần Câu 15: Cú pháp lệnh lặp với số lần chưa biết trước: A. While < điều kiện > to < câu lệnh >; B. While < điều kiện > to < câu lệnh 1 > do < câu lệnh 2 >; C. While < điều kiện > do ;< câu lệnh >; D. While < điều kiện > do < câu lệnh >; Câu 16: Tính tống S = 1 + 2 + 3 + … + n + … cho đến khi S>10 8. Điều kiện nào sau đây cho vòng lặp while – do là đúng: A. While S>=108 do B. While S < 108 do C. While S < 1.0E8 do D. While S >= E8 do B. TỰ LUẬN (6 điểm) Câu 17: ( 3 điểm) Hãy tìm hiểu các thuật toán sau đây và cho biết khi thực hiện thuật toán, máy tính sẽ thực hiện bao nhiêu vòng lặp? Khi kết thúc, giá trị của S bằng bao nhiêu? Viết chương trình Pascal thể hiện các thuật toán đó. a) Thuật toán 1 Bước 1. S ← 10, x ← 0.5 Bước 2. Nếu S ≤ 5.2, chuyển tới bước 4. Bước 3. S ← S - x và quay lại bước 2. Bước 4. Thông báo S và kết thúc thuật toán. b) Thuật toán 2 Bước 1. S ←10, n ← 0. Bước 2. Nếu S ≥ 10, chuyển tới bước 4. Bước 3. n ← n+3, S ← S-n và quay lại bước 2. Bước 4. Thông báo S và kết thúc thuật toán. Câu 18: ( 1 điểm) Chương trình Pascal sau đây thực hiện hoạt động nào? var i: integer; begin for i:=1 to 1000 do; end. Câu 19: ( 2 điểm) Hãy phát biểu sự khác biệt giữa câu lệnh lặp với số lần lặp cho trước và câu lệnh lặp với số lần lặp chưa biết trước. V. ĐÁP ÁN - BIỂU ĐIỂM A. TRẮC NGHIỆM KHÁCH QUAN: (4 điểm, mỗi câu được 0,25 điểm) Câu 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 Đáp án A D A B B A B B A B C A A B D C B. TỰ LUẬN (6 điểm) Câu Đáp án 17 a) Thuật toán 1: (2đ) - Kết quả thuật toán có 10 vòng lặp, giá trị S=5. - Chương trình Pascal: Điểm 0,5 1 b) Thuật toán 2: - Kết quả thuật toán có 0 vòng lặp do điều kiện vòng lặp không thỏa mãn, giá trị S=10. - Chương trình Pascal: 0,5 1 18 (1đ) 19 (2đ) Chương trình chạy biến i từ 1 đến 1000 rồi không làm gì cả. 1 Câu lệnh lặp với số lần biết trước : - Chỉ thị cho máy tính thực hiện 1 lệnh hay 1 nhóm lệnh với 0,5 số lần đã được xác định từ trước. - Điều kiện là 1 giá trị của 1 biến đếm có giá trị nguyên 0,5 Câu lệnh lặp với số lần chưa biết trước : - Chỉ thị cho máy tính thực hiện 1 lệnh hay 1 nhóm lệnh với 0,5 số lần lặp chưa biết trước. - Điều kiện tổng quát hơn, có thể là kiểm tra của 1 giá trị có 0,5 thực, cũng có thể là 1 điều kiện tổng quát khác. (Học sinh làm theo cách khác, nếu đúng vẫn cho điểm tối đa) Phú Bình, ngày 18 tháng 03 năm 2020 Tổ chuyên môn duyệt Người ra đề Triệu Thế Bằng ĐỀ KIỂM TRA GIỮA KỲ II NĂM HỌC 2020 - 2021 MÔN TIN HỌC LỚP 8 Đề số 02 I. MỤC TIÊU: 1. Kiến thức: - Kiểm tra kiến thức học sinh về viết chương trình bằng ngôn ngữ lập trình Pascal - Kiểm tra kiến thức HS về cấu trúc, cú pháp, cách viết chương trình về câu lệnh lặp, lặp với số lần chưa biết trước. 2. Kĩ năng: - Sử dụng được lệnh lặp For...do và While...do - Rèn cách dịch, sửa lỗi chương trình, chạy chương trình xem kết quả. - Làm quen môi trường pascal. 3. Thái độ: Rèn tính tư duy độc lập, tích cực tự giác học và trình bày kiến thức, tích cực suy nghĩ độc lập. 4. Định hướng phát triển năng lực: - Năng lực chung: Phân tích, tổng hợp, giải quyết vấn đề. - Năng lực riêng: Nhận biết, giải quyết vấn đề Tin học, công nghệ II. HÌNH THỨC KIỂM TRA. - Đề kiểm tra theo hình thức trắc nghiệm khách quan và tự luận. + Trắc nghiệm khách quan: 40% + Tự luận: 60% - HS làm bài tại lớp. III. MA TRẬN: Cấp độ Vận dụng Nhận biết Thông hiểu Cộng Cấp độ thấp Cấp độ cao TN TNKQ TL TNKQ TL TNKQ TL TL Chủ đề KQ Nhận biết được Hiểu biết được 1. Câu lệnh khái niệm, cấu khái niệm, cấu lặp trúc, cú pháp câu trúc, cú pháp câu lệnh lặp lệnh lặp Số câu 4 1 4 9 C6,2,9, C18 C5,1,7,8 4 Số điểm 1 1 1 3 Tỉ lệ % 10% 10% 10% 30% 2. Lặp với số lần chưa biết trước Số câu Số điểm Tỉ lệ % Tổng số câu Tổng số điểm Tỉ lệ % 4 C3,10, 14,15 1 10% 9 3 30% 4 1 C11,12, C19 13,16 1 2 10% 20% 9 4 40% 1 3 30% 1 C17 10 3 30% 7 70% 19 10 100% IV. ĐỀ BÀI: A. TRẮC NGHIỆM KHÁCH QUAN: (4 điểm, mỗi câu được 0,25 điểm) * Khoanh tròn vào chữ cái đứng trước kết quả em cho là đúng trong mỗi câu sau: Câu 1: 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? A. Integer B. Real C. String D. Tất cả các kiểu trên đều được 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: Vòng lặp While – do kết thúc khi nào A. Khi một điều kiện cho trước được thỏa mãn B. Khi đủ số vòng lặp C. Khi tìm được Output D. Tất cả các phương án Câu 4: 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 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; Câu 6: 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 7: Đ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; A. Tổng các số chia hết cho 3 hoặc 5 trong phạm vi từ 1 đến M B. Tổng các số chia hết cho 3 và 5 trong phạm vi từ 1 đến M C. Tổng các số chia hết cho 3 trong phạm vi từ 1 đến M D. Tổng các số chia hết cho 5 trong phạm vi từ 1 đến M Câu 8: 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 A. 1 B. 100 C. 99 D. Tất cả đều sai Câu 9: Chọn cú pháp câu lệnh lặp là: A. for < biến đếm > : = < giá trị đầu > to < giá trị cuối > do < câu lệnh >; B. for < biến đếm > := < giá trị cuối > to < giá trị đầu > do < câu lệnh >; C. for < biến đếm > = < giá trị đầu > to < giá trị cuối >; do < câu lệnh >; D. for < biến đếm > = < giá trị đầu > to < giá trị cuối > do < câu lệnh >; Câu 10: Việc đầu tiên mà câu lệnh While ... do cần thực hiện là gì? A. Thực hiện < câu lệnh > sau từ khóa Do B. Kiểm tra giá trị của < điều kiện > C. Thực hiện câu lệnh sau từ khóa Then D. Kiểm tra < câu lệnh > Câu 11: Cho biết câu lệnh sau Do thực hiện mấy lần trong đoạn chương trình sau: i := 5; While i>=1 do i := i – 1; A. 1 lần B. 2 lần C. 5 lần D. 6 lần Câu 12: Hãy cho biết kết quả của đoạn chương trình dưới đây: a:=10; While a < 11 do write (a); A. Trên màn hình xuất hiện một số 10 B. Trên màn hình xuất hiện 10 chữ a C. Trên màn hình xuất hiện một số 11 D. Chương trình bị lặp vô tận Câu 13: Câu lệnh sau giải bài toán nào: While M
N do If M > N then M:=M-N else N:=N-M; A. Tìm UCLN của M và N B. Tìm BCNN của M và N C. Tìm hiệu nhỏ nhất của M và N D. Tìm hiệu lớn nhất của M và N Câu 14: Hoạt động nào sau đây lặp với số lần lặp chưa biết trước? A. Ngày tắm hai lần B. Học bài cho tới khi thuộc bài C. Mỗi tuần đi nhà sách một lần D. Ngày đánh răng 2 lần Câu 15: Cú pháp lệnh lặp với số lần chưa biết trước: A. While < điều kiện > to < câu lệnh >; B. While < điều kiện > to < câu lệnh 1 > do < câu lệnh 2 >; C. While < điều kiện > do ;< câu lệnh >; D. While < điều kiện > do < câu lệnh >; Câu 16: Tính tống S = 1 + 2 + 3 + … + n + … cho đến khi S>10 8. Điều kiện nào sau đây cho vòng lặp while – do là đúng: A. While S>=108 do B. While S < 108 do C. While S < 1.0E8 do D. While S >= E8 do B. TỰ LUẬN (6 điểm) Câu 17: ( 3 điểm) Hãy tìm hiểu các thuật toán sau đây và cho biết khi thực hiện thuật toán, máy tính sẽ thực hiện bao nhiêu vòng lặp? Khi kết thúc, giá trị của S bằng bao nhiêu? Viết chương trình Pascal thể hiện các thuật toán đó. a) Thuật toán 1 Bước 1. S ← 10, x ← 0.5 Bước 2. Nếu S ≤ 5.2, chuyển tới bước 4. Bước 3. S ← S - x và quay lại bước 2. Bước 4. Thông báo S và kết thúc thuật toán. b) Thuật toán 2 Bước 1. S ←10, n ← 0. Bước 2. Nếu S ≥ 10, chuyển tới bước 4. Bước 3. n ← n+3, S ← S-n và quay lại bước 2. Bước 4. Thông báo S và kết thúc thuật toán. Câu 18: ( 1 điểm) Chương trình Pascal sau đây thực hiện hoạt động nào? var i: integer; begin for i:=1 to 1000 do; end. Câu 19: ( 2 điểm) Hãy phát biểu sự khác biệt giữa câu lệnh lặp với số lần lặp cho trước và câu lệnh lặp với số lần lặp chưa biết trước. V. ĐÁP ÁN - BIỂU ĐIỂM A. TRẮC NGHIỆM KHÁCH QUAN: (4 điểm, mỗi câu được 0,25 điểm) Câu 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 Đáp án A D A B B A B B A B C A A B D C B. TỰ LUẬN (6 điểm) Câu Đáp án 17 a) Thuật toán 1: (2đ) - Kết quả thuật toán có 10 vòng lặp, giá trị S=5. - Chương trình Pascal: Điểm 0,5 1 b) Thuật toán 2: - Kết quả thuật toán có 0 vòng lặp do điều kiện vòng lặp không thỏa mãn, giá trị S=10. - Chương trình Pascal: 0,5 1 18 (1đ) 19 (2đ) Chương trình chạy biến i từ 1 đến 1000 rồi không làm gì cả. 1 Câu lệnh lặp với số lần biết trước : - Chỉ thị cho máy tính thực hiện 1 lệnh hay 1 nhóm lệnh với 0,5 số lần đã được xác định từ trước. - Điều kiện là 1 giá trị của 1 biến đếm có giá trị nguyên 0,5 Câu lệnh lặp với số lần chưa biết trước : - Chỉ thị cho máy tính thực hiện 1 lệnh hay 1 nhóm lệnh với 0,5 số lần lặp chưa biết trước. - Điều kiện tổng quát hơn, có thể là kiểm tra của 1 giá trị có 0,5 thực, cũng có thể là 1 điều kiện tổng quát khác. (Học sinh làm theo cách khác, nếu đúng vẫn cho điểm tối đa) Phú Bình, ngày 18 tháng 03 năm 2020 Tổ chuyên môn duyệt Người ra đề Triệu Thế Bằng