"""
分段函数求值
3x - 5 (x > 1)
f(x) = x + 2 (-1 <= x <= 1)
5x + 3 (x < -1)
"""
x = float(input(‘x = ‘))
if x > 1:
y = 3 * x - 5
else:
if x >= -1:
y = x + 2
else:
y = 5 * x + 3
print(‘f(%.2f) = %.2f‘ % (x, y))
Python中循环:
1.
1.1 for ...in...循环:
"""
用for循环实现1~100求和
"""
sum = 0
for x in range(101):
sum += x
print(sum)
注意一点:
需要说明的是上面代码中的range
类型,range
可以用来产生一个不变的数值序列,而且这个序列通常都是用在循环中的,例如:
range(101)
可以产生一个0到100的整数序列。
range(1, 100)
range(1, 100, 2)
可以产生一个1到99的奇数序列,其中的2是步长,即数值序列的增量。
1.2 while循环:
如果要构造不知道具体循环次数的循环结构,我们推荐使用while
循环,while
循环通过一个能够产生或转换出bool
值的表达式来控制循环,表达式的值为True
循环继续,表达式的值为False
循环结束
例题:
"""
输入一个正整数判断它是不是素数
"""
from math import sqrt
num = int(input(‘请输入一个正整数: ‘))
end = int(sqrt(num))
is_prime = True
for x in range(2, end + 1):
if num % x == 0:
is_prime = False
break
if is_prime and num != 1:
print(‘%d是素数‘ % num)
else:
print(‘%d不是素数‘ % num)
代码:
z=0
f=0
sum=0
count=0
d=1
def yun(d):
global z,f,sum,count
while d!=0:
d=int(input(‘Enter an integer,the ends if it is 0:‘))
if d>0:
z+=1
if d<0:
f+=1
sum+=d
if d!=0:
count+=1
print(‘正数个数:%d‘ % z)
print(‘负数个数:%d‘ % f)
print(‘和为:%d‘ % sum)
print(‘平均数是:%f‘ % (sum/count))
yun(d)
原文:https://www.cnblogs.com/wangshilin/p/11297666.html