Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/loops/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 如何让程序显示可被5整除的值之和,而不是仅显示值本身?_Java_Loops_Methods - Fatal编程技术网

Java 如何让程序显示可被5整除的值之和,而不是仅显示值本身?

Java 如何让程序显示可被5整除的值之和,而不是仅显示值本身?,java,loops,methods,Java,Loops,Methods,程序要求创建一个方法。该方法采用两个参数:start和end,都是整数。该方法必须将开始和结束之间可被5整除的所有数字相加。例如,如果开始为1,结束为30,则答案必须为105,因为5+10+15+20+25+30=105是可被5整除的数字,属于1和5的范围 import java.util.*; public class Divisor{ public static void main(String[] args){ Scanner input = new Scanner(Sy

程序要求创建一个方法。该方法采用两个参数:start和end,都是整数。该方法必须将开始和结束之间可被5整除的所有数字相加。例如,如果开始为1,结束为30,则答案必须为105,因为5+10+15+20+25+30=105是可被5整除的数字,属于1和5的范围

import java.util.*;

public class Divisor{

  public static void main(String[] args){

    Scanner input = new Scanner(System.in);

    System.out.print("Enter a start: ");
    int start = input.nextInt();

    System.out.print("Enter an end: ");
    int end = input.nextInt();

    int result6 = sumDivisor(start, end); 
    System.out.println(result6);

}

 public static int sumDivisor (int start, int end){
    int value = end;
    for(int i = 5;i <= end;i = i + 5){
      value = i;
      System.out.print(i + " ");      
    }
    return value;
  }
 }
import java.util.*;
公共类除数{
公共静态void main(字符串[]args){
扫描仪输入=新扫描仪(System.in);
System.out.print(“输入开始:”);
int start=input.nextInt();
系统输出打印(“输入结束:”);
int end=input.nextInt();
int result6=总和除数(开始、结束);
系统输出打印项次(结果6);
}
公共静态整型加法器(整型开始,整型结束){
int值=结束;

对于(int i=5;i而不是返回最后一个数字,从
0开始,并将满足条件的每个数字添加到其中。

您还必须考虑开始参数不能被5整除的情况:

public static int sumDivisor (int start, int end){
int value = 0;
    while (start % 5 != 0) {            
        start++;
    }
for(int i = start;i <= end;i += 5){
  value += i;    
}
return value;
公共静态整型加法器(整型开始,整型结束){
int值=0;
而(开始%5!=0){
启动++;
}

对于(int i=开始;i作业进展如何?你可以创建另一个int,将所有数字的值相加。我正在做练习题准备考试,而且进展顺利,谢谢你,donfede。这已经成为我空白的问题之一,尽管答案可能就在我眼前。正如我所怀疑的,answer就在我眼皮底下。谢谢你的帮助,gangqinlaohu!结果,正如Femaref建议的,值必须设置为0,计数器必须添加到值中才能创建新的值。println也不必要,而且我的部分过于复杂。非常感谢你的输入,Femaref!我相信我做得不对。通过将值设置为0,在for循环中,将值+=设置为i,我将继续收到一个数字列表与总和的值。我意识到它也一定是我的println的一部分,但我确实…被卡住了。请您向我解释一下while循环的确切功能好吗?我对余数不太熟悉,虽然我知道它与我使用的for循环是等价的。非常感谢,user2098232!while循环增加起始值,直到它可以被5整除(除法的剩余部分从5开始等于0)。例如:如果开始值为3,没有while循环,For循环将i除以5并将其添加到值中,函数将返回和3、8、13、18…在这种情况下,while循环首先将start=3减小到start=5,这可以被5整除,然后进入For循环。这很有意义!谢谢再一次,用户2098232!