Форум программистов, компьютерный форум, киберфорум
Pascal (Паскаль)
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
 
Рейтинг 4.83/47: Рейтинг темы: голосов - 47, средняя оценка - 4.83
0 / 0 / 0
Регистрация: 24.02.2013
Сообщений: 29

Составить программу для определения, является ли введенное предложение палиндромом

28.10.2013, 17:49. Показов 9958. Ответов 36
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Составить программу для определения: является ли введенное предложение палиндромом.
Пример палиндрома: А роза упала на лапу Азора ЗАРАНЕЕ СПАСИБО)))
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
28.10.2013, 17:49
Ответы с готовыми решениями:

Составить программу определения является ли введенное число простым
Составить программу определения является ли введенное число простым с использованием рекурсивной функции. полное решение пж

Составить программу определения является ли четным или нечетным введенное число
Составить программу определения является ли четным или нечетным введенное число.

Составить программу определения является ли введенное число простым с использованием рекурсивной функции
Составить программу определения является ли введенное число простым с использованием рекурсивной функции.

36
 Аватар для Новичок
1682 / 1098 / 489
Регистрация: 17.07.2012
Сообщений: 5,360
28.10.2013, 18:06
федор михалыч, а предложение вводиться заглавными буквами или маленькими или и теми и теми буквами?
0
3176 / 1935 / 312
Регистрация: 27.08.2010
Сообщений: 5,131
Записей в блоге: 1
28.10.2013, 19:30
1. Выбросить все пробелы и знаки препинания
2. Реверсировать строку
3. Если прямая и реверсированная строки совпадают (stricmp) --> палиндром
1
Почетный модератор
 Аватар для ildwine
6201 / 2963 / 1300
Регистрация: 04.03.2013
Сообщений: 5,797
Записей в блоге: 1
28.10.2013, 19:37
Цитата Сообщение от gazlan Посмотреть сообщение
1. Выбросить все пробелы и знаки препинания
И привести символы к верхнему регистру функцией upcase.
0
3176 / 1935 / 312
Регистрация: 27.08.2010
Сообщений: 5,131
Записей в блоге: 1
28.10.2013, 19:46
Цитата Сообщение от ildwine Посмотреть сообщение
привести символы к верхнему регистру
Не требуется: stricmp
0
0 / 0 / 0
Регистрация: 24.02.2013
Сообщений: 29
28.10.2013, 19:47  [ТС]
маленькими
0
Почетный модератор
 Аватар для ildwine
6201 / 2963 / 1300
Регистрация: 04.03.2013
Сообщений: 5,797
Записей в блоге: 1
28.10.2013, 19:55
Цитата Сообщение от gazlan Посмотреть сообщение
Не требуется: stricmp
Нет такой функции в паскале
0
3176 / 1935 / 312
Регистрация: 27.08.2010
Сообщений: 5,131
Записей в блоге: 1
28.10.2013, 20:07
Цитата Сообщение от ildwine Посмотреть сообщение
Нет такой функции в паскале
Oops!

Не поглядел, что Pascal :-)

По привычке, кажется, что программы можно только на С писать.
0
Почетный модератор
 Аватар для ildwine
6201 / 2963 / 1300
Регистрация: 04.03.2013
Сообщений: 5,797
Записей в блоге: 1
28.10.2013, 20:33
Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
var
  s1, s2 : string;
  i, j : byte;  
begin
  writeln('строка:');
  readln(s1);
  s2 := '';  
  for i := 1 to length(s1) do
    if s1[i] in ['А'..'Я', 'а'..'я'] then
    s2 := concat(s2, copy(s1,i,1));
  for j := 1 to length(s2) do
    s2[j] := upcase(s2[j]);
  s1 := ''; 
  for j := length(s2) downto 1 do
    s1:= concat(s1, copy(s2,j,1));  
  if s1 = s2 then writeln('является палиндромом')
    else writeln('является палиндромом');     
   writeln(s1);{удалите после проверки}
   writeln(s2);{удалите после проверки}
  readln
