2个整数之间的奇数之和可被7整除

时间:2016-10-15 21:23:32

标签: java

我正在使用Java,想要找到0到100之间所有奇数的总和,它们可以被7整除。

我明白了:

userString = input( "Please enter a string with a value of 7 or less   characters: " )
space = ' '  * int( len( userString ) ) - 1
left_side = userString[:len( userString ) // 2]
right_side = userString[len( userString ) // 2:]


def pyramid( left, right ):
    print( space + left_side + right_side )
    print( space + left_side * 2 + right_side * 2 )
    print( space + left_side * 3 + right_side * 3 )
    print( space + left_side * 4 + right_side * 4 )
    print( space + left_side * 5 + right_side * 5 )

它工作得非常好,但我认为它可以更短。

谢谢!

5 个答案:

答案 0 :(得分:2)

7开始,按14递增(仅保留奇数):

int sum = 0;
for(int i = 7; i <= 100; i += 14) {
    sum += i;
}
System.out.println(sum);

(我知道这有点像黑客,但这只是一个可能的答案!)

答案 1 :(得分:2)

我想出的最好的方式是:

  • 将100除以7.并获得abs。这是我们可以使用的7的最大乘数。
  • 循环所有奇数从1开始,直到上一步的数字。
  • 添加当前数字x 7的所有结果。

和代码:

int sum =0;
int maxFactor = 100/7;
for (int i = 1; i <= maxFactor; i+=2)
    sum += i*7;

答案 2 :(得分:0)

不要将它分配给两个不同的变量a和b。

public class odd7{
    public static void main(String[] args)
    {
        int i = 1;
        int sum = 0;
        while(i <= 100)
        {
            if(((i % 2)==1) && ((i % 2)==0))
            {
                sum = sum + i;
            }
            i++;
        }
        System.out.println(sum);
    }
}

答案 3 :(得分:0)

你需要的只是7加14的倍数,所以它可以更简单:

scrollTop: $("#hero").offset().top-100 + window.innerHeight

答案 4 :(得分:0)

使用下面的代码段进行测试:

jQuery("#site").ready(function()
{
  jQuery("#text_1").click(function()
  {
    jQuery("#text_1_toggle").toggle();
  });    

  jQuery("#text_2").click(function()
  {
    jQuery("#text_2_toggle").toggle();
  });
}); 

它将减少所需迭代的近一半。