- ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:コードの記述の仕方)
コードの記述の仕方
このQ&Aのポイント
- JDKではエラーなく実行できるが、JBuilderではエラーが出てコンパイル失敗になる。
- 2行目には「メソッド宣言が無効です。戻り型は省略できません」というエラーが出る。
- 3行目には「";"が必要です」というエラーが出る。関数の宣言部と間違えられていると思われるが、他にどのように記述すれば良いかわからない。
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
> JDKではエラーなく実行できたのですが そんなことはありえません。ソースに明らかな誤りがあります。 まず2行目の public f() { ですが、エラーにもあるように、戻り値の型の記述が抜けています。 そして3行目の double f(double x){ ですが、f() メソッドの宣言の中で二重にメソッドを宣言しようとしているため、エラーになります。このことは質問者さんも分かっておられるようですが、 > 他にどのように記述したら良いかわかりません というようにいきなり聞かれても、答えるほうとしても困ります。何をしたいのか、どんなコードを書きたいのか、教えてください。
その他の回答 (1)
- Sephy
- ベストアンサー率35% (7/20)
回答No.2
上記のソースを「JDK」でコンパイルしました。 Z:\Java>javac applet1.java applet1.java:3: メソッドの宣言が不正です。戻り値の型が必要です。 public f(){ ^ applet1.java:4: ';' がありません。 double f(double x){ ^ エラー 2 個
質問者
お礼
「JDK」でコンパイル頂き,ありがとうございます。 JDKの学習もやっていきたいと思います。 ありがとうございました。
補足
返事が遅くなってすみません。 作成したいプログラムは、sin2x+cos3xのグラフを描画するものです。前回提示したプログラムに続くのは、x、y軸や原点の描画をサイズにあわせて計算させて、描画させるプログラムです。 次のコードは、関数描画に用意したコードです。 for (int x=0 ; x<w-1; x++){ x0=-max+x*xd; y0=f(x0)*yd; x1=x0+xd; y1=f(x1)*yd; g.drawLine(x,(int)(hh-y0),x+1,(int)(hh-y1)); 説明不足で、ご迷惑をおかけします。