C#实战 | 求解《九章算术》盈不足之共买物

举报
TiAmoZhang 发表于 2024/07/16 08:58:00 2024/07/16
【摘要】 中国古代数学成就显著,《九章算术》展示了先进的算法,如分数运算和方程解法,领先世界数百年。项目示例通过控制台应用,运用for循环和if条件语句,模拟解决书中盈不足问题,展示了解决数学问题的编程方法。

f0d26986-714d-4be1-95f5-c202d25fc4af.jpg

谈起古代数学,总会想起古希腊欧几里得的名著《几何原本》。而实际上,中国的《周髀算经》《九章算术》《缉古算经》等同样经典,尤其是《九章算术》,更以其算法实用性闻名世界。

中国古代数学的一些发展成果可谓惊艳,足以让人感到自豪:二进制的思想起源(周易)早于西方2000年; 几何思想起源(战国《墨经》)早于西方100多年; 勾股定理(西周人商高)早于西方550年; 幻方(《论语》《书经》)早于西方600年; 分数运算及小数使用(公元一世纪《九章算术》)领先世界500年,方程算法(《九章算术》)领先世界600年; 祖冲之的圆周率保持精确记录约千年……

01、项目一:求解《九章算术》盈不足之共买物

项目说明: 《九章算术》共246个问题,在古代以各种方式传播到世界各地,从而大大促进了世界数学的发展。《九章算术》第七章有题:“今有共买物,人出八,盈三; 人出七,不足四,问人数、物价几何?”译文:“几个人一起去购买某物品,如果每人出8钱,则多了3钱; 如果每个人出7钱,则少了4钱。问有多少人?物品的价格又是多少?”

此题用方程组可求解。但请使用学过的分支、循环语句进行求解。

项目实现步骤:

(1) 创建一个控制台应用。

(2) 在“代码编辑”窗口中,找到Main()方法,在该方法内编写代码如下。

111.png

(3) 单击“启动”按钮或按F5键,弹出控制台窗口并显示结果:“人数为:7 价格为:53”,如图2-1所示。

121.png

■ 图2-1控制台窗口显示结果

项目小结:

(1) 高效求解问题答案,使用控制台应用即可; 同时,记住Main()方法为程序入口,解决问题的代码应写入Main()方法中。

(2) 逐渐掌握分析和解决问题的能力。本案例项目问题可用拆解法处理。处理过程拆解为两部分:第一部分是穷举人数的可能性; 第二部分是给定人数情况下判断两种价格是否相同,相同即找到了正确人数,同时价格也找到了。

(3) 要理解各种流程控制语句的特点,利用不同语句的作用来解决问题。

① 使用循环语句可以穷举各种可能性。本案例项目中,使用for语句穷举人数的各种可能。

131.png

② 条件语句可用于判断条件的真假。本案例项目中,可用if语句来判断“盈”和“不足”两种情况下物品价格是否相同,结果为真就得到了所求人数。

112.png


以上通过for循环中内嵌if语句,就得到了本案例项目所需结果。

【版权声明】本文为华为云社区用户原创内容,未经允许不得转载,如需转载请自行联系原作者进行授权。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。