Phương pháp giải bài tập Tin học potx - Pdf 11

Lớp 11
- Trang 1 -
Phương pháp giải bài tập Tin học – Upload by CodePascal.Blogspot.com
Học Pascal online, bài tập Pascal cơ bản nâng cao: Codepascal.blogspot.com
Sinh viên: Trương Đức Khiêm
Lớp: Tin 4B
Phương pháp giải bài tập Tin học
Phương pháp giải bài tập Tin học
 Bài tập 3.34 trang 24 sách Bài tập tin học 11.
 Bài tập 5.9 trang 59 sách Bài tập tin học 11.
I. Bài tập 3.34:
1. Tìm hiểu đề bài:
− Dữ liệu vào: Không có.
− Dữ liệu ra: Tệp văn bản FIBO.DAT gồm 45 dòng. Mỗi dòng là một số Fibonaccy.
2. Xây dựng ý tưởng giải thuật:
− Sử dụng vòng lặp While… Do
− Sơ đồ khối của thuật toán:
3. Trình bày lời giải:
Lớp 11
- Trang 2 -
Phương pháp giải bài tập Tin học – Upload by CodePascal.Blogspot.com
Học Pascal online, bài tập Pascal cơ bản nâng cao: Codepascal.blogspot.com
4. Mở rộng bài toán: Không có. {Do đến chương này học sinh mới chỉ được học những
câu lệnh cơ bản.}
II. Bài tập 5.9:
1. Tìm hiểu đề bài:
− Dữ liệu vào: Số n là số tháng mà đoàn thám hiểm quay lại đảo.
− Dữ liệu ra: Số thỏ trên đảo sau n tháng.
2. Xây dựng ý tưởng giải thuật: Dựa vào tính chất của dãy số Fibonacci.
− Sử dụng vòng lặp While… Do
− Sơ đồ thuật toán:

Lớp: Tin 4B
 Bài tập 3.38 trang 26 sách Bài tập tin học 11.
 Bài tập 5.11 trang 57 sách Bài tập tin học 11.
I. Bài 3.38:
Lập trình:
• Nhập từ bàn phím số thực a.
• Tìm và đưa ra màn hình số nguyên dương N nhỏ nhất thõa mãn
N
i 1
1
A
i
=
<


1. Tìm hiểu đề bài:
− Input: Số thực A.
− Output: Số nguyên N nhỏ nhất thõa mãn
N
i 1
1
A
i
=
<

2. Ý tưởng giải thuật:
3. Trình bày lời giải
Lớp 11

4. Mở rộng bài toán:
Cho tệp LINE.TXT, mỗi dòng không chứa một xâu không quá 255 kí tự. hãy lập
trình tạo tệp LINE.DAT chứa các xâu ở tệp LINE.TXT, lưu các thông tin sau:
• Đếm các số các số nguyên có trong xâu.
• Tìm các số nguyên là số chẵn có trong xâu.
Lớp 11
- Trang 8 -
Phương pháp giải bài tập Tin học – Upload by CodePascal.Blogspot.com
Học Pascal online, bài tập Pascal cơ bản nâng cao: Codepascal.blogspot.com
Sinh viên: Nguyễn Thị Thanh Minh
Lớp: Tin 4B
 Bài tập 3.41 trang 26 sách Bài tập tin học 11.
 Bài tập 5.14 trang 57 sách Bài tập tin học 11.
I. Bài 3.41:
1. Tìm hiểu bài toán:
- Input: Nhập thời gian: h giờ m phút s giây.
- Output: Trạng thái hiện tại là ngọn đèn hải đăng đang sáng hay tắt.
2. Ý tưởng giải thuật:
- Bước 1: Nhập thời gian h giờ m phút s giây.
- Bước 2: Nếu
h 24>
hoặc
m 60>
hoặc
s 60>
thì quay lại bước 1.
- Bước 3: Nếu
h 6



- Output: Khoảng cách của nhóm so với trại.
2. Ý tưởng giải thuật:
- Do chỉ cần biết được khoảng cách của nhóm so với trại nên ta gắn vào hướng đi
của nhóm theo một hệ trục toạ độ: Gốc là trại, chiều dương trục Ox là hướng
Đông, chiều dương trục Oy là hướng Bắc.
- Dùng biến tạm h để tính toạ độ của nhóm với quy ước rẽ trái h giảm đi 1, rẽ phải
h tăng lên 1.
1 ; 1
2 1;
3 ; 1
4 1;
x x y y
x x y y
h
x x y y
x x y y
→ = = +


