Промежуток той же длины, но начинающийся с нуля, будет выглядеть так; [0;b-а]. Случайное значение на этом промежутке в команде random будет выглядеть так; random(b-a+l). Отсюда следует, чтобы найти случайное значение на промежутке [а;b], необходимо к полученной команде random прибавить а. Получим random(b-a+l)+а
Т.к. функция random генерирует случайное вещественное число в полуинтервале 10;1), а длина этого полуинтервала 1, то если мы умножим эту функцию на число (b-а), мы получим, что функция будет теперь генерировать числа на полуинтервале [0;b-а). Получим (b-а)* random. Следственно, чтобы сдвинуть этот интервал от 0, необходимо прибавить к полученной функции а, чтобы функция генерировала числа на полуинтервале [а;b). Получим выражение (b-a)*random+a
Нужно определить, сколько времени будет передаваться файл объемом 5 Мбайт по каналу со скоростью передачи данные 2^15 бит/с; к этому времени нужно добавить задержку файла у Толи (пока он не получит 512 Кбайт данных по каналу со скоростью 219 бит/с).
Переведём объём информации из Мб в биты: I=5 Мб=5*220 байт=5* *223 бит.
Время задержки: t_0 = 512 кб / 2^19 бит/с = 2^(22-19) c = 2^3 c.
Время скачивания данных Мишей: t_1 = 5 * 223 бит / 215 бит/с = 5 * 28 c.
Полное время: t = 5 * 28 c + 23 c = (256 * 5 + 8) c = 1288 c.
Ответ: 1288.
Т.к. функция random генерирует случайное вещественное число в полуинтервале 10;1), а длина этого полуинтервала 1, то если мы умножим эту функцию на число (b-а), мы получим, что функция будет теперь генерировать числа на полуинтервале [0;b-а). Получим (b-а)* random. Следственно, чтобы сдвинуть этот интервал от 0, необходимо прибавить к полученной функции а, чтобы функция генерировала числа на полуинтервале [а;b). Получим выражение (b-a)*random+a
Переведём объём информации из Мб в биты: I=5 Мб=5*220 байт=5* *223 бит.
Время задержки: t_0 = 512 кб / 2^19 бит/с = 2^(22-19) c = 2^3 c.
Время скачивания данных Мишей: t_1 = 5 * 223 бит / 215 бит/с = 5 * 28 c.
Полное время: t = 5 * 28 c + 23 c = (256 * 5 + 8) c = 1288 c.
Ответ: 1288.