一辆肇事汽车的号码是4位十进制数。目击者向交警描述这个车号:这是一个完全平方数;这4个数字从左至右一个比一个大。请帮助交警寻找肇事者,先将车号算出来。
cpp
//************************************************
//* Source Name: ChapterSix_JobThirteen.cpp
//* Founction : Pointer (find out the number of the car that caused accident)
//* Author : Skyera
//* Create Time : 2025-7-27
//* Modify :
//* Modify Time:
//************************************************
#include <iostream>
using namespace std;
// 检查一个四位数的四个数字是否从左到右严格递增
bool isIncreasing(int num)
{
int dOne = num / 1000; // 千位数字
int dTwo = (num / 100) % 10; // 百位数字
int dThree = (num / 10) % 10; // 十位数字
int dFour = num % 10; // 个位数字
return (dOne < dTwo) && (dTwo < dThree) && (dThree < dFour);
}
int main()
{
// 四位数的平方根范围:32^2=1024,100^2=10000
for(int i = 32; i < 100; i++)
{
int square = i * i;
if(isIncreasing(square))
{
cout << "肇事汽车号码是: " << square << endl;
cout << "它是" << i << "的平方" << endl;
return 0;
}
}
return 0;
}
