• Предмет: Информатика
  • Автор: marishkaseagirl
  • Вопрос задан 2 года назад

Дано натуральное трехзначное число. Проверить является ли оно палиндромом (читается одинакового слева на право и с права налево). Если не является - вывести ближайшее следующее число палиндром.

Формат ввода:

На первой строке - натуральное трехзначное число.

Формат вывода:

Если условие выполнено - YES, если нет - то натуральное число.

Пример входных данных

432
Пример выходных данных

434
Написать на Паскале

Ответы

Ответ дал: znanijaovs02
0

var x:integer;

begin

 readln(x);

 if (x mod 10)=(x div 100) then begin writeln('YES');exit;end

 else while x mod 10<>x div 100 do x:=x+1;

 writeln(x);

end.

Ответ дал: denchikdfd
0

Ответ:Привет,я не знаю Паскаль,но объяню логику решения. Решение максимально простое и не требует каких-либо углубленных знаний.

Объяснение:

короч. Для каждой цифры ты берешь переменную(x; y; z) дальше пишешь,если x=z,то это число является палиндромом,если x≠z,то начинаешь прибавлять по единице к z, если z = 10 то пусть будет равно 0,дальше прибавляешь к x +1 и делаешь,то же самое с z и все. реализовать просто используя несколько циклов и все. Удачи

Есть вообще капец творческое решение. ты просто из x-z,если число положительное то прибавляешь в z и все,если 0,то тут пишешь yes,если отрицательное,например, -3,то отнимаешь от x ,тоесть x--3=x+3 и все

Я сейчас увидел код от паскаля(человек сверху написал),ахахаххаха, это что за мусор,а не язык,я,конечно,не полностью понял код,но если ты просто будешь прибавлять по единице к трехзначному числу,то это будет долго и не эффективно,хотя и не прям уж ужасно,так что дерзай,но блин выбрось паскаль и начни с нормальных языков,которые пригодятся.

Вас заинтересует