2014-01-16 2 views
1

Я новичок в программировании и я пытаюсь написать этот цикл:Простой рекурсии Convertion

int x,n,pro=1; 
cin>>n>>x; 

for (int i=2; i<n+1; i++) 
{ 
    pro=pro*x + i; 
} 
cout<<pro; 

как рекурсивной функции. Я думаю, if (n==2) return x+n; является нижней частью рекурсии, но я не знаю, как сделать следующий шаг вправо. Есть идеи ?

+0

Почему вы хотите использовать рекурсию для этого случая? Не будет более эффективным то, что у вас есть, если вы так думаете. Это домашняя задача, так что вы должны это сделать? –

+0

Да, это для домашней работы, поэтому я должен сделать это, используя рекурсию. Но благодаря @NPE я думаю, что сделал это. – user3144334

ответ

0

Вот подсказка:

Предположим, что вы знаете решение для n-1. Подумайте, как вы можете использовать его для вычисления решения для n.

+0

Думаю, я понял. Благодаря! Я думаю, что это отлично работает: int rec (int x, int n) { if (n == 2) return x + n; else return rec (x, n-1) * x + n; } – user3144334

Смежные вопросы