1. а) Для начала узнаем, какое количество килобайт мы можем передать за 1 секунду: 19200/1024/8 = 2,3 (Кбайт). Следовательно, если бы не было сжатия информации, то данный файл за одну секунду при данной скорости соединения было бы невозможно передать. Но сжатие есть, 2.6/2.3 < 4, следовательно, передача возможна.
б) Нет не всегда, так как скорость соединения это максимально возможная скорость передачи данных при этом соединении. Реальная скорость может быть меньше.
в) Можно указать минимальное время передачи этого файла: 4*1024*1024/4/19200, около 55 с (столько времени будет передаваться файл на указанной скорости с максимальной компрессией). Максимальное же время передачи оценить вообще говоря нельзя, так как в любой момент может произойти обрыв связи
2. Время = объем(бит) / скорость(бит/с)
переводим объем из килобайт в биты 1500кб= 1500*1024*8 бит
считаем t= секунды
using System;
//6,
//28,
//496,
//8128,
//33550336
internal class Program {
private static void Main() {
var max = 0L;
var quantity = 0;
Console.WriteLine("Введите последовательность. Для окончания введите ноль");
do {
var n = long.Parse(Console.ReadLine());
if (n == 0)
break;
if (max == n)
quantity++;
else if (n > max && IsIdealNumber(n)) {
max = n;
quantity = 1;
}
} while (true);
Console.WriteLine($"max = {max}, кол-во = {quantity}");
Console.ReadKey();
}
private static bool IsIdealNumber(long number) {
var sum = 1L;
for (var i = 2L; i <= number / 2; i++) {
if (number % i != 0)
continue;
sum += i;
if (sum > number || number < 0)
break;
}
Console.WriteLine($"number = {number}, sum = {sum}");
return sum == number; //зачем выдумывать нолики и единички если давно придуманы буленовские переменные
}
}