→ = − =

=

→ = = −

→ = + =

3. Trình bày lời giải:
Lớp 11
- Trang 11 -

( , , , ) |
n i
P p p p p= ∈¥
. Sử dụng thủ
tục:
Procedure hoan_doi(var x, y: integer);
Var tg: integer;
Begin
Tg:=x;
X:=y;
Y:=tg;
End;
Sắp xếp lại các phần tử của p theo thứ tự không giảm. Đưa kết quả đã sắp xếp ra màn
hình.
1. Tìm hiểu đề bài:
- Input: Số n, dãy p.
- Output : Dãy p theo thứ tự tăng dần.
2. Ý tưởng giải thuật:
- Bước 1: Nhập n và dãy p
- Bước 2: i:=0;
- Bước 3: Nếu i> n-1 thì chuyển qua 5 còn không thì j:=i+1
- Bước 4: Nếu j<=n thì
+ Nếu a[i]> a[j] thi gọi thủ tục hoan_doi(a[i], a[j])
+ j:=j+1
+ Quay lại bước 4
- Bước 5: Ngược lại
+ i:=i+1
+ Quay lại bước 3
-Bước 6: In dãy sắp xếp p và kết thúc.
Số a Số b Kết quả

 Bài tập 3.39 trang 23 sách Bài tập tin học 11.
 Bài tập 5.12 trang 74 sách Bài tập tin học 11.
I. Bài 3.39:
Cho hai hinh chữ nhật có các cạnh song song với trục toạ độ và có toạ độ đỉnh là số
nguyên. Mỗi hình chữ nhật được xác định bởi toạ độ đỉnh trên trái và toạ độ đỉnh dưới
phải. Hãy viết chương trình xác định hai hình chữ nhật này có điểm chung hay không?
1. Tìm hiểu đề bài:
- Input: Nhập các đỉnh của 2 hình chữ nhật
+ Hình chữ nhật thứ nhất có đỉnh là: A(x, y), B(x, y);
+ Hình chữ nhật thứ hai có đỉnh là: C(x, y), D(x, y);
- Output: Hai hình chữ nhật này có điểm chung hay không?
2. Ý tưởng thuật toán:
2.1. Ý tưởng:
- Hai hình chữ nhật có điểm chung thì có 4
trường hợp xảy ra:
+ ((Ax<=Cx) and (Cx<=Bx)) and
((By<=Cy) and (Cy<=Ay))
+ ((Ax<=Dx) and (Dx<=Bx)) and
((By<=Cy) and (Cy<=Ay))
+ ((Ax<=Cx) and (Cx<=Bx)) and ((By<=Dy) and (Dy<=Ay))
+ ((Ax<=Dx) and (Dx<=Bx)) and ((By<=Dy) and (Dy<=Ay))
- Nếu một trong 4 trường hợp đúng thì hai hình chữ nhật đó sẽ cắt nhau.
2.2. Các bước thực hiện:
- Bước 1: Nhập các đỉnh của 2 hcn: A, B, C, D
- Bước 2: Kiểm tra điều kiện
+ Nếu (( (Ax<=Cx) and (Cx<=Bx)) and ( (By<=Cy) and (Cy<=Ay))) or
(( (Ax<=Dx) and (Dx<=Bx)) and ((By<=Cy) and (Cy<=Ay)))or (((Ax<=Cx)
and (Cx<=Bx)) and ((By<=Dy) and (Dy<=Ay))) or (((Ax<=Dx) and
(Dx<=Bx) ) and ((By<=Dy) and (Dy<=Ay)))
thì In thông báo “Hai hcn đó cắt nhau”

