#-*- encoding: utf-8
import math
def sum_even_num():
print
'请输入需要计算的范围'
#提示用户输入数字范围
x = raw_input(
'输入起始数字:')
#判断输入的起始数字是否为数字,如果不是,提示重新输入
if x.isdigit() ==
False:
print
'请输入数字:'
x = raw_input(
'请重新输入起始数字:')
y = raw_input(
'输入终止数字:')
if y.isdigit() ==
False:
print
'请输入数字:'
y = raw_input(
'请重新输入终止数字:')
#把输入的数字类型转换为float进行比较,判断大小顺序是否合理
if float(x) > float(y):
print
'起始数字大于终止数字,请重新输入'
sum_even_num()
#大小顺序合理,则转化为整数进行比较,用math.ceil方法取大于等于输入数字的最小整数
else:
a = int(math.ceil(float(x)))
b = int(math.ceil(float(y)))
#设定个变量来存储结果
sum =
0
#判断是不是偶数,是就进行加和
for i
in range(a,b+
1):
if i%
2 ==
0:
sum = sum + i
print
'在',x,
'到',y,
'的所有偶数的和为:',sum
#运算结束后重新进入程序,不退出
sum_even_num()
sum_even_num()
才1个小时,就发现了一个bug...