python随手小练11(南农作业题)

题目1:

计算阶乘的和

可以看出如下形式:1+2!+3!+...+15! = 1+2(1+3(1+4...(15(1))))

具体操作:

python 复制代码
x = int(input("输入数字:"))
res = 1
for i in range(x, 1 , -1):
    res = (1 + (i * res))
print("阶乘的和为:",res)

#例:4
#1+2!+3!+4! =1+2(1+3(1+4)) 
#res = 1 + (4*1)  res=5
#res = 1 + (3*5)  res=16
#res = 1 + (2*16)  res=33

结果展示:

题目2:

计算s=k+kk+kkk+...+kkk...kkk,前n项的和,k为1~9之间的某个数

具体操作:

python 复制代码
#计算s=k+kk+kkk+...+kkk...kkk,前n项的和,k为1~9之间的某个数
k,n = eval(input("请输入k,n的值"))  #因为有两个接收量,所以说须输入两个数据(中间用,隔开)
s = 10                             #eval()的参数形式必须为字符串或字符串变量
item = 0
for i in range(1,n+1):    #循环遍历1~n(即n次)
  item = item + k*pow(10.0,i-1)#pow(x,y):输出x的y次方,用来算出每一项的值(例:2,22,222)
  s = s + item    #将每一项的值加起来(0+2=2,2+22=24,24+222=246)
print("值为:",s)

结果展示:

题目3:

月份字符串为month="JanFebMarAprMayJunJulAugSepOctNovDec"从键盘上输入一个表示月份的数字(1~12),输出对应月份的英文缩写

具体操作:

python 复制代码
month="JanFebMarAprMayJunJulAugSepOctNovDec"
monthid=eval(input("请输入数字月份1~12:"))   #eval()的参数形式必须为字符串或字符串变量
#使用 print(type(monthid)) ,可以看出eval的输出形式为int,eval只去掉最外层引号,
#然后内层如果是表达式会进行计算(例:'1+2',输出3)
pos = month[(monthid-1)*3:monthid*3]    #用pos进行定位    
print("{}月对应的是:{}".format(monthid,pos))
#monthid[m:n]取出坐标为m~(n-1)的元素  []内为索引:0~(n(字符串长度)-1)

结果展示:

题目4:

实现千米和英里*的转换。从键盘输人千米或英里及对应的符号,根据输人的符号,自动将输人转换为另外一种单位数值,并输出。

这里千米用"km"表示,英里用'ml'表示。1ml=1.609344km。

具体操作:

python 复制代码
dis = input("千米km结束,英里ml结束:")   #如30km
if dis.find("ml") != -1:    #dis.find("ml")  如果dis里有ml则返回坐标,无则返回-1
    km = float(dis[:-2])*1.609344    #因为dis[:-2]为str型,所以需要强制转换成float型
    print("{}英里为等于{:.2f}千米".format(float(dis[:-2]), km))  
    #dis[:-2]:省略默认step为1,从左边第一个开始到倒数第三个
if dis.find("km") != -1:
    ml = float(dis[:-2])/1.609344
    print("{}千米为等于{:.2f}英里".format(float(dis[:-2]), ml))
  #参考print("{}英里为等于{:2f}千米").format(float(dis[:-2]),km))

结果展示:

题目5:

编写程序,判断一个身份证号所代表的是男还是女。假设身份证第 14位或第17位数字表示性别:奇数为男性,偶数为女性

具体操作:

python 复制代码
idcard=input("身份证号:")
res = '女'    #默认为女
if len(idcard) == 18:  #判断字符串长度  
  if int(idcard[16])%2 == 1:   #idcard[16]输出为str
    res = '男'
if len(idcard) == 15:  
  if int(idcard[13])%2 == 1:
    res = '男'
print('身份证:{}的性别是:{}'.format(idcard,res))

结果展示:

相关推荐
我的xiaodoujiao5 分钟前
API 接口自动化测试详细图文教程学习系列32--Allure测试报告2
python·学习·测试工具·pytest
人邮异步社区19 分钟前
怎么把C语言学到精通?
c语言·开发语言
qetfw24 分钟前
MXU:Tauri 2 + React 的 MaaFramework 跨平台 GUI 源码
前端·python·react.js·前端框架·开源项目·效率工具
爱刷碗的苏泓舒42 分钟前
PPP-AR 中的参考星选取:数学原理、评价指标与切换处理
算法·gnss·模糊度固定·ppp-ar·星间单差·参考星·卫星端偏差
心平气和量大福大1 小时前
C#-WPF-控件-TextBox 数据绑定
开发语言·c#·wpf
ttwuai1 小时前
Cursor 生成 CRUD 后,Go 后台接口别只测 200:JWT、RBAC 和 tenant_id 怎么验
开发语言·后端·golang
用户8356290780511 小时前
Python 实现 Excel 页面布局与打印设置自动化
后端·python
破碎的南瓜1 小时前
sqli--sql注入过关笔记(1,2,3,4,5,9)
数据库·笔记·sql
এ慕ོ冬℘゜1 小时前
前端基础:什么是时间戳?JS获取时间戳三种方法与实战用途
开发语言·前端·javascript
执明wa1 小时前
LayoutInflater详解: XML是如何变成View的?
android·xml·开发语言·android studio