Loại gạo
Số thực
Xâu
không quá
30 kí tự
Lớp 11
- Trang 16 -
Phương pháp giải bài tập Tin học – Upload by CodePascal.Blogspot.com
Học Pascal online, bài tập Pascal cơ bản nâng cao: Codepascal.blogspot.com
- Đọc tệp RICE.DAT
- Khi chưa phải cuối tệp thì tổng:= tổng + sl*dg
- So sánh sl*dg của các loại gạo và đưa ra kết quả.
2.2. Các bước thực hiện:
- Bước 1: Gán tên tệp : assign(f, ’RICE.DAT’); Mở tệp : reset (f);
- Bước 2: Khởi gán n:=0
Nếu không phải cuối tệp thì
+ Tăng biến n:=n+1;
+ Đọc tệp: readln( f, a[n].sl, a[n].dg, a[n].lg);
- Bước 3: Tổng:=0; i:=0;
+ Nếu i<=n thì
 Tổng:=Tổng + a[i].sl*a[i].dg;
 Tăng biến i:=i+1;
+ Ngược lại thì Qua B5
- Bước 4: Gán max:=a[1].sl*a[1].dg;
+ Nếu i<=n thì
 Tăng i:=i+1
 So sánh a[i].sl*a[i].dg > max thì hoán đổi
+ Ngược lại Qua B5;
- Bước 5:
+ In thông báo “tổng số tiền thu được”;

- Trang 19 -
Phương pháp giải bài tập Tin học – Upload by CodePascal.Blogspot.com
Học Pascal online, bài tập Pascal cơ bản nâng cao: Codepascal.blogspot.com
3. Trình bày lời giải
Var m, n, k: interger;
p: interger;
Begin
Repeat
Write(‘ Nhập m, n, k:’);
Readln( m, n, k);
Until((m > 0) and(n > 0) and(k > 0));
p:=m*n*k;
If p>99 then
If p mod 10 = 0 then
Writeln(p, ’là số có hơn 2 chữ số có nghĩa và số hàng đơn vị bằng 0’)
Else
Writeln(p, ’là số có hơn 2 chữ số có nghĩa và số hàng đơn vị khác 0’);
Else
Writeln(p, ’ là số không có hơn hai chữ số có nghĩa’);
Readln;
End.
4. Nghiên cứu về lời giải
m n k p=m*n*k Kết luận
4 5 6 120 p là số có hơn hai chữ số có nghĩa và hàng đơn vị bằng 0
2 3 1 6 p là số không có hơn hai chữ số có nghĩa
4 3 2 24 p là số không có hơn hai chữ số có nghĩa
4 7 4 112 p là số có hơn hai chữ số có nghĩa và hàng đơn vị khác 0
II. Bài 4.47:
Mảng các bản ghi luôn có thể thay thế bằng 1 số mảng có kiểu phần tử chuẩn khác bản ghi.
Với bảng Lop : array[ 1 60] of Hocsinh;

until( q<>0) and( p<>0)and (r<>0);
if q/p=r/q then writeln(p, ' ', q, ' ', r, ': la cap so nhan')
else writeln(p, ' ', q, ' ', r, ': khong phai cap so nhan');
readln;
end.
Bước 4
Mở rộng cho hs giải các bài toán tương tự như kiểm tra cấp số cộng không, trong trường hợp
lớn hơn 3 số làm thế nào? Xác định số hạng tiếp theo nếu đây là cấp số nhân (số cộng).
Bài 440(sbt trang 45):Hãy lập trình
-Nhập một xâu bất kì từ bàn phím.
-Chuẩn hóa xâu theo quy tắc sau:
+xóa các dấu cách ở đầu xâu nếu có;
+xóa các dấu cách ở cuối xâu nếu có;
Begin
q/p=r/
q
Thông báo phải
Thông báo không phải
End.
Nhập p, q, r
Lớp 11
- Trang 21 -
Phương pháp giải bài tập Tin học – Upload by CodePascal.Blogspot.com
Học Pascal online, bài tập Pascal cơ bản nâng cao: Codepascal.blogspot.com
+thay dãy nhiêu dấu cách liên tiếp bằng một dấu cách.
-đưa kết quả đã chuẩn hóa ra màn hình.
Bước 1:
Input: nhập một xâu s
Output:Đưa ra xâu s chuẩn
Bước 2:

