Получаем два числа, затем перемножаем курс на сумму в долларах, чтобы получить рубли и затем выводим в нужном формате.
trunc(a) получает целую часть от числа
frac(a) получает дробную часть от числа, затем умножаем на 100 для преобразования дробной части в целую(для вывода на экран) (например число 0.22 преобразуется в 22.0) и с :2:0 выводим в формате 2 цифры до запятой и 0 после.
Так как каждая сеть должна адресовать не менее 2000 узлов, последнее число может быть любым (256 вариантов). На 2-ом справа числе должна быть маска так, чтобы была свобода хотя бы в 8 номеров (256*8=2048). Но при этом чтобы все три адреса попали в три разных сети. Второе число должно быть 11111000(2) = 248(10). 1 сеть будет от 192.168.176.1 до 192.168.183.254 - в ней 192.168.181.171. 2 сеть будет от 192.168.160.1 до 192.168.167.254 - в ней 192.168.165.80 3 сеть будет от 192.168.168.1 до 192.168.175.254 - в ней 192.168.173.134. ответ: 255.255.248.0 для всех трех сетей.
var
kurs, summa, rub: double;
begin
readln(kurs, summa);
rub := kurs * summa;
writeln(trunc(rub), ' РУБ ', (frac(rub) * 100):2:0, ' КОП');
end.
Объяснение:
Получаем два числа, затем перемножаем курс на сумму в долларах, чтобы получить рубли и затем выводим в нужном формате.
trunc(a) получает целую часть от числа
frac(a) получает дробную часть от числа, затем умножаем на 100 для преобразования дробной части в целую(для вывода на экран) (например число 0.22 преобразуется в 22.0) и с :2:0 выводим в формате 2 цифры до запятой и 0 после.