1. Trang chủ
  2. » Luận Văn - Báo Cáo

Bài thu hoạch môn LT Symbolic Phát biểu bài toán giải tam giác

13 529 0

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 13
Dung lượng 258,88 KB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

Qua đây tôi cũng xin chân thành gởi lời cảm ơn đến PGS TS Đỗ Văn Nhơn đã chuyển tải những bài giảng cho chúng tôi qua cách thể hiện sinh động của Thầy... - Gọi thực hiện c

Trang 1

Mở đầu

Maple là công cụ hỗ trợ lập trình tính toán chính xác và tính toán ký hiệu hình thức Ngoài khả năng tính toán chính xác nó cung cấp ngôn ngữ lập trình đầy đủ cho phép viết hàm, thủ tục…Một chương trình được viết bằng Maple có thể được dịch ra chương trình nguồn của các ngôn ngữ khác như C, Java, C#, Visual Basic…

Trong phạm vi bài tiểu luận môn học Lập trình Symbolic tôi xin trình bày bài toán Giải tam giác.

Qua đây tôi cũng xin chân thành gởi lời cảm ơn đến PGS TS Đỗ Văn Nhơn đã chuyển tải những bài giảng cho chúng tôi qua cách thể hiện sinh động của Thầy Tôi cũng rất cảm ơn các bạn cùng lớp đã đóng góp những tài liệu quý báu làm cơ sở cho tôi thực hiện bài tiểu luận này.

Trang 2

Mục lục

I Phát biểu bài toán giải tam giác 3

II Cấu trúc dữ liệu: 5

III Thuật toán 7

IV Dữ liệu thử: 8

V Hướng dẫn sử dụng và hạn chế của thuật giải 11

Trang 3

Nội dung

I Phát biểu bài toán giải tam giác

- Một tam giác được xác định khi biết 3 yếu tố trong 6 yếu tố chính

(cạnh, góc) trong đó có ít nhất một yếu tố cạnh

- Bài toán giải tam giác là bài toán tìm một số yếu tố của tam giác khi biết một số yếu tố khác Bài toán tam giác chỉ có lời giải khi biết 3 trong 6 yếu tố cơ bản của tam giác là 3 cạnh và 3 góc, trong đó có ít nhất 1 yếu tố cạnh

- Giới hạn bài toán:

o Bài toán tính toán trên các yếu tố của tam giác thường

- Mô tả một số yếu tố của tam giác:

o a, b, c: 3 cạnh của tam giác

o A, B,C: 3 góc đối diện với 3 cạnh tương ứng trong tam giác

o ha, hb, hc: 3 đường cao tương ứng với 3 cạnh của tam giác

o pa, pb, pc: 3 đường phân giác tương ứng với 3 cạnh của tam giác

o ma, mb, mc: 3 đường trung tuyến tương ứng với 3 cạnh của tam giác

o S: diện tích tam giác

o P: nửa chu vi của tam giác

o R: bán kính đường tròn ngoại tiếp tam giác

o r: bán kính đường tròn nội tiếp tam giác

o ra, rb, rc: các bán kính của các đường tròn bàng tiếp tam giác

- Các hệ thức cơ bản giữa các yếu tố của tam giác:

Trang 4

o Liên hệ giữa 3 góc:

F1: A+B+C = π

o Định lý cosin

F2: a2=b2 + c2 -2.b.c.cosA F3: b2=a2 +c2 -2.a.c.cosB F4: c2=a2 +b2 -2.a.b.cosB

o Định lý sin:

F5: sinA a = b

sinB

F6: sinA a = c

sinC

F7: sinC c = b

sinB

F8: sinA a =2 R

F9: sinB b =2 R

F10: sinC c =2 R

o Liên hệ giữa nữa chu vi và 3 cạnh:

F11: a+b+c=2.p

o Các công thức tính diện tích:

F12: S= 12a ha

F13: S= 12b hb

F14: S= 12c hc

F15: S= 12b c sinA

F16: S= 12a c sinB

F17: S= 12a b sinC

F18: S= a b c 4 R F19: S=p.r F20:S=p∗( p−a)∗( p−b)∗( p−c)

Trang 5

F21: S=ra*(p-a);

F22: S=rb*(p-b);

F23: S=rc*(p-c);

o Các công thức tính đường cao theo cạnh và góc

F24: ha=b.sinC F25: ha=c.sinB F26: hb=a.sinC F27: hb=c.sinA F28: hc=b.sinA F29: hc=a.sinB

o Các công thức tính các đường trung tuyến

F30: 4.ma2 =2(b2+c2) – a2

F31: 4.mb2 =2(a2+c2) – b2

F32: 4.mc2 =2(a2+b2) – c2

o Các công thức tính các đường phân giác trong

F33:

F34:

F35:

F36:

F37:

F38:

II Cấu trúc dữ liệu:

- Tập biến:

o a, b, c: 3 cạnh của tam giác

o A, B,C: 3 góc đối diện với 3 cạnh tương ứng trong tam giác

o ha, hb, hc: 3 đường cao tương ứng với 3 cạnh của tam giác

Trang 6

o pa, pb, pc: 3 đường phân giác tương ứng với 3 cạnh của tam giác

o ma, mb, mc: 3 đường trung tuyến tương ứng với 3 cạnh crua tam giác

o S: diện tích tam giác

o P: nửa chu vi của tam giác

o R: bán kính đường tròn ngoại tiếp tam giác

