С Новым годом! Форум программистов, компьютерный форум, киберфорум
Pascal ABC
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.57/7: Рейтинг темы: голосов - 7, средняя оценка - 4.57
0 / 0 / 0
Регистрация: 03.11.2012
Сообщений: 13
1

Палиндром

03.11.2012, 14:23. Показов 1417. Ответов 3
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Дано некоторое натуральное число А.
Если это не палиндром, то изменить порядок его цифр на противоположный и сложить исходное число с полученным.
Если сумма не палиндром, то повторить над ней те же действия и т.д., пока не получится палиндром.


Чем проще, тем лучше . т.к. я новичок в этом деле.
0
Лучшие ответы (1)
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
03.11.2012, 14:23
Ответы с готовыми решениями:

Палиндром
Нужно составить программу с подпрограммой (функцией), в главной программе должно быть: ввод сроки,...

Палиндром
Такая вот задача... Дано трицифровое число. Проверить, читается ли оно задом наперед?

Палиндром
Дано шестизначное число N.Найти,является ли это палиндромом. Если да, то выписать ДА ,если же...

Палиндром
Дано слово.Является ли оно палиндромом. казак - палиндром Казак - палиндром Кавказ - непалиндром

3
Почетный модератор
7966 / 3937 / 2464
Регистрация: 30.10.2011
Сообщений: 5,377
03.11.2012, 15:36 2
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
uses crt;
var n,nn: integer;
    b: boolean;
 
procedure IsPalindrom(c: integer; var i: boolean; var r: integer);
var cc: integer;
begin
r:=0; cc:=c;
while cc>=1 do
      begin
      r:=(r*10)+cc mod 10;
      cc:=cc div 10;
      end;
i:=c=r;
end;
 
begin
write('n='); readln(n);
repeat
IsPalindrom(n,b,nn);
writeln(n,' ',b);
if not b then n:=n+nn;
until b;
end.
2
0 / 0 / 0
Регистрация: 03.11.2012
Сообщений: 13
03.11.2012, 15:44  [ТС] 3
Цитата Сообщение от КонецСвета Посмотреть сообщение
procedure IsPalindrom(c: integer; var i: boolean; var r: integer);
вариант без данной функции возможен?
и какой вообще смысл у этой функции (процедуры)?
0
Почетный модератор
7966 / 3937 / 2464
Регистрация: 30.10.2011
Сообщений: 5,377
03.11.2012, 15:52 4
Лучший ответ Сообщение было отмечено как решение

Решение

без процедуры (всегда кажется, что с процедурой легче )
(процедура создавала "перевернутое число" и сравнивала его с заданным, выдавая значение ИСТИНА, если это был палиндром)
Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
uses crt;
var n,nn,p,pp: integer;
 
begin
write('n='); readln(n);
repeat
p:=0; pp:=n;
while pp>=1 do
      begin
      p:=(p*10)+pp mod 10;
      pp:=pp div 10;
      end;
if p=n then writeln(n,' палиндром') else
   begin
   writeln(n,' не палиндром');
   n:=n+p;
   end;
until p=n;
end.
3
03.11.2012, 15:52
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
03.11.2012, 15:52
Помогаю со студенческими работами здесь

Палиндром
Нужен код ,который определяет все палиндромы от 0 до 9999 У меня есть код который определяет от...

Четный палиндром
Подстрокой строки называется любая непустая последовательность символов в строке. Палиндромом...

Определить палиндром
На входе даётся число, его нужно переворачивать (156 - 651) и складывать изначальное число и...

Проверка на палиндром
Всем доброго времени суток. Пишу с просьбой помочь решить задачу.Нужно введенное с клавиатуры...


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

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru