简单Linux脚本实现《鸡兔同笼》数学题的自动计算~!

简单shell脚本计算《鸡兔同笼》数学名题

鸡兔同笼是中国古代的数学名题之一。大约在1500年前,《孙子算经》中就记载了这个有趣的问题。书中是这样叙述的:

今有雉兔同笼,上有三十五头,下有九十四足,问雉兔各几何?

这四句话的意思是:有若干只鸡和兔子同在一个笼子里,从上面数,有35个头,从下面数,有94只脚。问笼中各有多少只鸡和兔子?

解题方法:假如让鸡抬起一只脚,兔子抬起2只脚,还有94÷2=47(只)脚。笼子里的兔就比鸡的脚数多1,这时,脚与头的总数之差47-35=12,就是兔子的数量,在用35-12=13就是鸡的数量。

下面我们编写一个简单的linux脚本来实现输入脚和头的数量自动计算出鸡和兔子的数量:

图片1

只需要按照解题的数学逻辑,将输入的值赋值给相应的变量,再用变量去做相应是数学运算即可计算出鸡和兔子的数量,代码如下:

#!/bin/bash

read -p “please input head number :” m       #提示输入头的数量,将输入的数量赋值到 m 变量中

read -p “please input foot number :” n       #提示输入脚的数量,将输入的数量赋值到 n 变量中

rabbit=$[$n/2-$m ]                      #将输入的n变量的值除以2,并减去头的数量,得出的值即为兔子的数量,并赋值到rabbit 变量中

chook=$[$m-$rabbit]                     #将头的数量减去兔子的数量,即为鸡的数量

echo “The number of rabbits are : $rabbit”    #输出兔子的数量

echo “The number of chooks  are : $chook ”  #输出鸡的数量

代码编写完成后,运行此文件,显示结果如下图所示,只需要填入数量即可计算出鸡和兔子的数量,一个简单的shell程序就完成了。

图片2

本文来自投稿,不代表Linux运维部落立场,如若转载,请注明出处:http://www.178linux.com/104539

(6)
PoPoPoPo
上一篇 2018-08-05 16:08
下一篇 2018-08-05 16:30

相关推荐

  • 主从DNS acl问题

    问题:从DNS服务器acl 验证时未生效。

    Linux笔记 2018-07-12
  • Linux用户与组管理详解

    在linux系统上,用户管理是基于用户名和密码的方式进行资源的分配,了解和掌握用户与组的管理是从事运维工作所必须具备的能力,也是将来从事运维行业的重要工作之一。

    2018-04-03
  • 计算机及Linux基础知识

    1、描述计算机的组成及其功能 根据冯诺依曼体系结构,计算机由运算器、存储器、控制器、输入设备和输出设备五个基本部件组成,其中运算器和控制器合称为中央处理器(CPU)。 各基本部件的功能是: 存储器用于存放指令和数据; 控制器控制指令自动执行; 运算器进行加、减、乘、除四种基本算术运算以及逻辑运算和附加运算;输入输出设备通过和主机进行通信,完成人机数据交互。 …

    2018-06-23
  • shell练习

    1、检查磁盘使用率,如果分区利用率大于80%(此处实验以15%)就执行警报   echo “The disk check script will be starting”sleep 0.5 disk_used=`df |grep “^/dev/sd”|tr -s ” ” %|c…

    2018-05-07
  • 第一周作业

    本周作业 1、描述计算机的组成及其功能。 2、按系列罗列Linux的发行版,并描述不同发行版之间的联系与区别。 3、描述Linux的哲学思想,并按照自己的理解对其进行解释性描述。 4、说明Linux系统上命令的使用格式;详细介绍ifconfig、echo、tty、startx、export、pwd、history、shutdown、poweroff、rebo…

    Linux笔记 2018-05-12
  • 文本处理工具sed

    sed:是行编辑器是一款流编辑器,是一门语言,;比grep强大,不光能看还能改,你值得拥有。地址定界:对第几行进行操作不给地址:对全文处理单地址#指定的行,$最后一行/字符,正则/:被此处模式匹配到的每一行地址范围:#,#:第几行到第几行#,+#:从第#行往后加#行(包括#,)/a字符串/,/b字符串/:从a匹配到b(如果找不到b就会从a打印到最后一行)#,…

    2018-04-19