Python完全平方数】的更多相关文章

python解题源代码如下: import math """ 简述:一个整数,它加上100和加上268后都是一个完全平方数 提问:请问该数是多少? Python解题思路分析:在10000以内判断,将该数加上100后再开方,加上268后再开方,如果开方后的结果满足如下条件,即是结果 """ for i in range(10000): x = int(math.sqrt(i + 100)) # math.sqrt(i + 100) 返回i + 10…
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后,仍为完全平方数的条件: 正确代码如…
题目:一个整数,它加上100后是一个完全平方数,再加上168又是一个完全平方数,请问该数是多少? 程序分析:可填在百位.十位.个位的数字都是1.2.3.4.组成所有的排列后再去 掉不满足条件的排列. 假设该数为 x. 1.则:x + 100 = n2, x + 100 + 168 = m2 2.计算等式:m2 - n2 = (m + n)(m - n) = 168 3.设置: m + n = i,m - n = j,i * j =168,i 和 j 至少一个是偶数 4.可得: m = (i +…
[Python练习题 003]一个整数,它加上100后是一个完全平方数,再加上168又是一个完全平方数,请问该数是多少? ------------------------------------------------- 所谓的"完全平方数",就是开完根号仍然是整数. 数学渣是这么思考的:假设这个数 i 在10000以内.第一步:x = sqrt(i+100).如果 x == floor(x),则证明 x 是个整数.第二步道理也相同,但要记得把 x**2 把根号还原回来,再加上 168…
思路: 完全平方数开根号后是一个整数,非完全平方数开根号的话是一个非整数 开根号后取整,如果开根号后是整数的话就不会改变值的大小 取整后再平方,如果值和之前一样,说明是完全平方数 import math def isSqr(n): a = int((math.sqrt(n))) return a * a == n…
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…
3.一个整数,它加上100后是一个完全平方数,再加上268又是一个完全平方数,请问该数是多少? 正解: 源码: #!/usr/bin/python # -*- coding: UTF-8 -*- import math for i in range(1,10000): r = int(math.sqrt(i + 100)) k = int(math.sqrt(i + 268)) if r**2 == i + 100 and k**2 == i + 268: print i…
今天接触了python,了解了一下 python 的基础语法,于是想着手训练一下,在本习题集中,参考代码为提供的参考答案,前面的代码为自己思考的代码,最后每道题给出练习的时间. Python 基础练习题1 题目:有1.2.3.4个数字,能组成多少个互不相同且无重复数字的三位数?都是多少? 代码 def printNum(): sum = 0 for i in range(1,5): for j in range(1,5): for k in range(1,5): if i==j or i ==…
原文链接:http://www.cnblogs.com/CheeseZH/archive/2012/11/05/2755107.html 无论学习哪门计算机语言,只要把100例中绝大部分题目都做一遍,就基本掌握该语言的语法了. [程序1] 题目:有1.2.3.4个数字,能组成多少个互不相同且无重复数字的三位数?都是多少? #Filename:001.py cnt = 0#count the sum of result for i in range(1,5): for j in range(1,5…
最近看了python的语法,但是总感觉不知道怎么使用它,还是先来敲敲一些简单的程序吧. 1.题目:有1.2.3.4个数字,能组成多少个互不相同且无重复数字的三位数?都是多少? 程序分析:可填在百位.十位.个位的数字都是1.2.3.4.组成所有的排列后再去掉不满足条件的排列. if __name__ == "__main__": s = (1,2,3,4) for a in s: for b in s: for c in s: if a != b and b != c and c !=…