Описать логическую функцию, проверяющую, является ли симметричной часть строки - C#

Узнай цену своей работы

Формулировка задачи:

Описать методы для выполнения следующих заданий двумя способами: через цикл и используя механизм рекурсии Описать логическую функцию simm (s, i, j), проверяющую, является ли симметричной часть строки s, начинающаяся i-м и заканчивающаяся j-м её элементами.

Решение задачи: «Описать логическую функцию, проверяющую, является ли симметричной часть строки»

textual
Листинг программы
static bool IsSymmetricRec(string s, int start, int end)
{
    if(start < 0 || end >= s.Length || start > end)
        throw new ArgumentException();
    return s[start] == s[end] && (end - start <= 1 || IsSymmetricRec(s, ++start, --end));
}
 
static bool IsSymmetricLoop(string s, int start, int end)
{
    if (start < 0 || end >= s.Length || start > end)
        throw new ArgumentException();
    while (start < end)
        if (s[start++] != s[end--])
            return false;
    return true;
}

ИИ для рефератов и докладов


  • Экспорт Word по ГОСТу
  • Минимум 80% уникальности текста
  • Поиск релевантных источников в интернете
  • Готовый документ за 2 минуты

Оцени полезность:

9   голосов , оценка 4 из 5
Похожие ответы