- 締切済み
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)のグラフを表示するプログラムを作れ。という問題がプログラミング初心者の私には難しすぎます。 方法を教えて頂けないでしょうか?
- みんなの回答 (3)
- 専門家の回答
みんなの回答
- nda23
- ベストアンサー率54% (777/1415)
単に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とする。
- ProKaseifu
- ベストアンサー率51% (98/192)
>二次元平面を二次元配列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)のグラフを表示するプログラムを作れ。という問題がプログラミング初心者の私には難しすぎます。 勉強したいんですか?それとも課題の答えが知りたいだけですか? 後者ならば課題の丸投げなので禁止事項です。
- pcbeginner
- ベストアンサー率46% (261/560)
1番いいのはその問題を出した人(先生とか先輩)に直接聞くことですね。 ここで聞くなら、「難しすぎます。」なんて一言で片付けないでもっと具体的に質問して下さい。 Javaでの計算方法がわからないとか、計算方法はわかるけどどうやってグラフにするのかわからないとか。
補足
これはペラ1にこの問題のみが載っていました。 具体的には計算方法が分かりませんね。