Tải bản đầy đủ (.pdf) (6 trang)

Kiểm tra chất lượng học kỳ 2 môn Tin học lớp 8 năm học 2019-2020

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (421.23 KB, 6 trang )

TRƯỜNG TRUNG HỌC CƠ SỞ
      HÒA TÂN       

       KIỂM TRA CHẤT LƯỢNG HỌC KỲ II
Năm học: 2019­2020
Môn thi: Tin học – Lớp 8
                                                                     Th
ời gian làm bài: 45 phút (không kể phát đề)
ĐỀ CHÍNH THỨC
Ngày thi:       /   /2020
(Đề có 01 trang)
           

I. Đề thi:
CÂU 1: (1,5 điểm) Trình bày cú pháp lệnh lặp với số lần chưa biết. Giải thích?
CÂU 2: (1,5 điểm) Trình bày cú pháp lệnh lặp với số lần đã biết trước. Giải thích?
CÂU 3: (3 điểm)
3.1  Trình bày ý tưởng thuật toán, tìm  giá trị nhỏ nhất và giá trị lớn nhất trong dãy số 
có giá trị luôn dương (2 điểm).
3.2 Áp dụng ý tưởng thuật toán giải thích việc tìm giá trị lớn nhất? (1 điểm)
A: Array

15

10

44

5

55



Phần tử 
thứ

1

2

3

4

5

CÂU 4: (3 điểm) 
4.1 Trình bày ý tưởng thuật toán, để sắp xếp dãy số có giá trị dương theo chiều 
tăng/giảm dần giá trị các phần tử dãy số. (2 điểm).
4.2 Áp dụng ý tưởng thuật toán giải thích việc sắp xếp dãy số theo chiều tăng dần? 
(1điểm).
A: Array

12

15

7

25

40


Phần tử 
thứ

1

2

3

4

5

CÂU 5: (1 điểm) Viết đoạn chương trình để tìm giá trị lớn nhất và giá trị nhỏ nhất 
của dãy số dương được nhập từ bàn phím.
II. Matrận đề:
          Mưc đô
́ ̣
Nôi dung
̣
1. Lệnh While

Nhân biêt
̣
́
Thông hiêủ
T
TL
T

TL
N
N
Biết được 
cú pháp, 
giải thích 
được 

Vân dung
̣
̣
Thấp
Cao

Tông
̉


Số câu
Điểm
Tỷ lệ
2. Lệnh For. 

Số câu
Điểm
Tỷ lệ
3. Thuật toán

Số câu
Điểm

Tỷ lệ
4.   Áp   dụng 
thuật   toán   và 
bài toán.

5.     Viết   Đoạn 
chương trình

Số câu

Lệnh 
While

2
20%
Biết được 
cú pháp, 
giải thích 
lệnh For
1
1
10%

1
2
20%

1

10%

Thông hiểu 
thuật toán 
tìm giái trị 
lớn nhất, 
nhỏ nhất, 
sắp xếp 
dãy số
2 (3.1& 4.1)
4
40%

2
4
40%
Vận dụng 
thuật toán 
giải thích 
việc tìm 
phần tử 
lớn nhất, 
nhỏ nhất 
và sắp 
xếp  của 
dãy số
2 (3.2& 
4.2)
2
20%

2

2
20%
T ạ o 
thêm 
Work 
Sheet 
mớ i
1

1


Điểm
Tỷ lệ
Tổng Số câu
Tổng Điểm
Tỷ lệ

2
3
30%

2
4
40%

2
2
20%


1
10%
1
1
10%

1
10%
7
10
100%

III. GỢI MỞ ĐÁP ÁN

CÂU 1: (2 điểm) Trình bày cú pháp lệnh lặp với số lần chưa biết. Giải thích?
+ Cú pháp:  While  <điều kiện> do <câu lênh>;

+ Giải thích:
­ B1. Kiểm tra điều kiện.
  ­ B2. Nếu điều kiện sai, câu lệnh sẽ bị bỏ qua và việc thực hiện câu lệnh lặp kết 
thúc. Nếu điều kiện đúng, thực hiện câu lệnh và quay lại B1
CÂU 2:  (2 điểm) Trình bày cú pháp lệnh lặp với số lần đã biết trước. Giải thích?
+ Cú pháp:  For<biến đếm>:= <giá trị đầu> to <giá trị cuối> do <câu lệnh>
+ Giải thích:
Trong đó:
+  for, to, do là các từ khóa 
+ biến đếm là biến đơn có kiểu nguyên;
+ giá trị đầu và giá trị cuối là các biểu thức có cùng kiểu với biến đếm và giá trị cuối 
phải lớn hơn giá trị đầu;
+ câu lệnh có thể là câu lệnh đơn giản hay câu lệnh ghép.

