如果输入一个整数 可以被2 除尽 就返回2,如果被3除尽就返回3,如果5除尽返回5. public int divisiable(int N)
{
if(N % 2 == 0)
{
return 2;
}
else if(N % 3 == 0)
{
return 3;
}
else if(N % 5 == 0)
{
return 5;
} else
{
return -1; // 都不满足返回-1
}
}大家看看我写的这个小函数有什么问题,如果有,怎么改呢?谢谢了。
{
if(N % 2 == 0)
{
return 2;
}
else if(N % 3 == 0)
{
return 3;
}
else if(N % 5 == 0)
{
return 5;
} else
{
return -1; // 都不满足返回-1
}
}大家看看我写的这个小函数有什么问题,如果有,怎么改呢?谢谢了。
解决方案 »
- 谁看看这代码啊??/
- JAVA 类文件转换为DLL的工具软件有吗?盼!!!
- 菜鸟求救,高分享送!!!
- JTextField如何限制只能输入数字?用什么方法?虚调用哪个包?{再线等!}
- 怎样用jbuilder 7开发软件,开发多窗体软件,并且能和sql-server数据库相连,具体步骤,或者可以参考那些书籍,最后怎样打包发行?谢谢!
- 我的JAR文件默认打开方式为REALPLAY
- 请问能否更改JOptionPane给出的提示信息框的字体?
- 菜鸟想要起飞,各位大虾多多帮忙
- 有关ArrayList遍历的问题
- 问一个关于Swing的问题,不知道还有没有人在用!
- java使用Calendar的怪异问题,高手请进.
- 运行时Exception in thread "main" java.lang.NullPointerException
public int divisiable(int N)
{
if(N==0){
return -1;
}else if(N % 2 == 0)
{
return 2;
}
else if(N % 3 == 0)
{
return 3;
}
else if(N % 5 == 0)
{
return 5;
} else
{
return -1; // 都不满足返回-1
}
}
[/Java code]
如果按楼主的意思的话
前边应该加个
if( n % 6 == 0 || n % 15 == 0 || n % 10 == 0)
return -1 ;
static int i = sc.nextInt(); public static void main(String[] args) {
int y = divisiable(i);
System.out.println(y); } public static int divisiable(int x) {
if (x != 0) {
if ((x % 2 == 0) && (x % 3 != 0) && (x % 5 != 0)) {
return 2;
} else if ((x % 3 == 0) && (x % 5 != 0)) {
return 3;
} else if (x % 5 == 0) {
return 5;
}
} else {
return -1;
}
return 0;
}
}
google里搜 欧几里得公式 你就什么都明白了!