end.
Добавлено через 8 минут
С комментариями:
Pascal
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
var
  s1, s2 : string;
  i, j : byte;  
begin
  {ввод строки допускаются знаки 
  препинания пробелы и разный регистр букв}
  writeln('строка:');
  readln(s1);
  {формируем строку s2 включая в нее
  только буквы русского алфавита}
  s2 := '';  
  for i := 1 to length(s1) do
    if s1[i] in ['А'..'Я', 'а'..'я'] then
    s2 := concat(s2, copy(s1,i,1));
  {Выставляем в строке s2 регистр букв в "прописные"}
  for j := 1 to length(s2) do
    s2[j] := upcase(s2[j]);
  {Формируем инвертированную строку s1}
  s1 := '';
  for j := length(s2) downto 1 do
    s1:= concat(s1, copy(s2,j,1));  
  {Если прямая s2 и инвертированная s1 строки равны, то палиндром}
  if s1 = s2 then writeln('является палиндромом')
    else writeln('является палиндромом');     
   writeln(s1);{удалите после проверки}
   writeln(s2);{удалите после проверки}
  readln
end.
0
561 / 484 / 168
Регистрация: 14.02.2012
Сообщений: 1,561
28.10.2013, 20:46
Цитата Сообщение от ildwine Посмотреть сообщение
Pascal
1
2
if s1 = s2 then writeln('является палиндромом')
* * else writeln('является палиндромом');
ildwine, пропустили "не".
1
Почетный модератор
 Аватар для ildwine
6201 / 2963 / 1300
Регистрация: 04.03.2013
Сообщений: 5,797
Записей в блоге: 1
28.10.2013, 20:52
Цитата Сообщение от ВАСИЛЕВС Посмотреть сообщение
ildwine, пропустили "не".
Ну да, но это мелочи.

Добавлено через 1 минуту
Спасибо

Добавлено через 1 минуту
федор михалыч, окончательный вариант:
Pascal
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
var
  s1, s2 : string;
  i, j : byte;  
begin
  {ввод строки допускаются знаки 
  препинания пробелы и разный регистр букв}
  writeln('строка:');
  readln(s1);
  {формируем строку s2 включая в нее
  только буквы русского алфавита}
  s2 := '';  
  for i := 1 to length(s1) do
    if s1[i] in ['А'..'Я', 'а'..'я'] then
    s2 := concat(s2, copy(s1,i,1));
  {Выставляем в строке s2 регистр букв в "прописные"}
  for j := 1 to length(s2) do
    s2[j] := upcase(s2[j]);
  {Формируем инвертированную строку s1}
  s1 := '';
  for j := length(s2) downto 1 do
    s1:= concat(s1, copy(s2,j,1));  
  {Если прямая s2 и инвертированная s1 строки равны, то палиндром}
  if s1 = s2 then writeln('является палиндромом')
    else writeln('НЕ является палиндромом');     
   writeln(s1);{удалите после проверки}
   writeln(s2);{удалите после проверки}
  readln
end.
0
 Аватар для Новичок
1682 / 1098 / 489
Регистрация: 17.07.2012
Сообщений: 5,360
28.10.2013, 21:31
Цитата Сообщение от ildwine Посмотреть сообщение
И привести символы к верхнему регистру функцией upcase.
А в Паскале есть?Если что,вам сюда Конвертация строк
0
Почетный модератор
 Аватар для ildwine
6201 / 2963 / 1300
Регистрация: 04.03.2013
Сообщений: 5,797
Записей в блоге: 1
28.10.2013, 21:36
Цитата Сообщение от Новичок Посмотреть сообщение
А в Паскале есть?Если что,вам сюда Конвертация строк
К чему это было написано? Вопрос исчерпан...

Добавлено через 43 секунды
upcase - в паскале есть!
1
 Аватар для Новичок
