Вопрос задан 05.07.2023 в 20:52. Предмет Информатика. Спрашивает Глобаж Дмитрий.

Написать метод, определяющий, является ли переданная строка палиндромом, то есть текстом, который

слева направо и справа налево читается одинаково без учета пробелов и регистра символов. С помощью этого метода обработать пять разных строк и отобразить результаты на экране. на С# СРОЧНО!!!
0 0
Перейти к ответам

Ответы на вопрос

Внимание! Ответы на вопросы дают живые люди. Они могут содержать ошибочную информацию, заблуждения, а также ответы могут быть сгенерированы нейросетями. Будьте внимательны. Если вы уверены, что ответ неверный, нажмите кнопку "Пожаловаться" под ответом.
Отвечает Фургасов Максим.

Ответ:

//--- C# 7.3 ---

using System;

using System.Collections.Generic;

using System.Linq;

using System.Text;

using System.Text.RegularExpressions;

namespace CSLear

{

   class Program

   {

       static void Main(string[] args)

       {

           //Для проверки

           Console.WriteLine(IsPalyndrome("abba"));  // -> True

           Console.WriteLine(IsPalyndrome("test"));  // -> False

           Console.WriteLine(IsPalyndrome("А Роза упала на лапу азора"));  // -> true

           Console.WriteLine(IsPalyndrome("abba"));  // -> ture

           Console.WriteLine(IsPalyndrome("Он дивен, палиндром! И ни морд, ни лап не видно..."));  // -> true

           Console.ReadLine();

       }

        //Сам метод, определяющий палиндром

       public static bool IsPalyndrome(string Text)

       {

           var CleanedString = CleanString(Text.ToLower());

           var Reversed = CleanedString.Reverse().ToString();

           return CleanedString == string.Join("", CleanedString.Reverse());

       }

       //Вспомогательный метод, удаляющий из строки всевозможные символы пунктуации и пробелы

       public static string CleanString(string RawString)

       {

           Regex cleaner = new Regex(@"[[email protected]#$%^&*<>?/,.]|\s+");

           return cleaner.Replace(RawString, "");

       }

   }

}

Объяснение:

0 0
Отвечает нейросеть ChatGpt. Будьте внимательны, ответы нейросети могут содержать ошибочные или выдуманные данные.

Конечно! Вот пример метода на C#, который определяет, является ли переданная строка палиндромом:

csharp
using System; public class PalindromeChecker { public static bool IsPalindrome(string str) { // Приводим строку к нижнему регистру и удаляем все пробелы str = str.ToLower().Replace(" ", ""); // Проверяем, является ли перевернутая строка равной исходной for (int i = 0; i < str.Length / 2; i++) { if (str[i] != str[str.Length - 1 - i]) { return false; } } return true; } } public class Program { public static void Main(string[] args) { // Проверяем пять разных строк на палиндромичность string[] strings = { "А роза упала на лапу Азора", "Аргентина манит негра", "Palindrome", "level", "12321" }; foreach (string str in strings) { bool isPalindrome = PalindromeChecker.IsPalindrome(str); Console.WriteLine($"Строка \"{str}\" является палиндромом? {isPalindrome}"); } } }

В этом примере метод IsPalindrome принимает строку и возвращает true, если строка является палиндромом, и false в противном случае. Метод игнорирует пробелы и регистр символов при проверке.

В методе Main мы используем этот метод для проверки пяти разных строк на палиндромичность и выводим результаты на экран. Вы можете запустить этот код в среде разработки C# или выполнить его в онлайн компиляторе, чтобы увидеть результаты.

0 0

Похожие вопросы

Топ вопросов за вчера в категории Информатика

Последние заданные вопросы в категории Информатика

Задать вопрос