输入一个整数如果按低位到高位 需要满足奇数位上是奇数 偶数位上是偶数用C++编写
时间: 2024-10-14 15:12:56 浏览: 54
py代码-例2-1-1 输入一个整数, 判断它是奇数还是偶数
你可以使用C++编写一个函数来检查给定的整数是否满足奇数位为奇数、偶数位为偶数的条件。下面是一个简单的实现示例:
```cpp
#include <iostream>
bool isNumberValid(int num) {
// 将数字转换为字符串便于操作每一位
std::string strNum = std::to_string(num);
// 检查字符串长度,如果是单个字符,直接返回 true,因为它是既是奇数也是偶数
if (strNum.length() == 1) return true;
for (size_t i = 0; i < strNum.length(); ++i) {
// 判断奇偶位,0-based index
bool isOddPosition = i % 2 != 0;
int digit = strNum[i] - '0';
// 如果当前位置是奇数并且数字不是奇数,或位置是偶数并且数字不是偶数,则返回 false
if (isOddPosition && digit % 2 == 0 || !isOddPosition && digit % 2 != 0)
return false;
}
return true;
}
int main() {
int input;
std::cout << "Enter an integer: ";
std::cin >> input;
if (isNumberValid(input))
std::cout << "The number satisfies the condition.\n";
else
std::cout << "The number does not satisfy the condition.\n";
return 0;
}
```
阅读全文