首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > JAVA > J2SE开发 >

求12跟18的最小公倍数;求大神

2013-07-09 
求12和18的最小公倍数;求大神package org.circlepublic class MinCommonMultiple{ public static void ma

求12和18的最小公倍数;求大神
package org.circle;

public class MinCommonMultiple
{ public static void main(String[] args)
{  
int m =6,n=9;
int result=1;
for(int i=1;i<=m*n;i++)
{

if()
}

}
}代码写到if这就不知道怎么写了,麻烦帮我补充完整。3Q
[解决办法]
if(i%m==0 && i%n == 0)
{
return i;
}

这样应该可以
[解决办法]

引用:
void不能返回值的、

一楼if条件是正确的,已经拿到正确的i了,语句块里你想写什么都行,
你可以打印出来:System.out.println(i)
[解决办法]
由于你写的main方法是VOID的。所以就不return了。
#2的逻辑是通的,可以这么写:
if (i%m==0 && i%n == 0)
{
    System.out.print("最小公倍数是"+i);
    System.exit(0);
}

================================
还有,你定义的这个result貌似没用到。
另外,i的初值可以直接赋n。因为最小公倍数必须是大于这两个数,这样省去多次不必要的循环。
[解决办法]
额。。。= =、3楼已经有回复了。。。我打字有点慢哈~
[解决办法]
一般的方法是迭代相减求出最大公约数然后相乘较小的数。
你这样的话效率有可能太低
[解决办法]
引用:
一般的方法是迭代相减求出最大公约数然后相乘较小的数。
你这样的话效率有可能太低

请问迭代相减如何求出最大公约数?
而且最小公倍数也不是最大公约数*较小的数吧:
比如4和10,最大公约数是2,最小公倍数也不是2*4啊。
[解决办法]
此处最优算法应该是:
1:用欧几里得算法(辗转相除)取得两数的最大公约数;
2:两数相乘,除以最大公约数,就是最小公倍数。
[解决办法]
辗转相除,月经题:

public static int zhanzhuan(int m,int n){
return m%n==0?n:zhanzhuan(n, m%n);
}
public static void main(String[] args) {
System.out.println(18*12/zhanzhuan(18, 12));
}

[解决办法]


package com.quartz.test;

public class Test {

/**
 * 计算最小公倍数
 * @param args
 * 
 */
public static void main(String[] args) {
System.out.println(compute(3,5)); 
}

public static int compute(int a ,int b){
int max;
int max1 = 0;
if(a<b){
max  = b;
}else{
max = a;
}
for(int i =1; i<=max ; i++){
if(a%i == 0 && b%i ==0){
max1 = i ;
}
}
return max1*(a/max1)*(b/max1);
}

}
[解决办法]
求12和18的最小公倍数

为什么int m =6,n=9;

逻辑有点乱
[解决办法]

 
[解决办法]
引用:
Quote: 引用:

由于你写的main方法是VOID的。所以就不return了。
#2的逻辑是通的,可以这么写:
if (i%m==0 && i%n == 0)
{
    System.out.print("最小公倍数是"+i);
    System.exit(0);
}

================================
还有,你定义的这个result貌似没用到。


另外,i的初值可以直接赋n。因为最小公倍数必须是大于这两个数,这样省去多次不必要的循环。


这是比较简便的写法。

也可以用:最小公倍数=a*b/(a,b最大公约数)  
求12跟18的最小公倍数;求大神 

恩,看了,学习啦~求12跟18的最小公倍数;求大神求12跟18的最小公倍数;求大神
[解决办法]

热点排行