第一天
1.请问下面代码是否能够正常执行?
x = 3
y = 5
if x < y: print("x比y小")
正解:可以正常执行,这相当于缩进的格式
2.请问下面代码是否能够正常执行?
x = 3
y = 4
z = 5
if x < y:
print(x, "<", y)
if y < z:
print(y, "<", z)
print(x, "<", z)
正解:正常执行,python并不关注你的缩进格式,只关注同一代码块中缩进是否一致。
虽然没错,但是这种做法并不提倡,因为if下面的缩进一般是四格。
3. 编写一个程序,让用户输入一个整数,判断其是否奇数还是偶数
number = input("请输入一个整数:")
number = int(number)
if number % 2 == 0:
print(number, "是一个偶数。", sep='')
else:
print(number, "是一个奇数。", sep='')
4. 通常企业发放的年终奖是根据一年的盈利进行提成,A 公司的提成规则如下:2L1^C|=kr
ntb&Sf4IjyD'P}_1sCG{pMV=
- 当利润低于或等于 10 万元时:年终奖为 10%
- 当利润高于 10 万元,低于 20 万元时:低于 10 万元的部分按 10% 提成,高于 10 万元的部分,按 7.5% 提成
- 当利润 20 万到 40 万之间时:低于 10 万元的部分按 10% 提成,高于 10 万元低于 20 万元的部分,按 7.5% 提成,高于 20 万元的部分,按 5% 提成
- 当利润 40 万到 60 万之间时:低于 10 万元的部分按 10% 提成;高于 10 万元低于 20 万元的部分,按 7.5% 提成;高于 20 万元低于 40 万元的部分,按 5% 提成;高于40万元的部分,按 3% 提成
- 当利润 60 万到 100 万之间时:低于 10 万元的部分按 10% 提成;高于 10 万元低于 20 万元的部分,按 7.5% 提成;高于 20 万元低于 40 万元的部分,按 5% 提成;高于40万元低于 60 万元的部分,按 3% 提成;高于60万元的部分,按 1.5% 提成
- 当利润高于 100 万元时:低于 10 万元的部分按 10% 提成;高于 10 万元低于 20 万元的部分,按 7.5% 提成;高于 20 万元低于 40 万元的部分,按 5% 提成;高于40万元低于 60 万元的部分,按 3% 提成;高于60万元低于 100 万的部分,按 1.5% 提成;超过 100 万元的部分按 1% 提成
请编写一个程序,根据录入的利润,计算出应该发放的奖金总数?#L%>l3zzzzzzzz
profit = float(input("请输入今年的利润:"))
if profit <= 100000:
reward = profit * 0.1
elif 100000 < profit <= 200000:
reward = 100000 * 0.1 + (profit - 100000) * 0.075
elif 200000 < profit <= 400000:
reward = 100000 * 0.1 + 100000 * 0.075 + (profit - 200000) * 0.05
elif 400000 < profit <= 600000:
reward = 100000 * 0.1 + 100000 * 0.075 + 200000 * 0.05 + (profit - 400000) * 0.03
elif 600000 < profit <= 1000000:
reward = 100000 * 0.1 + 100000 * 0.075 + 200000 * 0.05 + 200000 * 0.03 + (profit - 600000) * 0.015
else:
reward = 100000 * 0.1 + 100000 * 0.075 + 200000 * 0.05 + 200000 * 0.03 + 400000 * 0.015 + (profit - 1000000) * 0.01
print("应该发放的奖金总数是:", reward, sep='')
第二天
1. 请问下面代码执行后,x 变量的值是多少?
x = 520 if "Love" else 404
正解:520
因为“Love”的真值测试时Ture(对于任何非空字符串,真值测试结果均为Ture)
2.将下面代码中的条件分支部分修改为使用条件表达式来实现:
age = 18
isMale = True
if age < 18:
print("抱歉,未满18岁禁止访问。")
else:
if isMale:
print("任君选购!")
else:
print("抱歉,本店商品可能不适合小公举哦~")
题目的意思就是让你把他变成条件表达式
age = 18
isMale = Ture
print("抱歉,未满18岁禁止访问。") if age < 18 else print("任君选购!") if isMale else print("抱歉,本店商品可能不太适合小公举哦~。")
这道题,最重要的是要了解,题目在考你什么
3.大多数 if - else 条件分支还可以使用 and - or 运算符组合的表达式来代替,那么如果将下面代码转变成 and - or 来实现,应该是怎样的呢?
if "Love":
520
else:
404
正解:
"Love" and 520 or 404
这道题的原理就是,and 和 or 连用的时候,and一真则真,or全假则假,那就从左往右判断真假,就和if else类似
4.请将下面的条件分支语句,使用条件表达式实现,并尝试理解这段代码的目的是什么?
if a < b:
if a < c:
print(a)
else:
print(c)
else:
if b < c:
print(b)
else:
print(c)
正解:首先这段代码的目的就是找到a b c ,三个变量当中的最小值,并把这个最小值打印出来
那么这个把他变成条件表达式的思路就是
首先,找到最外层条件部分,就是最大的条件
A if a < b else B
那么这段代码最大的条件就是 a < b ,而A B 就是前面的小的条件,我们找到大条件之后,再去寻找小条件
此时A是:这就是大条件前面的小条件
if a < c :
print(a)
else:
print(c)
print(a) if a < c else print(c)
此时B是:这就是大条件后面的小条件
if b < c :
print(b)
else:
print(c)
print(b) if b < c else print(c)
现在我们只需要把A和B代入,就是我们的答案:
print(a) if a < c else print(c) if a < b else print(b) if b < c else print(c)
5.验证角谷猜想Powere
$' R-tj~:9,T.6{JOGxi
角谷猜想的内容是:任意给定一个正整数,若它为偶数则除以 2,若它为奇数则乘以 3 再加 1,得到一个新的自然数,按照这样的方法计算下去,最终的结果必将是 1。V,3Bf6:
<zl!W~SU4%BNqjg&+h"Z}8io
比如给定的自然数是 5,则 5 * 3 + 1 = 16 -> 16 / 2 = 8 -> 8 / 2 = 4 -> 4 / 2 = 2 -> 2 / 2 = 1。4m`Dg
C<-W@SO:>7mDd?_3c+Ffw8B*Vx
现在要求大家编写一个验证角谷猜想的程序
n = int(input("请输入一个自然数:"))
while n > 0:
if n % 2 == 0:
print(n, "/2 = ", n // 2, sep='')
n = n // 2
else:
print(n, "*3+1 = ", n * 3 + 1, sep='')
n = n * 3 + 1
if n == 1:
break
其实第五题我也不太会,让我再研究一下