py习题1

【问题描述】试编写一个程序判断6位密码是否正确,若密码正确输出right,密码不正确输出wrong,如果输入的密码有非数字字符则输出wrong。密码规则是: 第i位数字是第i-1位数字加1后的3次方的个位数( 2<=i<=6)。
【输入形式】一个六位密码
【输出形式】"right" 或者"wrong"
【样例输入】272727
【样例输出】right
【样例说明】密码272727中第2位的7是第1位的2加1后的3次方的个位数。又,(7+1)的3次方为512,其个位数为2),以此类推。

s=input()
c=0
if s.isdigit():
    for i in range(1,6):
        num=(int(s[i-1])+1)**3%10
        if int(s[i])==num:
            c+=1
            continue
        else:
            print('wrong')
            break
    if c==5:
        print ('right')
else:
    print('wrong')    

### Python 编程练习题 以下是几类适合不同水平学习者的 Python 编程练习题,涵盖了基础知识到实际应用的内容: #### 基础题目 这些题目主要涉及变量、数据类型、条件语句和循环结构。 1. **计算圆的面积** 输入半径 `r`,输出圆的面积。公式为 \( \text{Area} = \pi r^2 \)[^1]。 ```python import math radius = float(input("请输入圆的半径: ")) area = math.pi * (radius ** 2) print(f"圆的面积为 {area:.2f}") ``` 2. **判断闰年** 判断输入的一年是否为闰年。如果该年能被4整除但不能被100整除,或者能被400整除,则为闰年[^2]。 ```python year = int(input("请输入一个年份: ")) if (year % 4 == 0 and year % 100 != 0) or (year % 400 == 0): print(f"{year} 是闰年") else: print(f"{year} 不是闰年") ``` #### 中级题目 这类题目通常涉及到函数定义、列表操作以及字符串处理等内容。 3. **十六进制转八进制** 将给定的一个十六进制数转换成对应的八进制表示形式[^3]。 ```python n = int(input()) result = [] for _ in range(n): a = input() octal_value = oct(int(a, 16))[2:] result.append(octal_value) for res in result: print(res) ``` 4. **统计字符频率** 接收一段文字作为输入,返回每个字母出现次数最多的前三个字母及其对应频次。 ```python from collections import Counter text = input("请输入一段文字: ").lower().replace(' ', '') frequency = Counter(text).most_common(3) for char, freq in frequency: print(f"'{char}' 出现了 {freq} 次") ``` #### 高级题目 高级题目可能需要运用更复杂的算法或模块来解决问题。 5. **实现快速排序** 使用递归方法编写一个可以对任意长度数组进行升序排列的快速排序程序。 ```python def quick_sort(arr): if len(arr) <= 1: return arr else: pivot = arr[len(arr) // 2] left = [x for x in arr if x < pivot] middle = [x for x in arr if x == pivot] right = [x for x in arr if x > pivot] return quick_sort(left) + middle + quick_sort(right) array = list(map(int, input("请输入一组数字并用空格分隔它们: ").split())) sorted_array = quick_sort(array) print(sorted_array) ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值