
Определите, количество чисел K, для которых следующая программа выведет такой же результат, что и
для K = 30: #include using namespace std; int F(int x) { if (x < 3) return 1; else return 2 * F(x - 1) + F(x - 2); } int main() { int i, k; i = 15; cin >> k; while (i > 0 && F(i) > k) i = i - 1; cout << i; }

Ответы на вопрос

Ответ:
24
Объяснение:
var
i,j,k: integer;
function F(x:integer):integer;
begin if x < 3 then
F:= 1
else F:= 2*F(x-1) + F(x-2);
end;
begin
for k:=15 to 50 do
begin
i := 15;
while (i > 0) and (F(i) > K) do
i:=i-1;
write(i,' ');
end;
end.



Данная программа вычисляет число i
, начиная с 15 и уменьшая его на 1, пока значение F(i)
не станет меньше или равно заданному числу k
. Затем она выводит значение i
.
Функция F(x)
определена рекурсивно:
scssF(x) = 1, если x < 3
F(x) = 2 * F(x - 1) + F(x - 2), иначе
Для k = 30
, программа выводит i = 9
.
Чтобы определить количество чисел K
, для которых программа выдаст тот же результат, давайте рассмотрим, как значение i
изменяется в зависимости от k
:
Для
k < F(15)
(то естьk < 987
), программа не войдет в цикл, так какF(15)
больше любогоk
, иi
останется 15.Когда
k >= F(15)
иk < F(14)
(то естьk >= 987
иk < 610
), программа начнет итерации сi = 14
, так какF(14)
большеk
, ноF(15)
уже нет. Затем, на каждом шаге,i
будет уменьшаться на 1, покаF(i)
не станет меньшеk
.
Таким образом, количество чисел K
, для которых программа выдаст такой же результат, как и для k = 30
, равно количеству чисел в интервале [987, 610)
. Это интервал целых чисел, которые больше или равны 987 и меньше 610.
Однако данное условие невозможно, так как ни одно целое число не может одновременно быть больше или равным 987 и меньше 610.
Следовательно, для k = 30
нет других целых чисел K
, при которых программа выдаст такой же результат.


Похожие вопросы
Топ вопросов за вчера в категории Информатика







Последние заданные вопросы в категории Информатика
-
Математика
-
Литература
-
Алгебра
-
Русский язык
-
Геометрия
-
Английский язык
-
Химия
-
Физика
-
Биология
-
Другие предметы
-
История
-
Обществознание
-
Окружающий мир
-
География
-
Українська мова
-
Информатика
-
Українська література
-
Қазақ тiлi
-
Экономика
-
Музыка
-
Право
-
Беларуская мова
-
Французский язык
-
Немецкий язык
-
МХК
-
ОБЖ
-
Психология
-
Физкультура и спорт
-
Астрономия
-
Кыргыз тили
-
Оʻzbek tili