Function pr(a, b:integer):integer; var tmp:integer;begin if b = 1 then pr := a else begin tmp := pr(a, b shr 1); inc(tmp, tmp); if b and 1 = 1 then inc(tmp, a); pr := tmp; end;<span>end; рекурсивная ф-ия, алгоритм работает гораздо быстрее лобового складывания (хоть с большими числами). Процедура пишется аналогично. (если не допрешь - скажи, сделаю)</span>
N = 256
N = 2 ** i
i = 8
k = 40 * 32 * 48 = 61440 символов
I = k * i
I = 61440 * 8 = 491520 бит = 61440 Байт = 60 Кбайт
Ответ: 60 Кбайт
3 * 1024 = 3072 байт / 1536 = 2
40 мс * 2 = 80 мс
Ответ:
var X, Y: Real;
begin
WriteLn("Введите значение аргумента: ");
ReadLn(X);
// так как деление на ноль вызовет ошибку, исключаем это
if (X <> 0) then
begin
Y:=1/X*X+4*X+5;
WriteLn("Y= ", Y);
end;
else
WriteLn("Введен недопустимый аргумент");
end.
// PascalABC.NET 3.0, сборка 1150 от 22.01.2016
begin
var s:=ReadlnString('Введите слово:').ToLower;
if s=ReverseString(s) then Writeln('Перевертыш')
else Writeln('Не перевертыш')
end.
<u><em>Тестовое решение:</em></u>
Введите слово: Шалаш
Перевертыш
Введите слово: револьвер
Не перевертыш