JAVA零基础最大公约数和初始数组
- 最大公约数
- 我们如果想算两个数字的最大公约数比如说我们输入两个数字 12 18
- 他们的最大公约数就是6
-
- 我们来完成一下这个程序
Scanner scanner = new Scanner(System.in); System.out.println("请输入两个数字:"); int i = scanner.nextInt(); int i2 = scanner.nextInt(); int min = Math.min(i, i2); for (int j = min; j >= 0; j--) { if (i % j == 0 && i2 % j == 0) { System.out.println("最大公约数" + j); break; } } }}
我们先使用键盘录入提示用户输入两个整数数字
找出用户输入的两个整数中最小的数字
编写for循环循环0到我们这个数字之间的所有数字
判断如果两个数字都可以整除我们循环的数字,那么他就是最大公约数
直接返回输出
- 初识数组
- 我们在这个循环部分的时候往往会遇到算平均值的题目,假如需要让我们输入大量的数字去让他计算平均值
- 在记录数字的同时,我们需要变量,那就意味着数字多我们也要写很多的变量我们可以用数组让它记录所有的数字
在这里就是定义了一个数组,数组名为ints 后面的100是这个数组的长度,表示他的长度为100 Scanner in = new Scanner(System.in); int x; double sum = 0; int cnt = 0; int[] ints = new int[100]; x = in.nextInt(); while(x!=-1){ ints[cnt] = x; sum+=x; cnt++; x = in.nextInt(); } if (cnt>0){ double average = sum/cnt; for (int i = 0; i <cnt ; i++) { if (ints[i]>average){ System.out.println(ints[i]); } } } }
}
在这里我们定义了键盘录入提示用户输入,分别定义了变量x来存放用户输入的数字
cnt来计算输入了多少个数字
和一个名为ints的int类型数组来存放所有数字
循环让用户输入数字,只要输入的内容不小于0循环让用户输入
变量sum来计算总数,除去数字数量得出平均值
循环数组中的数字和平均值进行判断