идут цифры от 1 до инпута (в инпуте может быть любое число, но я так понимаю в рамках int), и каждая цифра напечатана столько раз, сколько она значит. Например инпут 3, вывод должен быть - 122333.
У меня пока получается реализовать только в обратном порядке, т.е. если инпут 3 - у меня вывод идёт 333221.
Саму задачу я должен решить только в рамках процедуры, т.е. что-то дописывать в main (даже если бы это и помогло) нельзя.
Я пробовал создать строку и запихнуть вывод туда, а затем просто реверсировать её, но так как процедура каждый раз вызывается, сохраненное значение будет сбрасываться.
Могу ли я что-то сделать с выводом, или мой подход изначально неверный и надо всё полностью по другой логике пробовать?
Задачка учебная естественно
ссылка на код и скрин (кому как удобнее)
https://pastebin.com/sCAZ5BPn
Я точно не помню но есть рекурсия которая сначало разворачивается а потом как бы с низу вверх выполняется, а есть наоборот что сначало все действия выполняются по мере её разворачивания
ну так это вроде она и есть, в стек сперва набиваются выполнения процедур, а потом когда условие не соответстветствует докидыванию ещё одной в стек, начинают выполняться, начиная с последней
Эти действия вы выполняете на рекурсивно спуске
я тут тут, вникаю сижу)
Обсуждают сегодня