Могу написать типо вводиш 1 и пишет форма, вводишь 2 пишет тик и т.д. сойдет?
Задание №1
60 Мбайт * 8 = 480 Мбит - размер файла в мегабитах
480 Мбит * 1024 = 491520 Кбит - размер файла в килобитах
491520 / 2 = 245760 Кбит - половина файла
245760 Кбит / 256 = 960 секунд - время передачи первой половины файла
245760 Кбит / (256 / 2) = 245760 Кбит / 128 = 1920 секунд - время передачи втораой половины файла
960 с + 1920 с = 2880 секунд - общее время передачи
В одной минуте 60 секунд:
2880 / 60 = 48 минут - передан весь файл
Задание №2
Переведем килобайты в биты: N = 3750кбайт = 30720000бит
Вычислим скорость передачи информации: V = 30720000/120
V = 256000 бит/c
Решение - в прилагаемом файле.
(¬Y ∨ X) ∨ (Y ∧ Z) ∧ ¬X
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.
PascalABC.NET
const
n=10;
var
a:array[1..n,1..n] of integer;
i,j,kp,kq:integer;
p,q:array of integer; // динамические массивы
begin
Randomize;
Writeln('Исходный массив из случайных чисел');
kp:=0; kq:=0;
SetLength(p,n*n); SetLength(q,n*n);
for i:=1 to n do begin
for j:=1 to n do begin
a[i,j]:=Random(101)-50; // диапазон [-50;50]
Write(a[i,j]:4);
if a[i,j]>0 then begin p[kp]:=a[i,j]; Inc(kp) end
else
if a[i,j]<0 then begin q[kq]:=a[i,j]; Inc(kq) end
end;
Writeln
end;
SetLength(p,kp); SetLength(q,kq); // отрегулировали по заполнению
Writeln('Положительные');
for i:=0 to kp-1 do Write(p[i],' '); Writeln;
Writeln('Отрицательные');
for i:=0 to kq-1 do Write(q[i],' '); Writeln
end.
Пример
Исходный массив из случайных чисел
46 47 -8 -32 36 41 -49 -15 25 -33
18 15 1 15 21 43 30 41 -15 -21
-48 15 -5 17 19 30 -38 0 10 11
-16 10 48 -30 -40 -49 -48 24 18 24
47 45 50 44 -3 -15 19 29 -13 38
-23 3 -23 19 19 -19 1 26 0 -45
28 1 26 -36 34 -43 18 -19 4 19
41 -45 -27 12 -18 -43 16 1 -31 -17
-39 -16 -37 22 -17 31 -17 -22 1 30
0 -24 -27 12 46 -4 -32 36 -40 -11
Положительные
46 47 36 41 25 18 15 1 15 21 43 30 41 15 17 19 30 10 11 10 48 24 18 24 47 45 50 44 19 29 38 3 19 19 1 26 28 1 26 34 18 4 19 41 12 16 1 22 31 1 30 12 46 36
Отрицательные
-8 -32 -49 -15 -33 -15 -21 -48 -5 -38 -16 -30 -40 -49 -48 -3 -15 -13 -23 -23 -19 -45 -36 -43 -19 -45 -27 -18 -43 -31 -17 -39 -16 -37 -17 -17 -22 -24 -27 -4 -32 -40 -11