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.
5 единиц
Пишешь в ответе так: 11111
// F#
let rec getNumberFromConsole _ =
let str = System.Console.ReadLine()
let mutable number = 0
if System.Int32.TryParse(str, &number)
then number
else getNumberFromConsole null
let rec getCommonNumber number1 number2 commonNumber multiplier =
if number1 > 0 && number2 > 0
then getCommonNumber (number1 / 10) (number2 / 10) (commonNumber + (number1 % 10) * 10 * multiplier + (number2 % 10) * multiplier) (multiplier * 100)
else commonNumber
[<EntryPoint>]
let main argv =
let number1 = getNumberFromConsole null
let number2 = getNumberFromConsole null
let result = getCommonNumber number1 number2 0 1
System.Console.WriteLine result
System.Console.ReadKey true |> ignore
0
<span>
</span>
1 в четыре раза уменьшает неопределённость знания
<h2>100 121 144 169 196 225 256 289 324 361 400</h2>