HỌ VÀ TÊN : NGUYỄN VĂN TRUNG
LỚP : TIN 4B
BÀI TẬP MÔN : PHƯƠNG PHÁP GIẢI BÀI TẬP TIN HỌC PHỔ THÔNG TRUNG
HỌC
Bài 4.30
Bước 1 Xác định bài toán:
- Input : Nhập các tọa độ của các đỉnh của các ô cửa số hiện trên màn hình của
máy tính: A(X1, Y1), B(X2, Y2), C(X3, Y3), D(X4, Y4);
- Output : Xác định số lượng K điểm ảnh bị che trên cửa sổ.
Bước 2 Xây dựng ý tưởng giải thuật:
- Xây dựng mảng để lưu các điểm ảnh được xác định tọa độ cột x và tọa độ hàng y.
- Xây dựng các câu lệnh For –Do để đánh dấu các giao điểm của các cửa sổ.
Bước 3 Giải thuật của bài toán:
Program Xác_Định_Số_Giao_Điểm;
Var x1, y1, x2, y2, x3, y3, x4, y4: Integer;
S, I, j: integer;
M: array[0 739, 0 1023] of byte;
Begin
Writeln(‘Nhập tọa độ các đỉnh:’);
Write(‘x1’); Readln(x1);
Write(‘y1’); Readln(y1);
Write(‘x2’); Readln(x2);
Write(‘y2’); Readln(y2);
Write(‘x3’); Readln(x3);
Write(‘y3’); Readln(y3);
Write(‘x4’); Readln(x4);
Write(‘y4’); Readln(y4);
S:=0;
For i:=0 to 739 Do
For j:= 1 to 1023 Do

End;
Begin
Writeln(‘Nhập tọa độ:’);
Write(‘Xa’); Readln(Xa);
Write(‘Ya’); Readln(Ya);
Write(‘Xc’); Readln(Xc);
Write(‘Yc’); Readln(Yc);
Write(‘Xe’); Readln(Xe);
Write(‘Ye’); Readln(Ye);
Write(‘Xg’); Readln(Xg);
Write(‘Yg’); Readln(Yg);
X1:=Xa; Y1:=Ya;
X2:=Xg; Y2:=Yg;
X0:=(X1+X2)/2; Y0:=(Y1+Y2)/2;
Writeln(‘Đường tròn tâm’, X0, Y0);
Writeln(‘Bán kính’, Khoang_cach(X1, Y1, X2, Y2);’
Readln;
End.

Lớp 11
- Trang 24 -
Phương pháp giải bài tập Tin học – Upload by CodePascal.Blogspot.com
Học Pascal online, bài tập Pascal cơ bản nâng cao: Codepascal.blogspot.com
PHƯƠNG PHÁP GIẢI BÀI TẬP
Người soạn: Nguyễn Kính Doanh
Lớp: Tin4B
I.Đề bài: (Bài 3.23/Trang 22(SBTTH11))
Cho cấp số cộng a
0,
a

, ….( a
k
=a
k-1
+d, k=1, 2….)
+ Output: giá trị n (n≥0 và a
n
≥b)
Bước 2: - Ý tưởng giải thuật:
• Kiểm tra giá trị b≤a[0] thì in ra màn hình giá trị n là 0
• Kiểm tra nếu d≤0 và b>a[0] thì in ra màn hình không có giá trị của n.
• Sử dụng vòng lặp WHILE-DO để tìm phần tử a[i] có giá trị lớn hơn hoặc
bằng b với a[i]=a[i-1]+d
• Kết thúc vòng lặp khi nào có giá trị a[i] ≥b và in ra màn hình giá trị n là
giá trị của i.
Sơ đồ khối:

Bước 3: Trình bày lời giải
Program bt;
Type mang=array[0 100] of integer;
var a:mang;
i:integer;
Lớp 11
- Trang 25 -
Phương pháp giải bài tập Tin học – Upload by CodePascal.Blogspot.com
Học Pascal online, bài tập Pascal cơ bản nâng cao: Codepascal.blogspot.com
d, b:integer;
Begin
write('nhap a0 : ');readln(a[0]);
write('nhap d, b: ');readln(d, b);

Cho cấp số cộng a
0,
a
1
, a
2, ……,
a
k
, …. Trong đó a
k
=a
k-1
+d, k=1, 2…. Hãy
viết chương trình:
• Nhập vào a0, d.
• Tìm và đưa ra màn hình giá trị a
k
sao cho a
k
là số nguyên không âm
lẻ đầu tiên của cấp số cộng .


Nhờ tải bản gốc
Music ♫

Copyright: Tài liệu đại học © DMCA.com Protection Status