输入分子和分母,打印出前1000位小数

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
program oneThousandNumberic;
 
var
son,mom,divNum,modNum,i:integer;
 
begin
writeln('pls input son:');
readln(son);
writeln('pls input mom:');
readln(mom);
 
i:=1;
divNum:=son;
 
while i<=1001 do
begin
    write(divNum div mom);
    if i=1
    then write('.');
    modNum:=divNum mod mom;
    divNum:=modNum*10;
    i:=i+1;
end;
end.
1
题目:输入分子和分母,打印出他的1000位小数。

 

这道题就是拆分每次的动作。
2 div 7 = 0
2 mod 7 = 2 <-- next div source
print .
2*10 div 7 = 2
2*10 mod 7 = 6 <--
6*10 div 7 = 8
6*10 mod 7 = 4 <--
4*10 div 7 = 5
4*10 mod 7 = 5 <--
5*10 div 7 = 7
5*10 mod 7 = 1 <--
1*10 div 7 = 1
1*10 mod 7 = 3 <--

print result:
0.28571

用每次的除数 去除 分母,商就是当位的值
然后余数就是作为下一位除法的源头,也就是余数*10.

只用打印每次的商,就是小数位了 

 

 

 

 

这道题给我的感觉就是,计算过程很质朴,思路很简单。

就是简单的把人做除法的步骤准确化,使得计算机可以按步骤执行。

然后利用计算机算东西很快的能力,算出结果。

 

posted @   MikeLi  阅读(45)  评论(0编辑  收藏  举报
编辑推荐:
· 大模型 Token 究竟是啥:图解大模型Token
· 35岁程序员的中年求职记:四次碰壁后的深度反思
· 继承的思维:从思维模式到架构设计的深度解析
· 如何在 .NET 中 使用 ANTLR4
· 后端思维之高并发处理方案
阅读排行:
· 感觉程序员要被 AI 淘汰了?学什么才有机会?
· MQTT协议发布和订阅的实现,一步步带你实现发布订阅服务。
· Dify开发必备:分享8个官方文档不曾解释的关键技巧
· 活动中台系统慢 SQL 治理实践
· “你觉得客户需要”是杀死TA的最后一根稻草 | IPD集成产品开发
点击右上角即可分享
微信分享提示