标签:第一步 偶数 定义 bsp 代码 判断 应用 渐进 数列
1.使用while循环输入1 2 3 4 5 6 8 9 10
分析:此命题可以翻译为将1-10的所有整数按升序排列,当要输出“7”时将其跳过。
思路:因此整体的思路应当是先铺好1-10的整数升序数列,然后对7进行特殊处理。
[第一步]写1-10的整数升序:
n=1
while n <=10
print(n)
n=n+1
此代码输出结果为:1 2 3 4 5 6 7 8 9 10
[第二步]对7进行特殊处理:
n=1
while n <=10
if n == 7
pass
else:
print(n)
n=n+1
此代码输出结果为:1 2 3 4 5 6 8 9 10
结论:解决问题需要从大局入手。由粗到细,由浅入深循序渐进。
2.输出1-100内的所有奇数
分析:此命题可以翻译为将1-100的所有整数按升序排列,当要输出偶数时将其跳过。
思路:因此整体的思路应当是先铺好1-100的整数升序数列,然后对偶数进行特殊处理。
[第一步]写1-100的整数升序:
n=1
while n <=100
print(n)
n=n+1
此代码输出结果为:1 2 3 4 …… 97 98 99 100
[第二步]对偶数进行特殊处理:
n=1
while n <=100
temp = n%2 (定义临时变量temp的值为:n对2取余)
if temp == 0 (当余数为0时,即n为偶数)
pass (跳过,完成了对偶数的特殊处理)
else:
print(n)
n=n+1
此代码输出结果为:1 3 5 7 …… 93 95 97 99
3.求1-100的所有整数的和
分析:此命题可以理解为从1-100不断加和。
思路:写出1-100的升序序列,并从1开始一直向后加和。
[第一步]写1-100的整数升序:
n=1
while n <=100
print(n)
n=n+1
此代码输出结果为:1 2 3 4 …… 97 98 99 100
[第二步]对各项数值进行相加处理:
n=1
s=0
while n <=100
s=s+n
n=n+1
print(s)
此代码输出结果为:5050
4.求1-2+3-4……+99的和
分析:此命题可以理解为从1-99不断加和,遇到奇数直接加,遇到偶数将偶数取负再加。
思路:列出1-100的序列,将偶数取负,将各项相加。
[第一步]写1-99的整数升序:
n=1
while n <=99
print(n)
n=n+1
此代码输出结果为:1 2 3 …… 97 98 99
[第二步]在各项数值进行相加处理的基础上增加奇偶判断:
n=1
s=0
while n <=99
temp == n%2
if temp == 0
s=s-n (即s=s+(-n),意为当n为偶数的时候取相反数求和)
else:
s=s+n
n=n+1
print(s)
此代码输出结果为:51
标签:第一步 偶数 定义 bsp 代码 判断 应用 渐进 数列
原文地址:https://www.cnblogs.com/ly76/p/11377884.html