программа генерирует массив случайной длины от 10 до ста элементов с значениями в диапазоне 10..9999999
затем выводит все элементы у которых первая цифра больше второй.
var
n : integer;
d : array of integer;
begin
n := random(10, 100);
d := new integer[n];
d := arrRandom(n, 10, 9999999);
for var i := 0 to n-1 do begin
var a1, a2 : integer;
a1 := d[i];
repeat
a1 := a1 div 10;
until a1 < 10;
a2 := d[i] mod 10;
if a1 > a2 then writeln(d[i]);
end;
end.
1)8 МБайт = 8192 КБайт
2) 8192 Кбайт / 4096 Кбайт = 2 - это отношение первого файла,которое мы передавали к второму. Тем самым решение получается из этого таким образом:
Первый файл больше второго в 2 раза. При неизменяемой скорости, второй файл соответственно будет передан в 2 раза быстрее -> 128/2 = 64 сек.
Вариант решения №2:
1) 8 МБайт = 8192 КБайт
2) найдём скорость соединения:
8192 Кбайт / 128 сек = 64 Кб/сек.
3) узнаем время передачи второго файла
4096 Кбайт / 64 Кб/сек = 64 сек.
ОТВЕТ : 64 сек.
Отмечу,что при решении похожих задач некоторые при переводе скорости и других местах вместо 1024 считают как 1000. Из-а этого в решении могут появиться такие ответы (для данной задачи) как 65,536 сек.
Обращайте внимание на то,с какой буквы написана величина! КБ=КБайт = 1024 байт. Если первая заглавная,то считается 2 в степени, то есть как принято в информатике.
кБайт = 1000 байт. Если с маленькой,то приставка кило считается по системе СИ, как в физике и является 10^3.