C++ 完美偶数判断:算法详解及代码实现
#include
using namespace std;
bool isPerfectEven(int num) { string s = to_string(num); if (num % 2 != 0) { return false; } for (int i = 0; i < s.length(); i++) { if ((i+1) % 2 != 0 || (s[i] - '0') % 2 != 0) { return false; } } return true; }
int main() { int n; cin >> n; int nums[n]; for (int i = 0; i < n; i++) { cin >> nums[i]; } for (int i = 0; i < n; i++) { if (isPerfectEven(nums[i])) { cout << nums[i] << endl; } } return 0; }
算法解析
-
判断偶数: 首先,需要判断输入的数是否为偶数。可以使用取模运算符 '%' 来判断。如果
num % 2 == 0,则该数为偶数。 -
判断位数: 其次,需要判断该数的位数是否为偶数。可以通过将该数转换成字符串,然后判断字符串的长度是否为偶数来实现。
-
判断各位数字: 最后,需要判断该数的各位数字是否均为偶数。可以通过遍历字符串,并判断每个字符是否为偶数来实现。
代码示例
#include <iostream>
#include <string>
using namespace std;
bool isPerfectEven(int num) {
string s = to_string(num);
if (num % 2 != 0) {
return false;
}
for (int i = 0; i < s.length(); i++) {
if ((i+1) % 2 != 0 || (s[i] - '0') % 2 != 0) {
return false;
}
}
return true;
}
int main() {
int n;
cin >> n;
int nums[n];
for (int i = 0; i < n; i++) {
cin >> nums[i];
}
for (int i = 0; i < n; i++) {
if (isPerfectEven(nums[i])) {
cout << nums[i] << endl;
}
}
return 0;
}
总结
本文介绍了如何用 C++ 语言判断一个数是否为完美偶数,并提供了完整的代码示例。希望本文能够帮助您理解完美偶数的判断逻辑,并能够运用此知识解决相关问题。
原文地址: https://www.cveoy.top/t/topic/qlaN 著作权归作者所有。请勿转载和采集!