Tài liệu HSG Pascal
Chia sẻ bởi Trần Quang Diệu |
Ngày 26/04/2019 |
48
Chia sẻ tài liệu: Tài liệu HSG Pascal thuộc Tin học 11
Nội dung tài liệu:
Bài I (10 điểm): DIỆN TÍCH CÁC HÌNH. Cho hình chữ nhật ABCD có chiều dài AB là a (cm), chiều rộng AD là b (cm) với a, b là các số nguyên dương không vượt quá 10000. Một điểm M trên đoạn BC, một điểm N trên đoạn CD sao cho độ dài (tính bằng cm) các đoạn BM, CN bằng nhau và là số nguyên không âm.
Yêu cầu:
1. Biết độ dài BM, tính diện tích hình chữ nhật ABCD và
diện tích tam giác MCN.
2.Tìm giá trị lớn nhất và giá trị nhỏ nhất của diện tích tam giác
AMN khi M, N thay đổi.
Dữ liệu vào: Dữ liệu của bài toán cho trong tệp tin DIENTICH.INP gồm ba số a, b, x (xba, x là độ dài BM trong yêu cầu 1) được ghi trên cùng một dòng theo đúng thứ tự trên, hai số liên tiếp cách nhau một khoảng trắng.
Dữ liệu ra: Kết quả ghi ra màn hình (hoặc ghi ra file DIENTICH.OUT) trên 5 dòng:
- Dòng đầu là ba số a, b và x. Dòng thứ hai là diện tích hình chữ nhật ABCD.
Dòng thứ ba là diện tích tam giác MCN Dòng thứ tư là giá trị lớn nhất của diện tích tam giác AMN
Dòng thứ năm là giá trị nhỏ nhất của diện tích tam giác AMN
(Các giá trị diện tích được ghi trong dạng thập phân với 1 chữ số sau dấu phẩy).
Ví dụ:
DIENTICH.INP
Kết quả trên màn hình (hoặc file DIENTICH.OUT)
10 6 2
10 6 2
60.0
4.0
30.0
17.5
Bài II(10 điểm): DÃY SỐ. Cho số nguyên dương S và dãy số gồm N số nguyên dương F1, F2, ..., FN. Dãy số đã cho được gọi là dãy tăng dần nếu: Fi Fi+1 i ( hay F1 F2 F3 ... FN ).
Chúng ta gọi hai số hạng Fi1 và Fi2 trong dãy đã cho (với i1 i2; i1,i2 ):
- Là một “cặp đôi xung khắc” nếu Fi1 + Fi2 = S.
- Là một “cặp đôi lý tưởng” nếu chúng cùng có ba chữ số, các chữ số của số hạng này giống hệt của số hạng kia nhưng khác về thứ tự xuất hiện - ví dụ 123 và 132 hay 121 và 211 là các cặp đôi lý tưởng còn 121 và 122 hay 457 và 457 thì không phải.
Yêu cầu: Cho biết S và dãy số F1, F2, ..., FN. Hãy xác định xem dãy đã cho có phải dãy tăng dần hay không, tính số cặp đôi xung khắc và tìm một cặp đôi lý tưởng (nếu có) trong dãy đã cho.
Dữ liệu vào: Dữ liệu vào của bài toán được cho trong tệp tin DAYSO.INP với cấu trúc như sau:
- Dòng đầu tiên gồm hai số N và S (N50000, S <1000).
- Dòng thứ i trong N dòng tiếp theo chứa một số là số Fi của dãy (Fi < 500).
Dữ liệu ra: Kết quả ghi ra trên màn hình (hoặc ghi ra file DAYSO.OUT)bốn dòng:
- Dòng đầu ghi ba số N, S và FN. - Dòng thứ hai ghi CO nếu dãy đã cho là dãy tăng dần, ghi KHONG nếu ngược lại.
- Dòng thứ ba ghi một số là số cặp đôi xung khắc trong dãy đã cho.
- Dòng thứ tư ghi hai số là một cặp đôi lý tưởng tìm được trong dãy đã cho, nếu không có cặp đôi lý tưởng nào thì ghi hai số 0.
Ví dụ: DAYSO.INP
Kết quả trên màn hình (hoặc file DAYSO.OUT)
5 5
1
2
3
4
5
5 5 5
CO
2
0 0
10 111
110
110
1
1
5
5
10
10
10
101
10 111 101
KHONG
7
110 101
{Bài 1
var a,b,x:integer;
min, max,s,s1,s2:real;
f: text;
begin
Assign(f,`dt.inp`);
reset(f);
readln(f,a,b,x);
close(f);
writeln(a,’ ‘,b,’ ‘,x);
s1:=a*b; s2:=x*(b-x)/2;
min:=s1/2; max:=s1/2;
for x:=1 to b do
begin
s:=s1 - (a*x + x*(b-x) + b*(a-x))/2
Yêu cầu:
1. Biết độ dài BM, tính diện tích hình chữ nhật ABCD và
diện tích tam giác MCN.
2.Tìm giá trị lớn nhất và giá trị nhỏ nhất của diện tích tam giác
AMN khi M, N thay đổi.
Dữ liệu vào: Dữ liệu của bài toán cho trong tệp tin DIENTICH.INP gồm ba số a, b, x (xba, x là độ dài BM trong yêu cầu 1) được ghi trên cùng một dòng theo đúng thứ tự trên, hai số liên tiếp cách nhau một khoảng trắng.
Dữ liệu ra: Kết quả ghi ra màn hình (hoặc ghi ra file DIENTICH.OUT) trên 5 dòng:
- Dòng đầu là ba số a, b và x. Dòng thứ hai là diện tích hình chữ nhật ABCD.
Dòng thứ ba là diện tích tam giác MCN Dòng thứ tư là giá trị lớn nhất của diện tích tam giác AMN
Dòng thứ năm là giá trị nhỏ nhất của diện tích tam giác AMN
(Các giá trị diện tích được ghi trong dạng thập phân với 1 chữ số sau dấu phẩy).
Ví dụ:
DIENTICH.INP
Kết quả trên màn hình (hoặc file DIENTICH.OUT)
10 6 2
10 6 2
60.0
4.0
30.0
17.5
Bài II(10 điểm): DÃY SỐ. Cho số nguyên dương S và dãy số gồm N số nguyên dương F1, F2, ..., FN. Dãy số đã cho được gọi là dãy tăng dần nếu: Fi Fi+1 i ( hay F1 F2 F3 ... FN ).
Chúng ta gọi hai số hạng Fi1 và Fi2 trong dãy đã cho (với i1 i2; i1,i2 ):
- Là một “cặp đôi xung khắc” nếu Fi1 + Fi2 = S.
- Là một “cặp đôi lý tưởng” nếu chúng cùng có ba chữ số, các chữ số của số hạng này giống hệt của số hạng kia nhưng khác về thứ tự xuất hiện - ví dụ 123 và 132 hay 121 và 211 là các cặp đôi lý tưởng còn 121 và 122 hay 457 và 457 thì không phải.
Yêu cầu: Cho biết S và dãy số F1, F2, ..., FN. Hãy xác định xem dãy đã cho có phải dãy tăng dần hay không, tính số cặp đôi xung khắc và tìm một cặp đôi lý tưởng (nếu có) trong dãy đã cho.
Dữ liệu vào: Dữ liệu vào của bài toán được cho trong tệp tin DAYSO.INP với cấu trúc như sau:
- Dòng đầu tiên gồm hai số N và S (N50000, S <1000).
- Dòng thứ i trong N dòng tiếp theo chứa một số là số Fi của dãy (Fi < 500).
Dữ liệu ra: Kết quả ghi ra trên màn hình (hoặc ghi ra file DAYSO.OUT)bốn dòng:
- Dòng đầu ghi ba số N, S và FN. - Dòng thứ hai ghi CO nếu dãy đã cho là dãy tăng dần, ghi KHONG nếu ngược lại.
- Dòng thứ ba ghi một số là số cặp đôi xung khắc trong dãy đã cho.
- Dòng thứ tư ghi hai số là một cặp đôi lý tưởng tìm được trong dãy đã cho, nếu không có cặp đôi lý tưởng nào thì ghi hai số 0.
Ví dụ: DAYSO.INP
Kết quả trên màn hình (hoặc file DAYSO.OUT)
5 5
1
2
3
4
5
5 5 5
CO
2
0 0
10 111
110
110
1
1
5
5
10
10
10
101
10 111 101
KHONG
7
110 101
{Bài 1
var a,b,x:integer;
min, max,s,s1,s2:real;
f: text;
begin
Assign(f,`dt.inp`);
reset(f);
readln(f,a,b,x);
close(f);
writeln(a,’ ‘,b,’ ‘,x);
s1:=a*b; s2:=x*(b-x)/2;
min:=s1/2; max:=s1/2;
for x:=1 to b do
begin
s:=s1 - (a*x + x*(b-x) + b*(a-x))/2
 
* Một số tài liệu cũ có thể bị lỗi font khi hiển thị do dùng bộ mã không phải Unikey ...
Người chia sẻ: Trần Quang Diệu
Dung lượng: |
Lượt tài: 0
Loại file:
Nguồn : Chưa rõ
(Tài liệu chưa được thẩm định)