输入所有形如aabb的4位完全平方数(即前两位数字相等,后两位数字相等)

第一种,先枚举所有的aabb数,在通过开平方判断是否为完全平方数

#include<stdio.h>
#include<math.h>
int main(){for(int a = 1;a <= 9;a++){for(int b = 0;b <= 9;b++){int n = a * 1100 + b * 11; // 枚举所有形如aabb的数int m = floor(sqrt(n) + 0.5); // 将aabb数开平方//浮点型运算可能存在误差,所以我们应该考虑到误差,使用floor函数//floor(x)返回不超过x的最大整数,如为0.9999返回0而不是1//因此我们用floor(x + 0.5)使其区间发生改变,尽量减小误差if(m * m == n){printf("%d\n", n);}}}return 0;
}

第二种,枚举平方根,避免开平方的操作

#include<stdio.h>
int main(){for(int x = 1; ;x++){int n = x * x; // 直接得到平方数if(n < 1000) continue; // 当n < 1000时 跳回到for循环,即执行下一次循环if(n > 9999) break; // 当n > 9999 时跳出循环//直接得到1000-9999int a1 = n / 1000; // 得到aabb中的千位为a1int a2 = n / 100 % 10; // 得到aabb中的千位为a2int b1 = n % 100 / 10; // 得到aabb中的千位为b1int b2 = n % 10; // 得到aabb中的千位为b2if(a1 == a2 && b1 == b2){printf("%d\n", n); // 得到符合条件的数,并输出}}return 0;
}

用c++写的话也是差不多的只是需要引用<cmath>头文件

第一种,只是需要引用<cmath>头文件,将printf()改为cout就可以了,其实用printf()也没有什么问题,但如果要使用scanf()函数的话可能会报错但也不一定,如果报错下面两种方式可以尝试

  1. 在代码的最顶行写入 #define _CRT_SECURE_NO_WARNINGS
  2. 属性 —> C/C++ —> 预处理器,右侧 预处理器定义 右侧添加上:_CRT_SECURE_NO_DEPRECATE

或是用scanf_s()

当然用c++写代码的话还是建议尽量用符合C++标准的形式

#include<iostream>
#include<cmath>using namespace std;int main(){for(int a = 1;a <= 9;a++){for(int b = 0;b <= 9;b++){int n = a * 1100 + b * 11;int m = floor(sqrt(n) + 0.5);if(m * m == n){cout << n << endl;}}}return 0;
}

第二种

#include<iostream>using namespace std;int main(){for(int x = 1; ;x++){int n = x * x;if(n < 1000) continue;if(n > 9999) break;int a1 = n / 1000;int a2 = n / 100 % 10;int b1 = n % 100 / 10;int b2 = n % 10;if(a1 == a2 && b1 == b2){cout << n << endl;}}return 0;
}

关于形如aabb的完全平方数相关推荐

  1. python寻找完全平方数_少儿编程|Python小课堂 – 寻找aabb完全平方数

    某个数如果是另一个整数的完全平方,那么我们就称这个数为完全平方数,也叫做平方数.比如:0,1,4,9,16,25,36等. 我们的任务是找到形如aabb的这样的完全平方数 (即前两位相等,后两位也相等 ...

  2. C++入门 aabb

    [入门]aabb 描述 查找形如"aabb"的四位完全平方数,也即前两位数字相同,后两位数字也相同. 输入 无 输出 若干行,每行一个符合条件的四位数(从小到大). 输入样例 1 ...

  3. 2018计算机保研夏令营情况介绍(清华,人大,北航,中科院计算所,中科院软件所,南大)

    本人从2018年5月份开始准备保研的事情,下面就自身情况,材料准备,高校夏令营条件,机试或笔试题目,面试形式等做一个介绍.在申请的学校中,除了北大信科被拒了以外,其他都取得了入营资格.下面也主要介绍一 ...

  4. 算法竞赛入门(2)学习笔记——循环结构程序设计

    C语言学习 一:for循环 二:while循环和do-while循环 三:循环的代价 四:算法竞赛中的输入输出框架 五:习题 5.1 水仙花数 5.2 韩信点兵 5.3 倒三角形 5.4 子序列的和 ...

  5. NOI 2016 优秀的拆分 (后缀数组+差分)

    题目大意:给你一个字符串,求所有子串的所有优秀拆分总和,优秀的拆分被定义为一个字符串可以被拆分成4个子串,形如$AABB$,其中$AA$相同,$BB$相同,$AB$也可以相同 作为一道国赛题,95分竟 ...

  6. 刘汝佳《算法竞赛入门经典》---总结

    刘汝佳:<算法竞赛入门经典> 三步: 基本的数据结构+算法知识: 数论等数学基本知识: 锻炼联想建模能力.知识与实际相结合,解决实际问题! 第一章:程序设计入门 1.a/b 当a.b为整数 ...

  7. JavaScript yyds

    JavaScript yyds JavaScript历史 主流浏览器及其内核 JavaScript中的数据类型 typeof函数 特殊情况 显示类型转换 隐式类型转换 函数 命名函数声明 匿名函数表达 ...

  8. 东方博宜oj答案1051-1100

    传送门 东方博宜oj答案_like_astar的博客-CSDN博客东方博宜oj答案1000-1050https://blog.csdn.net/like_astar/article/details/1 ...

  9. 蓝桥杯备考——算法竞赛入门经典(第2版)学习笔记2

    算法竞赛入门经典(第2版)学习笔记2 第二章 循环结构程序设计 2.1 for循环 2.2 while 循环和do-while 循环 2.3 循环的代价 2.4 算法竞赛中的输入输出框架 2.5 注解 ...

最新文章

  1. Spinner 使用的使用 报错:ArrayAdapter requires the resource ID to be a TextView
  2. 刮刮乐html5效果擦除,利用HTML5的画布Canvas实现刮刮卡效果
  3. 人造神经元计算速度超过人脑
  4. 【CSS进阶】CSS 颜色体系详解
  5. 如何扩大控件的触控响应区域
  6. python二进制相加
  7. SIFT定位算法关键步骤的说明
  8. 从并发视角来看智能合约(上)【渡鸦论文系列】
  9. 【OpenCV 例程200篇】15. 图像的加权加法(cv2.addWeight)
  10. LDA (Linear Discriminate Analysis)Fisher Criteria
  11. (68)SPI工作模式有哪些?分为几种极性模式。
  12. 死锁与活锁的原因 与解决方法(附加“饿死”)
  13. jdk13不能显示中文_JDK 13都发布了!你还在用JDK7吗?
  14. php pdo exec,PDO::exec
  15. 脑电EEG代码开源分享 【1.前置准备-静息态篇】
  16. python实例(二):判断输入的车牌归属地
  17. 第26章 站在巨人肩膀上——游戏引擎技术导论
  18. python打开摄像头
  19. 腾讯云和阿里云对比哪个好?云计算优势测评
  20. js 获取设备或浏览器唯一标识的方式

热门文章

  1. 抖音java表白教程_抖音表白代码制作方法 需要技巧
  2. 体验谷歌AIY智能魔盒的奇妙旅程
  3. Word表格内容居中(终极解决方案)
  4. C++知识点 —— 整合
  5. 找出100以内所有能被3整除的数,并把结果写入d:\xxx\data.dat文件中
  6. amd显卡关闭垂直同步 linux,Windows8系统垂直同步怎么关?Intel/AMD/NVIDIA显卡关闭方法...
  7. 软考常考知识点整理-V型生命周期模型
  8. 海盗杀html5游戏在线玩,Steam沙盒游戏排行,《ATLAS》的海盗战争真实且残忍
  9. 系统提示病毒文件不理会?账号拿来吧你!
  10. Lua与游戏的不解之缘