Помощь - Поиск - Пользователи - Календарь
Полная версия: Число и его перевертыш
Форум «Всё о Паскале» > Pascal, Object Pascal > Задачи
Гость_Антон
Пожалуйста помогите, только недавно начал учить Pascal. Вот такая задача: Определить, какое число больше: данное трехзначное или его перевертыш.
Подскажите пожалуйста как можно перевернуть число?
Лита
например так:
Код

{раскладываем данное число n}
a:=n div 100;
b:=(n mod 100) div 10;
c:=n mod 10;
{далее сравниваем}
If n > (c*100+b*10+a) then writeln ('больше число n')
else
If n < (c*100+b*10+a) ('больше его перевертыш') else writeln('число и перевертыш равны');

:yes:
volvo
Гость_Антон

Тебе даже не надо находить сам перевертыш. Просто преобразуй число в строку функцией Str и проверяй, какой символ строки больше, первый или третий. Если первый, то больше само число, а если третий - то больше будет его перевертыш.

Код

var
 s: string;
 a: integer;
...
begin
 str(a, s);
 if s[1] > s[3] then writeln('больше число')
 else
   if s[1] < s[3] then writeln('больше перевертыш')
   else writeln('число и перевертыш - равны');
end.


Лита

Ну зачем столько вычислять?
:P
APAL
А если число 343? :D
Лита
Цитата(volvo @ 12.11.04 16:07)
Ну зачем столько вычислять?

если человек только начал изучать Паскаль, то явно что строки он еще не знает...
а про равенство чисел - исправляюсь...
Лита
можно обойтись и двумя переменными:
Код
{раскладываем данное число n}
a:=n div 100;
c:=n mod 10;
{далее сравниваем}
If a>c then writeln ('больше число n')
else
If a < c ('больше его перевертыш') else writeln('число и перевертыш равны');
Altair
Цитата
А если число 343? 

Нажо добавить условие у volvo, в 1 из 2 случает добавить равно...

Лита, умница, так держать! ;) rolleyes.gif
Гость
вы все проги на паскале тут делаете? можете помоч?
Это текстовая версия — только основной контент. Для просмотра полной версии этой страницы, пожалуйста, нажмите сюда.