درود
من تازه دارم با توابع بازگشتی آشنا میشم، یه قطعه کد دارم (++C) که یک رشته رو دریافت میکنه و معکوس اونو در خروجی نمایش میده (به کمک تابع بازگشتی) کد کاملش اینه:
#include
#include
#include
using namespace std
string reverse (string st)
int main()
{
string st
cin >> st
cout << Reverse: << reverse(st) << endl
getch()
return 0
}
string reverse(string st)
{
if (st.length() == 1)
return st
else
return reverse(st.substr(1,st.length())) + st.at(0)
}
تمام قسمتهای کد رو متوجه میشم به جز این قسمت:
return reverse(st.substr(1,st.length())) + st.at(0)
هر چی روش فکر کردم متوجه نشدم دقیقا داره چه کاری انجام میده، ممکنه راهنماییم کنید و بگید دقیقا منطق این قسمت چیه و داره چه جوری کار میکنه؟
پیشاپیش سپاس بابت راهنماییتون