1-Mavzu 1-Mavzu Reja: Klass a’zolariga ruxsatni boshqarish


// aks holda, rekursiyaning keyingi bosqichiga o'tish


Download 111.72 Kb.
bet43/96
Sana29.03.2023
Hajmi111.72 Kb.
#1307438
1   ...   39   40   41   42   43   44   45   46   ...   96
Bog'liq
1-Mavzu 1-Mavzu Reja Klass a’zolariga ruxsatni boshqarish

// 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 return operatori kiritilishi kerak
return s1[s1.Length - pos - 1].ToString() + RString(s1, pos + 1);
RString() funksiyasidan boshqa metodda foydalanish quyidagicha bo'lishi mumkin:

Download 111.72 Kb.

Do'stlaringiz bilan baham:
1   ...   39   40   41   42   43   44   45   46   ...   96




Ma'lumotlar bazasi mualliflik huquqi bilan himoyalangan ©fayllar.org 2024
ma'muriyatiga murojaat qiling