Поменять местами первую и последнюю цифру в числе — Pascal(Паскаль)

uses crt;
var n,m,c1,cp,n2:longint;
    k,i:byte;
begin
clrscr;
write('n=');readln(n);{например 12345}
n2:=abs(n);
cp:=n2 mod 10;{последняя цифра=5}
n2:=n2 div 10;{число без последней цифры=1234}
m:=n2;{запомним его}
k:=0;
while m>9 do{пока не останется 1 цифра}
 begin
  m:=m div 10;{первая цифра=1}
  k:=k+1;{количество разрядов без первого=4}
 end;
c1:=m;{запомним первую цифру=1}
for i:=1 to k do
 begin
  m:=m*10;{повышаем разряд числа, равного первой цифре=1000}
  cp:=cp*10;{повышаем разряд последней цифры=5000}
 end;
n2:=(n2-m)*10+c1+cp*10;{получаем число=(1234-1000)*10+1+5000*10=52341}
if n<0 then n2:=-n2;
writeln('n2=',n2);
readln
end.

Leave a Comment

8 + 1 =