Program qw; uses crt; Type Atlas=Record country,capital:string; area,people:real; end; ps=File of atlas; Var f:ps; z,t:atlas; Begin assign(f,'1.dat'); rewrite(f); z.country:='Латвия'; z.area:=67.7; z.people:=2.6; z.capital:='Рига'; write(f,z); z.country:='Литва'; z.area:=65.2; z.people:=3.4; z.capital:='Вильнюс'; write(f,z); z.country:='Польша'; z.area:=313; z.people:=34.8; z.capital:='Варшава'; write(f,z); z.country:='Украина'; z.area:=603.7; z.people:=50; z.capital:='Киев'; write(f,z); z.country:='Россия'; z.area:=17075.4; z.people:=139; z.capital:='Москва'; write(f,z); Close(f); assign(f,'1.dat'); reset(f); read(f,t); while not(eof(f)) do begin read(f,z); if t.people/t.area < z.people/z.area then t:=z; end; close(f); writeln('Cтранa с наибольшей плотностью населения:'); writeln(t.country,' (плотность населения равна ',t.people/t.area:9:6,' млн на кв.км)'); end.
Program qw;
uses crt;
Type
Atlas=Record
country,capital:string;
area,people:real;
end;
ps=File of atlas;
Var f:ps;
z,t:atlas;
Begin
assign(f,'1.dat');
rewrite(f);
z.country:='Латвия'; z.area:=67.7;
z.people:=2.6; z.capital:='Рига';
write(f,z);
z.country:='Литва'; z.area:=65.2;
z.people:=3.4; z.capital:='Вильнюс';
write(f,z);
z.country:='Польша'; z.area:=313;
z.people:=34.8; z.capital:='Варшава';
write(f,z);
z.country:='Украина'; z.area:=603.7;
z.people:=50; z.capital:='Киев';
write(f,z);
z.country:='Россия'; z.area:=17075.4;
z.people:=139; z.capital:='Москва';
write(f,z);
Close(f);
assign(f,'1.dat');
reset(f);
read(f,t);
while not(eof(f)) do
begin
read(f,z);
if t.people/t.area < z.people/z.area then t:=z;
end;
close(f);
writeln('Cтранa с наибольшей плотностью населения:');
writeln(t.country,' (плотность населения равна ',t.people/t.area:9:6,' млн на кв.км)');
end.
а)89/2 = 44, остаток: 1
44/2 = 22, остаток: 0
22/2 = 11, остаток: 0
11/2 = 5, остаток: 1
5/2 = 2, остаток: 1
2/2 = 1, остаток: 0
1/2 = 0, остаток: 1
8910 = 10110012
б)600/2 = 300, остаток: 0
300/2 = 150, остаток: 0
150/2 = 75, остаток: 0
75/2 = 37, остаток: 1
37/2 = 18, остаток: 1
18/2 = 9, остаток: 0
9/2 = 4, остаток: 1
4/2 = 2, остаток: 0
2/2 = 1, остаток: 0
1/2 = 0, остаток: 1
60010 = 10010110002
в)2010/2 = 1005, остаток: 0
1005/2 = 502, остаток: 1
502/2 = 251, остаток: 0
251/2 = 125, остаток: 1
125/2 = 62, остаток: 1
62/2 = 31, остаток: 0
31/2 = 15, остаток: 1
15/2 = 7, остаток: 1
7/2 = 3, остаток: 1
3/2 = 1, остаток: 1
1/2 = 0, остаток: 1
201010 = 111110110102