A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

问题:一个整数,它加上100后是一个完全平方数,再加上168又是一个完全平方数,请问该数是多少?

  1. /*假设 该数为a
  2.      b = a + 100
  3.      c = a + 168
  4.      因此 c = b + 68
  5.      思路:从11开始(因为b,c显然大于10的平方)求完全平方数,先找到b,再加上68,得到c,直到c也是完全平方数为止
  6.      */
  7.      int a, b, c;
  8.     int flag = 1;
  9.    
  10.     for (int i =11; ; i++) {
  11.         b = i * i;
  12.         c = b + 68;
  13.         for (int j =  i + 1; j * j <= c ; j++) {
  14.             if (j * j == c) {
  15.                 a = c - 168;
  16.                 flag = 0;
  17.                 break;
  18.             }
  19.         }
  20.         if (!flag) {
  21.             break;
  22.         }
  23.     }
  24.     printf("a = %d\n", a);
复制代码

0 个回复

您需要登录后才可以回帖 登录 | 加入黑马