"Переворот" числа

Задача: 

Вводится число. Преобразовать его в другое число, цифры которого будут следовать в обратном порядке по сравнению с введенным числом.

Описание переменных: 

n, m - первое и второе числа;
a - хранение очередного разряда.

Алгоритм решения задачи: 

Алгоритм решения задачи сводится к следующему циклу: 1) взять последнюю цифру в первом числе; 2) записать ее в конец второго; 3) убрать последнюю цифру из первого числа. При этом второе число изначально не должно иметь значащих разрядов. Таким образом последняя цифра первого числа окажется первой цифрой во втором; предпоследняя цифра первого числа - второй во втором числе; и т. д.

  1. Находим остаток (mod) от деления исходного числа n на 10. Результат сохраняем в переменной a.
  2. Делим n нацело на 10, тем самым избавляемся от младшего разряда.
  3. На каждом шаге разрядность m надо увеличивать на единицу, т.е. умножать на 10. (Например если было число 56, то, умножив его на 10, получим 560. Далее следует прибавить остаток из переменной a, например, 3. В итоге получим 563.) Получаем формулу: m = m * 10 + a.
Программа на языке Паскаль: 

var
    n, m: longint;
    a: byte;
begin
    readln(n);
    m := 0;
    while n>0 do begin
        a := n mod 10;
        n := n div 10;
        m := m*10 + a;
    end;
    writeln(m);
 
readln;
end.

Комментарии

Данная программа пишется

Данная программа пишется гораздо проще, не нужна переменная А, она заменяется переменной типа REAL.
Вывод полученного числа производиться проще: с новой строки выводим 1 цифру, затем 2
Writeln(m);
Write(n).

ввести 4-х значное число и

ввести 4-х значное число и вывести его цифры в обратном порядке