[r]
(1)Gợi ý giải đề cương ôn tập thi kiểm tra học kỳ - Tin học Khối 11 - Năm học: 2010 - 2011
GỢI Ý GIẢI ĐỀ CƯƠNG ÔN TẬP KIỂM TRA HỌC KỲ I
Môn: Tin học – Khối 11 I./ PHẦN LÝ THUYẾT
Câu 1: Trình bày cấu trúc chương trình Pascal đơn giản giải thích thành phần có cấu trúc, cho ví dụ
Trả lời: Cấu trúc chương trình đơn giản gồm phần: Phần khai báo phần thân [< phần khai báo >]
<phần thân>
Trong phần khai báo phần có khơng, có khai báo sau:
Khai báo tên chương trình Cú pháp: Program <tên chương trình>; VD: program tong_day_so;
Khai báo thư viện Cú pháp: Uses <danh sách thư viện>; VD: uses crt;
Khai báo Cú pháp: Const <tên hằng> = < giá trị hằng>; VD: const N=100;
Khai báo biến Cú pháp: Var <danh sách biến>: <kiểu liệu>; VD: Var a,b,c, x1,x2: real; Khai báo chương trình
Phần thân chương trình phần bắt buộc phải có, có cấu trúc sau: Begin
< Các câu lệnh > ; End
Câu 2: Vì phải xây dựng ngơn ngữ lập trình bậc cao? khai báo biến? cho biết khác
hằng có đặt tên biến ?
Trả lời: Ta xây dựng ngôn ngữ lập trình bậc cao vì:
Gần với ngôn ngữ tự nhiên, thuận tiện đông đảo cho người lập trình Khơng phụ thuộc vào phần cứng máy tính
Dễ học, dễ hiểu, dễ hiệu chỉnh dễ nâng cấp
Cho phép làm việc với nhiều kiểu liệu, cách tổ chức liệu đa dạng, thuận tiện cho việc mô tả
thuật tốn
Khai báo biến nhằm mục đích sau
Xác định kiểu cho biến để trình dịch biết cách tổ chức ô nhớ chứa giá trị biến Đưa tên biến vào danh sách đối tượng chương trình quản lí
Trình dịch biết cách truy cập giá trị biến áp dụng thao tác thích hợp cho biến Sự khác biến có đặt tên
Ta xét khác mặt lưu trữ giá trị biến RAM Hằng: Giá trị nhớ có đặt tên không đổi
(2)Gợi ý giải đề cương ôn tập thi kiểm tra học kỳ - Tin học Khối 11 - Năm học: 2010 - 2011
Câu 3: Trình bày khái niệm Biến Hằng So sánh khác Biến Hằng Trả lời:
Biến đại lượng đặt tên, dùng để lưu trữ giá trị giá trị thay đổi q trình thực chương trình
Hằng số đại lượng có gia trị khơng thay đổi suốt trình thực chương trình
Sự khác Biến Hằng: Hằng số có giá trị khơng thay đổi suốt q trình thực chương trình Cịn Biến số nhận giá trị thân chương trình giá trị thay đổi suốt q trình thực chương trình Ngồi khác cú pháp khai báo biến Câu 4: Trình bày khái khái niệm sau:
a.) Tên dành riêng gì? Cho ví dụ minh họa b.) Tên chuẩn gì? Cho ví dụ minh họa
c.) Tên người lập trình tựđặt? Cho ví dụ minh họa Trả lời:
a.) Tên dành riêng: Một số tên ngơn ngữ lập trình dùng với ý nghĩa riêng xác định, người lập trình khơng sử dụng với ý nghĩa khác gọi tên dành riêng hay từ khóa VD: Program, uses, type,… b.) Tên chuẩn: Một số tên ngơn ngữ lập trình dùng với ý nghĩa định Những tên
được gọi tên chuẩn Tuy nhiên người lập trình khai báo dùng chúng với ý nghĩa mục địch khác VD: Byte, Real, Integer,…
c.) Tên người lập trình tự đặt: Là tên người lập trình đặt dùng với ý nghĩa riêng, xác
định cách khai báo trước sử dụng Các tên không trùng với tên dành riêng VD: Delta, so,…
Câu 5: Trình bày cú pháp khai báo biến Pascal? Giải thích thành phần cú pháp đó? Cho ví dụ? Thực khai báo biến i, j thuộc kiểu nguyên, m, n thuộc kiểu thực g thuộc kiểu kí tự
Trả lời:
Cú pháp: Var <danh sách biến> : <kiểu liệu> ;
Thực khai báo: Var i, j : byte ; m, n : real ; g : char ;
Câu 6: Trong Pascal câu lệnh gán có dạng nào? Hãy nêu chức câu lệnh gán Trả lời: Câu lệnh gán có dạng: <Tên biến> := <Biểu thức, giá trị>;
Chức câu lệnh gán đặt cho biến có tên vế trái dấu “:=” giá trị giá trị biểu thức giá trịở vế phải (Chú ý giá trị biến phải kiểu với giá trị biểu thức bên phải)
Câu 7: Trình bày thủ tục nhập liệu vào từ bàn phím thủ tục đưa liệu hình Cho ví dụ
minh họa thủ tục
Trả lời: Thủ tục nhập liệu vào từ bàn phím: Read / Readln(<Danh sách biến vào>); VD: Read / Readln(a,b,c);
(3)Gợi ý giải đề cương ôn tập thi kiểm tra học kỳ - Tin học Khối 11 - Năm học: 2010 - 2011 Câu 8: Hãy viết biểu thức toán học Pascal:
2 x cos sin
a x
x y
x x
Trả lời: (x*x + y*y)*sqrt(x+a*cos(x))/(abs(x) + sin(x))
Câu 9: Trình bày cú pháp, trình bày thành phần , vẽ sơđồ khối trình thực (ý nghĩa thực hiện) câu lệnh rẽ nhánh dạng thiếu Pascal ?
Trả lời:
Cú pháp: IF < điều kiện> THEN < Câu lệnh 1> ELSE < Câu lệnh 2> ; Các thành phần cú pháp:
IF , THEN: Là từ khóa
< Điều kiện >: Là biểu thức có kiểu Logic
< Câu lệnh >: Là câu lệnh đơn hay ghép Turbo Pascal Sơ đồ khối:
Đ
Q trình thực lệnh: Tính kiểm tra điều kiện
Nếu điều kiện câu lệnh sẽđược thực hiện, ngược lại câu lệnh bị bỏ qua
Câu 10: Trình bày cú pháp, trình bày thành phần, vẽ sơđồ khối trình thực (ý nghĩa thực hiện) câu lệnh rẽ nhánh dạng đủ Pascal ?
Trả lời: Cú pháp: IF < điều kiện> THEN < Câu lệnh 1> ELSE < Câu lệnh 2> ; Các thành phần cú pháp:
IF , THEN , ELSE: Là từ khóa < Điều kiện >: Là biểu thức có kiểu Logic
< Câu lệnh 1, Câu lệnh >: Là câu lệnh đơn hay ghép Turbo Pascal
Ý nghĩa thực lệnh: Vào lệnh kiểm tra điều kiện Nếu điều kiện thực câu lệnh (sau từ khóa THEN), ngược lại thực câu lệnh (sau từ khóa ELSE)
Sơ đồ khối:
S
Điều kiện
Đ
Câu lệnh
Đ
S
Điều kiện
(4)Gợi ý giải đề cương ôn tập thi kiểm tra học kỳ - Tin học Khối 11 - Năm học: 2010 - 2011 Câu 11: Hãy cho biết sự giống khác hai câu lệnh If – then Trả lời:
Giống nhau:
Đều cấu trúc lệnh rẽ nhánh
Dựa vào đk để lựa chọn thực thao tác thích hợp Khác nhau:
Dạng thiếu: Nếu đk khơng khỏi cấu trúc rẽ nhánh thực câu lệnh chương trình
Dạng đủ: Nếu đk khơng thực câu-lệnh-2, thoát khỏi cấu trúc rẽ nhánh thực câu lệnh chương trình
Câu 12: Câu lệnh ghép ? Tại phải có câu lệnh ghép?
Trả lời: Câu lệnh ghép câu lệnh hợp thành từ nhiều câu lệnh thành phần (đơn ghép), nhằm thực thao tác gồm nhiều thao tác thành phần Mỗi thao tác thành phần tương ứng với câu lệnh
đơn câu lệnh ghép khác
Tại phải có câu lệnh ghép: Về mặt ngơn ngữ lập trình câu lệnh ghép yếu tố cần thiết để xây dựng chương trình có cấu trúc
Câu 13: Viết câu lệnh rẽ nhánh để tính biểu thức sau: X2 + Y2 Nếu X2 + Y2≤
Z = X + Y Nếu X2 + Y2 > Y ≥ X 0.5 Nếu X2 + Y2 > Y < X Trả lời:
If ( Sqr ( x ) + Sqr ( Y ) ) ≤ then Z := Sqr ( X ) + Sqr ( X ) Else If Y ≥ X then Z := X + Y
Else Z := 0.5 ;
Câu 14: Trình bày cú pháp, trình thực câu lệnh lặp dạng tiến Trả lời:
Cú pháp: For <biến đếm>:=<Giá trịđầu> to <Giá trị cuối> <Câu lệnh>;
(5)Gợi ý giải đề cương ôn tập thi kiểm tra học kỳ - Tin học Khối 11 - Năm học: 2010 - 2011 II./ PHẦN LẬP TRÌNH
Bài 1: Viết chương trình tính đưa hình diện tích hình chữ nhật Với chiều dài chiều rộng được nhập vào từ bàn phím
Gợi ý hướng dẫn thực ngôn ngữ giả (Phần chuyển sang ngơn ngữ Pascal em tự hồn thành)
Xác định input, output toán: (số lượng biến tối thiểu cần khai báo cho chương trình) Cd, Cr, Dt (Chiều dài, Chiều rộng, Diện tích Kiểu liệu ?)
Nhập liệu cho chương trình (theo Input): cd, cr Tính diện tích HCN theo công thức biết
Hiển thị diện tích HCN vừa tính Bài 2: Viết chương trình tính tổng hai số a b
Bài tương tự 1, khác chổ tính tổng số vừa nhập Bài 3: Lập trình nhập hai số nguyên k, m khác từ bàn phím
a Tìm giá trị lớn (max) hai số k, m b Giải biện luận phương trình kx+m=0
Gợi ý hướng dẫn thực ngôn ngữ giả (Phần chuyển sang ngôn ngữ Pascal em tự hoàn thành)
Xác định input, output toán: (số lượng biến tối thiểu cần khai báo cho chương trình) K, M, Max Kiểu liệu?
Nhập liệu cho chương trình (theo Input): k, m Tìm giá trị lớn số k m
Bằng cách so sánh (Câu lệnh thực việc ?) k m hiển thị số lớn số
vừa nhập
Giải biện luận phương trình bậc dạng kx + m = Xét trường hợp sau :
Nếu k <> phương trình ln có nghiệm – m / k Ngược lại, xét m
Nếu m < > phương trình vơ nghiệm Ngược lại, phương trình có vơ số nghiệm Bài 4: Lập trình nhập vào ba số nguyên k, m, n khác từ bàn phím
a In hình số nhỏ ba sốđó
b Kiểm tra tổng ba số k, m, n có chia hết cho hay không
Gợi ý hướng dẫn thực ngôn ngữ giả (Phần chuyển sang ngơn ngữ Pascal em tự hồn thành)
(6)Gợi ý giải đề cương ôn tập thi kiểm tra học kỳ - Tin học Khối 11 - Năm học: 2010 - 2011 Nhập liệu cho chương trình (theo Input): k, m, n
Tìm giá trị nhỏ số k, m n Gán giá trị Min = k
So sánh Min > m ? Nếu Gán Min = m So sánh Min > n ? Nếu Gán Min = n Hiển thị giá trị nhỏ số k, m, n
Xét tổng (k + m + n ) có chia hết cho (sử dụng phép tốn để xét?) hay khơng? Hiển thị kết sau xét tổng số
Bài 5: Viết chương trình xác định nghiệm phương trình bậc có dạng: ax + b = Với a, b hệ sốđược nhập từ bàn phím
Gợi ý hướng dẫn thực ngôn ngữ giả (Phần chuyển sang ngôn ngữ Pascal em tự hoàn thành)
Xác định input, output toán: (số lượng biến tối thiểu cần khai báo cho chương trình) a, b, x Kiểu liệu?
Nhập liệu cho chương trình (theo Input): a, b
Giải biện luận phương trình bậc dạng ax + b = Xét trường hợp sau :
Nếu a <> phương trình ln có nghiệm – b / a Ngược lại, xét b
Nếu b < > phương trình vơ nghiệm Ngược lại, phương trình có vơ số nghiệm
Bài 6: Viết chương trình tìm nghiệm thực phương trình bậc hai ax2 + bx +c =0 Với a Gợi ý hướng dẫn thực ngôn ngữ giả
(Phần chuyển sang ngơn ngữ Pascal em tự hồn thành)
Xác định input, output toán: (số lượng biến tối thiểu cần khai báo cho chương trình) a, b, c, Delta, x1, x2 Kiểu liệu?
Nhập liệu cho chương trình (theo Input): a, b, c
Giải biện luận phương trình bậc dạng ax2 + bx + c = Xét trường hợp sau :
Nếu a = thơng báo phương trình khơng phải phương trình bậc Kết thúc Ngược lại,
Tính Delta = (- b)2 – 4ac Xét biện luận theo Delta
Nếu Delta < Phương trình có vơ nghiệm
(7)Gợi ý giải đề cương ôn tập thi kiểm tra học kỳ - Tin học Khối 11 - Năm học: 2010 - 2011
Bài 7: Viết chương trình tìm số lớn số a b, Với a b số nguyên dương nhập từ
bàn phím
Bài tương tự câu a Bài
Bài 8: Viết chương trình thực việc nhập từ bàn phím hai số nguyên dương M N (M < N), tính
đưa hình tổng số chẵn phạm vi từ M đến N
Gợi ý hướng dẫn thực ngôn ngữ giả (Phần chuyển sang ngơn ngữ Pascal em tự hồn thành)
Xác định input, output toán: (số lượng biến tối thiểu cần khai báo cho chương trình) m, n, tong, biến i sử dụng câu lệnh for Kiểu liệu?
Nhập liệu cho chương trình (theo Input): m, n Gán tổng =
Cho biến i chạy từ m đến n (cần sử dụng câu lệnh để thực hiện?)
Xét i có số chẵn hay khơng? Nếu tiến hành cộng dồn vào tổng Xác định biểu thức S ?
Hiển thị kết chương trình
Bài 9: Viết chương trình tính tổng S= + + + … + N Với N số nguyên dương nhập từ bàn phím
Gợi ý hướng dẫn thực ngôn ngữ giả (Phần chuyển sang ngôn ngữ Pascal em tự hoàn thành)
Xác định input, output toán: (số lượng biến tối thiểu cần khai báo cho chương trình) n, S, biến i sử dụng câu lệnh for Kiểu liệu?
Nhập liệu cho chương trình (theo Input): n Gán S =
Cho biến i chạy từ đến n (cần sử dụng câu lệnh để thực hiện?) Tiến hành cộng dồn vào tổng S Xác định biểu thức S ?
Hiển thị kết chương trình
Bài 10: Viết chương trình tính tổng S= 20
1
n
n n
Gợi ý hướng dẫn thực ngôn ngữ giả (Phần chuyển sang ngôn ngữ Pascal em tự hoàn thành)
Xác định input, output toán: (số lượng biến tối thiểu cần khai báo cho chương trình) n, S Kiểu liệu?
Gán S =
Cho biến n chạy từ đến 20 (cần sử dụng câu lệnh để thực hiện?) Tiến hành cộng dồn vào tổng S Xác định biểu thức S ?
(8)Gợi ý giải đề cương ôn tập thi kiểm tra học kỳ - Tin học Khối 11 - Năm học: 2010 - 2011
Bài 11: Viết chương trình tính giá trị biểu thức S = N!, với n số nguyên dương nhập từ bàn phím ( 5! = * * * * = 120 N! = * * * …* N)
Gợi ý hướng dẫn thực ngôn ngữ giả (Phần chuyển sang ngơn ngữ Pascal em tự hồn thành)
Xác định input, output toán: (số lượng biến tối thiểu cần khai báo cho chương trình) n, S, i Kiểu liệu?
Gán S = Cần phải hiểu S = mà không = ?
Cho biến i chạy từ đến n (cần sử dụng câu lệnh để thực hiện?) Tiến hành tính tích số từ đến n Xác định biểu thức S ? Hiển thị kết chương trình
Bài 12: Viết chương trình nhập từ bàn phím số nguyên dương, Hãy cho biết số vừa nhập có phải số
ngun tố hay khơng?
Gợi ý hướng dẫn thực ngôn ngữ giả (Phần chuyển sang ngôn ngữ Pascal em tự hồn thành) Thực chất tốn tính sốước số số vừa nhập vào
Nếu số <= Không phải số nguyên tố Ngược lại, tìm sốước số số vừa nhập
Nếu sốước số nhiều Số vừa nhập số nguyên tố Ngược lại, Số vừa nhập số nguyên tố
Xác định input, output toán: (số lượng biến tối thiểu cần khai báo cho chương trình) So, i, Sous Kiểu liệu?
Nhập So từ bàn phím Xét So < =
Nếu đúng, Không phải số nguyên tố Ngược lại, Tính sốước số số vừa nhập:
Gán Sous =
Cho i chạy từ đến n -1
Xét So chia hết cho i Nếu đúng, tăng Sous lên đơn vị
Xét Sous,
Nếu Sous > = Số vừa nhập số nguyên tố Ngược lại, Số vừa nhập số nguyên tố
Bài 13: Viết chương trình tìm số Amstrong có chữ số Sao cho giá trị sốđó tổng lập phương chữ số
(9)Gợi ý giải đề cương ôn tập thi kiểm tra học kỳ - Tin học Khối 11 - Năm học: 2010 - 2011 a, b, c Kiểu liệu?
Xác định biến a, b, c nhận giá trị từđâu đến đâu? a nhận giá trị từ 9; ?
b, c nhận giá trị từ 9; ? Áp dụng câu lệnh For tiến cho biến a, b, c Xét điều kiện tốn: Trong
Giá trị số abc = 100*a + 10*b + c
Tổng lập phương chữ số: a3 + b3 + c3 có a*a*a + b*b*b + c*c*c 100*a + 10*b + c = a*a*a + b*b*b + c*c*c
Nếu đúng, hiển thị kết chương trình