Finger Break out; Câu 4: Các hoạt động nào dưới đây lặp với số lần chưa biết trước: A.. Khi biến đếm lớn hơn giá trị đầu Câu 7: Trong cấu trúc câu lệnh While do.. Câu lệnh được thực hiệ
Trang 1Thứ Ngày tháng 04 năm
2018
Trường THCS Lâm Kiết KIỂM TRA HỌC KÌ II
(2017-2018)
Lớp 8A: Môn: Tin Học 8 (Thời gian: 45 phút)
Họ và Tên
Điểm
Lý thuyết Thực hành
ĐỀ LÝ THUYẾT (5đ)
I/ Trắc nghiệm (3.5đ): Hãy chọn đáp án đúng nhất
Câu 1: Dưới đây là một đoạn chương trình Pascal
For i := 0 to 10 do
Begin
………
End;
Sau khi thực hiện đoạn chương trình trên, giá trị của i là bao nhiêu?
Câu 2: Cú pháp khai báo biến mảng trong Pascal là:
A var <Tên mảng> ; array [<chỉ số đầu> <chỉ số cuối>] of <kiểu dữ liệu >;
B var <Tên mảng> : array [<chỉ số đầu>…<chỉ số cuối>] of <kiểu dữ liệu >;
C var <Tên mảng> : array [<chỉ số đầu> <chỉ số cuối>] of <kiểu dữ liệu >;
D var <Tên mảng> : String[<chỉ số đầu>…<chỉ số cuối>] for <kiểu dữ liệu >;
Câu 3: Em được học vẽ hình với phần mềm nào?
A Pascal; B Geogebra; C Mario; D Finger Break out; Câu 4: Các hoạt động nào dưới đây lặp với số lần chưa biết trước:
A Ngày đánh răng hai lần B Mỗi ngày đi học một - ba lần
C Học bài lịch sử 3 lần một bài D Gọi điện cho tới khi có người nhấc máy Câu 5: Để tính tổng S=2 + 4 + 6 … + n; em chọn đoạn lệnh:
A For i:=1 to n do
if ( i mod 2)=0 then S:=S + i;
B For i:=1 to n do S:= S + i;
C c For i:=1 to n do
if ( i mod 2)=1 then S:=S + i;
D for i:=1 to n do
if ( i mod 2)<>0 then S:=S + i;
Câu 6: Khi nào thì câu lệnh For…to…do kết thúc?
A Khi biến đếm lớn hơn giá trị cuối B Khi biến đếm nhỏ hơn giá trị cuối
C Khi biến đếm bằng giá trị cuối D Khi biến đếm lớn hơn giá trị đầu Câu 7: Trong cấu trúc câu lệnh While <điều kiện> do <câu lệnh> Câu lệnh sau từ khoá do chỉ được lặp khi :
A Điều kiện có kết quả là Sai
B Điều kiện có kết quả là đúng
Trang 2C Luôn luôn được thực hiện
D Câu lệnh được thực hiện trước 1 lần rồi kiểm tra kết quả của điều kiện Câu 8: Lệnh lặp nào sau đây là đúng? 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ị đầu> to <giá trị cuối> do <câu lệnh>; C For <biến đếm>:= <giá trị cuối> to <giá trị đầu> do <câu lệnh>; D For <biến đếm>: <giá trị đầu> to <câu lệnh> do <giá trị cuối>; Câu 9: Khi viết câu lệnh lặp for to do: A Giá trị đầu bằng giá trị cuối B Giá trị cuối phải lớn hơn giá trị đầu C Giá trị đầu lớn hơn giá trị cuối D Kiểu dữ liệu nào cũng được Câu 10: Với câu lệnh for (biến đếm):= (giá trị đầu) to (giá trị cuối) do (câu lệnh); Khi thực hiện, nếu biến điếm nhận giá trị là 1 sau mỗi vòng lặp biến đếm tăng thêm bao nhiêu đơn vị? A Một đơn vị B hai đơn vị C ba đơn vị D bốn đơn vị Câu 11: 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 gì? A Interger; B real; C string D Tất cả các kiểu trên đều được Câu 12: Từ một câu lệnh lặp For … to … do… cho trước ta có thể viết lại câu lệnh đó bằng câu lệnh lặp While … do… A Đúng B Sai Câu 13: Cấu trúc lệnh lặp với số lần chưa biết trước là: A while <điều kiện > do <câu lệnh>; B while <điều kiện > to <câu lệnh>; C while <điều kiện > for <câu lệnh>; D do <câu lệnh> while <điều kiện > : Câu 14: 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.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’); II/ Tự luận (1.5đ) 1) Thế nào là dữ liệu kiểu mảng? (0.5đ) 2) Cú pháp khai báo mảng trong pascal? Giải thích các giá trị? (1đ) BÀI LÀM ………
………
………
………
………
………
………
………
………
………
………
………
Trang 3………
HỌ TÊN: ……… MÔN: TIN HỌC 8 (THỰC HÀNH)
LỚP:……… Thời gian làm bài: 45 phút
ĐỀ I
ĐỀ 1: Viết chương trình tính tổng của n số tự nhiên đầu tiên (n là số tự nhiên được nhập từ bàn phím)
Chạy chương trình Nhập số n: 4
Tổng của 4 số tự nhiên đầu tiên là: 10 Lưu D:\LOP8A…\TÊN HS_THI01
HỌ TÊN: ……… MÔN: TIN HỌC 8 (THỰC HÀNH)
LỚP:……… Thời gian làm bài: 45 phút
ĐỀ II
ĐỀ 2: Viết chương trình tính trung bình n số thực x1, x2, x3… xn (Số n và x1, x2, x3… xn được nhập
từ
bàn phím) Chạy chương trình
Nhập số n: 3 Nhập số thứ 1: 4 Nhập số thứ 2: 6 Nhập số thứ 3: 8 Trung bình của 3 số là: 6 Lưu D:\LOP8A…\TÊN HS_THI02
HỌ TÊN: ……… MÔN: TIN HỌC 8 (THỰC HÀNH)
LỚP:……… Thời gian làm bài: 45 phút
ĐỀ III
ĐỀ 3: Viết chương trình nhận biết một số tự nhiên n được nhập từ bàn phím có phải là số nguyên tố
hay không? Chạy chương trình
Nhập số n: 7
7 là số nguyên tố Nhập số n: 8
8 không phải là số nguyên tố Lưu D:\LOP8A…\TÊN HS_THI03
Trang 4ĐÁP ÁN – BIỂU ĐIỂM
Lý thuyết (5đ)
Phần 1: Trắc nghiệm 3.5 đ (Mỗi đáp án đúng được 0.25đ)
Câu 1 Câu 2 Câu 3 Câu 4 Câu 5 Câu 6 Câu 7 Câu 8 Câu 9 Câu 10 Câu 11 Câu 12 Câu 13 Câu 14
Phần 2: Tự luận (1.5 đ)
1) Khi khai báo một biến có kiểu dữ liệu là kiểu mảng, biến đó được gọi là biến mảng 0.5 đ
2)Tên mảng: array[<chỉ số đầu> <chỉ số cuối>] of <kiểu dữ liệu>;
Trong đó: Chỉ số đầu, chỉ số cuối là 2 số nguyên thoả mãn (Chỉ số đầu<=chỉ số cuối);
kiểu dữ liệu có thể là integer hoặc real
0.5 đ 0.5 đ
Thực hành (5đ)
1) Khởi động và lưu đúng tên yêu cầu 2) Đặt được tên chương trình và dùng thư viện xoá màn hình 3) Khai báo đúng
4) Begin End
5) Nhập và xuất được N
6) Dùng đúng cấu trúc For do ( hoặc While do) 7) Chạy được chương trình
Chạy đúng kết quả chương trình
0.5đ 0.5đ 1.0đ 0.5đ 0.5đ 1.0đ 0.5đ 0.5đ
Trang 5MA TRẬN TIN HỌC 8 (2017-2018) cấp độ
Chủ đề
Vận dụng
Chủ đề 1: Bài
7 Câu lệnh lặp
- Biết cấu trúc For do - Hiểu được nếu biến đếm
nhận giá trị là 1 sau mỗi vòng lặp biến đếm tăng thêm 1 đơn vị.
- Hiểu được đoạn code chạy của chương trình Pascal ngắn.
- Nhận dạng cấu trúc lặp không hợp lệ.
- Vận dụng chạy chương trình bằng tay để đưa ra kết quả.
- Vận dụng kiến thức đã học
để tính tổng, tích,
Số câu
Số điểm,
Tỉ lệ %
1 0.25đ 2.5%
4 1đ 10%
3 0.75đ 7.5%
1 5đ 50%
Chủ đề 2: Bài
8 Lặp với số
lần không biết
trước
- Biết cấu trúc câu lệnh lặp.
- Biết cấu trúc While do
- Các hoạt động lặp với số lần chưa biết trước
Số câu
Số điểm
Tỉ lệ %
2 0.5đ 5%
1 0.25đ 2.5%
Chủ đề 3:
Bài 9 Làm việc
với dãy số
- Biết nhận dạng cú pháp khai báo mảng và câu lệnh gán trong Pascal
- Hiểu được khái niệm biến mảng, kiểu dữ liệu mảng.
Số câu
Số điểm
Tỉ lệ %
1 0.25đ 2.5%
1 1đ
1 0.5đ 5%
Chủ đề 4:
Phần mềm học
tập
- Biết sử dụng các lệnh trong phần mềm
GeoGebra
Số câu
Số điểm
Tỉ lệ %
1 0.25đ 2.5%
Tổng số câu
Tổng điểm
Tỉ lệ %
6 2.25đ 22.5%
5 1.5đ 15%
5 6đ 60%
Trang 6ĐỀ CƯƠNG ÔN TẬP THI HỌC KÌ II MÔN: TIN HỌC 8 (2017-2018)
PHẦN 1: TRẮC NGHIỆM Câu 1: Các hoạt động nào dưới đây lặp với số lần chưa biết trước:
A Ngày đánh răng hai lần B Mỗi ngày đi học một - ba lần
C Học bài lịch sử 3 lần một bài D Gọi điện cho tới khi có người nhấc máy
Câu 2: Lệnh lặp nào sau đây là đúng?
E For <biến đếm>= <giá trị đầu> to <giá trị cuối> do <câu lệnh>;
F For <biến đếm>:= <giá trị đầu> to <giá trị cuối> do <câu lệnh>;
G For <biến đếm>:= <giá trị cuối> to <giá trị đầu> do <câu lệnh>;
H For <biến đếm>: <giá trị đầu> to <câu lệnh> do <giá trị cuối>;
Câu 3: Cú pháp khai báo biến mảng trong Pascal là:
E var <Tên mảng> ; array [<chỉ số đầu> <chỉ số cuối>] of <kiểu dữ liệu >;
F var <Tên mảng> : array [<chỉ số đầu>…<chỉ số cuối>] of <kiểu dữ liệu >;
G var <Tên mảng> : array [<chỉ số đầu> <chỉ số cuối>] of <kiểu dữ liệu >;
H var <Tên mảng> : String[<chỉ số đầu>…<chỉ số cuối>] for <kiểu dữ liệu >;
Câu 4: Cấu trúc lệnh lặp với số lần chưa biết trước là:
E while <điều kiện > do <câu lệnh>;
F while <điều kiện > to <câu lệnh>;
G while <điều kiện > for <câu lệnh>;
H do <câu lệnh> while <điều kiện > :
Câu 5: Em được học vẽ hình với phần mềm nào?
A Pascal; B Geogebra; C Mario; D Finger Break out;
Câu 6 : Vòng lặp while do là vòng lặp:
A Biết trước số lần lặp
B Chưa biết trước số lần lặp
C Biết trước số lần lặp nhưng giới hạn là <=100
D Biết trước số lần lặp nhưng giới hạn là >=100
Câu 7: Khi nào thì câu lệnh For…to…do kết thúc?
A Khi biến đếm lớn hơn giá trị cuối B Khi biến đếm nhỏ hơn giá trị cuối
C Khi biến đếm bằng giá trị cuối D Khi biến đếm lớn hơn giá trị đầu
Câu 8: Khi viết câu lệnh lặp for to do:
A Giá trị đầu bằng giá trị cuối B Giá trị cuối phải lớn hơn giá trị đầu
C Giá trị đầu lớn hơn giá trị cuối D Kiểu dữ liệu nào cũng được
Câu 9: 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 gì?
Trang 7Câu 10: Trong cấu trúc câu lệnh While <điều kiện> do <câu lệnh> Câu lệnh sau từ khoá do
chỉ được lặp khi :
A Điều kiện có kết quả là Sai B Điều kiện có kết quả là đúng
C Luôn luôn được thực hiện
D Câu lệnh được thực hiện trước 1 lần rồi kiểm tra kết quả của điều kiện
Câu 11 : 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.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 12: Trong Pascal, các khai báo biến mảng sau đây cách nào đúng?
A Var X: Array [10,13] of integer; B Var X: Array [1 10] of integer;
C Var X: Array [1, 10] of integer; D Var X: Array [1.5 10] of real;
Câu 13 : Với câu lệnh for (biến đếm):= (giá trị đầu) to (giá trị cuối) do (câu lệnh);
Khi thực hiện, nếu biến điếm nhận giá trị là 1 sau mỗi vòng lặp biến đếm tăng thêm bao nhiêu đơn vị?
Câu 14: Từ một câu lệnh lặp For … to … do… cho trước ta có thể viết lại câu lệnh đó bằng
câu lệnh lặp While … do…
Câu 15 : Dưới đây là một đoạn chương trình Pascal:
For i := 0 to 10 do
Begin
………
End;
Sau khi thực hiện đoạn chương trình trên, giá trị của i là bao nhiêu?
A 0 B 10 C 11 D Không xác định
Câu 16: Để tính tổng S=2 + 4 + 6 … + n; em chọn đoạn lệnh:
E For i:=1 to n do
if ( i mod 2)=0 then S:=S + i;
F For i:=1 to n do S:= S + i;
G c For i:=1 to n do
if ( i mod 2)=1 then S:=S + i;
H for i:=1 to n do
if ( i mod 2)<>0 then S:=S + i;
PHẦN II: TỰ LUẬN
1) Cú pháp câu lệnh lặp có dạng như thế nào? Giải thích từng giá trị?
2) Cú pháp lặp với số lần chưa biết trước có dạng như thế nào? Trình bày các bước thực hiện?
3) Thế nào là dữ liệu kiểu mảng? là biến mảng?
4) Cú pháp khai báo mảng trong pascal? Giải thích các giá trị?
PHẦN III: THỰC HÀNH
Trang 81) Viết chương trình tính tổng của n số tự nhiên đầu tiên, với n là số tự nhiên được nhập từ bàn phím?
2) Viết chương trình tính tích N số tự nhiên đầu tiên N!=1.2.3…N
3) Viết chương trình tính trung bình n số thực x1, x2, x3,…, xn (n và x1, x2, x3,…, xn được nhập từ bàn phím)
4) Viết chương trình nhận biết một số tự nhiên n được nhập vào từ bàn phím có phải là 1 số nguyên tố hay không?
5) Viết chương trình nhập vào n số nguyên và in ra màn hình số lớn nhất và nhỏ nhất?