python基础训练 day2
小白打卡第二天,冲冲冲!
- 第一题
# 题目:一个整数,它加上100后是一个完全平方数,再加上168又是一个完全平方数,请问该数是多少?
不知道这个数多大,设这个数为x,可以得到√(x+100)是一个整数,√(x+268)也是一个整数,就整个while循环,直到找出一个满足条件的数结束循环。
i = 1
while True:
m = pow(i+100,0.5)
n = pow(i+268,0.5)
m_split = str(m).split('.') # 按照小数点进行分割
n_split = str(n).split('.')
m_fractional = int(m_split[1]) # 取出小数部分
n_fractional = int(n_split[1])
if m_fractional == 0 and n_fractional == 0:
print(i)
break
else:
i += 1
找不到就一直找吧,哈哈
# 运行结果
21
之后看到答案,结果不止一个数,还包含负数,这我着实没有考虑到负数,尴尬了。。。
for i in range(-100,10000