首页 > 其他分享 >06算术运算符和习题

06算术运算符和习题

时间:2023-04-08 23:25:34浏览次数:44  
标签:06 num1 int System 运算符 num println 习题 out

算数运算符

建议:给符号两端预留空格

+ - * 
/ 除 
% 求余,取模
在生活中 23除7等于3余2
代码中23/7=3
23%7=2

例子:

public static void  main (String[] args) {
        //46天,包含了几周零几天
        int weeks = 46 / 7 ;
        int days = 46 % 7 ;
        System.out.println(weeks+"\t"+days);
        System.out.println("------");

        //商场搞活动100当120花,420元符多少钱
//        int beishu = 420 / 100 ;
//        int yushu = 420 % 100 ;
//        int yingai = beishu * 80 + yushu ;
//        System.out.println(yingai);
        int money = (420 / 120) * 100 + 420 % 120 ;
        System.out.println(money);

    }

关系运算符(比较运算符):

>  <  >=  <=  ==   !=不等于

单等是赋值语句,双等才是一般意义上的等于
字符串 比较不用== !=,用 equals() !equals()

关系运算符的运算结果全是boolean
例题

System.out.println("------");
        //题目:输入张三成绩,与李四(80),输出张三是否比李四高
        Scanner input = new Scanner(System.in) ;
        System.out.println("请输入张三成绩:");
        int zsScore = input.nextInt();
        System.out.println( zsScore > 80);

变量:num
表达式:num*122
遇到优先级问题:小括号

System.out.println("------");
       //int num 变量; num*3,num+num 表达式
        System.out.println(  (2+43%6) > (10/3*2)  );
        //首先思考优先级,但是需要记java运算符优先级,不好记,
        // 有歧义,直接先算的括起来,括号优先级最高
        System.out.println("------");

小细节:3 >= 2 表示3大于或等于2,所以结果为true,3 >=3 true

例题;关于通项

//题目:输入三位数,求各个位数之和
        Scanner inputsanweishu = new Scanner(System.in) ;
        System.out.println("请输入三位数:");
        int sanweishu = inputsanweishu.nextInt();
        int baiwei1 = sanweishu/100;
        int shiwei1 = sanweishu/10%10;
        int gewei1 = sanweishu%10;
        System.out.println(baiwei1+shiwei1+gewei1);
        //总结
        int num = 12345 ;
        int gewei = num/1      %10;//12345->5
        int shiwei = num/10    %10;//12345->1234->4
        int baiwei = num/100   %10;//12345->123->3
        int qianwei = num/1000 %10;//12345->12->2
        int wanwei =num/10000  %10;//12345->1->1
        //通项:num任意一一位,num、所在位数最小值 %10;

两数交换:中间变量,加减法(有溢出问题),位运算
例题

//题目:两个数交换
        int num1 = 10 ;
        int num2 = 20 ;
        /*方法1,通过中间变量实现交换
        int temp = num1;
        num1 = num2;
        num2 = temp;
        */
        /*方法2数学加减,不推荐,相加可能会溢出
        num1 = num1 + num2;//30
        num2 = num1 - num2;//10
        num1 = num1 - num2;//20
         */
        //方法3 位运算(效率最高,二进制)
        num1 = num1 ^ num2;
        num2 = num1 ^ num2;
        num1 = num1 ^ num2;

        System.out.println(num1);
        System.out.println(num2);

关于溢出
最大值+1变最小值
最小值-1变最大值
示例:

System.out.println("------");
        int max = Integer.MAX_VALUE;//int最大值
        int min = Integer.MIN_VALUE;//int最小值
        System.out.println("最大值:"+max);
        System.out.println("最大值+1:"+(max+1));
        System.out.println("最小值"+min);

标签:06,num1,int,System,运算符,num,println,习题,out
From: https://www.cnblogs.com/yuyuaaa/p/17299533.html

