// aks holda, rekursiyaning keyingi bosqichiga o'tish if (s1[pos] != s2[pos]) return false; else return EqualStrings(s1, s2, pos + 1); } else return true; // satrlaridagi barcha belgilar o'tdi: satrlar teng } Funksiyani boshqa dasturiy kodda ishlatish bool b; b = EqualStrings("abc", "abc", 0); // b = true b = EqualStrings("abc", "abcd", 0); // b = false b = EqualStrings("AAA", "AAB", 0); // b = false b = EqualStrings("", "", 0); // b = true Satrni teskarisiga chiqarishning rekursiv funksiyasi Funksiya kodi quyidagicha // satrning teskarisini chiqarish static string RString(string s1, int pos) { if (pos < s1.Length) return s1[s1.Length - pos - 1].ToString() + RString(s1, pos + 1); else return ""; // satr to`liq o`tdi - rekursiv jarayonning tugadi } RString()funksiyada satrdagi oxirgi belgini aniqlash quyidagi formula bilan amalga oshiriladi: s1[s1.Length - pos - 1] Keyin bu belgi ToString()metodi bilan o`giriladi. Belgili qatorga (oldingi) rekursiv chaqiruv yordamida satrdagi ketma-ket bo`yicha keyingi belgi qo'shiladi s1[s1.Length - pos - 1].ToString() + RString(s1, pos + 1) Funksiya biror qiymat qaytarishi kerakligi sababli satrni qayta ishlash formulasidan oldin returnoperatori kiritilishi kerak return s1[s1.Length - pos - 1].ToString() + RString(s1, pos + 1); RString()funksiyasidan boshqa metodda foydalanish quyidagicha bo'lishi mumkin: