早教吧 育儿知识 作业答案 考试题库 百科 知识分享

一个正整数能表示成另两个正数的平方差,则称这个数为智慧数.那么比2005小的正整数中,最大的

题目详情
一个正整数能表示成另两个正数的平方差,则称这个数为智慧数.那么比2005小的正整数中,最大的
▼优质解答
答案和解析
智慧数是可以表示为两个数的平方差的数.可以表示4K+2的都不是智慧数(K为整数).
原理如下...
能被4整除(4除外)的数一定是智慧数
还有奇数也一定是智慧数(1除外)
第1个智慧数是3
第2个 是5
第3个 是7
1,2,3,4,5,6,7,8,9,10,11,12,13,.,
除去1234前4项有一个智慧数
其余的
每4项中肯定有3个智慧数
而且一定是4个中第2个不是智慧数
所以,比2005小的正整数中,最大智慧数=2004(2004是4的倍数)
2004=170*170-164*164
2005=203*230-198*198
计算智慧数的C语言程序:
#include
int main(int argc,char* argv[])
{
int a=3,b=1;
while(1) {
if(a*a-b*b