o r: bán kính đường tròn nội tiếp tam giác

o ra, rb, rc: các bán kính của các đường tròn bàng tiếp tam giác

- Tập công thức: Fomular có kiểu danh sách list

Formular =[A+B+C = Pi,

a2=b2 + c2 -2.b.c.cos(A),

b2=a2 +c2 -2.a.c.cos(B),

c2=a2 +b2 -2.a.b.cos(C),

a

sin ⁡( A)=

b

sin ⁡(B) , sin ⁡( A) a = c

sin ⁡(C ) , sin ⁡(C ) c = b

sin ⁡(B) ,

a

sin ⁡( A)=2 R , sin ⁡(B) b =2 R , sin ⁡(C ) c =2 R ,

a+b+c=2.p, S= 12a ha , S= 12b hb , S= 12c hc, S= 12b c sinA, S= 12a c sinB , S= 12a b sinC , S= a b c 4 R , S=p.r , S=p∗( p−a)∗( p−b)∗( p−c) , S=ra*(p-a), S=rb*(p-b), S=rc*(p-c), ha=b.sinC , ha=c.sinB, hb=a.sinC, hb=c.sinA, hc=b.sinA, hc=a.sinB ,

4.ma2 =2(b2+c2) – a2 , 4.mb2 =2(a2+c2) – b2 , 4.mc2 =2(a2+b2) –

Trang 7

- Tập giả thiết H: Tập các yếu tố cho trước của tam giác, H kiểu tập hợp

- Tập mục tiêu G: chứa các biên mục tiêu (các yếu tố cần tìm của tam

giác) kiểu tập hợp

- Tập các yếu tố của tam giác đã tìm được giá trị trong quá trình tính toán

từ tập giả thiết kết hợp với các công thức: Fknown kiểu tập hợp

- Danh sách các công thức trong quá trình tính toán tìm tập mục tiêu Solution

III Thuật toán

- Giả sử ta có danh sách công thức liên quan đến các yếu tố tam giác F

- Input: Tập hợp giá trị các yếu tố tam giác đã biết H (mỗi phần tử của tập H là một đẳng thức gồm: tên yếu tố tam giác = giá trị)

- Output: Tập hợp các yếu tố của tam giác cần tìm G (yếu tố mục tiêu)

- Thuật toán:

o Một số biến sử dụng trong thuật toán:

 F, H, G (ở trên)

 Fknown: là tập các phần tử là đẳng thức chứa giá trị của các yếu tố đã biết của tam giác

 Solution: danh sách các công thức áp dụng trong quá trình thực hiện tìm các yếu tố mục tiêu

o Bước 1: Khởi tạo

 Solution:=[ ];

 Fknown:= H;

o Bước 2:

While (G không nằm trong map(x->lhs(x), Fknown) do

 Tìm 1 công thức f thuộc Formular có thể áp dụng để tìm một yếu tố chưa biết

 If tìm được công thức r then

o Thêm công thức r vào tập Solution

o Tìm biến mới trong công thức r

Trang 8

o Thay thế các giá trị đã có trong Fknown vào công thức r để xác định giá trị biến mới và thêm kết quả biến mới vào Fknown

Else

Thông báo không tìm được lời giải Dừng End if

End do; //while

o Bước 3: In kết quả tìm được lời giải Solution và Fknown

Trang 9

IV Dữ liệu thử:

- Danh sách các công thức liên quan đến các yếu tố của tam giác: F, tập các yếu tố cho trước H và tập các yếu tố cần tìm G được cho như sau:

Trang 10

- Bộ dữ liệu thử 1:

- Thực hiện thủ tục giải tam giác ta được kết quả như sau:

- Bộ dữ liệu thử và kết quả 2

Trang 11

- Bộ dữ liệu thử 3:

V Hướng dẫn sử dụng và hạn chế của thuật giải

 Hướng dẫn sử dụng:

- Yêu cầu dữ liệu input: giá trị các cạnh của tam giác phải thỏa điều kiện là số dương và tổng 2 cạnh luôn lớn hơn cạnh còn lại (hiệu 2 cạnh phải nhỏ hơn cạnh còn lại) Giá trị cho các góc được tính bằng Radian

- Gọi thực hiện chương trình bằng thủ tục MainProc()

- Muốn bổ sung công thức cho tam giác bổ sung trực tiếp vào biến kiểu danh sách F trong thủ tục MainProc đã được gán sẵn một số công thức

- Thay đổi dữ liệu nhập: sửa trực tiếp trong biến tập hợp H và G trong thủ tục MainProc

 Hạn chế:

Trang 12

Do thời gian nghiên cứu quá ngắn nên chưa tìm hết được những công cụ hỗ trợ của Maple nên trong quá trình cài đặt chương trình còn một số vấn đề phát sinh chưa giải quyết được:

- Giá trị các yếu tố góc của tam giác: giá trị tính bằng radian: nếu có thời gian nghiên cứu thêm sẽ cho phép nhập giá trị của các góc là độ

- Chưa tạo được giao diện nhập xuất cho người sử dụng

Trang 13

Tài liệu tham khảo

[1] Đỗ Văn Nhơn, Bài giảng môn Lập trình Symbolic

[2] User Guide của Maple

[3] Trang web: http://totoantaquangbuu.nice-board.com/t94-topic

Ngày đăng: 10/04/2015, 00:49

TỪ KHÓA LIÊN QUAN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

🧩 Sản phẩm bạn có thể quan tâm

w