2013-10-08 2 views
1

숙제에 대해 '*'를 사용하여 노트에 설명 된 그림을 만듭니다. 근본적으로 내가 도움이되고 싶은 것은 for 루프에서 뺄셈을 사용하는 방법이다.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를 추가 한 루프 에 대한 '공간'내부에서 4 빼기 (그래서 그렇게 첫 번째 빈에 계속 추가 할 것 것 것 이

+1

'혼란 스럽다면 죄송합니다.'예, 그렇습니다. –

+0

'star'과'blank'는 추가 할 수있는 변수가 아닙니다. 그것들은 방법입니다. 실제로 변수를 선언하려는 경우 코드를 크게 변경해야합니다. –

+3

@ sᴜʀᴇsʜ ᴀᴛᴛᴀ : 그냥 비공식적으로, 사용자 이름에 비 ASCII 문자를 사용한다는 사실을 알고 계시지 않으십니까? 나는 다른 누구도 알지 못한다. 그러나 나는 항상 복사하여 붙여 넣어야한다. "Suresh Atta"(또는 정말로 원하는 경우 모두 대문자로 표시)에 이름을 설정하면 코멘트에 응답하려는 사람들이 더 쉽게 생활 할 수 있습니다. –

답변

2

은 아래

for(int i=1,increment=4; i<=7; i=i+1,increment=increment+4) 
     { 
     star(14 - increment); 
     blank(5 + increment); 
     star(14 - increment); 
     } 
뭔가를 기대하고 혼란 경우 다음 4

미안 등 8 다음 12) 수

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); 
+1

downvote를 설명해주세요. –

1

, 당신은 당신이 스타에 전달할 인수를 갖고 싶어) 및 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 
} 
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); 
    } 
} 

를이 코드를 사용하여 빈 단위 에버트 루프 공백에 4를 추가하고 공간

을 4를 뺀를 초기 블랭크 5한다면 다음 다음 루프 후 9 일 것이다 그것 13 등이 될 것입니다.

+1

왜 투표를 삭제합니까? – user2705620

관련 문제