Я не понимаю рекурсивных функций.Рекурсивная функция? [beginner]
Я написал этот код, чтобы помочь мне, но я не понимаю, почему он работает так, как он.
Он печатает назад шаги от 0 до числа n/2 i, но не знает, что заставляет его печатать каждый шаг, который он пропускал от низкого до высокого, потому что он стал рекурсивным. Я близко, но еще не там ...
#include <iostream>
#include <conio.h>
using namespace std;
int recursiv(int);
int times;
int main(){
int x;
cout<<"Imput number\n";
cin>>x;
recursiv(x);
getch();
return 0;
}
int recursiv(int x){
times++;
if(x)
recursiv(x/2);
cout<<"We are now at "<<x/2<<endl;
if (!x)
cout<< "We reached "<<x<<" but it took "<<times-1<< " steps\n";
return 0;
}
http://stackoverflow.com/questions/how-to-ask – OldProgrammer
http://www.youtube.com/watch?v=4agL-MQq05E, может быть, это поможет? – funerr
Будете ли вы ожидать другого выхода? Если да, то? –