• 締切済み

java 多次元配列

二次元平面を二次元配列int g[20][40]と対応させて考える。 g[x][y] == 1なら座標(x,y)に点があり、g[x][y] == 0なら点はないとする時、y = 2*x+5 (0=<x=<20)のグラフを表示するプログラムを作成せよ。 (xを縦方向,yを横方向と考えよ) というプログラムと同様にして y = x*x-8*x+16 (0=<x=<20)のグラフを表示するプログラムを作れ。という問題がプログラミング初心者の私には難しすぎます。 方法を教えて頂けないでしょうか?

みんなの回答

  • nda23
  • ベストアンサー率54% (777/1415)
回答No.3

単に1次式、2次式のグラフを表示すれば良いのでは? 先ず、配列に1、0を仕込みます。次に、0なら空白、1なら"*"でも 表示しましょうか。 int[][] g = new int[20][40]; //データの仕込み for ( int x = 0 ; x < 20 ; x++ ) {   int y = 2 * x + 5;//問題の式   if ( y < 40 ) g[x][y] = 1; } //データの表示 for ( int y = 39 ; y >= 0 ; y-- ) {   for ( int x = 0 ; x < 20 ; x++ ) {     System.out.print(g[x][y]==0?" ":"*");//0なら空白、1なら*   }   System.out.println("");//改行 } ※表示は上から下なので、yは0→39ではなく、39→0とする。

回答No.2

>二次元平面を二次元配列int g[20][40]と対応させて考える。 >g[x][y] == 1なら座標(x,y)に点があり、g[x][y] == 0なら点はないとする時、y = 2*x+5 (0=<x=<20)のグラフを表示するプログラムを作成せよ。 >(xを縦方向,yを横方向と考えよ) ↑が出来ているなら計算式直すだけじゃないんですか? 0から作成だとするならこんな説明だけでは誰も作れないと思う。 >y = x*x-8*x+16 (0=<x=<20)のグラフを表示するプログラムを作れ。という問題がプログラミング初心者の私には難しすぎます。 勉強したいんですか?それとも課題の答えが知りたいだけですか? 後者ならば課題の丸投げなので禁止事項です。

cowa0516
質問者

補足

これはペラ1にこの問題のみが載っていました。 具体的には計算方法が分かりませんね。

回答No.1

1番いいのはその問題を出した人(先生とか先輩)に直接聞くことですね。 ここで聞くなら、「難しすぎます。」なんて一言で片付けないでもっと具体的に質問して下さい。 Javaでの計算方法がわからないとか、計算方法はわかるけどどうやってグラフにするのかわからないとか。