前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >C语言刷题随记 —— 完全平方数

C语言刷题随记 —— 完全平方数

作者头像
繁依Fanyi
发布2023-05-07 17:32:30
2690
发布2023-05-07 17:32:30
举报
文章被收录于专栏:繁依Fanyi 的专栏

题目

1. 题目描述

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

2. 程序分析

在 10 万以内判断(可以是比100000大的数字),先将该数加上 100 后再开方,再将该数加上 268 后再开方,如果开方后的结果满足如下条件,即是结果。

思路

遍历10万以内的数字,将每个数字分别加上 100 和 168后开平方,最后计算加上100 和 168 后的两数的平方,如果一个数的平方根的平方等于该数,这说明此数是完全平方数。

可以使用 math.h 库中的 sqrt函数 来进行开方计算会更方便。

题解

代码语言:javascript
复制
#include <stdio.h>
#include <math.h>

int main()
{
    long int i,x,y,z;

    for (i=1;i<100000;i++)
    {
        x=sqrt(i+100);  /*x 为加上 100 后开方后的结果*/
        y=sqrt(i+268);  /*y 为再加上 168 后开方后的结果*/

        if(x*x==i+100&&y*y==i+268)  /*如果一个数的平方根的平方等于该数,这说明此数是完全平方数*/
            printf("\n%ld\n",i);
    }

    return 0;
}
本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2022-04-05,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 题目
    • 1. 题目描述
      • 2. 程序分析
      • 思路
      • 题解
      领券
      问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档