Помогите решить задачку из нулевого варианта ЦТ!

  • Автор темы Автор темы Guest
  • Дата начала Дата начала
Статус
Закрыто для дальнейших ответов.
G

Guest

10 апреля у меня ЦТ. Купила нулевой вариант, а там ТАКОЕ!!! Мы на информатике вообще такого не проходили. Благодаря научной литературе 20 из 30 заданий я решать научилась. Остальные никак не могу въехать. Подскажите КАК решать задачку:

function F(X:string):string;
var
L:=Length(X);
if L>1 then
begin
T:=Copy(X,2,L-1);
case X[1] of
'0': F:=T;
'1': F:=F(T)+'0'+F(T);
else F:=F(X)
end
end
else
F:=F(X)
end

Найти строку X, для которой F(X)=2X.
 
Хм, интересно. Почему 3 end и только 1 begin?
Далее...
Не обьявлено не одной переменной, хоть испольщзуется 3 и еще массив
Нет Result , т.е. функция ничего не возвращает.

В общем, нерабочая функция :)
 
Хм, интересно. Почему 3 end и только 1 begin?
function -> end
then begin -> end
case of -> end

Нет Result , т.е. функция ничего не возвращает.
А что без Result функция не может вернуть значения так F := T;

Двойка Poseidon за знание Delphi/Pascal

Result был введен в Delphi

А задачка прикольная с рекурсией, даже не знаю как решать. Только кажется рекурсия будет бесконечной, в предпоследней строчке наверное должно быть F := X; вместо F := F(X);



Подскажите КАК решать задачку:

Есть идея. Одно правило гласит, любую рекурсию можно представить в конечного набора циклов. См. пример с факториалом. Можно преобразовать исходную функцию и привести к набору циклов. А там что нибудь будет видно.

Говорите из ЦТ задачка, хм.. мозги уже мои усохли..

Уж больно некрасиво решать такую задачу тупым перебором..
 
наверно надо решать сконца
 
Статус
Закрыто для дальнейших ответов.
Мы в соцсетях:

Взломай свой первый сервер и прокачай скилл — Начни игру на HackerLab

Похожие темы

🚀 Первый раз на Codeby?
Гайд для новичков: что делать в первые 15 минут, ключевые разделы, правила
Начать здесь →
🔴 Свежие CVE, 0-day и инциденты
То, о чём ChatGPT ещё не знает — обсуждаем в реальном времени
Threat Intel →
💼 Вакансии и заказы в ИБ
Pentest, SOC, DevSecOps, bug bounty — работа и проекты от проверенных компаний
Карьера в ИБ →

HackerLab