Change background image
Chuyên Tin - Lê Khiết

Go downThông điệp [Trang 1 trong tổng số 1 trang]

© FMvi.vn

on Sun Sep 02, 2012 6:59 pm
Gunny->Rock
avatar
avatar

người mới

Code:

const fi='bt.inp';fo='bt.out';
type diem=record x,y:integer;end;
    dt=record a,b,c:integer;end;
    dg=array[0..100]of diem;
var p:dg;
    n,minx,maxx,miny,maxy:integer;
    E,F:diem;
    g:text;
procedure doc;
var i:integer;
begin
        assign(g,fi);reset(g);
        n:=4;
        for i:=1 to n do readln(g,p[i].x,p[i].y);
        readln(g,E.x,E.y);
        readln(g,F.x,F.y);
        close(g);
end;
procedure khoitao;
var i:integer;
begin
        assign(g,fo);rewrite(g);
        maxx:=p[1].x;
        minx:=p[1].x;
        maxy:=p[1].y;
        miny:=p[1].y;
        for i:=2 to n do
        begin
        if maxx<p[i].x then maxx:=p[i].x;
        if minx>p[i].x then minx:=p[i].x;
        if maxy<p[i].y then maxy:=p[i].y;
        if miny>p[i].y then miny:=p[i].y;
        end;
end;
function kt(M:diem):boolean;
begin
    kt:=(M.x>=minx)and(M.x<=maxx)and(M.y>=miny)and(M.y<=maxy);
end;
function gt(M:diem;T:dt):integer;
begin
        gt:=T.a*M.x+T.b*M.y+T.c;
end;
procedure xddt(A,B:diem;var T:dt);
begin
        t.a:=A.y-B.y;
        t.b:=B.x-A.x;
        t.c:=A.x*B.y-A.y*B.x;
end;

function khacphia(A,B:diem;T:dt):boolean;
begin
        khacphia:=(GT(A,T)*GT(B,T)<0);
end;
procedure ghi;
var  dem,i:integer;T,T1:dt;
begin
        dem:=0;
        if kt(E)and kt(F) then writeln(g,'EF nam trong hcn')
        else
        if kt(E) and not kt(F) then writeln(g,'Diem E thuoc hcn va Diem F ko thuoc hcn')
        else
        if kt(F) and not kt(E) then writeln(g,'Diem F thuoc hcn va Diem E ko thuoc hcn')
        else
        begin
        p[n+1]:=p[1];
        xddt(E,F,T);
        for i:=1 to n do
        begin
        xddt(p[i],p[i+1],T1);
        if khacphia(E,F,T1)and khacphia(p[i],p[i+1],T) then inc(dem);
        end;
        if dem>0 then write(g,'Doan EF co diem chung voi hcn')
        else write(g,'Doan EF khong co diem chung voi hcn');
        end;

        close(g);
end;
BEGIN
        doc;
        khoitao;
        ghi;
END.
Link: [You must be registered and logged in to see this link.]

Thích

Báo xấu [0]

Gửi một bình luận lên tường nhà Gunny->Rock
Trả lời nhanh

Về Đầu TrangThông điệp [Trang 1 trong tổng số 1 trang]

  © FMvi.vn

|_-Diễn Đàn Tin Học - Lê Khiết-_|

« Xem bài trước | Xem bài kế tiếp »

Bài viết liên quan

    Quyền hạn của bạn:

    Bạn không có quyền trả lời bài viết