Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 82 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
82
Dung lượng
1,55 MB
Nội dung
ĐẠI HỌC THÁI NGUYÊN TRƯỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN VÀ TRUYỀN THÔNG PHẠM HẢI NINH CÁC THUẬT TOÁN TÍNH DIỆN TÍCH VÀ THỂ TÍCH VẬT THỂ KHÔNG GIAN VÀ ỨNG DỤNG LUẬN VĂN THẠC SĨ KHOA HỌC MÁY TÍNH THÁI NGUYÊN - 2015 Học viên: Phạm Hải Ninh – CHK12I ĐẠI HỌC THÁI NGUYÊN TRƯỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN VÀ TRUYỀN THÔNG PHẠM HẢI NINH CÁC THUẬT TOÁN TÍNH DIỆN TÍCH VÀ THỂ TÍCH VẬT THỂ KHÔNG GIAN VÀ ỨNG DỤNG Chuyên ngành: KHOA HỌC MÁY TÍNH Mã số: 60 48 01 01 LUẬN VĂN THẠC SĨ KHOA HỌC MÁY TÍNH NGƯỜI HƯỚNG DẪN KHOA HỌC PGS TSKH NGUYỄN XUÂN HUY THÁI NGUYÊN - 2015 Học viên: Phạm Hải Ninh – CHK12I i LỜI CAM ĐOAN Tôi xin cam đoan luận văn công trình nghiên cứu riêng cá nhân tôi, kết luận văn hoàn toàn kết tự thân tìm hiểu, nghiên cứu hướng dẫn giáo viên hướng dẫn PGS TSKH Nguyễn Xuân Huy Tôi hoàn toàn chịu trách nhiệm tính pháp lý trình nghiên cứu khoa học luận văn Thái Nguyên, tháng năm 2015 Học viên Phạm Hải Ninh Học viên: Phạm Hải Ninh – CHK12I ii LỜI CẢM ƠN Lời đầu tiên, em xin gửi lời biết ơn sâu sắc đến PGS TSKH Nguyễn Xuân Huy người tận tình hướng dẫn, bảo, giúp đỡ em suốt trình làm luận văn Em xin gửi lời cảm ơn đến thầy cô giáo trường Đại học Công nghệ thông tin Truyền thông - Đại học Thái Nguyên, thầy cô Viện Công nghệ thông tin truyền đạt kiến thức giúp đỡ em suốt trình học Học viên xin gửi lời cảm ơn tới Ban giám hiệu trường THPT Hồng Bàng - Hải Phòng tạo điều kiện thuận lợi cho học viên tham gia khóa học trình hoàn thành luận văn Và học viên xin gửi lời cảm ơn tới đồng nghiệp, gia đình bạn bè người ủng hộ, động viên tạo điều kiện giúp đỡ để học viên có kết ngày hôm Thái Nguyên, tháng năm 2015 Học viên Phạm Hải Ninh Học viên: Phạm Hải Ninh – CHK12I iii MỤC LỤC Trang LỜI CAM ĐOAN i LỜI CẢM ƠN ii MỤC LỤC iii DANH MỤC CÁC KÍ HIỆU, CHỮ CÁI VIẾT TẮT v DANH MỤC CÁC HÌNH vi MỞ ĐẦU Chương 1: CÁC KHÁI NIỆM CƠ SỞ 1.1 Tổng quan đề tài 1.1.1 Giới thiệu đề tài 1.1.2 Nội dung đề tài, vấn đề cần giải 1.1.3 Phương pháp nghiên cứu 1.1.4 Phạm vi ứng dụng 1.1.5 Kết đạt 1.1.6 Bố cục luận văn 1.2 Khái niệm sở 1.2.1 Khái quát cách tính diện tích hình 1.2.2 Khái quát cách tính thể tích hình 10 Chương 2: MỘT SỐ THUẬT TOÁN TÍNH DIỆN TÍCH VÀ THỂ TÍCH VẬT THỂ KHÔNG GIAN 14 2.1 Thuật toán tính diện tích đa giác theo tọa độ đỉnh 14 2.2 Thuật toán tìm diện tích hình chữ nhật tối đại 25 Học viên: Phạm Hải Ninh – CHK12I iv 2.3 Thuật toán tính thể tích vùng nước đọng 33 Chương 3: ỨNG DỤNG VÀ THỬ NGHIỆM 46 3.1 Cơ sở lý thuyết lựa chọn toán ứng dụng 46 3.2 Bài toán: Dự án xây dựng sân bay 50 3.2.1 Phát biểu toán 50 3.2.2 Mô tả liệu 50 3.2.3 Thiết kế bước thực 51 3.3 Bài toán: Tính thể tích chứa nước cho lòng hồ 56 3.3.1 Phát biểu toán 56 3.2.2 Mô tả liệu 56 3.3.3 Thiết kế bước thực 57 3.4 Cài đặt chương trình 60 3.4.1 Chương trình tính diện đa giác theo tọa độ đỉnh 60 3.4.2 Chương trình tìm diện tích hình chữ nhật tối đại 61 3.4.3 Chương trình tính thể tích vùng nước đọng 63 KẾT LUẬN 66 TÀI LIỆU THAM KHẢO 67 PHỤ LỤC 68 Học viên: Phạm Hải Ninh – CHK12I v DANH MỤC CÁC KÍ HIỆU, CHỮ CÁI VIẾT TẮT CSDL: Cơ sở liệu GIS: Geographic Information System (Hệ thống thông tin địa lý) HCN : Hình chữ nhật INP: Input (Dữ liệu vào) NXB: Nhà xuất OUT: Output (Dữ liệu ra) S: Diện tích bề mặt V: Thể tích (Dung tích) vật thể VD: Ví dụ Học viên: Phạm Hải Ninh – CHK12I vi DANH MỤC CÁC HÌNH Trang Hình 1.1: Công thức tính diện tích số hình đặc biệt Hình 1.2: Diện tích S hình phẳng giới hạn đồ thị hàm số y f ( x), y g ( x) liên tục đoạn [a, b] hai đường thẳng x = a, x = b Hình 1.3: Công thức tính thể tích số khối hình đặc biệt 12 Hình 1.4: Thể tích vật thể tròn xoay giới hạn đồ thị hàm số y = f(x) , trục hoành hai đường thẳng x = a, x = b 13 Hình 2.1: Hình chữ nhật ABCD mặt phẳng tọa độ Oxy 16 Hình 2.2: Ngũ giác lõm ABCDE mặt phẳng tọa độ Oxy 17 Hình 2.3: Ngũ giác lồi ABCDE mặt phẳng tọa độ Oxy 18 Hình 2.4: Hình thang ABCD mặt phẳng tọa độ Oxy 19 Hình 2.5: Đa giác lồi, lõm mặt phẳng tọa độ Oxy 20 Hình 2.6: VD1 - Ma trận chứa kí tự 25 Hình 2.7: VD2 - Ma trận chứa kí tự 26 Hình 2.8: VD3 - Ma trận chứa kí tự 27 Hình 2.9: VD1 - Ma trận cột thể độ cao cột vuông cạnh đơn vị 34 Hình 2.10: VD2 - Ma trận cột thể độ cao cột vuông cạnh đơn vị 35 Hình 2.11: VD3 - Ma trận cột thể độ cao cột vuông cạnh đơn vị 36 Hình 3.1: Ma trận không gian file ảnh raster có cấu trúc pixel 47 Hình 3.2: Các đối tượng không gian mã hoá mô hình Raster 48 Học viên: Phạm Hải Ninh – CHK12I vii Hình 3.3: Các điểm ảnh mã hoá mô hình Raster ma trận số nguyên 49 Hình 3.4: Vùng địa hình khảo sát xây dựng sân bay 51 Hình 3.5: Ma trận số nguyên thể theo độ cao vùng địa hình 52 Hình 3.6: Vùng địa hình có hồ chứa nước 58 Hình 3.7: Ma trận số nguyên theo độ cao vùng có hồ 58 Học viên: Phạm Hải Ninh – CHK12I MỞ ĐẦU Lịch sử Toán học gắn liền với phát triển loài người, khái niệm hình thành hầu hết xuất phát từ đời sống thực tiễn, từ nhu cầu tìm tòi khám phá người Một ví dụ kinh điển cho đời ngành hình học thời Ai Cập cổ đại việc chia ruộng cho người dân Nếu đời khác niệm chiều dài, chiều rộng, diện tích, thể tích, số đo góc, có lẽ người Ai Cập khó phân chia ruộng cách công Thời xưa người chưa có hỗ trợ máy móc nên thân toán phát sinh đơn giản, số lượng tính toán cỡ nhỏ, việc tính diện tích thể tích áp dụng hình đặc biệt Với hình phức tạp người ta tính phương pháp gần chia thành hình nhỏ Vì công cụ toán để sử dụng công thức vô đơn giản sơ khai phép cộng, phép chia, hay khai cách gần Ngày nay, với hỗ trợ máy tính, toán người đặt vô trừu tượng phức tạp, với số lượng phép tính lớn, vượt xa khỏi khả tự nhiên người Vì công cụ tính toán khái niệm trừu tượng Trong khuôn khổ mình, luận văn trình bày số thuật toán tính diện tích thể tích nhằm tính toán diện tích bề mặt cho vật, cho địa hình thực tế Đồng thời đề cập ứng dụng thuật toán để từ cài đặt chương trình thử nghiệm làm rõ số nội dung tính toán trừu tượng xử lí khối lượng tính toán phức tạp mà người cần tính toán Học viên: Phạm Hải Ninh – CHK12I 59 Bước 3: Chạy thực nghiệm chương trình THETICH.PAS Bước 4: Ghi nhận kết lưu tệp THETICH1.OUT Từ kết ta tính thể tích chứa nước lòng hồ tương ứng với tỉ lệ quy đổi Học viên: Phạm Hải Ninh – CHK12I 60 3.4 Cài đặt chương trình (Cài đặt chương trình cho số toán ngôn ngữ Turbo pascal 7.0; Free pascal:) 3.4.1 Chương trình tính diện đa giác theo tọa độ đỉnh Uses Const math; finp='dagiac.inp'; fout='dagiac.out'; var fi,fo:text; x,y:array[1 1000] of longint; n,i:integer; t1,t2:longint; s:real; procedure docdl; begin assign(fi,finp); reset(fi); read(fi,n); for i:=1 to n read(fi,x[i],y[i]); close(fi); end; procedure xuli; begin t1:=x[n]*y[1]; t2:=y[n]*x[1]; for i:=1 to n-1 begin t1:=t1+x[i]*y[i+1]; t2:=t2+y[i]*x[i+1]; end; s:=abs(t1-t2)/2; end; procedure ghikq; begin assign(fo,fout); rewrite(fo); write(fo,s:8:2); close(fo); Học viên: Phạm Hải Ninh – CHK12I 61 end; begin docdl; xuli; ghikq; end 3.4.2 Chương trình tìm diện tích hình chữ nhật tối đại Uses Const Var math; finp='cnmax.inp';//cnmax.inp'; fout='cnmax.out';//cnmax.out'; fi,fo:text; m,n,d :longint; l,r,h,a :array[0 1001,0 70] of longint; s,smax,yt,yd,xtr,xph:longint; Procedure docdl; var i,j:longint; begin assign(fi,finp);reset(fi); readln(fi,n,m); for i:=1 to n begin for j:=1 to m read(fi,a[i,j]); readln(fi); end; close(fi); end; Procedure xulicanh; var i,j,k:longint; begin for i:=1 to n for j:=1 to m if a[i,j]=0 then h[i,j]:=0 else h[i,j]:=h[i-1,j]+1; for i:= to n for j:=1 to m Học viên: Phạm Hải Ninh – CHK12I 62 if a[i,j]=0 then l[i,j]:=0 else begin d:=0; for k:=1 to j if (a[i,k]=1) and (h[i,k]>=h[i,j]) then inc(d) else d:=0; l[i,j]:=d; end; for i:=1 to n for j:=m downto if a[i,j]=0 then l[i,j]:=0 else begin d:=0; for k:=m downto j if (a[i,k]=1) and (h[i,k]>=h[i,j]) then inc(d) else d:=0; r[i,j]:=d; end; end; procedure xuli; var i,j:longint; begin Smax:=0; for i:=1 to n for j:=1 to m begin S:=h[i,j]*(l[i,j]+r[i,j]-1); if s> smax then begin smax:=s; yt:=i+1-h[i,j]; xtr:=j+1-l[i,j]; yd:=i; xph:=xtr+(l[i,j]+r[i,j]-1)-1; end; Học viên: Phạm Hải Ninh – CHK12I 63 end; end; procedure ghikq; begin assign(fo,fout); rewrite(fo); writeln(fo,smax); writeln(fo,xtr,' ',yt); writeln(fo,xph,' ',yd); close(fo); end; Begin docdl; xulicanh; xuli; ghikq; end 3.4.3 Chương trình tính thể tích vùng nước đọng Program MODEL; Uses math; Const finp='thetich.inp'; fout='thetich.out'; Var fi,fo:text; m,n,res,hmin,hmax,h,count :longint; a,free :array[0 1001,0 1001] of longint; Procedure Docdl; var i,j :longint; begin assign(fi,finp); reset(fi); read(fi,m,n); hmin:=100000000; hmax:=0; for i:=1 to m for j:=1 to n begin read(fi,a[i,j]); Học viên: Phạm Hải Ninh – CHK12I 64 hmin:=min(hmin,a[i,j]); hmax:=max(hmax,a[i,j]); end; close(fi); end; Procedure LOANG(x,y: longint); //Loang begin free[x,y]:=count; if (x>1)and(free[x-1,y][...]... chính là diện tích và thể tích vật thể Trong thực tế những bài toán về tính diện tích và thể tích có thể có nhiều cách tính và phương pháp tính khác nhau Với đề tài luận văn Các thuật toán tính diện tích và thể tích vật thể không gian và ứng dụng nhằm tìm hiểu các cách tiếp cận về cách tính diện tích và thể tích của các hình, các vật thể đặc biệt Đồng thời phân tích bài toán, hình thành ý tưởng và xây... số cách tiếp cận để tính diện tích, thể tích các hình, khối hình học và các vật thể cơ bản Phân tích bài toán, hình thành ý tưởng và xây dựng thuật toán cũng như chương trình cho các thuật toán sau: Thuật toán tính diện tích đa giác theo tọa độ đỉnh, thuật toán tìm diện tích hình chữ nhật tối đại và thuật toán tính thể tích vùng nước đọng Thiết lập tương quan giữa các thuật toán vào thực tế để tính toán. .. SỐ THUẬT TOÁN TÍNH DIỆN TÍCH VÀ THỂ TÍCH VẬT THỂ KHÔNG GIAN Chương này học viên trình bày các thuật toán sau: Thuật toán tính diện tích đa giác theo tọa độ đỉnh, thuật toán tìm diện tích hình chữ nhật tối đại và thuật toán tính thể tích vùng nước đọng Chương 3: ỨNG DỤNG VÀ THỬ NGHIỆM Dựa vào cơ sở lý thuyết GIS và các thuật toán được trình bày ở chương 2, trong chương này học viên trình bày cụ thể. .. biệt, tính thể tích đối với các khối hình đặc biệt Học viên: Phạm Hải Ninh – CHK12I 14 Chương 2: MỘT SỐ THUẬT TOÁN TÍNH DIỆN TÍCH VÀ THỂ TÍCH VẬT THỂ KHÔNG GIAN Chương này học viên trình bày ba thuật toán sau: Thuật toán tính diện tích đa giác theo tọa độ đỉnh, thuật toán tìm diện tích hình chữ nhật tối đại và thuật toán tính thể tích vùng nước đọng Mỗi bài toán thuật toán học viên phân tích, lấy ví... dựng thuật toán về cách tính diện của một đa giác khi biết tọa độ đỉnh, tìm diện tích phẳng là hình chữ nhật tối đại và tính thể tích vùng nước đọng Từ đó đề tài cũng nêu và giải quyết một số ứng dụng có trong thực tế mà áp dụng từ các thuật toán đã trình bày 1.1.2 Nội dung của đề tài, các vấn đề cần giải quyết - Giới thiệu tổng quan việc tính diện tích, thể tích vật thể không gian - Tìm hiểu các thuật. .. Chương 1: CÁC KHÁI NIỆM CƠ SỞ 1.1 Tổng quan về đề tài 1.1.1 Giới thiệu đề tài Việc tính diện tích và tính thể tích luôn được con người quan tâm và ứng dụng trong thực tế Để xác định, tính toán về mặt định lượng trên bề mặt hay dung tích chúng ta cần phải dựa vào số đo là diện tích và thể tích Trong các lĩnh vực như xây dựng, thủy lợi, khai khoáng, con người cũng cần phải dựa vào các con số tính toán nhiều... khoảng cách là cm thì đơn vị đo của diện tích là cm2, nếu đơn vị đo của khoảng cách là km thì đơn vị đo của diện tích là km2, nếu đơn vị đo của khoảng cách là m thì đơn vị đo của diện tích là m2 [6] Việc tính diện tích các khối hình chúng ta có thể có những cách tiếp cận, những cách tính khác nhau Đối với các hình đặc biệt ta thường dựa vào độ dài các thông số cơ bản của hình, có cách tính nhanh và dễ... dựng chương trình cụ thể để thử nghiệm, phân tích, đánh giá kết quả đạt được 1.1.4 Phạm vi ứng dụng Phạm vi nghiên cứu của đề tài được giới hạn trong việc xây dựng các phương pháp thực hiện, chú trọng vào mô hình tính toán, thuật toán và chương trình máy tính Tính toán thực nghiệm cho một khu vực địa lý cụ thể Ứng dụng tính diện tích phẳng tối đa cho phép trên một địa hình và thể tích chứa nước của một... 1: Tính T1 T1 = x1y2 + x2y3 + + xn-1yn + xny1 Bước 2: Tính T2 T2 = x2y1 + x3y2 + + xnyn-1 + x1yn Bước 3: Tính S S = |T1-T2|/2 1.2.2 Khái quát cách tính thể tích các hình cơ bản Thể tích hay dung tích của một vật là lượng không gian mà vật ấy chiếm Thể tích có đơn vị đo là lập phương của khoảng cách (khoảng cách mũ 3) Trong hệ đo lường quốc tế, nếu đơn vị đo của khoảng cách là cm thì đơn vị đo của thể. .. gian - Tìm hiểu các thuật toán liên quan tính diện tích, thể tích vật thể không gian - Cài đặt thử nghiệm các thuật toán đã xây dựng - Ứng dụng và xây dựng chương trình bài toán ứng dụng trong một số lĩnh vực có trong thực tế Học viên: Phạm Hải Ninh – CHK12I 3 1.1.3 Phương pháp nghiên cứu - Phương pháp nghiên cứu lý thuyết: Tìm hiểu, tổng hợp tài liệu, phân tích, đánh giá các phương pháp - Phương pháp