原创:shell两个整数的比较 思想版

思想是学的 代码创作是自己的 很喜欢前几行的逻辑严谨

#!/bin/bash
#判断两个整数的大小
read -p "请输入两个整数a b :" a b
#或者使用a=$1
[ -z "$a" ]||[ -z "$b" ]&&{
echo "你输入的数为零"
exit 1
}
#输入的值是否为0
expr $a + 10 &>/dev/null
RETUAL1=$?
expr $b + 10 &>/dev/null
RETUAL2=$?
#判断输入的值是不是整数
test $RETUAL1 -eq 0 -a $RETUAL2 -eq 0 ||{
echo "变量不为整数 不符合要求"
exit
}
[ $a -lt $b ] &&{
echo "$a < $b"
exit 3
}
[ $a -gt $b ] &&{
echo "$a > $b"
exit 4
}
[ $a -eq $b ] &&{
echo "$a = $b"
exit 5
}

时间: 2024-08-08 14:54:25

原创:shell两个整数的比较 思想版的相关文章

shell两个整数的判断大小 思想版

喜欢前几行的思想 逻辑的严谨性 逻辑是学的 代码创作是自己的 #!/bin/bash #判断两个整数的大小 read -p "请输入两个整数a b :" a b #或者使用a=$1 [ -z "$a" ]||[ -z "$b" ]&&{ echo "你输入的数为零" exit 1 } #输入的值是否为0 expr $a + 10 &>/dev/null RETUAL1=$? expr $b + 1

12_1求两个整数中的较小值,要求不能使用比较运算符, if-else, a&gt;b?a:b, while for

转载请注明出处:http://www.cnblogs.com/wuzetiandaren/p/4253932.html  声明:现大部分文章为寻找问题时在网上相互转载,此博是为自己做个记录记录,方便自己也方便有类似问题的朋友,本文的思想也许有所借鉴,但源码均为本人实现,如有侵权,请发邮件表明文章和原出处地址,我一定在文章中注明.谢谢. 题目:求两个整数中的较小值,要求不能使用比较运算符, if-else, a>b?a:b, while for, 内嵌汇编递归第三方函数. 在网上看到一些网友给出了

输入两个整数n和m,从数列1,2,3,……n中随意取几个数,使其和等于m 转载

题目:编程求解,输入两个整数n和m,从数列1,2,3,--n中随意取几个数,使其和等于m.要求将所有的可能组合列出来. 分析:分治的思想.可以把问题(m,n)拆分(m - n, n -1)和(m, n - 1). 注意点:1.n大于m时,可直接从n = m出开始搜索 2.结束条件:n < 1 || m < 1 3.打印输出结果.注意打印输出结果并不代表函数调用结束,以n = 7 和 m = 10为例,7.3和7.2.1都是一种结果,不能得到7.3的时候终止.打印输出的条件是n = m 程序代码

python两个整数和浮点的方法来获取值

/********************************************************************* * Author  : Samson * Date    : 09/19/2014 * Test platform: *              Linux ubuntu 3.2.0-58-generic-pae *              GNU bash, version 4.2.39 * *****************************

【LeetCode-面试算法经典-Java实现】【029-Divide Two Integers(两个整数相除)】

[029-Divide Two Integers(两个整数相除)] [LeetCode-面试算法经典-Java实现][所有题目目录索引] 原题 Divide two integers without using multiplication, division and mod operator. If it is overflow, return MAX_INT. 题目大意 不使用除法,乘法和取余,求两个整数的相除的结果,如果有溢出就返回最大的整数. 解题思路 任何一个整数可以表示成以2的幂为底

A、B两个整数集合的交集

rt,这是一个经典问题. 参考1:http://www.sysexpand.com/?path=exercises/array-intersection 参考2:http://leetcode.com/2010/03/here-is-phone-screening-question-from.html 用数组来模拟(本质上说集合中是没有重复元素的,这里用数组来模拟可以用重复元素),A.B数组长度分别为m和n.总的来说,分为以下几种方案. 方案1:两重循环判断(复杂度 O(m*n)) 暴力方法,并

输入两个整数,放入到a与b变量中去,如果a&gt;b就将a与b中的值进行交换,否则就不交换。

import java.util.Scanner; /** * @author 蓝色以太 输入两个整数,放入到a与b变量中去,如果a>b就将a与b中的值进行交换,否则就不交换. */ public class Change { public static void main(String[] args) { Scanner sc = new Scanner(System.in); System.out.println("请输入两个整数:"); int a = sc.nextInt

已知两个整数a,b,且a+b=c,要求输入:a,b; 输出:c

题目: 已知两个整数a,b,且a+b=c,要求输入:a,b: 输出:c . 提示:使用赋值语句. 代码: 1 program shen2; 2 3 var 4 a,b,c:integer; 5 BEGIN 6 readln(a,b); 7 c:=a+b; 8 writeln(a,'+',b,'=',c); 9 END.

c语言:输入两个整数m和n,计算需要改变m的二进制表示中的多少位才能得到n

输入两个整数m和n,计算需要改变m的二进制表示中的多少位才能得到n? 解:第一步求这两个数的异或运算,将异或运算结果存起来:第二步统计这个运算结果当中1的位数 程序: #include<stdio.h> int count(int m,int n) { int t,count=0; t = m^n; while (t) { count++; t=t&(t-1); } return count; } int main() { int num1,num2,ret=0; printf(&qu