【已解决】使用JAVA实现递归算法-从自然数中取3个数进行组合之循环算法
任务描述
本关任务:用键盘输入循环算法找出 n(n>=3)个自然数中取 3 个数的组合。
测试说明
平台会对你编写的代码进行测试,比对你输出的数值与实际正确数值,只有所有数据全部计算正确才能通过测试:
测试输入:5 (n=5;,表示从1,2,3,4,5自然数中选择 3 个数)
预期输出:
1 2 3
1 2 4
1 2 5
1 3 4
1 3 5
1 4 5
2 3 4
2 3 5
2 4 5
3 4 5
代码实现:
package step1;
import java.util.Scanner;public class Loop{public static void main(String[] args) {Scanner scanner = new Scanner(System.in);int n = scanner.nextInt(); // 读取输入的n值scanner.close();// 确保n的值符合要求if (n < 3) {System.out.println("n 应该大于或等于3.");return;}// 使用三重循环生成组合for (int i = 1; i <= n - 2; i++) {//外层循环,控制第一个数的取值范围for (int j = i + 1; j <= n - 1; j++) { // 中层循环,控制第二个数的取值范围(保证不重复且小于等于第一个数)for (int k = j + 1; k <= n; k++) {// 输出当前组合System.out.println(i + " " + j + " " + k);}}}}