标题:一个整数(0-10000),它加上100后是一个完全平方数,再加上168又是一个完全平 ...
只看楼主
zmhdxy
Rank: 1
等 级:新手上路
帖 子:452
专家分:0
注 册:2007-9-27
 问题点数:0 回复次数:10 
一个整数(0-10000),它加上100后是一个完全平方数,再加上168又是一个完全平方数,请问该数是多少?
有一个编好的,大家给建议,还有没有别的方法
#include<stdio.h>
#include<math.h>
void main()
{
    long int i;
 double j,k;
 for(i=1;i<=10000;i++)
 {
 j=(int)sqrt(i+100);
 k=(int)sqrt(i+268);
 if(j*j==i+100&&k*k==i+268)
  printf("%d ",i);
 }
}
搜索更多相关主题的帖子: 整数 平方 include void double 
2007-11-30 12:03
nuciewth
Rank: 14Rank: 14Rank: 14Rank: 14
来 自:我爱龙龙
等 级:贵宾
威 望:104
帖 子:9786
专家分:208
注 册:2006-5-23
得分:0 
直接判断平方数.

倚天照海花无数,流水高山心自知。
2007-11-30 12:22
卧龙孔明
Rank: 9Rank: 9Rank: 9
等 级:贵宾
威 望:59
帖 子:3872
专家分:684
注 册:2006-10-13
得分:0 
可以用数学办法算出来,这是以前的初中数学竞赛题
x+100=a^2  .....1
x+168=b^2  .....2
2-1:
68=(b+a)(b-a)
因为68=68*1=34*2=17*4
又因为b+a b-a奇偶性相同
所以b+a=34 b-a=2 所以a=16
所以x=156

My Blog: www.aiexp.info
虽然我的路是从这里开始的,但是这里不再是乐土.感谢曾经影响过,引导过,帮助过我的董凯,飞燕,leeco,starwing,Rockcarry,soft_wind等等等等.别了,BCCN.
2007-11-30 12:24
zmhdxy
Rank: 1
等 级:新手上路
帖 子:452
专家分:0
注 册:2007-9-27
得分:0 
本人苯 能不能直接给代码啊

2007-11-30 20:47
zmhdxy
Rank: 1
等 级:新手上路
帖 子:452
专家分:0
注 册:2007-9-27
得分:0 
人呢 人呢

2007-12-02 01:03
zbqf109
Rank: 1
等 级:新手上路
帖 子:289
专家分:0
注 册:2006-12-31
得分:0 
一个整数(0-10000),它加上100后是一个完全平方数,再加上168又是一个完全平方数

分析:这个整数不大于10000,所以其平方根不大于100
设这个整数加上100为x,那么该整数为x-100
x是一个平方数,而且
x-100+168 = x+68  也是一个平方数

程序代码:
 
#include <stdio.h>
#include <stdlib.h>
// 判断一个数是否平方数 
inline bool IsSquareNumber( unsigned int number );
int main()
{
    int i = 0;
    for ( ; i < 100; i++ )
    {
        if ( IsSquareNumber( i * i + 68 ) )
           break;
    }
    printf("the number is: %d\n", i * i - 100);
    system("pause");
    return 0;
}
inline bool IsSquareNumber( unsigned int number )
{
       int i = 0;
       for ( ; i < 101; i++ )
       {
           if ( number == i * i )
              return true;
       }
       return false;
}

2007-12-02 01:35
Hunt
Rank: 1
等 级:新手上路
威 望:1
帖 子:199
专家分:9
注 册:2004-11-23
得分:0 
楼上的这个程序无法编译通过

程序人生最高境界:“我就是程序,程序就是我。”
2007-12-05 16:12
zmhdxy
Rank: 1
等 级:新手上路
帖 子:452
专家分:0
注 册:2007-9-27
得分:0 
文件的后缀名应该是cpp 这样就有用了
如果要想用c做后缀名的话
那么程序如下
#include <stdio.h>
int IsSquareNumber(int number)
{
       int i = 0;
       for ( ; i < 101; i++ )
       {
           if ( number==i * i )
              return 1;
       }
       return 0;
}
void main()
{
    int i = 0;
    for ( ; i < 100; i++ )
    {
        if ( IsSquareNumber( i * i + 68 ) )
           break;
    }
    printf("the number is: %d\n", i * i - 100);
}
我把没有一定必要的删了

2007-12-10 19:31
ycsuya
Rank: 1
等 级:新手上路
帖 子:1
专家分:0
注 册:2008-10-12
得分:0 
这里真好啊
2008-10-12 18:04
? ̄領銜主演
Rank: 1
来 自:西南某角落默默无闻小宅男
等 级:新手上路
帖 子:16
专家分:0
注 册:2008-10-12
得分:0 
我才初中知识还真的有点难理解呵呵,编程数学一定要学好吗?

QQ群欢迎西南地区业界人士,广大编程爱好者加入,一起探讨共同进步!群号:72029978
2008-10-12 21:26



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-189502-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.443632 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved