PHẦN I:TÓM TẮC CÁC KIẾN THỨC CƠ BẢN NỘI
DUNG CHƯƠNG TRÌNH TIN HỌC 8 HỌC KỲ II
NĂM HỌC :2009-2010
1/CÂU LỆNH LẶP
Cú pháp: For <biến đếm>:= <giá trị đầu> to <giá trị cuối> do <câu lệnh>;
Ví dụ:
For i:= 1 to 10 do
Writeln(‘day la lan lap thu’,i);
2/HỌC VẼ HÌNH VỚI PHẦN MỀM GEOGEBRA
+ Phần mềm Geogebra dùng để vẽ các hình học đơn giản như điểm, đoạn
thẳng, đường thẳng
Để khởi động phần mêm ta nháy đúp vào biểu tượng ở trên màn hình
nền.
+ Màn hình làm việc của Geogebra gồm:
- Bảng chọn: là hệ thống các lệnh chính của phần mềm.
- Thanh công cụ: Chứa các công cụ làm việc chính là công cụ dùng để vẽ,
điều chỉnh và làm việc với các đối tượng.
- Khu vực thể hiện các đối tượng.
Tìm hiểu các công cụ làm việc chính của phần mềm.
+ Công cụ di chuyển có ý nghĩa đặc biệt là không dùng để vẽ hoặc khởi tạo
hình mà dùng để di chuyển hình.
- Công cụ : dùng để tạo một điểm mới
- Công cụ : dùng để tạo ra điểm là giao của hai đối tượng đã có trên
mặt phẳng.
- Công cụ : dùng để tạo trung điểm của đoạn thẳng.
* Các công cụ tạo mối quan hệ hình học.
- Công cụ dùng để tạo đường thẳng đi qua một điểm và vuông góc với
một đường hoặc đoạn thẳng cho trước.
- Công cụ sẽ tạo ra một đường thẳng song song với một đường
(đoạn) cho trước và đi qua một điểm cho trước.
- Công cụ dùng để vẽ đường trung trực của một đoạn thẳng hoặc
hai điểm cho trước.
- Công cụ dùng để tạo đường phân giác của một góc cho trước.
Góc này xác định bởi ba điểm trên mặt phẳng.
* Công cụ liên quan đến hình tròn.
- Công cụ tạo ra hình tròn bằng cách xác định tâm và một điểm trên hình
tròn.
- Công cụ dùng để tạo ra hình tròn bằng cách xác định tâm và bán kính.
- Công cụ dùng để vẽ hình tròn đi qua ba điểm cho trước.
- Công cụ dùng để tạo một nửa hình tròn đi qua hai điểm đối xứng tâm.
- Công cụ sẽ tạo ra một cung tròn là một phần của hình tròn nếu xác
định trước tâm hình tròn và hai điểm trên cung tròn này.
- Công cụ sẽ xác định một cung tròn đi qua ba điểm cho trước.
* Các công cụ biến đổi hình học
-Công cụ dùng để tạo ra một đối tượng đối xứng với một đối tượng cho
trước qua một trục là đường hoặc đoạn thẳng.
.
-Công cụ dùng để tạo ra một đối tượng đối xứng với một đối tượng cho
trước qua một điểm cho trước (điểm này gọi là tâm đối xứng).
3/LẶP VỚI SỐ LẦN CHƯA BIẾT TRƯỚC
* Cú pháp:
While <điều kiện> do<câu lênh>;
4/LÀM VIỆC VỚI DÃY SỐ
Cú pháp:
Tên mảng : array[<chỉ số đầu> <chỉ số cuối>] of <kiểu dữ liệu>
- Trong đó chỉ số đầu và chỉ số cuối là hai số nguyên hoặc biểu thức nguyên
thoả mãn chỉ số đầu ≤ chỉ số cuối và kiểu dữ liệu có thể là integer hoặc real.
Ví dụ : Cách khai báo đơn giản một biến mảng trong ngôn ngữ Pascal như
sau:
var Chieucao: array[1 50] of real;
var Tuoi: array[21 80] of integer;
PHẦN II:NỘI DUNG ÔN TẬP HỌC KỲ II
ĐỀ CƯƠNG
I/Trắc nghiệm:
Câu 1. Màn hình làm việc chính của Geogebra tiếng việt có mấy phần:
A. 1 B. 3 C. 2 D. 4
Câu 2. Số vòng lặp biết trước được tính bằng công thức:
A. Giá trị đầu-giá trị cuối -1 B. Giá trị cuối-giá trị đầu +1
C. Giá trị đầu-giá trị cuối +1 D. Giá trị đầu-giá trị cuối
Câu 3. Trong câu lệnh lặp giá trị đầu như thế nào với giá trị cuối
A. Bằng B. Nhỏ hơn C. Nhỏ hơn hoặc bằng
D. Lớn hơn
Câu 4. Trong công cụ di chuyển có thể chọn nhiều đối tượng bằng cách
nhấn phím nào khi chọn:
A. Alt B. Ctrl C. Home D. Esc
Câu 5. Hãy tìm hiểu đoạn chương trình sau:
x:=0 ; while tong<=20 do begin writeln(tong)) ; tong:=tong+1 end; x:=tong
Sau khi đoạn chương trình được thực hiện ,giá trị của x bằng bao nhiêu?
A. 20 B. Không xác định C. 0 D. 21
Câu 6. Cấu trúc nào được dùng để viết câu lệnh lặp với số lần chưa biết
trước?
A. While ….do …. B. If … then ….else…. C. If … Then….
D. For do….
Câu 7. Câu lệnh lặp thường gặp trong Pascal có dạng
A. For <biến đếm>:=<giá trị đầu> to do <câu lệnh>;
B. For <biến đếm>:=<giá trị đầu> <giá trị cuối > do <câu lệnh>;
C. For <biến đếm> 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 8. Trong lệnh lặp for…do của Pascal ,trong mỗi vòng lặp, biến đếm
thay đổi như thế nào
A. Một giá trị bất kì B. +1 hoặc -1 C. Một giá trị khác 0D. ±1
Câu 9. Trong câu lệnh lặp for i:=1 to 10 do begin…end; câu lện ghép được
thực hiện bao nhiêu lần? (nói cách khác, bao nhiêu vòng lặp được thực hiện)
A. 10 lần B. Khơng lần nào C. 2 lần D. .1
lần
Câu 10. :Đoạn lệnh sau đây:so:=1; while so<10 do writeln(so) ; so:=so+1 ;
sẽ cho kết quả là gì:
A. In ra các số từ 1 đến 10 B. In ra các số từ 1 đến 8
C. In ra các số từ 1 đến 9 D. In ra vơ hạn các số 1 ,mỗi số trên một dòng
Câu11:Giá trị của biểu thức sau :Giá trị cuối trừ giá trị đầu cộng 1 ,cho ta
điều gì
A.Số lần nhập câu lệnh B.Số mã của câu lệnh
C.Số vòng lặp khơng biết trước D.Số vòng lặp biết trước
Câu12: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à
A.0 B.10 C.11 D.Khơng xác định
Câu13:Các câu lệnh được đặt giữa hai từ khố begin và end tạo thành câu
lệnh
A.Câu phức B.Câu đơn C.Câu lệnh đơn D.Câu lệnh ghép
Câu14:Sau khi thực hiện đoạn chương trình Pascal For i:=1 to m do
begin
y:=x;
x:=y-1;end .Chúng ta sẽ nhận được kết quả nào dưới đây:
A.x=x-m; B.x=i-x ; C.x:=x-i; D.i=0 và x=y-1;
Câu15:Trong câu lệnh lặp for i:=1 to 10 do begin…end; câu lện ghép được
thực hiện bao nhiêu lần? (nói cách khác, bao nhiêu vòng lặp được thực hiện)
A.Khơng lần nào B.1 lần C.2 lần D.10 lần
Câu16:Trong câu lệnh lặp giá trị cuối như thế nào với giá trị đầu
A.Lớn hơn B.Nhỏ hơn C.Lớn hơn hoặc bằng D.Nhỏ hơn
hoặc bằng
Câu17: 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 18: 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
A.Interger; B.Real;
C.String D.Tất cả các kiểu trên đều được
II/Tự luận:
Câu1: 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.
Câu2:
- Các câu lệnh Pascal sau có hợp lệ không? Vì sao?
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âu3:Viết chương trình in ra màn hình bảng cửu chương 2.
Câu4: Màn hình làm việc của Geogebra gồm những thành phần nào.
Câu5: Tìm hiểu 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à số nguyên tố hay không
Câu6:1. Các câu lệnh Pascal sau có hợp lệ không, vì sao?
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');
e) var x: real; begin for x:=1 to 10 do
writeln('A'); end.
Câu7:Trong cửa hàng có các loại thùng sơn 16,17 và 21 kg.Một người
khách cần mua 185kg .Hãy viết chương trình để tính và cho biết cần bán cho
người khách nọ bao nhiêu thùng mỗi loại để không phải bán lẻ thùng nào
Câu8:Trình bày tên những công cụ làm việc chính của phần mềm Geogebra
Câu 9: Trình bày cú pháp của câu lệnh lặp với số lần lặp biết trước?
Câu10: Viết chương trình nhập N số nguyên từ bàn phím và in ra màn hình
số nhỏ nhất và số lớn nhất. N cũng được nhập từ bàn phím
Xem thêm các bài tập 7.17.8.8 sách bài tập và các bài tập thực hành
trong sách giáo khoa
HƯỚNG DẪN GIẢI ĐỀ CƯƠNG
I/Trắc nghiệm:
01. B; 02. B; 03. C; 04. B; 05. D; 06. A; 07. D; 08. B; 09. A; 10. D;
11D;12D;13D,14A;15D;16A;17B;18A
II.Tự luận:
Câu1:Program tinh_tong;
Var N,i: Integer;
S: longint;
Begin
Writeln(‘nhap so N =’);
Readln(N);
S:=0;
For i:=1 to N do S:=S+i
Witeln(‘tong la:’,S);
Readln;
End.
Câu2:a) Câu lệnh này không hợp lệ vì giá trị đầu lớn hơn giá trị cuối.
b) Câu lệnh này không hợp lệ vì giá trị đầu và giá trị cuối không phải là giá
trị nguyên.
c) Đây là câu lệnh hợp lệ.
d) Đây là câu lệnh không hợp lệ vì sau từ khóa do không có dấu chấm phẩy.
Câu3:
Program in_bang_cuu_chuong ;
Var i: integer;
Begin
For i:= 1 to 10 do
Writeln(‘2 lan’,i,’=’i*2);
Readln;
End.
Câu4:+ Màn hình làm việc của Geogebra gồm:
- Bảng chọn: là hệ thống các lệnh chính của phần mềm.
- Thanh công cụ: Chứa các công cụ làm việc chính là công cụ dùng để vẽ,
điều chỉnh và làm việc với các đối tượng.
- Khu vực thể hiện các đối tượng.
Câu5:Uses Crt;
Var n,i:integer;
Begin
Clrscr;
write('Nhap vao mot so nguyen: ');readln(n);
If n<=1 then writeln('N khong la so nguyen to')
else
begin
i:=2;
while (n mod i<>0) do i:=i+1;
if i=n then writeln(n,' la so nguyen to!')
else writeln(n,' khong phai la so nguyen
to!');
end;
readln
end.
Câu6:+ Trừ câu d), tất cả các câu lệnh đều không hợp lệ:
a) Giá trị đầu phải nhỏ hơn giá trị cuối;
b) Các giá trị đầu và giá trị cuối phải là số nguyên;
c) Thiếu dấu hai chấm khi gán giá trị đầu;
d) Thừa dấu chấm phẩy thứ nhất, nếu như ta muốn lặp lại câu lệnh
writeln('A') mười lần, ngược lại câu lệnh là hợp lệ;
e) Biến x đã được khai báo như là biến có dữ liệu kiểu số thực và vì thế
không thể dùng để xác định giá trị đầu và giá trị cuối trong câu lệnh lặp.
Câu7:Chương trình có thể như sau:
program thung_son
var t16, t17, t21 : integer
begin
writeln (‘so thung son 16, 17 va 21 lit tuong ung la : ‘) ;
for t16:=0 t0 11 do
for t17:=0 to 10 do
for t21:=0 to 8 do
if 16*t16 +17* t17 +21 * t21 =185
then writeln (‘ ‘, t16 :5 ,t17 :8 , t21 :10) ;
readln
end
Câu8:Những công cụ làm việc chính của phần mềm Geogebra là:
-Công cụ di chuyển
-Các công cụ liên quan đến đối tượng điểm
-Các công cụ liên quan đến đoạn,đường thẳng
-Các công cụ tạo mối quan hệ hình học
-Các công cụ liên quan đến đường tròn
-Các công cụ biến đổi hình học
Câu9: Cú pháp của câu lệnh lặp với số lần lặp biết trướ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à các từ khóa, biến đếm là biến kiểu nguyên.
+ Giá trị đầu và giá trị cuối là các giá trị nguyên và giá trị cuối không
phải nhỏ hơn giá trị đầu.
+ Giá trị cuối = giá trị đầu + 1.
+ Sau mỗi vòng lặp biến đếm được tự động tăng thêm 1 đơn vị cho đến
khi bằng giá trị cuối.
Câu10:program MaxMin;
uses crt;
Var
i, n, Max, Min: integer;
A: array[1 100] of integer;
Phần thân chương trình sẽ tương tự dưới đây:
Begin
clrscr;
write('Hay nhap do dai cua day so, = '); readln(n);
writeln('Nhap cac phan tu cua day so:');
For i:=1 to n do
Begin
write('a[',i,']='); readln(a[i]);
End;
Max:=a[1]; Min:=a[1];
for i:=2 to n do
begin if Max<a[i] then Max:=a[i];
if Min>a[i] then Min:=a[i]
end;
write('So lon nhat la Max = ',Max);
write('; So nho nhat la Min = ',Min);
readln;
End.