CÂU 3:  (2,5 điểm)
3.1  Trình bày ý tưởng thuật toán, tìm  giá trị nhỏ nhất và giá trị lớn nhất trong dãy số 
có giá trị luôn dương (1,5 điểm).
3.2 Áp dụng ý tưởng thuật toán giải thích việc tìm giá trị lớn nhất? (1 điểm)


A: Array

15

10

44

5

55

Phần tử 
thứ

1

2

3

4

5


3.1
­ Gán giá trị Lớn nhất (Max), nhỏ nhất (Min) bằng giá trị phần tử thứ nhất A[1].
+ Max:=A[1]; Min:=A[1];
 

­ Lần lượt đi từ phần tử thứ 2 đến phần tử cuối cùng của dãy số (i chạy từ 2 đến N)
+ So sánh Max với A[i], nếu Max+ So sánh Min với A[i], nếu Min >A[i] thì Min :=A[i];

3.2 Áp dụng:
Max:=A[1]=15; Min:=A[1]=15;
Chạy biến đếm I từ 2 đến 5 như sau:
Bước i=2:
Hỏi Max=15Hỏi Min=15>A[2]=10, vậy Min:=10;
Kết quả bước i=2 là Max=15; Min=10
Bước i=3:
Hỏi Max=15Hỏi Min=10>A[3]=44, Không, bỏ qua 
Kết quả bước i=3 là Max=44; Min=10
Bước i=4:
Hỏi Max=44Hỏi Min=10>A[4]=5, vậy Min:=5;
Kết quả bước i=4 là Max=44; Min=5
Bước i=5:
Hỏi Max=44Hỏi Min=5>A[5]=55, Không, bỏ qua 
Kết quả bước i=5 là Max=55; Min=5
Đã đến phần tử cuối cùng kết thúc, kết quả Max=55; Min=5

Câu 4:  2,5 điểm


4.1 Trình bày ý tưởng thuật toán, để sắp xếp dãy số có giá trị dương theo chiều 
tăng/giảm dần giá trị các phần tử dãy số. (1,5 điểm).
4.2 Áp dụng ý tưởng thuật toán giải thích việc sắp xếp dãy số theo chiều tăng dần? 
(1điểm).
A: Array

12

15

7

25

40

Phần tử 
thứ

1

2

3

4


5

4.1 Ý tưởng thuật toán: (tăng dần, giảm dần đổi dấu > thành dấu <)
Trường hợp 2 số, lấy giá trị A[1] so sánh với A[2], nếu A[1]>A[2] thì đổi chổ cho nhau, 
để thực hiện cho cả dãy số (có số phần tử lớn hơn 2), Ta cho biến i chạy từ 1 đến N­1, 
đồng thời cho biến j chạy từ i+1 đến N: Nếu A[i]>A[j] thì đổi chổ A[i], A[j].
For i:=1 to N­1 do
For j:=i+1 to N do
If A[i]>A[j] then 
Begin
Tam:=A[i]; A[i]:=A[j]; A[j]:=Tam;
End;
4.2 Áp dụng:
Bước i=1:
+ J=2:
12
+ J=3: 
7
+ J=4:
7
+ J=5

Hỏi A[1]=12 >A[2]= 15, Không bỏ qua
15

7

25

40


Hỏi A[1]=12 >A[3]= 7, Vậy A[1]=7 & A[3]=12 {Hoán đổi} 
15

12

25

40

Hỏi A[1]=7>A[4]=25, Không bỏ qua
15

12

25

40

Hỏi a[1]=7>A[5]=40, Không bỏ qua.

Bước i=2:
+ J=3
7
+ J=4
7
+ J=5:

Hỏi A[2]=15>A[3]=12, Vậy A[2]=12 & A[3]=15
12


15

25

40

Hỏi A[2]=12>A[4]=25, Không bỏ qua
12

15

25

Hỏi A[2]=12>A[5]=40, không bỏ qua.

40


Bước i=3:
+ J=4:

Hỏi A[3]=15>A[4]=25, Không bỏ qua

+ J=5: 

Hỏi A[3]=15>A[5]=40, Không bỏ qua

7


12

15

25

40

Bước i=4
+ J=5

Hỏi A[4]=25>A[5]=40, không bỏ qua.

Kết thúc: 
Kết quả: 
7

12

15

25

40

Câu 5:  (1 điểm) Viết đoạn chương trình để tìm giá trị lớn nhất và giá trị nhỏ nhất 
của dãy số dương được nhập từ bàn phím.
Gợi ý:
Uses Crt;
Var A: ARRAY[1..50] Of Integer;

N,i,Max:Integer;
Begin
Write('Nhap N='); Readln(N);
For i:=1 To N Do
Begin
Write('A[',i,']='); Readln(A[i]);
End;
Max:=A[1];
For i:=2 To N Do
If MaxWriteln('Phan tu lon nhat cua mang:', Max); 
Readln;
End. 
­­­­­­­­­­­­­­­­oOo­­­­­­­­­­­­­­­­



×