2.6 算术运算

算术运算符就是加减乘除和求余数:
名字
符号
示例
加
+
c=a+b
减
-
c=a-b
乘
*
c=a*b
除
/
c=a/b
求余
%
c=a%b
取整除,返回商的整数部分(小数部分舍弃,不是四舍五入)//c=a//b
x的y次方
**c=a**b
加减乘和常规数学计算的没有什么区别:
a=5
b=2
c=a/b
print(c)
c=a**b
print(c)
c=a//b
print(c)
接下来介绍求余%,这个运算符也许以前没遇过,但是它的意义也是很简单明了的:a%b表示a除以b的余数。看下面的例子:
c=5%2
print(c)
c=432437834%10
print(c)
将打印1和4,5除以2的余数就是1,而43243y834除以10的余数,那就是个位了。求余也用来把一个未知的数字,规定在某个范围内,因为a%b求余的结果在此范围内[0,b-1],余数是不可能大于等于除数的。
下面是一个随机点号器,为了学习这两节的知识,使用了random函数(而不是更方便的randint函数):
import random
s=random.random()#生成一个0到1的随机小数
s=s*1000         #放大这个数字,乘以1000还是59343或者是别的什么数字并没有区别
s=int(s//1)      #取整数,并转换成整数类型
m=s%39+1         #求余,结果是1到39之间的一个数字
print(m)         #打印结果

还有把赋值运算和算术运算结合起来的运算,这类运算符称为复合赋值运算符:
a=1
a+=5
最后a的值是6。a+=5相当于a=a+5。
+和=两个符号之间没有空格。 这类运算本质上是一种赋值运算。所以和赋值一样,复合赋值符号左边必须是变量。
例如下面的代码:
a = 1
a += 5 #相当于a=a+5,a的值是6
a -= 2 #相当于a=a-2,a的值是4
a %= 3 #相当于a=a%3,a的值是1
a = 4
a **=4 #相当于a=a**4,a的值是256

练习题

  • 算术运算
    1.k是键盘输入的整数,k%17的计算结果是 (2分) [选择]
    A.
    B. 输入值除以17
    C. 最后计算结果的取值范围肯定是0和16之间的整数
    D. 如果k的值是34,计算结果是2
    E. 结果有可能大于等于17
    2.定义两个整型变量i和j,分别赋值为5和6,然后计算两者的和打印出屏幕 (10分) [编程]
    3.计算258乘以987的积并打印到屏幕,要求至少定义两个变量。 (10分) [编程]
    4.计算5%4,5/4,5//4和5**4,把结果打印出来。要求至少定义两个变量。 (10分) [编程]
  • 写出下列a的值(a的初始值都是8)
    1.a+=6 (2分) [填空]
    a的值是        
    2.a-=5 (2分) [填空]
    a的值是        
    3.a*=4 (2分) [填空]
    a的值是        
    4.a/=2 (2分) [填空]
    a的值是        
    5.a%=2 (2分) [填空]
    a的值是