Chương trình con và lập trình có cấu trúc

Nya arigatou~

Viết chương trình sử dụng các hàm và thủ tục xây dựng ở trên để giải bài toán:

 Cho tệp dữ liệu TAMGIAC.DAT có cấu trúc như sau:

- Dòng đầu tiên chứa số N;

- N dòng tiếp theo, mỗi dòng chứa 6 số thực xA, yA, xB, yB, xC, ylà tọa độ 3 đỉnh A(xA, yA), B(xB, yB), C(xC, yC) của tam giác ABC

Hãy nhập dữ liệu từ tệpđã cho và trong số N tam giác đó, đưa ra tệp TAMGIAC.OUT gồm 3 dòng:

- Dòng đầu tiên là số lượng tam giác đều;

- Dòng thứ 2 là số lượng tam giác cân (nhưng không là đều);

- Dòng thứ 3 là số lượng tam giác vuông.

Nguyễn Lê Phước Thịnh
4 tháng 4 2021 lúc 13:16

const fi='tamgiac.dat'

      fo='tamgiac.out'

var f1,f2:text;

    a,b,c,d,e,f:array[1..100]of integer;

    i,n,dem1,dem2,dem3:integer;

    ab,bc,ac:real;

begin

assign(f1,fi); reset(f1);

assign(f2,fo); rewrite(f2);

readln(f1,n);

for i:=1 to n do

  readln(f1,a[i],b[i],c[i],d[i],e[i],f[i]);

dem1:=0;

dem2:=0;

dem3:=0;

for i:=1 to n do

  begin

     ab:=sqrt(sqr(a[i]-c[i])+sqr(b[i]-d[i]));

     ac:=sqrt(sqr(a[i]-e[i])+sqr(b[i]-f[i]));

     bc:=sqrt(sqr(c[i]-e[i])+sqr(d[i]-f[i]));

     if (ab>0) and (ac>0) and (bc>0) and (ab+ac>bc) and (ab+bc>ac) and

(ac+bc>ab) then

        begin

           if (ab=ac) or (ac=bc) then inc(dem1);

           if ((ab=ac) and (ab<>bc) and (ac<>bc)) then inc(dem2);

           if ((ac=bc) and (bc<>ab) and (ac<>ab)) then inc(dem2);

           if ((ac=bc) and (ac<>ab) and (bc<>ab)) then inc(dem2);

           if sqr(ab)=sqr(ac)+sqr(bc) then inc(dem3);

           if sqr(ac)=sqr(bc)+sqr(ab) then inc(dem3);

           if sqr(bc)=sqr(ab)+sqr(ac) then inc(dem3);

        end;

  end;

writeln(f2,dem1);

writeln(f2,dem2);

writeln(f2,dem3);

close(f1);

close(f2);

end.

Bình luận (0)

Các câu hỏi tương tự
Nya arigatou~
Xem chi tiết
Ngọc Diệp
Xem chi tiết
Mạnh Cường Đào Huỳnh
Xem chi tiết
Bùi Thị Ngọc
Xem chi tiết
Trần Thị Quỳnh Như
Xem chi tiết
Trần Đức Hải
Xem chi tiết
Đặng Công
Xem chi tiết
Thúy Vy Dương
Xem chi tiết
Trần Quỳnh Anh
Xem chi tiết