Вычислить произведение четырех натур.чисел, используя только операцию сложения. (Язык пр:pascal) 1) Написать программу (обычную) 2) Написать программу с использованием процедуры 3) Написать программу с исп. функции 4) Написать ...
Вычислить произведение четырех натур.чисел, используя только операцию сложения. (Язык пр:pascal)
1) Написать программу (обычную)
2) Написать программу с использованием процедуры
3) Написать программу с исп. функции
4) Написать программу с исп. рекурсивной процедуры
5) Написать программу с исп. рекурсивной функции
Ответ(ы) на вопрос:
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;end; рекурсивная ф-ия, алгоритм работает гораздо быстрее лобового складывания (хоть с большими числами). Процедура пишется аналогично. (если не допрешь - скажи, сделаю)
Не нашли ответ?
Похожие вопросы