誕生日にもらった意外なもの

二次元平面を二次元配列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)のグラフを表示するプログラムを作れ。という問題がプログラミング初心者の私には難しすぎます。

方法を教えて頂けないでしょうか?

A 回答 (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とする。
    • good
    • 0

>二次元平面を二次元配列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)のグラフを表示するプログラムを作れ。という問題がプログラミング初心者の私には難しすぎます。

勉強したいんですか?それとも課題の答えが知りたいだけですか?
後者ならば課題の丸投げなので禁止事項です。

この回答への補足

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

補足日時:2009/06/29 16:34
    • good
    • 0

1番いいのはその問題を出した人(先生とか先輩)に直接聞くことですね。



ここで聞くなら、「難しすぎます。」なんて一言で片付けないでもっと具体的に質問して下さい。
Javaでの計算方法がわからないとか、計算方法はわかるけどどうやってグラフにするのかわからないとか。
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!