2017-10-29 7 views
-2

BlueJ의 Turtle 프로젝트 예제를 사용하여 다각형을 추적합니다. 이미 면수와 변의 길이를 제공 한 후 다각형을 스케치하는 방법이 있습니다. 이제는 그 방법을 특정 횟수만큼 호출하여 예를 들어 3 개의 다각형을 작성한 다음 각 다각형에 위의 매개 변수를 제공하고 그 다음 스케치를 진행하도록 지정할 수 있습니다. . fred 내 거북이의 이름과 Color 관련 라인 프레드가 사용하는 펜의 색상을 변경 있습니다 : 참고로특정 횟수만큼 매개 변수가있는 메서드 호출

public void drawPolygon(int numberOfSides, int lengthOfSide, Color penColor){ 
    world.dropIn(fred); 
    fred.setColor(penColor); 
    fred.penUp(); 
    fred.left(90); 
    fred.forward(200); 
    fred.right(90); 
    fred.penDown(); 
    for(int i=0; i<numberOfSides; i++) { 
     fred.right(360/numberOfSides); 
     fred.forward(lengthOfSide); 
    } 
    world.removeTurtle(fred); 

을 다음과 같이 다각형을 스케치하기위한

내 방법입니다.

나는 다음과 같은 기록 시도했다 :

public void drawPolygons(int numberOfPolygons){ 
    for(int i=0; i<numberOfPolygons; i++){ 
     drawPolygon(int numberOfSides, int lengthOfSide, Color penColor); 
    } 
} 

하지만 다양한 오류를 얻을. 매개 변수가있는 다른 메서드 내의 매개 변수를 사용하여 메서드를 호출 할 수 있습니까? 아니면 미친 것일 수 있습니까?

이것이 너무 기본적인 Stackoverflow에 대한 질문이라면 유감스럽게 생각합니다. 완전히 프로그래밍에 익숙하지 않고 도움이 될 것입니다.

+0

당연히 그렇습니다. 아니면 하나 이상의 코드 또는 하나 이상의 코드 블록을 가진 응용 프로그램이 하나도 없을 것입니다. 호출에서 데이터 유형을 올바르지 않게 사용하고 있습니다. 값을 사용하여 직접 메소드를 호출하십시오. 호출하지 않는 메소드를 작성할 때 데이터 유형이 지정됩니다. –

답변

0

예,이 일반적인 패러다임입니다 ... 가능 매개 변수를 사용하여 다른 방법에서 매개 변수와 메소드를 호출하는 것입니다. drawPolygon 호출을 수정하기 만하면됩니다 :

public void drawPolygons(int numberOfPolygons){ 
    for(int i=0; i<numberOfPolygons; i++){ 
     drawPolygon(numberOfSides, lengthOfSide, penColor); 
    } 
} 
+0

'numberOfSides','lengthOfSide' 및'penColor'는 다각형을 작성할 때 입력 한 외부 매개 변수입니다. 형식 선언을 제거하려고하면 BlueJ는 해당 변수를 찾을 수 없다는 오류를 발생시킵니다. – Brian

+0

해당 매개 변수에 액세스 할 수있는 위치에서 drawPolygon (int, int, Color)을 호출 해보십시오. – jdigital