PTA的Python练习题(十六)

第4章-15 换硬币

挺难的,这里学到一个range的用法:

也就是说range函数能实现顺序和倒序,取决于step是正是负

count = 0
x = int(input())
a = x // 5
for m in range(a,0,-1):
    b = (x - (m * 5)) // 2
    for n in range(b,0,-1):
        c = x - (5 * m) - (2 * n)
        if m > 0 and n > 0 and c > 0:
            print("fen5:{}, fen2:{}, fen1:{}, total:{}".format(m,n,c,m + n + c))
            count += 1

print("count = {}".format(count))

第4章-16 jmu-python-判断是否构成三角形

a,b,c=map(int,input().split())
if a+b>c and a+c>b:
    print(‘yes‘)
else:
    print(‘no‘)

第4章-17 水仙花数

a=int(input())
for i1 in range(1,10):
    for i2 in range(0,10):
        for i3 in range(0,10):
          if a==3:
             total=i1*100+i2*10+i3*1
             if (total==i1**3+i2**3+i3**3):
                print(‘{}‘.format(total))

问题是这里没法算4位和5位的水仙花数

参考别人的代码:

import math
n=int(input())
for i in range(int(math.pow(10,n-1)),int(math.pow(10,n))):
    sum=0
    j=i
    while(j>=1):
        sum=sum+math.pow(j%10,n)
        j=j//10
    if(sum==i):
        print(‘{:d}‘.format(i))

看不太懂代码是用什么来算的

原文地址:https://www.cnblogs.com/echoDetected/p/12344889.html

时间: 2024-11-01 13:11:51

PTA的Python练习题(十六)的相关文章

PTA的Python练习题(六)

从 第3章-8 字符串逆序 开始 1. n = str(input()) n1=n[::-1] print(n1) 2. 不是很好做这道题,自己还是C语言的思维,网上几乎也找不到什么答案 s = input() idx = s.find("#") s = s[:idx] ss = s[:idx] s_16 = "0123456789ABCDEFabcdef" for c in s: if c not in s_16: s = s.replace(c, '') fla

Python进阶(十六)----面向对象之~封装,多态,鸭子模型,super原理(单继承原理,多继承原理)

Python进阶(十六)----面向对象之~封装,多态,鸭子模型,super原理(单继承原理,多继承原理) 一丶封装 , 多态 封装: ? ? ? ? ? ?将一些东西封装到一个地方,你还可以取出来 ? ? ? ? ? ?类设置静态属性, 设置一些方法 或者 对象, 对象可以在其对象封装一些属性 多态: ? ? ? ? ? ?python默认支持多态, 多态指的是一种事务具有多种形态 ? ? ? ? ? ?1.多态可以增加代码的灵活度: ? ? ? ? ? ?2.以继承和重写父类方法为前提: ?

Python第十六课(模块3)

Python第十六课(模块3)    >>>思维导图>>>中二青年 模块与包 模块 """ 三种来源 1.内置的 2.第三方的 3.自定义的 四种表示形式 1.py文件(******) 2.共享库 3.文件夹(一系列模块的结合体)(******) 4.C++编译的连接到python内置的 """ 导入模块 """ 先产生一个执行文件的名称空间 1.创建模块文件的名称空间 2.执行模

PTA的Python练习题(二十)

(PTA的Python题目4-21到4-30暂未解答,之后会抽时间再回头解答题目)写道题预热一下 这里涉及到字典问题.在Python字典是一系列键-值对,每个键都与一个值相关联,你可以使用键来访问与之相关联的值.事实上,我们可将任何Python对象用作字典中的值.(摘自<Python编程 从入门到实践>)如果我们要获取与键相关的值,可指定字典名和放在方括号内的键. 先定义一个字典,再输入键返回值 Week={'1':'Mon','2':'Tue','3':'Wed','4':'Thu','5'

PTA的Python练习题(十五)

第4章-12 求满足条件的斐波那契数 a=eval(input()) b=c=1 d=1 for i in range(a): c=b b=d d=b+c if d>a: print('{}'.format(d)) break 第4章-13 求误差小于输入值的e的近似值 a=eval(input()) b=1 count=1 count2=0 for i in range(1,100000): b=b*i count2=count count=count+1/b if (count-count2

PTA的Python练习题(十二)-第4章-7 统计学生平均成绩与及格人数

第4章-7 统计学生平均成绩与及格人数 a=eval(input()) b=list(map(int,input().split())) sum=sum(b) c=[i for i in b if i>=60] count=len(c) print('average = %.1f'%(sum/a)) print('count = %d'%(count)) 如果这里用append输入只能实现一行一行输入,不能实现同一行输入 知识点(列表的操作): """ ①实现嵌套列表的

PTA的Python练习题(二)

继续在PTA上练习Python (从 第2章-5 求奇数分之一序列前N项和  开始) 1. x=int(input()) a=i=1 s=0 while(i<=x): s=s+1/a a=a+2 i=i+1 print('sum = %.6f' %(s)) 2. 求交错级数也考虑了很久,这里要引入flag来计算.有时候表达式写的太繁琐,程序就进入了死循环. n=int(input()) s=a=0 b=-1 flag=1 for i in range(1,n+1): a=a+1 b=b+2 s=

PTA的Python练习题(五)

昨天耽搁了一天,今天继续 从  第3章-5 字符转换 开始 1. a=input() b="" for i in a: if i >='0' and i <='9': b=b+iprint(int(b))#(写成b=i+b会有倒置输出的问题) 2. 知识点: python 列表统计元素频数.频率 描述 count() 方法用于统计某个元素在列表中出现的次数. 语法 count()方法语法:list.count(obj) 看这网上也没有简单易懂的答案,都是拿着字典算的题目,就

笨办法学Python(十六)

习题 16: 读写文件 如果你做了上一个练习的加分习题,你应该已经了解了各种文件相关的命令(方法/函数).你应该记住的命令如下: close – 关闭文件.跟你编辑器的 文件->保存.. 一个意思. read – 读取文件内容.你可以把结果赋给一个变量. readline – 读取文本文件中的一行. truncate – 清空文件,请小心使用该命令. write(stuff) – 将stuff写入文件. 这是你现在该知道的重要命令.有些命令需要接受参数,这对我们并不重要.你只要记住 write