1 名前:JavaScriptは板違い、Web制作板をご利用ください [2008/05/30(金) 03:17:59 ] 【質問者へ】 回答者の便宜のため、以下の注意事項を遵守してください。 ・質問は【課題提示用テンプレ】を利用してください。 ・問題文は、出題されたまま全文を書いてください。 ・数学問題は「○×法でせよ」だけでなく、その数式、前提条件も説明してください。 ・JavaScriptは板違い、Web制作板をご利用ください。 ・エラーは、その詳細と発生した行を書きましょう。エラーメッセージはコピペしてください。 ・後から問題に付け足しするのはやめましょう。付け足しは作業を無駄にしがちです。 ・回答されたら動作報告を必ずしてください。 ・課題文が長い時、添付ファイルがある時はこちらのアップローダーを使うと便利です。 ttp://rg550.hp.infoseek.co.jp/cgi-bin/joyful/main.htm 【課題提示用テンプレ】 【 課題 】与えられた課題文をそのまま書きます。 《必須》 【 形態 】1. Javaアプリケーション(main()で開始)/2. Applet/3. Servlet/ 4. 携帯(開発環境のver.必須)/5. その他(明記のこと) 《必ず選択》 【 GUI 】1. AWTのみ/2. Swing/3. SWT/4. 制限なし/ 5. その他(明記すること) 《GUIの課題の場合必ず選択》 【 期限 】提出期限、解答希望日を書きます。「できるだけ早く」はNG。 《必須》 【 Ver 】コンソールでjava -versionを実行し、その結果を貼ります。 《必須》 【 用語 】数学用語、専門用語の意味、説明を書きます。 《あれば必須》 【 補足 】課題について自分なりに補足する事、何か思う事があれば書きます。 丸投げでない場合は、途中までのソースとその経過報告、 質問点、疑問点を書きます(なるべく丸投げにしてください)。 【回答プログラムの掲載場所】 Java質問スレWiki ttp://www.wikiroom.com/java/ ソースポストネット ttp://sourcepost.sytes.net/ ろだ2 ttp://rg550.hp.infoseek.co.jp/cgi-bin/joyful/main.htm 【前スレ】 pc11.2ch.net/test/read.cgi/tech/1196543694/
357 名前:デフォルトの名無しさん mailto:sage [2008/07/03(木) 00:50:05 ] >>356 はて? なにが出来ていないかな?
358 名前:デフォルトの名無しさん mailto:sage [2008/07/03(木) 00:58:46 ] >>357 完成はしていると思いますが(iii)の機能が付いた状態ではなく (i)と(ii)の機能が付いただけのものが見たかったもので・・・・・・
359 名前:デフォルトの名無しさん mailto:sage [2008/07/03(木) 01:12:11 ] 【 課題 】 rg550.hp.infoseek.co.jp/cgi-bin/joyful/img/326.txt 上記のソースの簡易webブラウザに "戻る" というボタンを付け,ホームページの閲覧履歴を遡れるように実装する。 【 形態 】Applet 【 GUI 】制限なし 【 期限 】本日 7/3 20:00まで 【 Ver 】1.6.0 【 用語 】数学用語、専門用語の意味、説明を書きます。 《あれば必須》 【 補足 】丸投げです。よろしくお願いします。
360 名前:デフォルトの名無しさん mailto:sage [2008/07/03(木) 01:17:04 ] >>358 (iii)の関連部分を削ってみた。 ttp://rg550.hp.infoseek.co.jp/cgi-bin/joyful/img/327.java ただ、(i)の出来上がりとしては、毎回、前の図を消去しないといけないと思う。
361 名前:デフォルトの名無しさん mailto:sage [2008/07/03(木) 01:37:42 ] >>360 横からでしたありがとうございます (i)は補足がありそれでできましたので大丈夫です
362 名前:デフォルトの名無しさん mailto:sage [2008/07/03(木) 07:10:31 ] >>355 sleepを使えば、こう。 int countdown = 20; while(0<=countdown){ System.out.println(countdown--); try{ Thread.sleep(1000); }catch(Exception ex){ ex.printStackTrace(); } }
363 名前:デフォルトの名無しさん mailto:sage [2008/07/03(木) 08:05:35 ] それきもい。
364 名前:デフォルトの名無しさん [2008/07/03(木) 08:17:53 ] 【課題】クラスA、B、C、Dがある。クラスAはBを継承し、クラスCはBを継承し、クラスDはクラスCを継承する。 【形態】1. Javaアプリケーション(main()で開始) 【期限】7月9日 【Ver】1.5.0 【補足】
365 名前:デフォルトの名無しさん mailto:sage [2008/07/03(木) 08:25:14 ] 【課題】クラスA、B、C、Dがある。クラスAはBを継承し、クラスCはBを継承し、クラスDはクラスCを継承する。 クラスBにはint型の変数bが定義されており、コンストラクタB(int B)も定義されているとする。クラスA、C、Dは すべて親のクラスを継承し、自分のクラスの中に独立した変数の定義はないものとする。すべてのクラスとコンストラクタを定義せよ。 mainを含むクラスはTestInheritanceとしクラスDの変数yをコンストラクタD(13)で生成し、y.bを印字せよ。 【形態】1. Javaアプリケーション(main()で開始) 【Ver】1.5.0 class B { int b; B(int b){ this.b=b; } } class A extends B { A(int b){ } } class C extends B { C(int b){ } } class D extends C { D(int b){ } } class TestInheritance { public static void main (String args[]){ D y = new D(13); System.out.println("y.b = " + y.b); } } ここまで書いてみたのですがうまくいきません。どこか違うのでしょうか?よろしくお願いします
366 名前:355 mailto:sage [2008/07/03(木) 08:26:35 ] >>362 ありがとうございます。 先ほど実行したのですが、 カウントダウンはできているのですがアプレット(MainLoop?)の中で実行できませんでした。 説明不足ですみません。 一回スレッドを使ってやろうとしたのですがうまくいかなかったので Dateクラスを使って作ってみたのですがよくわかりません。 どなたか良い方法あればよろしくお願いします
367 名前:デフォルトの名無しさん mailto:sage [2008/07/03(木) 08:39:01 ] >>366 >>355 では「Javaアプリケーション」と書いてるけど・・・ いずれにせよ、init()に書き込めば、コンソールに表示されるのでは?
368 名前:デフォルトの名無しさん mailto:sage [2008/07/03(木) 08:58:32 ] >>365 super(b)とか書けってことでは?
369 名前:365 mailto:sage [2008/07/03(木) 09:05:59 ] >>368 どのように書けばいいのでしょうか??
370 名前:365 mailto:sage [2008/07/03(木) 09:24:22 ] 自己解決しました どうもお騒がせしてすみませんありがとうございました
371 名前:デフォルトの名無しさん mailto:sage [2008/07/03(木) 14:10:40 ] どなたか>>359 をお願いします。
372 名前:デフォルトの名無しさん [2008/07/03(木) 17:07:28 ] rg550.hp.infoseek.co.jp/cgi-bin/joyful/img/328.java 【 課題 】画像を読み込み、読み込んだ画像をグレースケール化した後名前をつけて保存する。 【 形態 】1. Javaアプリケーション(main()で開始 【 期限 】7月4日 【 Ver 】1.6.0 Eclipse仕様 【 補足 】 1.実行すると無限にでるウィンドウの処理を直したい。 displayPanel = new MousePaint(); をコメント文にすると無限にでなくなるのだが、その原因がわからない。 2.マウスリスナーのアクションを無くしてメニューからOpenでファイルを読み込み ウィンドウにすぐ画像を表示させたい。 3.読み込んだ画像をグレースケール化したい。←初心者のためここが一番わからない^^;
373 名前:デフォルトの名無しさん mailto:sage [2008/07/03(木) 17:32:47 ] >>372 1.→コンストラクタの中で無条件に同じコンストラクタを呼び出しているのだから、無限に呼び出されて当然。
374 名前:372 mailto:sage [2008/07/03(木) 17:41:38 ] >>373 どうすれば呼び出されないようにすればいいでしょうか?
375 名前:デフォルトの名無しさん mailto:sage [2008/07/03(木) 18:22:08 ] 【課題】 アルゴリズムの作成 (x,y,z,w)に代入されている数字が(1.2.4.8)→(1,2,8,4)→(1,4,2,8)→(1,4,8,2)→(1,8,2,4)→・・→(8,4,2,1) と4!通りのパターンが順番に代入されていく様子をprintlnで表示するコードを作成すること 【形態】 Javaアプリケーション(main()で開始) 【Ver】 1.6.0 【補足】 代入アルゴリズム部分だけでも大丈夫です よろしくお願いします。
376 名前:デフォルトの名無しさん [2008/07/03(木) 19:08:26 ] 【課題】平面に5つの座標を考える。5つの座標(x,y)を二次元配列に入力し、すべての座標間の距離を計算せよ。 【形態】Javaアプリケーション(main()で開始) 【期限】7月4日 【ver】1.6.0 【補足】わからないのでおねがいします
377 名前:デフォルトの名無しさん mailto:sage [2008/07/03(木) 19:18:38 ] >>374 1.displayPanel自体いらないので削除してみた。 2.主旨が分からなかったのでパス。 3.中に入っていたロジックをペーストして、ちょちょっと。 ttp://rg550.hp.infoseek.co.jp/cgi-bin/joyful/img/331.java
378 名前:デフォルトの名無しさん mailto:sage [2008/07/03(木) 20:11:34 ] >>375 public static void main(String[] args) { int[] alphabet = {1,2,4,8}; int[] lngTemp = new int[0]; hoge(alphabet,lngTemp); } public static void hoge(int[] candi,int[] patt){ if(candi.length==0){ for(int i=0;i<patt.length;i++)System.out.print(patt[i]); System.out.println(); }else{ for(int i = 0;i<candi.length;i++){ int[] c = new int[candi.length-1]; int index = 0; for(int j = 0;j<candi.length;j++){ if(j!=i)c[index++]=candi[j]; } int[] p = new int[patt.length+1]; for(int j = 0;j<patt.length;j++){ p[j]=patt[j]; } p[patt.length]=candi[i]; hoge(c,p); } } }
379 名前:デフォルトの名無しさん mailto:sage [2008/07/03(木) 20:13:12 ] >>376 二次元配列という注文が、理解しがたい。
380 名前:デフォルトの名無しさん mailto:sage [2008/07/03(木) 21:10:05 ] >>376 とりあえずint[5][2]と判断 public static void main(String[] args) { int[][] point = new int[5][2]; for (int i = 0; i < 5; i++) { for (int j = 0; j < 2; j++) { point[i][j] = (int) (Math.random() * 10); } } for (int i = 0; i < point.length; i++) { System.out.println(i + 1 + ":("+point[i][0] + "," + point[i][1]+")"); } System.out.println(); for (int i = 0; i < point.length - 1; i++) { for (int j = i + 1; j < point.length; j++) { System.out.print((i+1) + "-" + (j+1) + ":"); System.out.println(distance(point[i], point[j])); } } } static double distance(int[] point1, int[] point2) { return Math.sqrt(Math.pow((point2[0] - point1[0]),2.0) + Math.pow((point2[1] - point1[1]),2.0)); }
381 名前:355 mailto:sage [2008/07/03(木) 21:13:51 ] >>367 お返事遅くなって申し訳ありません 違う方法ですが無事解決できました。ありがとうございました。
382 名前:372 [2008/07/03(木) 22:55:12 ] >>377 ありがとうございます。 これを参考に自分なりにアレンジして作ってみたいと思います。
383 名前:デフォルトの名無しさん [2008/07/04(金) 10:54:17 ] htmlのフォームのボタンを押す動作などをJavaで実現したいのですが、 何かそういったことのためのクラス・メソッドは無いでしょうか? HttpURLConnectionでUserAgent入れてソース落とすのはできるのですが、 そこから先のFormの処理がわかりません・・・。 よろしくお願いします。
384 名前:デフォルトの名無しさん mailto:sage [2008/07/04(金) 11:02:20 ] フォームについて少し勉強するといいよ
385 名前:デフォルトの名無しさん [2008/07/04(金) 12:46:16 ] >>383 全然言葉が足りないが、ダウンロードした HTML に含まれる form を Java で実行しようとしているのか? 宿題なら >>1 を参照してちょ。 んで、思っているのと違うかも知れんが、 java.sun.com/javase/ja/6/docs/ja/api/javax/swing/JEditorPane.html
386 名前:255 mailto:sage [2008/07/04(金) 22:35:57 ] 座標A(X1,Y1)〜座標B(X2,Y2)までの直線Eと 座標B(X3,Y3)〜座標C(X4,Y4)までの直線Fが 交差しているかどうか判定したいです。 どういうコードになりますか?
387 名前:デフォルトの名無しさん mailto:sage [2008/07/04(金) 23:06:25 ] >>386 >>1 テンプレを
388 名前:デフォルトの名無しさん mailto:sage [2008/07/05(土) 04:54:06 ] >>386 質問だけならこっち行けばいい 【初心者】Java質問・相談スレッド116【歓迎】 pc11.2ch.net/test/read.cgi/tech/1213347130/
389 名前:デフォルトの名無しさん [2008/07/05(土) 23:09:27 ] 【 課題 】配列を用いて点数57,78,91,61,42,77点の合計点と平均点、60点以上の人数と 平均点以下の人数を求めるプログラムを作成せよ。 【 形態 】1. Javaアプリケーション 【 期限 】7/9 【 補足 】学校で配列の所を勉強した時に課題としてでました。丸投げですが宜しくお願いします。
390 名前:デフォルトの名無しさん mailto:sage [2008/07/05(土) 23:30:39 ] >>389 public class Test{ public static void main(String[] args){ int[] score = {57,78,91,61,42,77}; int sum, avr, u60, lavr; sum = 0; for(int i = 0; i < score.length; i++){ sum += score[i]; } avr = sum / score.length; u60 = 0; lavr = 0; for(int i = 0; i < score.length; i++){ if(score[i] >= 60) u60++; if(score[i] <= avr) lavr++; } System.out.println("合計点:" + sum); System.out.println("平均点:" + avr); System.out.println("60点以上:" + u60); System.out.println("平均以下:" + lavr); } }
391 名前:デフォルトの名無しさん mailto:sage [2008/07/06(日) 13:14:18 ] 【 課題 】 四桁の数字をコンソール上でキーボードから入力し、それを出力せよ。 同時に、その数字が素数であるかどうかを判定し、その判定結果を出力せよ。 さらに、その数字より小さい自然数で最大の素数を求め、出力するようにせよ。 上記の内容を実行するプログラムをJAVAで作成せよ。 ただし、以下のポイントを考慮すること。 ポイント:素数でない場合は、判定結果と合わせて、その最大の約数(1とその数自身を除く)も出力する。 【 形態 】1. Javaアプリケーション(main()で開始) 【 期限 】7/8 【 補足 】丸投げです。よろしくお願いします。
392 名前:389 [2008/07/06(日) 14:37:34 ] >>390 すぐに回答して頂きありがとうございました。 ホント助かりましたm(__)m
393 名前:デフォルトの名無しさん [2008/07/06(日) 15:21:59 ] >>391 public class ThePrime { public static void main(String[] args) throws IOException { System.out.println("4桁の整数を入力:"); Scanner sc = new Scanner(System.in); int value = sc.nextInt(); if(isPrime(value)) { System.out.println(value+"は素数"); } else { System.out.println(value+"は素数ではない"); System.out.println("最大の約数:"+getMaxDivisor(value)); } for(int lastPrime=value-1; lastPrime>=3; lastPrime--) { if(isPrime(lastPrime)) { System.out.println(value+"より小さい素数:"+lastPrime); break; }}} private static boolean isPrime(int value) { if((value%2) == 0) return false; for(int i=3; i<value/2; i+=2) if((value%i) == 0) return false; return true; } private static int getMaxDivisor(int value) { if((value%2) == 0) return value / 2; int divisor = value; for(int i=3; i<value; i+=2) if((value%i) == 0) divisor = i; return divisor; }} //エラー無視 & すまん、素数の求め方もあってるか分からんwwwww
394 名前:デフォルトの名無しさん mailto:sage [2008/07/06(日) 15:37:44 ] エラトステネスのふるい涙目ww まぁ4桁ぐらいなら余裕かw
395 名前:デフォルトの名無しさん [2008/07/06(日) 15:59:55 ] 【 課題 】GUI設計に基づき、簡易電卓を設計せよ。ただし以下の条件を満たすように。 @0から9のボタン入力式でテキストフィールドに出力する A四則演算は+−×÷のボタン、小数計算は . のボタン、 結果は=のボタンで行うようにする。 B数字のクリアはCで行うように。 【 形態 】1. Javaアプリケーション(main()で開始) 【 GUI 】2.Swing 【 期限 】7/9 【 補足 】このプログラムはNetBeansIDE6.1でGUI設計してからプログラム を書いていくという手順でやっています。 あと0から9のボタンや+−×÷のボタンが押された時の ActionPerformedはそれぞれ個別にで定義するのではなく まとめて定義したいんですが、上手くいかないんです。 そこら辺の定義の仕方も詳しくして頂けるとありがたいです。
396 名前:デフォルトの名無しさん [2008/07/06(日) 16:37:58 ] >>395 NetBeans 使ってないので操作方法だったら分からんが、作りかけでもあるなら出したほうがいい。 >ActionPerformedはそれぞれ個別にで定義するのではなくまとめて定義したい というのが ActionListener をボタン毎に別のインスタンスにするのでは無く 一つのインスタンスでっていうことなら、各ボタンの AddActionListener に 同じ ActionListener インスタンスを渡すだけだ。 でその ActionPerformed 内で ActionEvent#getSource なり getCommand なりで どのボタンのイベントかを判別して処理分け。
397 名前:デフォルトの名無しさん [2008/07/06(日) 17:09:54 ] >>396 返信ありがとうございます。 package dentaku; import java.awt.event.*; import javax.swing.*; public class dentakuFrame extends javax.swing.JFrame { public dentakuFrame() { initComponents(); } ------------------------------------------------------------------------------------------ ここにボタンの位置などの設定がデフォルトで入っている。 ------------------------------------------------------------------------------------------ public void appendResult(String c) { result.setText(result.getText() + c); } public class NumberButton extends JButton implements ActionListener { public NumberButton(String key) { super(key); //JButtonクラスのコンストラクタを呼び出す this.addActionListener(this); //このボタンにアクションイベントのリスナを設定 }
398 名前:デフォルトの名無しさん [2008/07/06(日) 17:11:58 ] public void actionPerformed(ActionEvent evt) { String keyNumber = this.getText(); //ボタンの名前を取り出す appendResult(keyNumber); //ボタンの名前をテキストフィールドにつなげる } } public static void main(String args[]) { java.awt.EventQueue.invokeLater(new Runnable() { public void run() { new dentakuFrame().setVisible(true); } }); } private javax.swing.JButton Button0; private javax.swing.JButton Button1; private javax.swing.JButton Button2; private javax.swing.JButton Button3; private javax.swing.JButton Button4; private javax.swing.JButton Button5; private javax.swing.JButton Button6; private javax.swing.JButton Button7; private javax.swing.JButton Button8; private javax.swing.JButton Button9; private javax.swing.JButton divButton; private javax.swing.JButton minusButton; private javax.swing.JButton mulButton; private javax.swing.JButton plusButton; private javax.swing.JButton pointButton; private javax.swing.JButton resetButton; private javax.swing.JTextField result; private javax.swing.JButton resultButton; } これが現在の状況です。Actionに反応して値を受け渡したり、 演算子に応じる設定がどうしたらよいのかがわかりません。 よろしくお願いします。
399 名前:デフォルトの名無しさん [2008/07/06(日) 17:23:16 ] 補足 0から9のボタンはButton0からButton9に 小数点はpointButtonに 四則演算はplusButton,minusButton,mulButton,divButtonに クリアはresetButton、=はresultButtonに 数値表示テキストはresultに設定しています。
400 名前:デフォルトの名無しさん [2008/07/06(日) 17:25:15 ] >>397-399 >>1 省略しないで全部ろだ2等にアップ
401 名前:デフォルトの名無しさん [2008/07/06(日) 17:47:59 ] ろだ2の336.javaにupしました。お願いします。
402 名前:デフォルトの名無しさん mailto:sage [2008/07/06(日) 18:15:34 ] NumberButton使ってないね・・
403 名前:デフォルトの名無しさん mailto:sage [2008/07/06(日) 19:17:59 ] NumberButtonと言うことは、数字以外のActionPerformedはまとめなくて良いのだろうか、 それとも、すべてのActionPerformedを一つにしたいのだろうか。 そもそも、ActionPerformedをまとめると言うのは出された課題ではないようだけど・・・
404 名前:デフォルトの名無しさん [2008/07/06(日) 19:36:10 ] >>401 rg550.hp.infoseek.co.jp/cgi-bin/joyful/img/337.java 全部一個のリスナ(dentakuFrame)にしてみた。 initComponents も弄ると危なそうなので弄らない方向で。 ときどき例外出ることがあるのはご愛嬌(!)
405 名前:デフォルトの名無しさん [2008/07/06(日) 21:22:14 ] >>404 回答ありがとうございます。複雑なプログラムを提示してしま って申し訳ないです。実際に動かしてみてまた何かあったら 質問します。本当にありがとうございました。
406 名前:デフォルトの名無しさん [2008/07/06(日) 23:07:46 ] たびたびで恐縮なんですが、>>404 のプログラム中で actionPerformedの定義の部分が理解できないんですが、 解説して頂けないでしょうか。プログラムの意味を 理解しようとしたんですけど初めてみるメソッドなどが多く て困っています。 特にpushとpop、Stack、peek()、getPriorityなどの意味と このプログラムにおける使用の仕方などを詳しく解説して 頂けるとありがたいです。 あとBigDecimalで何を行っているかなどもできればお願いします。
407 名前:404 [2008/07/07(月) 01:15:27 ] >>406 StackはスタックというLIFO構造で、pushで入れたモノがpopで取り出せる。 peekは取り出さすことなく最後に入れたモノを得る。 Operator#getPropertyは、掛け算割り算を足し算引き算より優先して実行するために入れてある。 1+2*3と入力しようとしたとき、1+2*と入力した場合、最後の*を押した時に1+2を実行「しない」。 1+2+と入力した場合は最後の+を押した時に1+2を「実行し」3を表示する。 BigDecimalは大きな/小さな数値を表現する場合に限界や誤差などを「あまり」気にせずに使うためのクラス。 Javaのドキュメントと「Java BigDecimal」で検索などしてみて。 ちなみにときどき例外が…というのはこのBigDecimalのdivideらしぃ^^;
408 名前:404 [2008/07/07(月) 01:21:21 ] よく見たらStack#pushをStack#addにしちゃってるとこばかりだな。 一応Stack#addはpushと同じだから動いてるみたいだが。
409 名前:404 [2008/07/07(月) 04:05:47 ] >>406 divideの例外回避とかStack#add→pushとか変数名変えたりとか動作中のスタックイメージコメントなども入れてみた。 rg550.hp.infoseek.co.jp/cgi-bin/joyful/img/338.java
410 名前:デフォルトの名無しさん mailto:sage [2008/07/07(月) 06:24:06 ] なんか某アスキーの逆ポーランドの解説を思い出した。
411 名前:デフォルトの名無しさん [2008/07/07(月) 23:17:27 ] >409 例外回避から詳しい説明まで感謝の限りです。実際に動かしてみて 動作も正常に行われました。説明を読んでpopやpush、getPriority などの使い方、プログラムの動作もよくわかりました。今度使って みようと思います。 最後に0で割った時のエラーメッセージを出力しようと try-catch構文でArithmeticExceptionは回避させたんですけど、 java.util.EmptyStackExceptionのほうが割り算のoperatorに try-catchで組み込んでもうまくいかないのですが、どうすれば よいのでしょうか。たびたび質問ですみませんがお願いします。
412 名前:409 [2008/07/08(火) 00:09:02 ] >>411 まず、状況を説明するならその元となるモノ(409が変更した結果のソース)をアプしたり どう「うまくいかない」のか、想像していたことと実際起きたことを明記しないと分からん。 というわけで想像だが、 values.push(a.divide(b,5,BigDecimal.ROUND_HALF_EVEN)); を丸ごと try{ }catch(ArithmeticException e) に入れてしまうと、 values への push がされず、以降の計算を進めるための values が 足りなくなってしまうだろな。 0割が発生した場合は式全体を消して初期状態に戻してしまうのが普通かもしれない。 divideOperator#operateではなく、式全体を計算してるactionPerformedで処理する。 rg550.hp.infoseek.co.jp/cgi-bin/joyful/img/339.java
413 名前:409 [2008/07/08(火) 00:17:22 ] >409が変更した結果のソース → 411が変更した〜 スマン。 謝りついでも恐縮だが、長々サシ状態にしてしまってご免>スレ利用者各位
414 名前:デフォルトの名無しさん [2008/07/08(火) 00:40:39 ] >>412 upの件はすみません。 でも無事解決しました。設定する場所が違っていたんで すね。今回の質問で得るものが多かったです。これを活かして 精進しようと思います。>>409 さん、本当にありがとうございました。
415 名前:デフォルトの名無しさん mailto:sage [2008/07/08(火) 15:59:10 ] 【 課題 】java3Dを用いてx,y,zの三次元のパラメータを持つ20個程度のデータを三次元上にプロットし プロットされたデータをマウスクリックするとプロットの色が変化するようにしなさい 【 形態 】2. Applet/ 【 GUI 】4. 制限なし/ 【 期限 】7月15日 【 補足 】java3Dを今回初めて触ってみてまだサンプルプログラムを使って箱が回転できる程度です 座標やマウスリスナーの座標指定の仕方について現在調べていこうと考えています アドバイス宜しくお願い致します
416 名前:デフォルトの名無しさん mailto:sage [2008/07/08(火) 21:58:39 ] 【 課題 】ABC0703_111_Billiards.javaのpaint methodの繰り返し部分を for文を用いて書き換えよ。 ただし、繰り返しは300回行われるようにせよ。 【 形態 】1. Javaアプリケーション(main()で開始 【 GUI 】不明 【 Ver 】java version "1.6.0" 【 期限 】8月まで 【 補足 】ttp://rg550.hp.infoseek.co.jp/cgi-bin/joyful/img/340.java ↑がABC0703_111_Billiards.javaの中身です。 丸投げで申し訳ありませんが、よろしくお願いします。
417 名前:デフォルトの名無しさん mailto:sage [2008/07/08(火) 23:02:53 ] >>416 すでにfor文になってるじゃん・・・? paintメソッドの(1)〜(4)にある for(int n=0; n<100; n++)を for(int n=0; n<300; n++) にすればいいだけかと。
418 名前:デフォルトの名無しさん [2008/07/08(火) 23:32:29 ] 【 課題 】drawOval(50,50,300,300)の円と、その円が内接する正方形つまり drawRect(50,50,300,300)を描き、チェックボックスによりその円と 正方形を切り替えて表示できるようにせよ。 【 形態 】2. Applet 【 GUI 】2. Swing 【 期限 】7/10 【 補足 】丸投げですが、よろしくお願いします。
419 名前:デフォルトの名無しさん mailto:sage [2008/07/08(火) 23:40:30 ] >>415 ネット上で拾ったサンプルを切り貼りしてみた。 当方も本日初めてjava3Dを触ったので、参考までにて。 ttp://rg550.hp.infoseek.co.jp/cgi-bin/joyful/img/341.java
420 名前:デフォルトの名無しさん [2008/07/09(水) 02:04:23 ] >>417 その(1)〜(4)が同じっぽいから、つまり二重ループにしろってことじゃ? 繰り返し300回ってのがどっちのことか分からないが。
421 名前:デフォルトの名無しさん mailto:sage [2008/07/09(水) 02:08:25 ] >>418 ttp://rg550.hp.infoseek.co.jp/cgi-bin/joyful/img/342.java
422 名前:デフォルトの名無しさん mailto:sage [2008/07/09(水) 12:17:11 ] >>420 300回、線を引いてみることにした。 ttp://rg550.hp.infoseek.co.jp/cgi-bin/joyful/img/343.java
423 名前:デフォルトの名無しさん mailto:sage [2008/07/09(水) 13:35:26 ] >>419 書き忘れていた細かい部分まで実装されていて 大変参考になりました。ありがとうございます。 余裕が出来たのでこれから自分なりに色々いじってみたいと 思います。本当にありがとうございました。
424 名前:デフォルトの名無しさん mailto:sage [2008/07/09(水) 14:07:01 ] [1] 授業単元:オペレーティングシステム [2] 問題文(含コード&リンク): pipe3.cを完成させて、親子プロセス間で交互にメッセージを交換するプログラムを作成せよ。 pipe3.cはこちらになります↓ kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/7291.txt [3] 環境 [3.1] OS:Linux [3.2] コンパイラ名とバージョン: gcc [3.3] 言語: C言語 [4] 期限:7/9 23:59まで どうかよろしくお願いします。
425 名前:424 mailto:sage [2008/07/09(水) 14:07:55 ] 誤爆しました。申し訳ありません。
426 名前:416 mailto:sage [2008/07/10(木) 07:37:03 ] 質問に答えてくださった皆さん、ありがとうございました 教授の言った限りでは>>422 で良かったようです
427 名前:418 [2008/07/10(木) 11:47:16 ] >>421 すぐに教えて頂きありがとうございました。 無事間に合わせることができました。
428 名前:デフォルトの名無しさん [2008/07/10(木) 16:44:26 ] 現在、swingを利用したGUIプログラムを作成しています。 catchブロックで例外を捕らえた場合は、 そのエラー内容を表示しろとのことなのですが、 これはJOptionPane.showMessageDialogで表示したほうがよいのか、 System.out.printlnで表示したほうがよいのか、 一体どちらなのでしょうか。 System.out.printlnだと、開発環境から起動しなかった場合に、 内容を確認できないと思っています。
429 名前:デフォルトの名無しさん mailto:sage [2008/07/10(木) 17:03:49 ] ただの質問は質問スレへ
430 名前:デフォルトの名無しさん [2008/07/13(日) 15:40:59 ] 【 課題 】ttp://issoft17.is.noda.tus.ac.jp/~takeda/Java/delete.jpg 線形リストにおいて、指定されたn番目をリストから省くメソッドの作成(再帰的)ただし、n番目が要素数を上回っていた場合はリストをそのまま返す。 課題ページは上記URLです。 【 形態 】1. Javaアプリケーション 【 Ver 】1.5.0_15 【 期限 】7月14日17:00 【 補足 】リストの処理においてword欄を書き換えたり、メソッドの外でグローバル変数を使用するのはNGです。 現段階で非再帰的に処理を行うメソッドは作成済みですが、再帰的な処理の方が全くアルゴリズムが思い浮かばず 丸投げ状態です。締切まで時間がありませんが、もし可能な方がいましたら宜しくお願い致します。 参考URL:ttp://www.ed.noda.tus.ac.jp/j-takeda/list.html
431 名前:デフォルトの名無しさん mailto:sage [2008/07/13(日) 16:44:47 ] 【 課題 】 ttp://rg550.hp.infoseek.co.jp/cgi-bin/joyful/img/345.txt 【 形態 】 Javaアプリケーション(main()で開始) 【 期限 】 2008/07/20 23:00 【 Ver 】 1.4.2_12 【 補足 】 課題の丸投げです。 .javaファイルを1ファイルで作成して欲しいです。 できるだけ初心者にも理解し易く、単純な形で記述して頂けると助かります。 problem080720@yahoo.co.jpまでソースファイルをお送り下さい。 宜しくお願いします。
432 名前:デフォルトの名無しさん mailto:sage [2008/07/13(日) 17:05:01 ] 【課題提示用テンプレ】 【 課題 】「Java言語」を用いて、フラクタルを取り入れた自由作品を作りなさい 【 形態 】2. Applet 【 期限 】7月16日(水) 【 補足 】丸投げですが、何卒よろしくお願いいたします。
433 名前:デフォルトの名無しさん mailto:sage [2008/07/13(日) 17:29:33 ] >>430 自分でもよく分かってないけど・・・間違ってたらすまん public static ListNode delete(ListNode head, int n) { if(head != null) { if(--n==0) { head = head.next; } else { head.next = delete(head.next, n); } } return head; }
434 名前:430 [2008/07/13(日) 17:39:45 ] >>431 今書いて頂いたメソッドを組み込んで動作確認をしたところ、課題通りに正しい結果が返されました。 おかげで無事に提出期間に間に合いそうです。 迅速な回答本当に有難うございました。
435 名前:430 [2008/07/13(日) 17:41:40 ] レス番間違え。正しくは >>433 様宛てでした。度々失礼致しました。
436 名前:デフォルトの名無しさん [2008/07/13(日) 17:47:44 ] 【 課題 】3つの正の整数a、b、c ( c ≧ b ≧ a )が直角三角形になるa、b、c の組合せを20個出力するプログラムを作れ(while 文を使うこと) 【 形態 】1. Javaアプリケーション(main()で開始) 【 期限 】7/14まで 【 Ver 】1.6.0 【 補足 】丸投げです。お願いします。
437 名前:デフォルトの名無しさん [2008/07/13(日) 17:49:29 ] 【 課題 】年月日を入力したい。 存在しない年月日を入力したらエラーメッセージを出力し再入力促 せ 閏年の判定を行うこと。 1. 西暦年が4で割り切れる年は閏年 2. ただし、西暦年が100で割り切れる年は平年 3. ただし、西暦年が400で割り切れる年は閏年 存在する年月日であればそれを表示せよ 【 形態 】1. Javaアプリケーション(main()で開始 【 期限 】7月14日まで 【 Ver 】1.6.0 【 補足 】学校の宿題です。お願いします。
438 名前:デフォルトの名無しさん [2008/07/13(日) 17:58:01 ] 【 課題 】3行3列の行列Aと行列Bの各要素をキーボードから入力し、AB(行列 の掛け算)の結果を出力するプログラムを書け。行列A、Bは2次元配列で表すこと。 【 形態 】1. Javaアプリケーション(main()で開始) 【 期限 】7/14 【 Ver 】1.6.0 【 補足 】明日までなのでよろしくお願いします。
439 名前:デフォルトの名無しさん [2008/07/13(日) 17:58:50 ] 【 課題 】0〜2の乱数(整数)を作り、キーボードから0〜2を入力して、両者が 同じ数字なら「当たり!」、違う数字なら「はずれ!」と以下のように出力せよ。 【 形態 】1. Javaアプリケーション(main()で開始) 【 期限 】7月14日 《必須》 【 Ver 】1.6.0 【 補足 】丸投げです。わからないのでよろしくお願いします。
440 名前:デフォルトの名無しさん mailto:sage [2008/07/13(日) 18:26:19 ] 【課題】欧文を入力すると、そこで使われている全単語の使用回数(出現頻度)を数え、 一覧表示するプログラムを作成しなさい。 HashMap を使うこと。 欧文は、単語と単語の間が空白で区切られているものとする。 Scanner クラスのメソッド next() を使うと、 1単語ずつ読み込むことができる。 main メソッドのあるクラスのクラス名は WordCounter とする。 System.out.println("欧文を入力してください(終了: Ctrl-d)"); Scanner scanner = new Scanner(System.in); while(scanner.hasNext()) { String word = scanner.next(); .... } 【形態】1. Javaアプリケーション(main()で開始) 【期限】7月14日 20;00 【Ver】1.5.0.11 【補足】丸投げです。宜しくお願いします
441 名前:デフォルトの名無しさん mailto:sage [2008/07/13(日) 18:30:00 ] なんか急に増えたな・・ >>431 1. Stack を固定長配列を使って定義しなさい。 とりあえずこれはこんな感じだと。メールは面倒だわ・・ rg550.hp.infoseek.co.jp/cgi-bin/joyful/img/346.java >>432 そのへんはググればいくらでもソース見つかると思うからそうした方が・・
442 名前:432 mailto:sage [2008/07/13(日) 18:48:26 ] >>441 講師「はぁ?何お前?ググってコピペする気?言っとッけど俺マジパネェよ?ググって提出した課題全部分かっちゃうよ?」 生徒「・・・・・・」 いや、無理ならスルーしてくれても構わないんだ アドバイスありがとう
443 名前:デフォルトの名無しさん mailto:sage [2008/07/13(日) 20:28:08 ] >>442 人に頼んだり、まして、ネットでもらった回答がバレない理由なんて無いんじゃね?
444 名前:デフォルトの名無しさん mailto:sage [2008/07/13(日) 20:36:22 ] >>443 うん、それを言われちゃあ返す言葉もない
445 名前:デフォルトの名無しさん mailto:sage [2008/07/13(日) 21:33:52 ] >>440 Scanner って ctrl-d で終わるんだっけ? そんな風には動かないんだが。 ま、いいかw import java.util.*; public class WordCounter { public static void main(String[] args) { System.out.println("欧文を入力してください(終了: Ctrl-d)"); Scanner scanner = new Scanner(System.in); HashMap<String,Integer> wordMap = new HashMap<String,Integer>(); while(scanner.hasNext()) { String word = scanner.next(); if(wordMap.containsKey(word)) { wordMap.put(word, wordMap.get(word).intValue() + 1); } else { wordMap.put(word, 1); } } System.out.println("---- 単語数: "+wordMap.size()); for(Map.Entry<String,Integer> entry : wordMap.entrySet()) { System.out.println(entry.getKey()+": "+entry.getValue()); } } }
446 名前:デフォルトの名無しさん mailto:sage [2008/07/13(日) 21:36:44 ] >>439 >以下のように出力せよ。 って何
447 名前:デフォルトの名無しさん mailto:sage [2008/07/13(日) 22:00:32 ] >>436 式知らないので参考URLとともにむりやりwhile。 // ttp://atsugi5761455.fc2web.com/calking14.html public class ピタゴラスの三角形 { public static void main(String[] args) { int n = 1; int i = 1; int n2 = n * n; int k = 1; while(i <= 20) { int m = n + k; int m2 = m * m; int a = m2 + n2; int b = m2 - n2; int c = 2 * m * n; System.out.println(i+": a="+a+",b="+b+",c="+c); i ++; k += 2; } } }
448 名前:447 mailto:sage [2008/07/13(日) 22:04:27 ] ああ、 > c ≧ b ≧ a を満たしてないし。数値入れ替えるだけじゃだめ?w
449 名前:デフォルトの名無しさん mailto:sage [2008/07/13(日) 22:22:30 ] >>441 回答ありがとうございます。 しかし、それだと問題1しか解けていないと思うのですが・・・ 問題は1〜5まであります。 どうか宜しくお願いします。
450 名前:デフォルトの名無しさん mailto:sage [2008/07/13(日) 22:29:26 ] >>437 import java.util.*; public class Uruu { static final int[] daysOfMonth = new int[]{31,29,31,30,31,30,31,31,30,31,30,31}; public static void main(String[] args) { while(true) { System.out.println("yyyy mm dd"); Scanner in = new Scanner(System.in); int y = Integer.parseInt(in.next()); int m = Integer.parseInt(in.next()); int d = Integer.parseInt(in.next()); if(y < 1583 || m < 1 || m > 12 || d < 1 || d > daysOfMonth[m-1]) { System.out.println("err."); continue; } else if(m == 2 && !isUruu(y) && d > 28) { System.out.println("URUU-day err."); continue; } System.out.println("y="+y+",m="+m+",d="+d); break; } } static boolean isUruu(int y) { if((y % 400) == 0) return true; if((y % 100) == 0) return false; return ((y % 4) == 0); } } 自分で書いといてヒドイ書き方だと思う…
451 名前:446 mailto:sage [2008/07/13(日) 22:44:54 ] >>439 とりあえず import java.util.*; public class RndNum { public static void main(String[] args) { Random random = new Random(); int num = random.nextInt(3); System.out.println(num); System.out.println("input 0-2"); Scanner scanner= new Scanner(System.in); int input = scanner.nextInt(); if(input == num) { System.out.println("当たり!"); } else { System.out.println("はずれ!"); } } }
452 名前:デフォルトの名無しさん mailto:sage [2008/07/13(日) 23:29:47 ] >>438 ttp://rg550.hp.infoseek.co.jp/cgi-bin/joyful/img/347.java
453 名前:デフォルトの名無しさん mailto:sage [2008/07/13(日) 23:34:28 ] >>441 週末向けに宿題だされたけど結局やらずに駆け込みってことかねぇ。 暇つぶしには適当にばらけてくれたほうがいいんだが。
454 名前:デフォルトの名無しさん mailto:sage [2008/07/14(月) 01:18:18 ] >>431 3 の Cell を使うと >スタックは大きさを持ち、格納できる要素数はその大きさまでとする。 ちゅうのをどう表現するか決めかねるんだが。 3. >>441 のを修正して ttp://rg550.hp.infoseek.co.jp/cgi-bin/joyful/img/348.java 4. 大きさチェックなし ttp://rg550.hp.infoseek.co.jp/cgi-bin/joyful/img/349.java メールでレス貰おうなんざ面倒くさ杉
455 名前:デフォルトの名無しさん mailto:sage [2008/07/14(月) 07:29:10 ] メールの場合ノーチェックになるからな ここにレスするかうpろだだとこのスレの他の人のチェックはいるから 変なプログラムはめちゃ叩かれるw
456 名前:デフォルトの名無しさん mailto:sage [2008/07/14(月) 12:53:50 ] 【 課題 】じゃんけんゲームを作成せよ。完成版は、反復構造により続けてゲームができるようにし、0で終了させて最後に勝ち負けの集計(勝率も計算させる)が表示できるようにせよ。 なお、プログラムは あなたの手の入力の処理 コンピュータの手の生成 勝ち負けの判定 勝率の計算 の4つの処理を行うメソッドを定義し、これを利用して作成すること。 【 形態 】1. Javaアプリケーション(main()で開始 【 期限 】7月31日まで 【 補足 】単位かかってます。
457 名前:デフォルトの名無しさん mailto:sage [2008/07/14(月) 14:14:14 ] >>456 こういうの見ると、 "必ず勝つ(or負ける)ようにしとけば判定とか率とか表示1行で済んで楽だ" と思うんだが、そするとやっぱり単位とやらが貰えないのだろうか。 閑話休題。 >完成版は、 とあるが、未完成版はあるのか? もしくは未完成版でもいいのか? >0 で終了させて というのは、手の入力には何か規則があるのか?