Hướng dẫn làm bài tập và thực hành 7 trang 105 SGK Tin học 11
Đề bài
Bài tập và thực hành 7 trang 105 SGK Tin học 11
Lời giải chi tiết
1. Mục đích, yêu cầu
- Nâng cao kĩ năng viết, sử dụng chương trình con.
- Biết cách viết một chương trình có cấu trúc để giải một bài toán trên máy tính.
2. Nội dung
a) Câu này nhằm mục đích tìm hiểu việc xây dựng các hàm và thủ tục thực hiện tính độ dài các cạnh, chu vi, diện tích, kiểm tra các tính đều, cân, vuông của tam giác. Cụ thể là:
- Chúng ta cần hiểu rõ cách sử dụng kiểu bản ghi để mô tả một tam giác.
- Xây dựng các thủ tục và hàm đó;
- Thủ tục nhận dữ liệu vào là biến mô tả tam giác R và đầu ra là độ dài của ba cạnh a, b, c;
- Hàm tính chu vi của tam giác R;
- Hàm tính diện tích cùa tam giác R;
- Hàm tính khoảng cách giữa hai điểm P, Q
- Thủ tục hiển thị tọa độ ba đỉnh tam giác lên màn hình;
- Thủ tục nhận đầu vào là biến mô tả tam giác R và đầu ra là tính chất của tam giác (Deu hay Can hay Vuong);
b) Trong câu này các chương trình con giải quyết một số bài toán đơn giản liên quan đến tam giác khi biết tọa độ các đỉnh, đó là: tính độ dài cạnh, tính chu vi, tính diện tích, kiểm tra các tính chất (đều, cân, vuông).
Khi dạy chương trình, giả sử ta nhập tọa độ của các đinh A, B, C theo thứ tự là: (2, 30), (15,10), (15, 40) thì trên màn hình thông báo:
Dien tich: 130.000,Chu vi: 52.802 Tam giac co tinh Chat: la tam giac can
Kết quả chương trình như hình 75 dưới đây:
Còn khi nhập tọa độ cùa các đinh A, B, c theo thứ tự là: (5, 30), (15,20) , (75. 40) thì trên màn hình thông báo:
Dien tich: 100.000,Chu i: 48.284 Tam giac co tinh Chat: la tam giac vuong can
Kết quả chương trình như hình 76 dưới đây:
c) Để xây dựng chương trình có sử dụng các hàm và thủ tục xây dựng ở câu a) trên nhằm đưa ra tính chất các tam giác:
- Số lượng tam giác đều;
- Số lượng tam giác cân;
- Số lượng tam giác vuông.
ta cần tạo tệp tamgiac. dat, để từ tệp này đọc dữ liệu sang tệp của chương trình chính.
- Chương trình tạo tệp tamgỉac. dat nhằm mục đích để nhập tọa độ (Các đỉnh của tam giác.
program cau_c_btth7;
uses crt;
type
Diem = record X, y:real,
end;
Tamgiac= record
A, B, C: Diem;
end;
var i, n: integer; f: text;
T: Tamgiac;
begin
clrscr;
assign(f,'tamgiac.dat');
rewrite(f) ,
writs 'Nhap so tam giac: ' );
read(n);
writeln (f , n) ;
for i:= 1 to n do
begin
wrri teln ( ' Nhap toa cua tam giac ',i,' la:');
read(T.A.X, T.A.y, T.B.X,T.B.y,T.C.X,T.C.y);
writeln ( f , T. A. X, T.A.y, T.B.x,T.B.y,T.C.x,T.C.y);
end
clrscr(f) ;
reacln
end.
Khi chạy chương trình, ta nhập số tam giác N= 3, với các tọa độ của tam giác lần lượt như sau (Hình 77):
Tọa độ của tam giác 1 là: (5; 10); (20; 10); (20; 50) (đây là tam giác vuông)
Tọa độ của tam giác 2 là: (2;30); (15; 20); (15; 40) (đây là tam giác cán)
Tọa độ của tam giác 2 là: (5; 30); (15; 20); (15; 35) (đây là tam giác thường)
begin
a : =Kh_cach (R . B, R.C);
b:=Kh_cach(R.A, R.C);
c:=Kh_cach(R.A,R.B);
end;
procedure Tinhchat(var R:Tamgiac; var Deu, Can, Vuong: Boolean);
var a, b, c:real;
begin
Deu:=false; Can:=false; Vuong:=false;
Daicanh(R, a, b, c); ifMabs (a-b) <eps) and (abs (a-c) <eps) then
begin
Deu:= true;
Can:= true;
end else
if (abs (a-b) <eps) or (abs (a-c) <eps) or (abs (b-c) <ep:S) then Can:=true;
if (abs(a*a+b*b-c*c)<eps) or (abs (a*a+c*c-k*b) <c-ps) or (abs(b*b+c*c-a*a)<eps) then Vuong:= truer
end;
Begin
deu:= 0; can:= 0; vuong:= 0;
assign ( f, ' tamgiac . dat' ) ,
reset(f);
readln(f,N);
for i:= 1 to N do
begin
readln(f, T.A.X, T.A.y, T.B.x,T.B.y,T.C.x,T.C.y);
Tinhchat(T, D, Cn, V);
If D then deu:= deu + 1 else
begin
if Cn then can:= can + 1;
if V then vuong:= vuong + 1;
end;end;
writeln('Co: ',deu,'tam giac deu');
writeln('Co: can,'tam giac can(khong deu)' );
writeln('Co: ’,vuong, 'tam giac vuong);
readln;
end
Co 0 tam giac deu
Co 1 tam giac can(khong deu)
Co 1 tam giac vuong
Kết quả chương trình như hình 78 dưới đây:
Xem thêm lời giải SGK Tin học lớp 11
Chương 1: Một số khái niệm về lập trình và ngôn ngữ lập trình
Chương 2: Chương trình đơn giản
- 👉 Bài 3: Cấu trúc chương trình
- 👉 Bài 4: Một số kiểu dữ liệu chuẩn
- 👉 Bài 5: Khai báo biến
- 👉 Bài 6: Phép toán, biểu thức, câu lệnh gán
- 👉 Bài 7: Các thủ tục chuẩn vào/ra đơn giản
- 👉 Bài 8: Soạn thảo, dịch, thực hiện và hiệu chỉnh chương trình
- 👉 Bài tập và thực hành 1
Chương 3: Cấu trúc rẽ nhánh và lặp
Chương 4: Kiểu dữ liệu có cấu trúc
- 👉 Bài 11: Kiểu mảng
- 👉 Bài tập và thực hành 3
- 👉 Bài tập và thực hành 4
- 👉 Bài 12: Kiểu xâu
- 👉 Bài tập và thực hành 5
- 👉 Bài 13: Kiểu bản ghi
- 👉 Tóm tắt chương IV
Chương 5: Tệp và thao tác với tệp
- 👉 Bài 14: Kiểu dữ liệu tệp
- 👉 Bài 15: Thao tác với tệp
- 👉 Bài 16: Ví dụ làm việc với tệp
- 👉 Tóm tắt chương V
Chương 6: Chương trình con và lập trình có cấu trúc
Lớp 11 | Các môn học Lớp 11 | Giải bài tập, đề kiểm tra, đề thi Lớp 11 chọn lọc
Danh sách các môn học Lớp 11 được biên soạn theo sách giáo khoa mới của bộ giáo dục đào tạo. Kèm theo lời giải sách bài tập, sách giáo khoa, đề kiểm tra 15 phút, 45 phút (1 tiết), đề thi học kì 1 và học kì 2 năm học 2024 ngắn gọn, chi tiết dễ hiểu.
Toán Học
- Đề thi, đề kiểm tra Toán lớp 11
- SBT Toán lớp 11 Nâng cao
- SBT Toán 11 Nâng cao
- SGK Toán 11 Nâng cao
- SBT Toán lớp 11
- SGK Toán lớp 11
Vật Lý
- SBT Vật lí 11 Nâng cao
- SGK Vật lí lớp 11 Nâng cao
- SBT Vật lí lớp 11
- SGK Vật lí lớp 11
- Giải môn Vật lí lớp 11
Hóa Học
- Đề thi, đề kiểm tra Hóa lớp 11
- SBT Hóa học 11 Nâng cao
- SGK Hóa học lớp 11 Nâng cao
- SBT Hóa lớp 11
- SGK Hóa lớp 11
Ngữ Văn
Lịch Sử
Địa Lý
Sinh Học
- Đề thi, đề kiểm tra Sinh lớp 11
- SGK Sinh lớp 11 Nâng cao
- SBT Sinh lớp 11
- SGK Sinh lớp 11
- Giải môn Sinh học lớp 11
GDCD
Tin Học
Tiếng Anh
- Đề thi, đề kiểm tra Tiếng Anh 11 mới
- SBT Tiếng Anh lớp 11
- SGK Tiếng Anh lớp 11
- SBT Tiếng Anh lớp 11 mới
- SGK Tiếng Anh lớp 11 Mới