题目描述
给定一个整数,请将该数各个位上数字反转得到一个新数。新数也应满足整数的常见形
式,即除非给定的原数为零,否则反转后得到的新数的最高位数字不应为零(参见样例2)。
【数据范围】
-1,000,000,000 ≤ N≤ 1,000,000,000。
输入格式
输入共 1 行,一个整数N。
输出格式
输出共 1 行,一个整数,表示反转后的新数。
Simple input & output
123
321
双题解:
一个是纯变量,一个是字符串做的,很显然字符串支持高精度,所以字符串很优越。
var n:longint;
begin
readln(n);
if n<0 then write('-');
n:=abs(n);
if n=0 then write(0) else begin
while (n mod 10=0) do n:=n div 10;
while n>0 do begin
write(n mod 10);
n:=n div 10;
end;
end;
end.
var s:string; i,len:longint; begin readln(s); if s[1]='-' then begin write('-'); delete(s,1,1); end; len:=length(s); while (s[len]='0')do dec(len); for i:= len downto 1 do write(s[i]); end.