Bài 15: Thao tác với tệp

NP

đọc đoạn chương trình sau đây và thực hiện yêu cầu:

program tim_dien_tich;

uses crt;

var a1,a2,b1,b2,x1,x2,i,dem:longint;

dtnn,dt1,dt2,dt3,dt4,dt5,dt6:real;

x3:array[1..1000]of longint;

dt:array[1..1000]of real;

begin

  clrscr;

  write('nhap chieu dai va chieu rong:');readln(a1,b1);

  a2:=a1;b2:=b1;dt1:=a1*b1;dt2:=dt1/2;

  x1:=0;i:=0;dem:=0;

  writeln(dt2:5:1);

  writeln(x1);

  while x1<b1 do

  begin

    dt3:=a2*x1/2;

    dt4:=(b2-x1)*x1/2;

    dt5:=b2*(a2-x1)/2;

    dt6:=dt1-dt3-dt4-dt5;

    dt[i]:=dt6;x3[i]:=x1;

    x1:=x1+1;i:=i+1;dem:=dem+1;

  end;

  dtnn:=dt[1];

  for i:=1 to dem do

  begin

    if (dtnn>dt[i])and(dt[i]<>0) then dtnn:=dt[i];

  end;

  writeln(dtnn:5:1);

  for i:=1 to dem do

  if dtnn=dt[i] then writeln(x3[i]);

  readln;

end.

đoạn chương trình trên thực hiện phần in dữ liệu còn phần ghi dữ liệu vào tệp xin mọi người giúp giùm!

cho một hình chữ nhật ABCD,cạnh AB bằng a,cạnh BC=b.a,b là các số nguyên dương trong khoảng từ 1 đến 100.

một điểm M chạy trong đoạn BC với BM=X. X là số nguyên dương trong khoảng từ 0 đến b . Điểm N chạy trong đoạn CD với CN=x

tính giá trị lớn nhất và nhỏ nhất của diện tích tam giác AMN và X khi M,N lưu động

dòng đầu là diện tích lớn nhất của tam giác AMN

dòng 2 là giá trị của x khi đó

dòng 3 là diện tích bé nhất của tam giác AMN

dòng 4 là giá trị của x khi đó

vd:

nhập:10 6

in ra: 30.0

        0

        17.5

        5

NP
11 tháng 4 2021 lúc 12:09

program bai_3;
uses crt;
var f,g:text;
a1,a2,b1,b2,x1,x2,i,dem,luu:longint;
dtnn,dt1,dt2,dt3,dt4,dt5,dt6:real;
x3:array[1..1000]of longint;
dt:array[1..1000]of real;
begin
  clrscr;
  assign(f,'CHUNHAT.inp');reset(f);
  readln(f,a1,b1);
  close(f);
  a2:=a1;b2:=b1;dt1:=a1*b1;dt2:=dt1/2;
  x1:=0;i:=0;dem:=0;
  while x1<b1 do
  begin
    dt3:=a2*x1/2;
    dt4:=(b2-x1)*x1/2;
    dt5:=b2*(a2-x1)/2;
    dt6:=dt1-dt3-dt4-dt5;
    dt[i]:=dt6;x3[i]:=x1;
    x1:=x1+1;i:=i+1;dem:=dem+1;
  end;
  dtnn:=dt[1];
  for i:=1 to dem do
  begin
    if (dtnn>dt[i])and(dt[i]<>0) then dtnn:=dt[i];
  end;
  x1:=0;
  for i:=1 to dem do
  if dtnn=dt[i] then luu:=i;
  assign(g,'CHUNHAT.out');rewrite(g);
  writeln(g,dt2:4:1);
  writeln(g,x1);
  writeln(g,dtnn:4:1);
  writeln(g,x3[luu]);
  close(g);
end.

Bình luận (0)

Các câu hỏi tương tự
VH
Xem chi tiết
HC
Xem chi tiết
FG
Xem chi tiết
NC
Xem chi tiết
HD
Xem chi tiết
NL
Xem chi tiết
NK
Xem chi tiết
AD
Xem chi tiết
TN
Xem chi tiết