简单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

相关推荐

  • 运维自动化之ansible

    ansible的基本架构 ​ host inventory主机清单 ​ playbook相当于脚本, ​ modules模块 ansible工作原理 ​ 通过执行命令,或ansible playbook,cmdb ansible配置文件 ​ /etc/ansible/ansible.cfg主配置文件,配置ansible工作特性 ​ /etc/ansible/…

    Linux笔记 2018-06-03
  • rpm以及yum基础

    第四周

    Linux笔记 2018-04-22
  • 文件权限

    介绍了修改文件权限的方法,umask和三种特殊权限以及acl控制访问表

    2018-04-04
  • 批量部署工具Ansibale笔记

    自动化运维

    2018-05-28
  • Linux的发行版,并描述不同发行版之间的联系与区别

    Linux是开源的,因此有不同的社区组织或公司可以在此基础上开发,设置不同的样式或功能特性。发行版的分支有几百种之多。 主要分支如下: Debian ubuntu mint knopix Slackware S.u.S.E SLES OpenSUSE RedHat: RedHat Enterprise CentOS:企业社区版 Fedora Core:桌面版…

    Linux笔记 2018-05-10
  • 网络管理-第二篇

    IP地址 它们可唯一标识 IP 网络中的每台设备 每台主机(计算机、网络设备、外围设备)必须具有唯一的地址 IP地址由两部分组成: 网络ID: 标识网络 每个网段分配一个网络ID 主机 ID: 标识单个主机 由组织分配给各设备 MAC地址没有管理性 IP地址可管理性标识性高 子网掩码标识网络ID和主机ID 地址分类 二进制 A类地址:前八位是网络ID 1-1…

    2018-05-03