相关文章

  • 运算符
    运算符:对常量或者变量进行操作的符号表达式:用运算符把常量或者变量连接起来的符合Java语法的式子就可以称为表达式。不同运算符连接的表达式体现的是不同类型的表达式。算术运算符+,-,*,/,%(加,减,乘,除,取余)注意事项1./和%操作的区别:/操作取得的结果是商,%操作取得的结果是余数。示范......
  • 机器学习(五):混合高斯聚类(求聚类标签)+PCA降维(3维降2维)习题
    使用混合高斯模型GMM,计算如下数据点的聚类过程:\(Data=np.array([1,2,6,7])\)均值初值为:\(\mu_1,\mu_2=1,5\)权重初值为:\(w_1,w_2=0.5,0.5\)方差:\(std_1,std_2=1,1\)\(K=2\)10次迭代后数据的聚类标签是多少?采用python代码实现:fromscipyimport......
  • 逍遥自在学C语言 | 位运算符的基础用法
    前言一、人物简介第一位闪亮登场,有请今后会一直教我们C语言的老师——自在。第二位上场的是和我们一起学习的小白程序猿——逍遥。二、构成和表达方式位运算符是一组用于在二进制数之间进行操作的运算符运算符名称示例&位与a&&b|位或a|b......
  • 06.项目范围管理
    1.范围管理概述1.1.项目范围需要做以下三个方面1、明确项目边界,即明确哪些工作是包括在项目范围之内的,哪些工作是不包括在项目范围之内的。2、对项目执行工作进行监控,确保所有该做的工作都做了,而且没有多做。对不包括在项目范围内的额外工作说“不”杜绝做额外工作。......
  • 力扣1069(MySQL)-产品分析Ⅱ(简单)
    题目:编写一个SQL查询,按产品idproduct_id来统计每个产品的销售总量。查询结果格式如下面例子所示: 解题思路:没有用到product表,直接在sales表中使用聚合函数:1selectproduct_id,sum(quantity)astotal_quantity2fromsales3groupbyproduct_id;......
  • 力扣1068(MySQL)-产品销售分析Ⅰ(简单)
    题目:销售表 Sales: 产品表 Product:写一条SQL 查询语句获取Sales 表中所有产品对应的产品名称product_name以及该产品的所有售卖年份year 和价格price。查询结果中的顺序无特定要求。查询结果格式示例如下: 来源:力扣(LeetCode)链接:https://leetcode.cn/proble......
  • LeetCode习题——在排序数组中查找元素的第一个和最后一个位置(二分查找)
    在排序数组中查找元素的第一个和最后一个位置力扣链接:在排序数组中查找元素的第一个和最后一个位置题目给你一个按照非递减顺序排列的整数数组nums,和一个目标值target。请你找出给定目标值在数组中的开始位置和结束位置。如果数组中不存在目标值target,返回[-1,-1]。你......
  • 106. 从中序与后序遍历序列构造二叉树 105. 从前序与中序遍历序列构造二叉树
    给定两个整数数组inorder和postorder,其中inorder是二叉树的中序遍历,postorder是同一棵树的后序遍历,请你构造并返回这颗二叉树。classSolution{public:TreeNode*buildTree(vector<int>&inorder,vector<int>&postorder){if(postorder.size()==0)......
  • 006.系统目录结构
    Linux 系统目录结构登录系统后,在当前命令窗口下输入命令:ls/ 你会看到如下图所示: 树状目录结构:   以下是对这些目录的解释:/bin:常用bin是Binaries(二进制文件)的缩写,这个目录存放着最经常使用的命令。/root:常用该目录为系统管理员,也称作超级权限者的用户......
  • Java 自增自减运算符和移位运算符介绍
    摘自JavaGuide(「Java学习+面试指南」一份涵盖大部分Java程序员所需要掌握的核心知识。准备Java面试,首选JavaGuide!)自增自减运算符在写代码的过程中,常见的一种情况是需要某个整数类型变量增加1或减少1,Java提供了一种特殊的运算符,用于这种表达式,叫做自增运算符(++)和自......