【程序设计】输入一个1000以内的三位数,找出小于这个三位数且个位数字与十位数字之和 除以10所得的余数等于百位数字的数,并输出满足条件的数字和数字之和。 输入:123 输出: 101 110 211
时间: 2024-09-15 08:06:25 浏览: 109
2022-2023-2学期《Python程序设计》小测题目列表.docx
要实现这个功能,你需要编写一个C++程序来读取用户输入的三位数,然后检查是否满足条件。以下是一个简单的示例程序:
```cpp
#include <iostream>
int main() {
int num;
std::cout << "请输入一个1000以内的三位数: ";
std::cin >> num;
// 检查输入是否为三位数并且小于1000
if (num >= 100 && num <= 999) {
// 分离每个数字(百位、十位、个位)
int hundreds = num / 100; // 百位
int tens = num % 100 / 10; // 十位
int ones = num % 10; // 个位
// 遍历所有可能的小于num的三位数,从100开始到num-1
for (int i = 100; i < num; ++i) {
int smaller_num_hundreds = i / 100; // 更小数的百位
int smaller_num_tens = i % 100 / 10; // 更小数的十位
int smaller_num_ones = i % 10; // 更小数的个位
// 计算和并检查条件
int sum = smaller_num_tens + smaller_num_ones;
if ((sum % 10) == smaller_num_hundreds) {
std::cout << i << std::endl; // 输出满足条件的数
// 记录总和
int sum_total = i;
if (i != num) { // 如果不是最后一个结果,继续累加
sum_total += i + 1;
}
std::cout << "数字之和: " << sum_total << std::endl;
}
}
} else {
std::cout << "输入错误,请确保是个三位数且小于1000." << std::endl;
}
return 0;
}
```
当你运行此程序并输入123时,它会输出101和110,因为它们符合题目描述的条件。
阅读全文