Размещено 4 года назад по предмету
Информатика
от chernov22q
Нужно решение на паскале.
Алгоритм вычисления функции F(n), где n – целое неотрицательное число, задан следующими
соотношениями:
F(0) = 0,
F(n) = F(n / 2) + 3, когда n > 0 и делится на 2,
F(n) = 2·F(n – 1) + 1 , когда n > 0 и не делится на 2.
Сколько различных значений может принимать функция F(n) при n, принадлежащих отрезку [1;1000]? Вот все что написал var count, n:integer; function F(n:integer): integer; begin if n=0 then F:=0 else if (n>0) and (n mod 2 = 0) then F:=F(n div 2) + 3 else F:=2*F(n-1) + 1; end; begin count:=0;