展开全部
给你提供三种方法,楼下的太具32313133353236313431303231363533e58685e5aeb931333433623161有局限性。我这个还有点错误,但是对这个题没啥事,当按对应的数报数时,如果最后一个报数为最后一个,要余数等于0public class HanXin {
public static void main(String[] args) {
int num=HanXin.peopleNum(1,1,5,4,10);
System.out.println(num);
num = HanXin.peoplrNum_For(1,1,5,4,10);
System.out.println(num);
num = HanXin.peoplrNum_For_op(1,5,4,10);
System.out.println(num);
}
//递归方法
public static int peopleNum(int num,int num5,int num6,int num7,int num11){
if(num%5==num5 & num%6==num6 & num%7==num7 & num%11==num11){
return num;
}else{
return peopleNum(num+1,num5,num6,num7,num11);
}
}
//循环方法number of people
public static int peoplrNum_For(int num,int num5,int num6,int num7,int num11){
for(int i = num; i > 0; i++){
if(i%5==num5 & i%6==num6 & i%7==num7 & i%11==num11){
return i;
}
}
return 0;
}
//循环方法,针对题目优化版
public static int peoplrNum_For_op(int num5,int num6,int num7,int num11){
for(int i = 10; i > 0; i++){
if(i%5==num5 & i%6==num6 & i%7==num7 & i%11==num11){
return i;
}
}
return 0;
}
}