【入门】倒序输出一个四位整数

这篇博客介绍了如何使用Pascal语言倒序输出一个四位整数,提供了两种方法:一是通过div和mod操作逐位截取并计算,二是利用字符串进行倒序处理。文章详细解释了每种方法的思路和实现代码。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

【入门】倒序输出一个四位整数

题目解释:

这道题题目描述非常明了,

就是倒序输出一个四位数。

题目思路:

这道题可以用两种方法:

  1. 用数学上的divmod截出各个位上的数,再计算;
  2. 也可以用字符串倒叙输出。

题目难度:

*

方法一:

算法分析:

divmod把各个位置上的数截出来,再把个位乘1000

十位乘100;百位乘10;千位就是乘1,就是1个千位。

至于截取方法有多种,在这里就讲讲最简单的方法:

1234

1234整除10的余数就是个位4

1234整除100后的余数是34,再整除10的商就是3

1234整除100的商是12,再整除10的余数就是2

1234整除1000的商就是1

答案参考:

var

n,a,b,c,d:longint;

s:qword;

begin

readln(n);

a:=n mod 10;             //截出个位

b:=(n mod 100)div 10;     //截出十位

c:=(n div 100)mod 10;  //截出百位

d:=n div 1000;          //截出千位

s:=a*1000+100*b+10*c+d;    //计算他的倒叙

writeln(s);

end.

 

方法二:

算法分析:

字符串熟练的人也可以用字符串做,也很简单,但要注意最前几位如果是零,就得过滤掉。

答案参考:

var

i,j:longint;

st:string;

begin

readln(st);

for j:=4 downto 1 do

if st[j]<>'0' then break;   //过滤开头的“0”

for i:=j downto 1 do

write(st[i]);

end.

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值