day12 --------------------------------------------------------------- 实例019:完数 题目 一个数如果恰好等于它的因子之和,这个数就称为"完数".例如6=1+2+3.编程找出1000以内的所有完数. 分析:如果能被a整除,那么a是因子,放入一个列表然后再求和,与原被除数相等,就是完数 1 for i in range(1,int(a)): 2 list = [] 3 if i >1: 4 for j in r…
day2 --------------------------------------------------------------- 实例003:完全平方数 题目: 一个整数,它加上100后是一个完全平方数,再加上168又是一个完全平方数,请问该数是多少? 仿佛不会思考,直接上手写... 1 k = 10001 2 for i in range(0,k): 3 for j in range(0,k): 4 if j*j ==(i+100): 5 for k in range(0,k): 6…
1:题目:有四个数字:1.2.3.4,能组成多少个互不相同且无重复数字的三位数?各是多少? 程序分析:可填在百位.十位.个位的数字都是1.2.3.4.组成所有的排列后再去 掉不满足条件的排列. 程序源代码: for i in range(1, 5): for j in range(1, 5): for k in range(1, 5): if (i != k) and (i != j) and (j != k): print(i, j, k) 以上实例输出结果为: 1 2 3 1 2 4 1 3…
01:有1,2,3,4个数字,能组成多少个互不相同且无重复的三位数,都是多少思路:可填写在百位,十位,个位的数字都是1,2,3,4.组成所有的排列后再去掉不满足条件的排列 list =[,,,] list1=[] for one in list: for owe in list: for qwe in list: if owe!=one and owe!=qwe and one!=qwe: a= '%d%d%d'%(one,owe,qwe) list1.append(a) print(list1…
Python经典练习题 网上能够搜得到的答案为: for i in range(1,85): if 168 % i == 0: j = 168 / i; if i > j and (i + j) % 2 == 0 and (i - j) % 2 == 0 : m = (i + j) / 2 n = (i - j) / 2 x = n * n - 100 print(x) 输出答案为: -99 21 261 1581 但其实四个数字,均不符合+100和+168后,仍为完全平方数的条件: 正确代码如…
# -------------------------------------------------## 所谓的“完全平方数”,就是开完根号仍然是整数.## 数学渣是这么思考的:假设这个数 i 在10000以内.# 第一步:x = sqrt(i+100).如果 x == floor(x),则证明 x 是个整数.# 第二步道理也相同,但要记得把 x**2 把根号还原回来,再加上 168,然后再来开根号,得到 y,再判断其是否为整数.# 经过这两次判断,都能通过的话,则为所求的整数.import…
day36 --------------------------------------------------------------- 实例054:位取反.位移动 题目 取一个整数a从右端开始的4〜7位. 分析: 不会,直接上答案吧 (1)先使a右移4位. (2)设置一个低4位全为1,其余全为0的数.可用(0<<4) (3)将上面二者进行&运算. a=int(input('输入一个数字: ')) b=0 # 0 b=~b # 1 b=b<<4 # 10000 b=~b…
day9 --------------------------------------------------------------- 实例014:分解质因数 题目 将一个整数分解质因数.例如:输入90,打印出90=233*5.  分析:每个合数都可以写成几个质数相乘的形式,其中每个质数都是这个合数的因数,叫做这个合数的分解质因数,算法思路网上找的,代码是自己敲的 1 import math 2 # 先判断数num是否为合数,如果是,选择最小的质数k=2,进行分解质因数的过程: 3 # (1)…
day13 --------------------------------------------------------------- 实例021:猴子偷桃 题目 猴子吃桃问题:猴子第一天摘下若干个桃子,当即吃了一半,还不瘾,又多吃了一个第二天早上又将剩下的桃子吃掉一半,又多吃了一个.以后每天早上都吃了前一天剩下的一半零一个.到第10天早上想再吃时,见只剩下一个桃子了.求第一天共摘了多少. 分析:反向推断,第一天摘1个桃子,第二天会摘(1+1)x2个桃子....第9天会摘xxx个桃子?代码如…
深深感知python基础是有多么重要,Ljh说一定要多练题,so,我现在开始要每天打卡练习python.加油! 01:求‘1-100’的偶数和 #第一种解法: sum=0 num=0 while num<101: num+=1 if num%2==0: sum+=num print(sum) #第二种解法: sum=0 for i in range(2,101,2): sum+=i print(sum) #第三种解法: sum=0 for i in range(1,101): if i%2==0…