М
Молодежь
К
Компьютеры-и-электроника
Д
Дом-и-сад
С
Стиль-и-уход-за-собой
П
Праздники-и-традиции
Т
Транспорт
П
Путешествия
С
Семейная-жизнь
Ф
Философия-и-религия
Б
Без категории
М
Мир-работы
Х
Хобби-и-рукоделие
И
Искусство-и-развлечения
В
Взаимоотношения
З
Здоровье
К
Кулинария-и-гостеприимство
Ф
Финансы-и-бизнес
П
Питомцы-и-животные
О
Образование
О
Образование-и-коммуникации
vipdana228
vipdana228
02.05.2020 12:35 •  Информатика

Времени от Домашнее задание
Собери буквы в ячейках по цвету и найди термины,
относящиеся к теме.
P
А
E
T
д
АРА И И
И В А А 3
СР
РАК
Л
И
0
T
Г
ТСЖ НВ
И Е Е У
д ь н ч
УТ
к н с Н
Например: «Датчик».
Слово составлено из букв, расположенных в желтых
ячейках.​


Времени от Домашнее заданиеСобери буквы в ячейках по цвету и найди термины,относящиеся к теме.PАETдА

👇
Открыть все ответы
Ответ:
savech11
savech11
02.05.2020
Полный код программы

var
    k, rk, n: longint;

function f(n: longint): longint;
begin
    f := n * n * n;
end;

function calc(k: longint): longint;
var
    i: longint;
begin
    i := 1;
    while f(i) < k do
        i := i + 1;
   
    if f(i) - k <= k - f(i - 1) then
        calc := i
    else calc := i - 1;
end;

begin
    rk := calc(10);
    n := 0;
    for k := 1 to 1000 do
        if calc(k) = rk then
        begin
            writeln('calc(', k, ') = ', calc(k));
            n := n + 1;
        end;
   
    writeln(n);
end.

вывод
calc(5) = 2
calc(6) = 2
calc(7) = 2
calc(8) = 2
calc(9) = 2
calc(10) = 2
calc(11) = 2
calc(12) = 2
calc(13) = 2
calc(14) = 2
calc(15) = 2
calc(16) = 2
calc(17) = 2
13
4,7(9 оценок)
Ответ:
AlyonaYarmak
AlyonaYarmak
02.05.2020

Для начала смотрим что выходит при К= 36, выходит 5

Анализируем функцию F. Это линейная функция наподобии Фибоначи, значит ответом будет некий один отрезок из К

Потом немножко дорабатываем программу и смотрим на результат


var

   i, K, counter: integer;

function F(x: integer): integer;

begin

   if x < 2 then

       F := 1

   else F := F(x - 1) + 2 * F(x - 2);

end;

begin

   for K := 0 to 100 do  

   begin

       i := 28;

       //        readln(K);

       while (i > 0) and (F(i) > K) do  

           i := i - 1;

       

       if i = 5 then begin

           counter := counter + 1;

           writeln(counter, ') K = ', K);

       end;

   end

end.


Вывод

1) K = 21

2) K = 22

3) K = 23

4) K = 24

5) K = 25

6) K = 26

7) K = 27

8) K = 28

9) K = 29

10) K = 30

11) K = 31

12) K = 32

13) K = 33

14) K = 34

15) K = 35

16) K = 36

17) K = 37

18) K = 38

19) K = 39

20) K = 40

21) K = 41

22) K = 42


ответ 22

4,7(16 оценок)
Это интересно:
Новые ответы от MOGZ: Информатика
logo
Вход Регистрация
Что ты хочешь узнать?
Спроси Mozg
Открыть лучший ответ