Мне нужно написать функцию, которая получает два положительных целых числа и возвращает их конкатенированные.Рекурсивно объединить два целых числа
Пример: Cat (12,13) возвращает 1213
Я знаю, как сделать это итерационный способ, это будет что-то вроде этого:
int Cat(int num1, int num2)
{
int temp = num2;
while (temp > 0)
{
num1 *= 10;
temp /= 10;
}
return num1 + num2;
}
Но когда я использую рекурсии я могу» t используйте временную переменную, которая будет использоваться для подсчета цифр, а если использовать параметр, я потеряю его значение.
Если вы хотите, чтобы рассматривать числа как строки , затем используйте строки. «Конкатенация» - это не то, что вы делаете ** с целыми числами. Во-первых, «целое число» - это понятие, которое существует отдельно от того, как оно представлено. «Тринадцать» - это то же самое, независимо от того, на какой базе вы его записываете, или если вы представляете его с 13 знаками отметки или путем рисования полностью выдуманного символа, который вы затем произносите, представляет это значение. –
Зачем вам его рекурсивно писать? Это домашнее задание? Какой язык? что ты уже испробовал? – templatetypedef
Потому что именно так задан вопрос. Это не совсем домашнее задание. И этот язык не имеет значения, поскольку он больше связан с алгоритмом. Я думал о решении с дополнительным параметром, но я ищу что-то только с двумя параметрами. – Ben