从键盘输入n个整数,求它们的最小公倍数
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了从键盘输入n个整数,求它们的最小公倍数相关的知识,希望对你有一定的参考价值。
题目:从键盘输入n个整数,求它们的最小公倍数。
例如输入4,再输入2,4,6,8四个数求最小公倍数。
思路:从键盘输入4,将输入的字符串4转成int,再输入2,4,6,8,将输入的字符串用","分割开来,装入一个字符串数组,
如果数组的长度不等于之前得到的int,抛异常给Exception e,创建一个字符串数组,长度为4, 把字符串数组
里的元素装到int数组里,做一个for循环,拿i分别除数组里的每一个数,如果i能整除数组里的每一个数,i就是最
小公倍数。
代码如下:
package zuoye; import java.util.Arrays; import java.util.Scanner; //2017.03.16 by 小方 public class X0316 { public static void main(String[] args) { while(true){ Scanner scan=new Scanner(System.in); System.out.println("您想输入几位数:"); String s3=scan.nextLine().trim(); if(s3.equals("exid")) break; int a3=Integer.parseInt(s3); try{ System.out.println("请输入几位整数:"); String s=scan.nextLine().trim(); if(s.equals("exid")) break; String [] s1=s.split(","); if(s1.length!=a3)throw new Exception() ; int [] a=new int[s1.length]; for(int j=0;j<s1.length;j++){ a[j]=Integer.parseInt(s1[j]); } int result = 0; for (int i = 1; i < Integer.MAX_VALUE; i++) { int n = a.length; while(n > 0) { int count = 0; for(int x : a){ if(i%x!=0){ break; }else{ count ++; } } if(count==a.length){ result = i; break; } n --; } if(result > 0){ System.out.println(Arrays.toString(a)+"的最小公倍数为:"+result); break; } } } catch(Exception e){ System.out.println("输入无效"); } } } }
运行结果如下:
以上是关于从键盘输入n个整数,求它们的最小公倍数的主要内容,如果未能解决你的问题,请参考以下文章