1682 / 1098 / 489
Регистрация: 17.07.2012
Сообщений: 5,360
29.10.2013, 00:06
Цитата Сообщение от ildwine Посмотреть сообщение
upcase - в паскале есть!
Ну раз есть хорошо конечно.Но мало ли,вдруг препод прицепится.
0
2022 / 1621 / 489
Регистрация: 31.05.2009
Сообщений: 3,005
29.10.2013, 02:34
Эта задача решается одним циклом и парой условий без всякого копирования и инвертирования...
0
 Аватар для Новичок
1682 / 1098 / 489
Регистрация: 17.07.2012
Сообщений: 5,360
29.10.2013, 12:31
rangerx, ну покажи свой вариант.
0
3176 / 1935 / 312
Регистрация: 27.08.2010
Сообщений: 5,131
Записей в блоге: 1
29.10.2013, 12:48
Цитата Сообщение от rangerx Посмотреть сообщение
одним циклом и парой условий
С невразумительной эмуляцией инвертирования и скачками по знакам препинания :-)

Программы надо писать не так, чтобы их можно было понять, а так, чтобы нельзя было не понять.
0
2022 / 1621 / 489
Регистрация: 31.05.2009
Сообщений: 3,005
29.10.2013, 13:10
Новичок, думаю предыдущим ораторам было бы полезнее решить эту задачу самостоятельно. Или ты сомневаешься, что тут есть другое решение? Определение того является ли строка палиндромом сводится к последовательному сравнению символов: первого с последним, второго с предпоследним и т.д. Единственное, что(поскольку, в данном случае, строка является предложением), здесь необходимо пропускать(игнорировать) разделители. Вот и всё.
0
3176 / 1935 / 312
Регистрация: 27.08.2010
Сообщений: 5,131
Записей в блоге: 1
29.10.2013, 13:25
Цитата Сообщение от rangerx Посмотреть сообщение
что(поскольку
Как всегда, "дьявол в деталях" :-)
0
 Аватар для Новичок
1682 / 1098 / 489
Регистрация: 17.07.2012
Сообщений: 5,360
29.10.2013, 15:53
Цитата Сообщение от rangerx Посмотреть сообщение
здесь необходимо пропускать(игнорировать) разделители. Вот и всё.
А как же регистр букв,а?
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
29.10.2013, 15:53
Помогаю со студенческими работами здесь

Написать программу, проверяющую, является ли введённое слово палиндромом.
Помогите,пожалуйста по строкам!!! 5.Написать программу,проверяющую,является ли введённое слово палиндромом.

Составить блок-схему по коду определения, является ли число палиндромом
Помогите составить бок схему Задача: Дано натуральное число n. Является ли это число палиндромом (перевертышем) с учетом четырех цифр,...

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

Составить программу, выясняющую, является ли данное число палиндромом
Помогите, пожалуйста, решить задачу в С++. Составить программу, выясняющую, является ли данное число палиндромом, то есть таким,...

Составить программу, проверяющую, является ли данное слово палиндромом
1)Введено слово.Составить программу, проверяющую, является ли данное слово палиндромом(читается ли оно слева на право и справа на лево...


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

Или воспользуйтесь поиском по форуму:
20
Ответ Создать тему
Новые блоги и статьи
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 секунды (а то и больше),. . .
И ясному Солнцу
zbw 12.02.2026
И ясному Солнцу, и светлой Луне. В мире покоя нет и люди не могут жить в тишине. А жить им немного лет.
«Знание-Сила»
zbw 12.02.2026
«Знание-Сила» «Время-Деньги» «Деньги -Пуля»
SDL3 для Web (WebAssembly): Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 12.02.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами и вызывать обработчики событий столкновения. . . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 11.02.2026
Содержание блога Библиотека SDL3 содержит встроенные инструменты для базовой работы с изображениями - без использования библиотеки SDL3_image. Пошагово создадим проект для загрузки изображения. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru