Форум программистов, компьютерный форум, киберфорум
C# для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.91/47: Рейтинг темы: голосов - 47, средняя оценка - 4.91
0 / 0 / 0
Регистрация: 02.04.2018
Сообщений: 2

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

02.04.2018, 18:12. Показов 9042. Ответов 9

Студворк — интернет-сервис помощи студентам
Дана строка символов, содержащая некоторый текст. Разработать программу, которая определяет, является ли данный текст палиндромом, т.е. читается ли он слева направо так же, как и справа налево (например, "А роза упала на лапу Азора").
Господа, помогите разработать программный код на C#.
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
02.04.2018, 18:12
Ответы с готовыми решениями:

Определить, является ли данный текст палиндромом
Дана строка символов содержащая некоторый текст. разработать программ которая определяет является ли данный текст палиндромом т.е читается...

Определить, является ли введенный текст палиндромом
Ввести строку , содержащую некоторый текст. Определить, является ли данный текст палиндромом, т.е. читается ли он слева направо так же, как...

Определить, является ли строка палиндромом
Пожскажите как решить- 1)Разработать программу в С# которая вводит произвольную строку и определяет, является ли строка палиндромом. ...

9
3566 / 2507 / 1174
Регистрация: 14.08.2016
Сообщений: 8,219
02.04.2018, 22:22
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
using System;
using System.Collections.Generic;
using System.Diagnostics;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
 
namespace ConsoleApp2
{
 
    class Program
    {
        static bool IsPalindrom(string str)
        {
            str = str.Replace(" ", "").ToLower();
            for(int i = 0; i < str.Length / 2; i++)
            {
                if(str[i] != str[str.Length - i - 1])
                    return false;
            }
            return true;
        }
        static void Main(string[] args)
        {
            var str = "А роза упала на лапу Азора";
            Console.WriteLine(IsPalindrom(str));
            
        }
    }
}
0
 Аватар для Hitoku
1755 / 1347 / 1407
Регистрация: 28.10.2016
Сообщений: 4,267
02.04.2018, 22:49
Ещё вариант
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
using System;
using System.Linq;
 
namespace thread2222048
{
    class Program
    {
        static bool IsPalindrome(string s)
        {
            s = s.Replace(" ", "").ToLower();
            return s.Equals(new string(s.Reverse().ToArray()));
        }
 
        static void Main()
        {
            string s1 = "А роза упала на лапу Азора", s2 = "А роза не упала на лапу Азора";
            Console.WriteLine(IsPalindrome(s1) + " " + IsPalindrome(s2));
            Console.ReadKey();
        }
    }
}
0
3566 / 2507 / 1174
Регистрация: 14.08.2016
Сообщений: 8,219
03.04.2018, 01:13
Hitoku, поупражняемся в Linq?
C#
1
2
3
4
5
        static bool IsPalindrom(string str)
        {
            str = str.Replace(" ", "").ToLower();
            return str.AsEnumerable().SequenceEqual(str.Reverse());
        }
кмк, ресурсоэкономней будет
1
0 / 0 / 0
Регистрация: 02.04.2018
Сообщений: 2
03.04.2018, 11:34  [ТС]
Спасибо заранее вам)) Сейчас опробую))

