[0608] Noip2011 普及组 Problem 1数字反转


 

题目描述
给定一个整数,请将该数各个位上数字反转得到一个新数。新数也应满足整数的常见形
式,即除非给定的原数为零,否则反转后得到的新数的最高位数字不应为零(参见样例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.


 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM