// 请在下面的Begin-End之间按照注释中给出的提示编写正确的代码 /********** Begin **********/ // 第一步:定义一个 for 循环,设置起始值 // 第二步:判断该值属于哪个区间,进行相应的运算 /********** End **********/步骤
时间: 2025-05-29 15:03:45 浏览: 17
### Java 中 `for` 循环与区间判断的代码实现
以下是针对 Java 中 `for` 循环和区间判断的一个典型应用场景——求解给定范围内所有满足特定条件的数字。此示例基于用户需求设计了一个完整的程序,用于展示如何结合 `for` 循环和条件判断来解决问题。
#### 1. **问题描述**
编写一个 Java 程序,输入两个整数作为区间的起始值和终止值,计算并输出该区间内所有能被 3 整除或者包含数字 3 的数字。
---
#### 2. **解决方案**
以下是一个完整的 Java 实现:
```java
import java.util.Scanner;
public class RangeCheck {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
// 输入起始值和结束值
System.out.println("请输入区间的起始值:");
int start = scanner.nextInt();
System.out.println("请输入区间的结束值:");
int end = scanner.nextInt();
// 结果存储变量
StringBuilder result = new StringBuilder();
// 判断区间合法性
if (start > end) {
int temp = start;
start = end;
end = temp;
}
// 遍历区间内的每一个数字
for (int i = start; i <= end; i++) {
if (isDivisibleByThree(i) || containsDigitThree(i)) {
result.append(i).append(", ");
}
}
// 输出结果
if (result.length() > 0) {
result.setLength(result.length() - 2); // 去掉最后一个逗号
}
System.out.println("符合条件的数字为:" + result.toString());
}
/**
* 判断一个数字是否可以被 3 整除
*/
private static boolean isDivisibleByThree(int number) {
return number % 3 == 0;
}
/**
* 判断一个数字是否包含数字 3
*/
private static boolean containsDigitThree(int number) {
String numStr = Integer.toString(Math.abs(number));
return numStr.contains("3");
}
}
```
---
#### 3. **代码解析**
- **输入部分**:
使用 `Scanner` 类接收用户的输入,分别获取区间的起始值和结束值[^3]。
- **区间调整**:
如果用户输入的起始值大于结束值,则自动交换两者的值,确保后续逻辑正常运行。
- **核心逻辑**:
- 外层 `for` 循环遍历整个区间。
- 内部调用了两个辅助函数:
- `isDivisibleByThree`: 检查当前数字是否能被 3 整除。
- `containsDigitThree`: 检查当前数字是否包含数字 3。
- **输出部分**:
将所有符合条件的数字拼接成字符串形式,并最终打印出来。
---
#### 4. **测试案例**
##### 输入:
```
请输入区间的起始值:
10
请输入区间的结束值:
25
```
##### 输出:
```
符合条件的数字为:12, 13, 15, 18, 21, 23, 24
```
---
### 总结
通过上述代码实现了对指定区间内所有满足条件(可被 3 整除或包含数字 3)的数字进行筛选的功能。这种组合使用 `for` 循环和条件判断的方式非常常见,在实际开发中可用于解决许多类似的数值筛选问题[^3]。
---
阅读全文
相关推荐















