Pascal | Viết chương trình thao tác trên các điểm trên mặt phẳng (có các thành phần X, Y)

Pascal | Viết chương trình thao tác trên các điểm trên mặt phẳng (có các thành phần X, Y)

Viết chương trình thao tác trên các điểm trên mặt phẳng (có các thành phần X, Y) :

+ Nhập thông tin về 3 điểm A, B, C. Tính diện tích của Tam giá ABC.

+ Nhập danh sách n điểm, và điểm M. Hãy xác định điểm gần điểm M nhất.

Hướng dẫn:

-          Viết hàm tính khoảng cách giữa 2 điểm A, B theo công thức:

-          Viết hàm tính diện tích tam giác ABC thông qua chu vi của tam giác:

a = KhoangCach(B, C)

b = KhoangCach(A, C)

c = KhoangCach(A, B)

      p = ( a+b+c) / 2

-         Viết hàm tìm kiểm trong danh sách điểm nhậm vào, tìm điểm X có khoảng cách từ X đến M là nhỏ nhất.

Source code chương trình:

{ 1. Khai bao cac kieu du lieu va bien can thiet }

PROGRAM ThaoTacDiem;

Uses CRT;

Type    KDIEM = RECORD

X,Y : Integer;

End;

KDSDIEM = Array[1..50] of KDIEM;

Var

DS: KDSDIEM;

n: Integer;

A, B, C, M, X: KDIEM;


{ 2. Thu tuc nhap 3 diem A, B, C}

Procedure NhapABC( Var A, B, C: KDIEM);

Begin

Write(‘Toa do A(X, Y):’);      Readln( A.X, A.Y );

Write(‘Toa do B(X, Y):’);       Readln( B.X, B.Y );

Write(‘Toa do C(X, Y):’);       Readln( C.X, C.Y );

      End;


{ 3. Thu tuc nhap du lieu cho danh sach diem }

Procedure NhapDSDiem( Var dsdiem : KDSDIEM; Var N:Integer);

Var i:Integer;

Begin

Repeat

Write(‘Nhap so diem = ‘);

Readln(N);

Until ( N>0 ) and ( N < 51);


      For i:=1 to N do 

Begin

Write(‘Toa do X, Y:’);      Readln(dsdiem[i].X, dsdiem[i].Y);

 End;

      End;


{ 4. Ham tinh khoang cach giua 2 diem A, B }

Function  KhoangCach( A, B: KDIEM) : Real;

Begin

KhoangCach := Sqrt( Sqr(A.X-B.X) + Sqr(A.Y-B.Y) );

      End;

{ 5. Ham tinh dien tich tam giac A, B, C }

Function  DienTichABC( A, B, C: KDIEM) : Real;

Var   ab, bc, ca, p: Real;

Begin

ab := KhoangCach ( A, B );

bc := KhoangCach ( B, C );

ca := KhoangCach ( C, A );

p := (ab + bc + ca) / 2;

DienTichABC := Sqrt( p * (p-ab) * (p-bc) * (p-ca) );

      End;


{ 6. Xac dinh diem gan M nhat trong danh sach n diem   }

Function  DiemGanMnhat(ds : KDSDIEM; n:Integer;M:KDIEM): KDIEM;

Var   kcMin, kc: Real;

            X: KDIEM;

            I : Integer;

Begin

      KcMin := KhoangCach(M, ds[1]);

      For i:=1 to N do 

Begin

            Kc := KhoangCach(M, ds[i]);

            If (kc >= kcMin) Then

            Begin

                        KcMin := Kc;

                        X := ds[i];

            End;

DiemGanMnhat := X;

      End;



{    Chương trình chính;      }

BEGIN

Clrscr;

NhapABC( A, B, C );

Writeln(‘Diem tich tam giac ABC= ‘, DienTichABC(A, B, C):6:2);


NhapDSDiem( ds, N );

Write(‘Toa do M(x, y):’);        Readln(M.X, M.Y);

X := DiemGanMnhat(ds, N, M);

Writeln(‘Diem gan M nhat la (‘, X.x,’ , ’ , X.y,’ ) trong cac diem nhap vao. ’);


Readln;

END.
Bạn thấy bài viết này như thế nào?: 
Average: 10 (10 votes)
Ảnh của Tommy Tran

Tommy owner Express Magazine

Drupal Developer having 9+ year experience, implementation and having strong knowledge of technical specifications, workflow development. Ability to perform effectively and efficiently in team and individually. Always enthusiastic and interseted to study new technologies

  • Skype ID: tthanhthuy

Advertisement

 

jobsora

Dich vu khu trung tphcm

Dich vu diet chuot tphcm

Dich vu diet con trung

Quảng Cáo Bài Viết

 
How to Master Entity Access in Drupal

Chia sẻ hook Entity Access trong Drupal 8 tip nhất năm 2020

Most Drupal devs are familiar with hook_entity_access(and its cousins hook_ENTITY_TYPE_ID_access and hook_node_access). However, it is mostly used for serving “403: Access denied” to browsers.

Mua bán subscribe và cơn khát nổi tiếng của giới trẻ

Mua bán subscribe và cơn khát nổi tiếng của giới trẻ

Tuy chỉ mới xuất hiện trên Facebook chưa lâu  nhưng dịch vụ bán “sub” đang trở thành một trong những 

4 cách tạo và chỉnh sửa file PDF miễn phí

4 cách tạo và chỉnh sửa file PDF miễn phí

Xem file PDF bằng phần mềm của Adobe thì miễn phí, nhưng chỉnh sửa và tạo thì không.

Công ty diệt chuột T&C

 

Diet con trung