300字范文,内容丰富有趣,生活中的好帮手!
300字范文 > Java黑皮书课后题第7章:7.14(计算gcd)编写方法 返回个数不确定的整数的最大公约数

Java黑皮书课后题第7章:7.14(计算gcd)编写方法 返回个数不确定的整数的最大公约数

时间:2024-02-09 10:54:02

相关推荐

Java黑皮书课后题第7章:7.14(计算gcd)编写方法 返回个数不确定的整数的最大公约数

7.14(计算gcd)编写方法,返回个数不确定的整数的最大公约数。编写一个测试程序,提示用户输入5个数字,调用该方法找出这些数的最大公约数,并显示这个最大公约数

题目题目描述破题代码运行实例鸣谢

题目

题目描述

7.14(计算gcd)编写方法,返回个数不确定的整数的最大公约数:

public static int gcd(int… numbers)

编写一个测试程序,提示用户输入5个数字,调用该方法找出这些数的最大公约数,并显示这个最大公约数

破题

主方法:接收用户输入的5个数字(从控制台以数组形式接收),调用gcd方法、接收到的返回值进行输出gcd方法:对接收到的数组一个一个找最大公约数,5个公约数中取最大的数并返回

代码

import java.util.Scanner;public class Test7_14 {public static void main(String[] args) {//接收用户输入的5个数字(从控制台以数组形式接收)Scanner input = new Scanner(System.in);System.out.print("请输入5个数字:");int length = 5;int[] lst = new int[length];for (int i = 0; i < length; i++){lst[i] = input.nextInt();}//调用gcd方法、接收到的返回值进行输出System.out.println(gcd(lst));}public static int gcd(int n1, int n2){int res = Math.min(n1,n2);while(res >= 0){if( (n1 % res == 0) && (n2 % res == 0))break;else--res;}return res;}public static int gcd(int...numbers){int len = numbers.length;int num = numbers[0];for (int i = 0; i < len; i++) {num = gcd(num, numbers[i]);}return num;}}

运行实例

请输入5个数字:1 2 3 4 52

鸣谢

@大海的蓝天白云 发现笔者思路问题(固定了输入个数为5个而不是个数不确定)且提供了部分代码修改建议,非常感谢

Java黑皮书课后题第7章:7.14(计算gcd)编写方法 返回个数不确定的整数的最大公约数。编写一个测试程序 提示用户输入5个数字 调用该方法找出这些数的最大公约数 并显示这个最大公约数

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。