python头歌实训之循环结构

1.斐波那契数列

x = eval(input("")) 
#代码开始
a, b = 1, 1
if x == 1 or x == 2:
    c = 1
else:
    for i in range(3, x+1):
        c = a+b
        a = b
        b = c
print(c)
#代码结束

2.统计一段英文语句中的单词数和句子数

x = input()
#代码开始
cy, jz, y = 0, 0, ''
for i in x:
    if i == ' ':
        cy += 1
    if y == '.' and i != ' ':
        cy += 1
    if y == ',' and i !=' ':
        cy += 1
    if i == '.'or i == '!'or i == '?':
        jz += 1
    y = i
#代码结束
print("单词{}句子{}".format(cy, jz))

3.密码判断

f1 = open("sy5/密码.txt", "r", encoding="utf-8")
x = input("用户名")
y = input("密码")
#代码开始
i = 0
for line in f1:
    line=line.strip("\n")
    pos=line.find(",")
    if line[:pos] == x and y == line[pos+1:]:
        print("密码正确")
        i = 1
if i == 0:
    print("用户名或密码错误")
#代码结束

4.通过数列求自然常数e

import math
#代码开始
x, z, e = 1, 1.0, 1.0
while(z >= 1e-7):
    n = math.factorial(x)
    x += 1
    z = 1.0/n
    e += z
#代码结束
print("e值为{:.8}".format(e))

5.双倍余额递减法计算固定资产折旧

yj = eval(input("原价"))
cz = eval(input("残值"))
n = eval(input("年限"))
zj = 2/n
for i in range(1,n+1):
    if i <= n-2: 
        fe = yj * zj
        yj -= fe
        print("第{:2d}年折旧{:.2f}".format(i, fe))
    else:
        xw = (yj-cz)/2
        print("第{:2d}年折旧{:.2f}".format(i, xw))

6.销售统计

#代码开始
c, su, sl = 0, 0, 0
while(input("输入商品代码") != '0000'):
    j = eval(input("输入商品价格"))
    s = eval(input("输入商品数量"))
    c += 1
    h = s*j
    su += h
    sl += s
#代码结束
print("商品种类{}数量总计{}金额总计{:.2f}".format(c, sl, su))

7.投资年限计算

m = eval(input("存款"))
r = eval(input("年利率"))
x = eval(input("金额"))
#代码开始
n = m
for i in range(1,10000):
    m = m * (1+r) + n
    if(m >= x):
        print(i)
        break
#代码结束

8.诗人作品统计

f1 = open("sy5//唐诗.txt", "r")
x = input("输入作者")
#代码开始
s = 0
for line in f1:
    m = line.find(':')
    if line[3:m] == x:
        s += 1
        line = line.strip("\n")
        print(line)
if s == 0:
    print("无作品")
else:
    print("作品数 {}".format(s))
#代码结束

你可能感兴趣的:(头歌实训,python)