前言
“明明颜值很高………………………………………….我就是明明”。大家好,帅帅的嘟嘟老师又来了!今天,给大家刷道水题——数字反转。
题目描述
给定一个整数,请将该数各个位上数字反转得到一个新数。新数也应满足整数的常见形式,即除非给定的原数为零,否则反转后得到的新数的最高位数字不应为零(参见样例2)。
输入
输入共 1 行,一个整数N。
输出
输出共 1 行,一个整数,表示反转后的新数。
样例输入1
123
样例输出1
321
样例输入2
-380
样例输出2
-83
数据范围限制
-1,000,000,000 ≤ N≤ 1,000,000,000。
思路
此题就一个:水!!!直接暴力搞一遍。首先判断是否是负数,是就输出‘-’。然后两辆交换,用个循环搞定。最后从第一位开始删除0。然后就可以输出了。
代码
var
i,j:longint;
s:ansistring;
ss:char;
p:boolean;
begin
p:=true;
readln(s);
if (s[1]='-') then
begin
p:=false;
delete(s,1,1);
end;
for i:=1 to length(s) div 2 do
begin
ss:=s[i];
s[i]:=s[length(s)-i+1];
s[length(s)-i+1]:=ss;
end;
while (s[1]='0') and (length(s)>1) do delete(s,1,1);
if not p then write('-');
writeln(s);
end.