python练习题(4)

Python由荷兰数学和计算机科学研究学会的吉多·范罗苏姆 于1990 年代初设计,作为一门叫做ABC语言的替代品。

[1]  Python提供了高效的高级数据结构,还能简单有效地面向对象编程。Python语法和动态类型,以及解释型语言的本质,使它成为多数平台上写脚本和快速开发应用的编程语言

[2]  随着版本的不断更新和语言新功能的添加,逐渐被用于独立的、大型项目的开发

[3] Python解释器易于扩展,可以使用C语言或C++(或者其他可以通过C调用的语言)扩展新的功能和数据类型。 

[4]  Python 也可用于可定制化软件中的扩展程序语言。Python丰富的标准库,提供了适用于各个主要系统平台的源码或机器码.

[5] 2021年10月,语言流行指数的编译器Tiobe将Python加冕为最受欢迎的编程语言,20年来首次将其置于Java、C和JavaScript之上

题目一: 

【编程实现】
输入一个字符串(N),输出该字符串的长度。
输入描述:输入一个字符串N
输出描述:输出该字符串的长度

 【样例输入】
abed
【样例输出】
4

a=input()
print(len(a))

题目二:

【编程实现】
输入一个字符串,输出这个字符串的最后一个字符。
输入描述:输入一个字符串
输出描述:输出这个字符串的最后一个字符 

 【样例输入】
abc
【样例输出】
c

#第一种方法
a=input()
print(a[-1])
#第二种方法
a=input()
print(a[len(a)-1])

题目三:

 【编程实现】
分别输入两个正整数M、N,输出M到N之间
(含M、N)所有可被7整除,但不是5的倍数的数,
并以逗号分隔按顺序打印在一行。
输入描述:分别输入两个正整数M、N
输出描述:输出M到N之间(含M、N)所有可被7整除,
但不是5的倍数的数,并以逗号分隔按顺序打印在一行

 【样例输入】
100
147
【样例输出】
112,119,126,133,147

#join()用于将序列中的元素以指定的字符连接成一个新的字符串
num1=int(input())
num2=int(input())
l=[]#创建空列表
for i in range(num1,num2+1):
    if (i%7==0) and (i%5!=0):
        l.append(str(i))
print(','.join(l))

题目四:

【提示信息】
小蓝家的灯是拉线型开关的,拉一次灯开,再拉一次灯关,未拉之前灯是熄灭状态。
【编程实现】
输入一个正整数M(l<M<100),作为小蓝拉灯的次数,判断拉灯M次后,灯是点亮状态还是熄灭
状态。
输入描述:输入一个正整数M作为拉灯的次数(l<M<100)
输出描述:如果灯是点亮状态输出整数“1”,如果灯是熄灭状态输出整数“0”

 【样例输入】
5
【样例输出】
1

 

a=int(input())
if a%2==0:
    print(0)
else:
    print(1)

题目五:

【编程实现】
计算某个电梯的用电量。
电梯可到达最低楼层为地下3层(-3 ),最高为地上12层(12 ),中间没有0层;
电梯向上运行时每上升1层消耗1单位电量,向下运行时每下降1层消耗0.3单位电量;
请你通过输入的某段时间内电梯停过的楼层顺序,计算电梯消耗了多少单位电量。
输入描述:N个数字(2< = N< = 10),数字间以逗号分隔,
代表电梯停过的楼层[-3,12];
输出描述:电梯消耗的单位电量数;

 【样例输入】
1 , 11 , 1
【样例输出】
13.0

 

a=list(map(int,input().split(',')))
dianfei=0
for i in range(0,len(a)-1):
    if  a[i+1] - a[i] > 0 :
        #上升
        if  a[i]<0 and a[i+1]>0:#经过0层
            dianfei+=(a[i+1]-a[i]-1)
        else:
            dianfei+=(a[i+1]-a[i])
    else:
        #下降
        if  a[i] > 0 and a[i+1]<0:#经过0层
            dianfei+=(a[i]-a[i+1]-1)*0.3
        else:
            dianfei+=(a[i]-a[i+1])*0.3
print(dianfei)

题目六:

【编程实现】
给定一组包含n个(n>3)正整数数据,和一个正整数M,
从这n个正整数中任意拿出两个数相加,相加后的结果正好为M的值,
计算出这n个正整数中有多少组这样的数据。
例如:
给定一组正整数为:1,3, 2,4,正整数M为3,其中有1组符合要求,为1和2
给定一组正整数为:2, 7, 11, 6, 13,正整数M为13,其中有2组符合要求,
分别为2和11, 7 和6
输入描述:第一行输入n个正整数,正整数之间英文逗号隔开
(正整数不能有重复,且n>3)
第二行输入一个正整数M
输出描述:输出n个正整数中两个数相加的结果正好为M的组合有几组

 【样例输入】2, 7,11,6,13
                   13
【样例输出】2

a=list(map(int,input().split(',')))
b=int(input())#第二行输入的正整数
c=0#计数
for i in range(0,len(a)-1):
    for j in range(i+1,len(a)-1):
        if a[i]+a[j]==b:#判断两个数相加是否等于第二行输入的数
            c=c+1#如果相等,计数单位+1
print(c)

题目七:

【编程实现】
输入一个正整数n,如果n为偶数,则计算1/2+1/4+1/6... + 1/n的结果,
如果n为奇数时,则计 算1/1+1/3 + 1/5... + 1 /n的结果。输出最后计算的结果。
例如:输入为4,则计算1/2+1/4的结果,输出为0.75
输入为5,则计算1/1+1/3 + 1/5的结果,输出为1.53
输入描述:输入一个正整数n
输出描述:输出最后计算的结果(最后结果保留两位小数,不要在每次除法时保留小数)

 【样例输入】
7
【样例输出】
1.68

def fuc1(n): 
    sum=0 
    for i in range(2,n+1,2):
        sum=sum+1/i 
    print("%.2f" %sum) 
 
def fuc2(n):
    sum=0  
    for i in range(1,n+1,2):#判断奇数的情况
        sum=sum+1/i
    print("%.2f" %sum)
n=int(input()) 
if(n%2==0):
    fuc1(n) 
else: 
    fuc2(n)

题目八:

【编程实现】
用户输入一个正整数N (3< = N<=9) ,从0到N之间的所有正整数(包含0和N)
中选择三个,组成一个三位数(0不能作为百位数),
且这个三位数为奇数,请计算出共有多少种满足条件的三位数组合。
(注意:组成的每个三位数各个位上的数字不能重复)
输入描述:输入一个正整数N ( 3< = N<=9 )
输出描述:输出满足条件的三位数组合的个数

 【样例输入】
3
【样例输出】
8

s=[]
a=int(input())
for i in range(1,a+1):
    for j in range(0,a+1):
        for k in range(0,a+1):
            if (i*100+j*10+k) %2 !=0 :
                if i!=j and i !=k and j!=k:#
                    s.append(i*100+j*10+k)
print(len(s))

博主提供了大量的文章能使我们的python技术更上一层楼,有兴趣的话可以翻看博主之前的文章(不敢吱声)。 

 

  • 3
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值