当前位置:网站首页>【码蹄集新手村600题】判断一个数字是否为完全平方数
【码蹄集新手村600题】判断一个数字是否为完全平方数
2022-08-01 13:05:00 【Sandm *】
题目链接:

解题思路:
一个数开方之后,只有整数部分而没有小数部分,则该数字为完全平方数
根据完全平方数的概念,
其中通过 pow() 函数去进行这个数的开方,
但是因为 pow() 函数的返回类型是 double,
即使这个数开方之后,
即使不是完全平方数,但也会得到一个经过开方得到的值,
所以我们怎么能具体判断它是不是完全平方数呢?
因为完全平方数没有小数部分,
所以它经过开方,然后再平方,
其值仍然为之前的初始值,
而如果这个数不是完全平方数,
经过开方之后,
我们可以通过对 pow() 函数的返回值进行 int 类型的强转,
从而得到其整数部分,
此时整数部分经过平方后就不与它未开方时的数相等,
由此可以作为我们的判断依据
参考代码:
#include<bits/stdc++.h>
using namespace std;
int main( )
{
int data = 0;
cin >> data;
int change = pow(data,1/2.0);
if( change * change == data)
{
cout << "YES";
}
else
{
cout << "NO";
}
return 0;
}边栏推荐
- sql中常用到的正则表达
- 什么是一致性哈希?可以应用在哪些场景?
- 树和二叉树的转换
- tensorflow2.0手写数字识别(tensorflow手写体识别)
- 一文带你读懂云原生、微服务与高可用
- 34、树莓派进行人体姿态检测并进行语音播报
- JMP Pro 16.0 software installation package download and installation tutorial
- AI目标分割能力,无需绿幕即可实现快速视频抠图
- 一文带你彻底厘清 Isito 中的证书工作机制
- Find objects with the same property value Cumulative number Summarize
猜你喜欢
随机推荐
MySQL调优
formatdatetime function mysql (date sub function)
Meshlab & Open3D SOR filtering
多线程案例——阻塞式队列
嵌入式开发:创建和使用可移植类型的7个技巧
【StoneDB Class】Introduction Lesson 2: Analysis of the Overall Architecture of StoneDB
PanGu-Coder:函数级的代码生成模型
Multithreading Case - Timer
安全又省钱,“15岁”老小区用上管道燃气
PAT 1167 Cartesian Tree(30)
【无标题】
CloudCompare & PCL ICP registration (point to face)
Batch replace tables in Word with pictures and save
这项工作事关中小学生生命安全!五部门作出联合部署
Istio Pilot代码深度解析
Windows 安装PostgreSQL
通讯录(静态版)(C语言)(VS)
MVVM响应式
Do wildcard SSL certificates not support multiple domains?
DDL和DML的含义与区别「建议收藏」









