当在for循环中有两个变量时,如何递增特定数字

时间:2013-10-08 06:20:38

标签: java for-loop subtraction

对于我的作业,我应该使用'*'来制作笔记中规定的图片。基本上我想要帮助的是如何在for循环中使用减法。

我的代码:

public class Starshapesver2{
    public static void main(String[] args){

        star(31) ;
        System.out.println(); //I initialize 'star' and 'space' later on

        for(int i=1; i<=7; i=i+1){
            star(14);
            blank(5);
            star(14);
        }
        ...

基本上我如何将4添加到'blank'并从for循环中的'spaces'中减去4 (并且它会继续添加,所以第一个空白将是4然后是8然后是12,依此类推)

抱歉,如果这令人困惑

4 个答案:

答案 0 :(得分:2)

你期待下面的内容

 for(int i=1,increment=4; i<=7; i=i+1,increment=increment+4)
        {
        star(14 - increment);
        blank(5 + increment);
        star(14 - increment);
        }

答案 1 :(得分:1)

如果我理解正确,你希望每次通过循环时传递给star()和blank()的参数都会改变。所以你需要让它们成为变量。在循环之外声明它们,并在每次传递时修改它们。像这样:

int numBlanks = 5;

for (int i = 0; i <= 7; i++) {
    blanks(numBlanks);
    numBlanks = numBlanks + 4; // numBlanks will increase by 4 each time through the loop
}

答案 2 :(得分:1)

我假设您希望不断将 4 添加到空白并从空格中减去 4 ,直到循环结束。那么你可以这样做:

public static void main(String[] args)
{
    star(31) ;System.out.println(); //I initialize 'star' and 'space' later on
    int Blankint = 5;
    int spacesint =4// i cannot see your spaces in the code
    for(int i=1; i<=7; i=i+1)
    {
        Star(14);
        blank(5+Blankint);
        Blankint =Blankint+4;
        spaces(20 - spacesint); //assuming this where your space is because you didnt indicated it above.
        spacesint = spacesint+4;
        star(14);
    }
}

使用此代码,您的空白增量为evert循环,将4添加到空白并将4减去空格

因此,如果你的初始空白是5,则下一个将是9,然后在循环之后它将是13等等。

答案 3 :(得分:0)

假设你的意思是:“我如何在每次迭代中将4添加到空白并从空格中减去4”。同时假设这些是采用int的方法。

for(int i=1; i<=7; i=i+1)
{
    star(14);
    //Make the call with the starting 5 adding i * 4 which varies each iteration
    blank(5 + i * 4);
    star(14);
}

你没有在循环中显示空格,但假设它在那里它可能看起来像:

spaces(startingNumber - i * 4);