python作业

这篇博客探讨了使用Python解决一系列数学问题,包括数字串相加、素数判断、利润提成计算以及不同类型的累加和问题,如正负数交替累加、倒数累加和阶乘累加。通过这些实例,展示了Python在解决数学计算上的应用。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

题目:求s=a+aa+aaa+aaaa+aa…a的值,其中a是一个数字

s = input('a:')   ##输入基本的数,此时s的数据类型是字符串
sum = 0    ##让sum=0
for count in range(int(input('N:'))):  ##定义count,count取值从0开始,N的意义为让这个基本数进行多少次的运算,第一次是a,第二次是aa……
    result = s * (count+1)   ##此时字符串s * (count+1) 是表示将s这个字符串重复count+1次
    result1 = int(result)   ##将字符串转化为整型,进行后续的运算
    sum = sum + result1   ##逐步求和
    print('result = %s '%result)   ##显示每次重复字符串后的结果
print('a+aa+aaa+....= %s'%sum)  ##算出最后的总和

在这里插入图片描述

判断101-200之间有多少个素数,并输出所有素数
一个数的因数除了1和它本身外,没有其他的因数,这个数为质数

def isprime(num):  定义函数isprime() num为形参
    for i in range(2,num): ##根据素数的定义,将这个数从2开始除
        if num % i == 0:   ##如果这个数i取余为0,说明它可以整除除了1和它本身以外的数,说明不是质数
            return False
    else:                     ##这里一定要注意else放置的位置,else要放在for循环都判断结束完成之后,再进行,出来的数只能被1和它本身整除
            return True
print([i for i in range(101,201) if isprime(i)])  ##利用列表生成式,i在101和200之间,如果返回值为True,则返回值i的值

在这里插入图片描述

企业发放的奖金根据利润提成。利润(I)低于或等于10万元时,奖金可提10%
利润高于10万元,低于20万元时,低于10万元的部分按10%提成,高于10万元的部分,可提成7.5%;
20万到40万之间时,高于20万元的部分,可提成5%;
40万到60万之间时高于40万元的部分,可提成3%;
60万到100万之间时,高于60万元的部分,可提成1.5%;
高于100万元时,超过100万元的部分按1%提成;
从键盘输入当月利润I,求应发放奖金总数?

num=input("Please input your number:(unit is million)\n")
num2=float(num)
if num2<=0:      ##进行if的判断
    print("Your number is error!")
elif num2<=10:
    print ("You have %f million RMB."%(num2*1.1),end=" ")
elif num2<=20:
     print ("You have %f million RMB."%(11+(num2-10)*1.075),end=" ")
elif num2<=40:
    print ("You have %f million RMB."%(21.75+(num2-20)*1.05),end=" ")
elif num2<=60:
    print ("You have %f million RMB."%(42.75+(num2-40)*1.03),end=" ")
elif num2<=100:
    print ("You have %f million RMB."%(63.35+(num2-60)*1.015),end=" ")
else:
    print ("You have %f million RMB."%(103.95+(num2-100)*1.01),end=" ")

在这里插入图片描述

  1. 累加和类型程序:
    求f=1+2+…+9【很简单的问题】
    求f=1-2+3-4+…+9【在(一)的基础上,学习如何一正一负地累加】
    求f=1-1/2+1/3-1/4+…+1/9【在(二)的基础上,被加数成了自然数的倒数】
    求f=1!-2!+3!-4!+…+9!【在(二)的基础上,被加数成了自然数的阶乘】
##f=1+2+...+9
sum = 0
for i in range(1,10):
    sum = sum + i
print("%d"%sum)

在这里插入图片描述

##1-2+3-4+...+9
sum = 0
for i in range(1,10):
    num = (-1) ** (i+1) * i
    sum = sum + num
    print("第%d个数:%d"%(i,num))
print("1-2+3-4+...+9=%d"%sum)

在这里插入图片描述

sum = 0
for i in range(1,10):
    num = 1/((-1) ** (i+1) * i)
    sum = sum + num
    print("第%d个数:%f"%(i,num))
print("1-1/2+1/3-1/4+...+1/9=%f"%sum)

在这里插入图片描述

## f=1!-2!+3!-4!+...+9!【在(二)的基础上,被加数成了自然数的阶乘】
for i in range(1,10):
    num = num * i
    print("%d!=%d"%(i,num))
    num1 = (-1) ** (i+1) * num
    print("进行符号的添加之后第%d项阶乘结果为:%d"%(i,num1))
    sum = sum + num1
print("阶乘结果:%d"%sum)

先用1!-2!+3!进行测试
在这里插入图片描述
运行结果
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值