四时宝库

程序员的知识宝库

敲黑板,用Python和C语言对奇怪的平方数同时求解

今天的Python题目是:一个整数,它加上100后是一个完全平方数,再加上168又是一个完全平方数,请问该数是多少?这个题目很简单,我们假设在10万以内判断,先将该数加上100后再开方,再将该数加上268后再开方,如果开方后的结果满足如下条件,即是结果。

下面请看C语言求解:

#include<stdio.h> 
#include<math.h>
int main(){
	int i,x,y,z;
	for(i=1;i<100000;i++){
		x = sqrt(i+100);
		y = sqrt(i+268);
		if(x*x == i+100 && y*y == i+268){
			printf("\n%d\n",i);
		}
	}
}

下面请看Python求解:

import math
for i in range(100000):
 x = int(math.sqrt(i + 100))
 y = int(math.sqrt(i + 268))
 if(x * x == i + 100) and (y * y == i + 268):
 print(i)

最后得到的结果都是21、261、1581。但是俩者之间有着很多不同,欢迎大家留言,我们再一起讨论二者的差距。

发表评论:

控制面板
您好,欢迎到访网站!
  查看权限
网站分类
最新留言
    友情链接