python实验

这篇博客记录了一次Python实验,涉及输入任意自然数求各位数字之和、集合交并差集操作、数字的二进制、八进制和十六进制转换以及整数列表降序排列和等比数列前n项和的计算。通过实例展示了编程过程中的问题与解决方案。

实验报告

                                                                 第  1  

一、实验目的

(说明:此处拷贝每一次实验的实验目的)

  • 实验环境

Pychram

三、实验内容、步骤和结果分析

题目一:编写程序:输入任意大的自然数,输出各位数字之和

源码:s = input()

sum = 0

for n in s:

    sum += int(n)

print(sum)

运行结果截图:

 

 

实验过程分析:第一次写出如下代码:

发现该代码并不能够运行两位数及更多位数的运算,且不能用空格或者逗号隔开。

题目二:编写程序:输入两个集合setA和setB,分别输出交集,并集和差集(setA-setB)

源码:

a=input('输入集合A:')

b=input('输入集合B:')

seta=a.split(' ')#split(“”)函数的参数可以是任何分隔符,包括(a,b,c….;1,2,3…;%,!,*,空格)

setb=b.split(' ')#split(’ ‘)则输入以空格分隔,split(’,‘)则输入以逗号分隔

seta=[int(seta[i])for i in range(len(seta))]#for循环,把每个字符转成int值

setb=[int(setb[i])for i in range(len(setb))]#将输入数值转变为列表

setA=set(seta)

setB=set(setb)#将列表转为集合

m=setA&setB

n=setA|setB

s=setA-setB

print('交集为:',m)

print('并集为:',n)

print('差集为:',s)

运行结果截图:

 

实验过程分析:(说明:此处总结下该题在编码过程遇到的困难或者错误,可文字或截图)

题目三:编写程序:输入一个自然数,输出它的二进制、八进制和十六进制

源码:

a=eval(input('输入一个自然数:'))

b=bin(a)

c=oct(a)

d=hex(a)

print('自然数的二进制为:',b)

print('自然数的八进制为:',c)

print('自然数的十六进制为:',d)

运行结果截图:实验过程分析:(说明:此处总结下该题在编码过程遇到的困难或者错误,可文字或截图)

 

题目四:编写程序:输入一个包含若干整数的列表,输出新列表,要求新列表中的所有元素来自于输入的列表,并且降序排列。

源码:s = sorted(map(int, input().split()),reverse = True)

print(s)

运行结果截图:实验过程分析:s = sorted(map(int, input().split()))这个是升序,改变reverse之后就变了。

 

题目五:编写程序:输入等比数列的首项、公比和一个自然数n,输出这个等比序列前n项的和。关键步骤要求使用内置函数int( )。

源码:n=int(input("n="))

a=float(input("a="))

q=float(input("q="))

if q == 1:

    s=int(a*n)

else:

    s=int(a*(1-q**n)/(1-q))

print("前n项和为:%d"%s)

运行结果截图:实验过程分析:(说明:此处总结下该题在编码过程遇到的困难或者错误,可文字或截图)

 

评论 1
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值