|
Главная | Правила | Регистрация | Дневники | Справка | Пользователи | Календарь | Поиск | Сообщения за день | Все разделы прочитаны |
![]() |
|
Опции темы | Опции просмотра |
![]() |
#1 (permalink) |
Member
Регистрация: 22.10.2016
Сообщений: 62
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 10
|
![]() пример: с числом 1 ничего делать не надо - оно уже равно 1. число 2 приводится к 1 так: 2 => 3 => 1.(за два шага) число 9 приводится к 1 так: 9 => 3 => 1(тоже за два шага) Задача. Написать программу, где задается число шагов k и находится НАИМЕНЬШЕЕ число, соответствующее этому шагу и приводящее к 1. Вывести на экран 20 первых таких чисел. Вопрос Что изменится в программе, если в алгоритм будет внесено изменение: "....... В противном случае надо от N вычесть 1"? Код:
DECLARE FUNCTION f& (k&) CLS DEFLNG A-Z FOR i = 0 TO 20 PRINT i; f(i) NEXT END FUNCTION f& (k AS LONG) SELECT CASE k CASE 0: f = 1 CASE 1: f = 3 CASE 2: f = 2 CASE 3: f = 6 CASE 4: f = 5 CASE ELSE f = 3 * f(k - 3) - 2 END SELECT END FUNCTION |
![]() |
![]() |
![]() |
|
Helpmaster
Member
Регистрация: 08.03.2016
Сообщений: 0
|
На данный момент на форуме имеются схожие топики Интересная задача Интересная задача, Паскаль |
Ads | |
Member
Регистрация: 31.10.2006
Сообщений: 40200
Записей в дневнике: 0
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 55070
|
![]() |
Опции темы | |
Опции просмотра | |
|
|