2017-10-29 11 views
-2

BlueJのTurtleプロジェクトの例を使ってポリゴンをトレースしています。私はすでに、辺の数と辺の長さを与えた後にポリゴンをスケッチする方法を持っています。今度は、そのメソッドに特定の回数だけ呼び出すことで、たとえば3つのポリゴンを作成し、各ポリゴンに対して上記のパラメータを指定してから、スケッチを進めるように指定することができます。次のようにパラメータを特定の回数だけ呼び出す方法

ポリゴンをスケッチのための私の方法は次のとおりです。

FYI
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); 

fredは私の亀の名前であり、Color関連の線はフレッドが使用しているペンの色を変更するためのものです。

私は次のように書いて試してみた:

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

しかし、私はさまざまなエラーを取得します。それはパラメータを持つ別のメソッド内のパラメータを持つメソッドを呼び出すことが可能ですか、私は怒っているか?

これはあまりにも基本的なStackoverflowの質問ですが、私は完全にプログラミングに新しいですし、どんな助けても大いに感謝します!

+0

もちろん、1つのコードブロック以外のアプリケーションや機能を持つアプリケーションはありません。あなたが正しくない呼び出しでデータ型を使用している場合は、値を直接使用してメソッドを呼び出してください。 –

答えて

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

関連する問題