Добавлено через 22 минуты
К сожалению ни один код у меня не работает((
0
 Аватар для Hitoku
1755 / 1347 / 1407
Регистрация: 28.10.2016
Сообщений: 4,267
03.04.2018, 11:36
bullet219207, где запускаете?
0
 Аватар для Fleder
263 / 224 / 108
Регистрация: 09.12.2015
Сообщений: 652
03.04.2018, 12:27
Цитата Сообщение от Diamante Посмотреть сообщение
поупражняемся в Linq?
А зачем явно кастовать строку к IEnumerable<char>?
0
36 / 36 / 29
Регистрация: 12.10.2014
Сообщений: 351
03.04.2018, 14:23
Цитата Сообщение от Hitoku Посмотреть сообщение
return s.Equals(new string(s.Reverse().ToArray()));

Не по теме:


Хочу разобраться подробнее в коде. Люблю копаться до мелочей. Почему именно метод ToArray()?
Не могу нормально осознать происходящее. Мы переворачиваем строку ( в MSDN сказано - изменяем порядок элементов во всем одномерном массиве Array на обратный.), получается, что S у нас - это массив char, а нам нужен string, но почему-то , без ToArray() не получается преобразовать, хотя у нас вроде как есть массив. Растолкуйте пожалуйста. Меня этот пробел в понимании доканает.

Ошибка CS1503 Аргумент 1: не удается преобразовать из "System.Collections.Generic.IEnumerable< char>" в "char*".
Не могу понять ошибку :/

0
189 / 166 / 101
Регистрация: 14.03.2018
Сообщений: 426
03.04.2018, 14:46
letronas, Reverse() возвращает IEnumerable<char>, но String не содержит конструктора, принимающего IEnumerable<char>, зато содержит конструктор, принимающий char[].
1
3566 / 2507 / 1174
Регистрация: 14.08.2016
Сообщений: 8,219
03.04.2018, 14:53
Fleder, да вот что-то захотелось так, для понту что ли, всяко это преобразование было бы произведено
letronas, конструктор string принимает на вход массив символов, а реверс(Reverse, а не Array.Reverse) возвращает IEnumerable<T>
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
03.04.2018, 14:53
Помогаю со студенческими работами здесь

Определить, является ли число палиндромом
Помогите, пожалуйста с заданием! Буду очень благодарен! Дано натуральное число N. Определить, является ли это число палиндромом...

Определить, является ли число палиндромом
6.Есть ли число палиндромом. Разработать консольное приложение, определяющее ли введенное пользователем число палиндромом. Число...

Определить, является ли строка палиндромом
Написать программу, которая определяет, является ли строка, введённая пользователем с клавиатуры палиндромом (т.е. одинаково читаемой слева...

Определить, является ли слово палиндромом
Нужно определить если слово является палиндромом ,но при этом не использовать реверс,а сравнивать первую букву с последней, и тд.... дата...

Определить является ли число палиндромом
Дано натуральное число n. Определить является ли оно палиндромом (перевертышем), с учетом четырех цифр. Само написание я понимаю, но...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
10
Ответ Создать тему
Новые блоги и статьи
SDL3 для Web (WebAssembly): Идентификация объектов на Box2D v3 - использование userData и событий коллизий
8Observer8 02.03.2026
Содержание блога Финальная демка в браузере. Итоговый код: finish-collision-events-sdl3-c. zip https:/ / www. cyberforum. ru/ blog_attachment. php?attachmentid=11680&amp;d=1772460536 Одним из. . .
Реалии
Hrethgir 01.03.2026
Нет, я не закончил до сих пор симулятор. Эта задача сложнее. Не получилось уйти в плавсостав, но оно и к лучшему, возможно. Точнее получалось - но сварщиком в палубную команду, а это значит, в моём. . .
Ритм жизни
kumehtar 27.02.2026
Иногда приходится жить в ритме, где дел становится всё больше, а вовлечения в происходящее — всё меньше. Плотный график не даёт вниманию закрепиться ни на одном событии. Утро начинается с быстрых,. . .
SDL3 для Web (WebAssembly): Сборка библиотек: SDL3, Box2D, FreeType, SDL3_ttf, SDL3_mixer и SDL3_image из исходников с помощью CMake и Emscripten
8Observer8 27.02.2026
Недавно вышла версия 3. 4. 2 библиотеки SDL3. На странице официальной релиза доступны исходники, готовые DLL (для x86, x64, arm64), а также библиотеки для разработки под Android, MinGW и Visual Studio. . . .
SDL3 для Web (WebAssembly): Реализация движения на Box2D v3 - трение и коллизии с повёрнутыми стенами
8Observer8 20.02.2026
Содержание блога Box2D позволяет легко создать главного героя, который не проходит сквозь стены и перемещается с заданным трением о препятствия, которые можно располагать под углом, как верхнее. . .
Конвертировать закладки radiotray-ng в m3u-плейлист
damix 19.02.2026
Это можно сделать скриптом для PowerShell. Использование . \СonvertRadiotrayToM3U. ps1 <path_to_bookmarks. json> Рядом с файлом bookmarks. json появится файл bookmarks. m3u с результатом. # Check if. . .
Семь CDC на одном интерфейсе: 5 U[S]ARTов, 1 CAN и 1 SSI
Eddy_Em 18.02.2026
Постепенно допиливаю свою "многоинтерфейсную плату". Выглядит вот так: https:/ / www. cyberforum. ru/ blog_attachment. php?attachmentid=11617&stc=1&d=1771445347 Основана на STM32F303RBT6. На борту пять. . .
Камера Toupcam IUA500KMA
Eddy_Em 12.02.2026
Т. к. у всяких "хикроботов" слишком уж мелкий пиксель, для подсмотра в ESPriF они вообще плохо годятся: уже 14 величину можно рассмотреть еле-еле лишь на экспозициях под 3 секунды (а то и больше),. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru