- 1 名前:デフォルトの名無しさん mailto:sage [2009/07/19(日) 23:15:02 ]
- 【質問者へ】
回答者の便宜のため、以下の注意事項を遵守してください。 ・質問は【課題提示用テンプレ】を利用してください。 ・問題文は、出題されたまま全文を書いてください。 ・数学問題は「○×法でせよ」だけでなく、その数式、前提条件も説明してください。 ・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 【前スレ】 pc12.2ch.net/test/read.cgi/tech/1232627790/
- 577 名前:デフォルトの名無しさん [2009/12/09(水) 15:57:00 ]
- 卒論とかでもいいですか?
出来なさ過ぎて泣きそうです。
- 578 名前:デフォルトの名無しさん mailto:sage [2009/12/09(水) 16:28:52 ]
- 自己責任でどうぞ
- 579 名前:デフォルトの名無しさん mailto:sage [2009/12/09(水) 16:39:52 ]
- 定時までなら付き合う
- 580 名前:デフォルトの名無しさん mailto:sage [2009/12/09(水) 17:59:49 ]
- >>577
自分の卒論を他人が1日とかでやっちゃったらショックだろうなぁ
- 581 名前:デフォルトの名無しさん mailto:sage [2009/12/09(水) 18:12:09 ]
- 卒論レベルってどんな?
高分子解析プログラムとか5次元平面上にあるゼロ点を抽出するプログラムとか?
- 582 名前:デフォルトの名無しさん mailto:sage [2009/12/09(水) 18:13:53 ]
- 情報系なら5台のPCに並列処理させるプログラムとか円周率を100万桁求めるとかかな?
- 583 名前:デフォルトの名無しさん mailto:sage [2009/12/09(水) 18:16:42 ]
- 釣れる釣れるw
- 584 名前:デフォルトの名無しさん mailto:sage [2009/12/10(木) 12:10:36 ]
- 【 課題 】 rg550.hp.infoseek.co.jp/cgi-bin/joyful/main.htmの857です
【 形態 】1. Javaアプリケーション(main()で開始) 【 GUI 】指定なし 【 期限 】12/11 【 Ver 】1.6.0_16 よろしくお願いします
- 585 名前:デフォルトの名無しさん mailto:sage [2009/12/10(木) 12:14:07 ]
- >>584
何周目だよ
- 586 名前:デフォルトの名無しさん mailto:sage [2009/12/10(木) 12:45:02 ]
- rg550.hp.infoseek.co.jp/cgi-bin/joyful/img/857.txt
- 587 名前:デフォルトの名無しさん mailto:sage [2009/12/10(木) 14:45:57 ]
- 一連のユニフィケーションの課題は宮城大学かな
857.txtには自分が書いた物とか書いてるけど 大学のページにある資料のPDFとかJavaソースとかのままだ
- 588 名前:デフォルトの名無しさん [2009/12/10(木) 18:50:05 ]
- Javaでサイコロゲーム『ヨット』のプログラミングをつくらないといけないんですが
わかるかた教えてください。 ヨットはポーカーに似たゲームです。 よろしくお願いします。
- 589 名前:デフォルトの名無しさん mailto:sage [2009/12/10(木) 19:09:40 ]
- >>588
>>1 補足でゲームルールの説明も必要
- 590 名前:デフォルトの名無しさん mailto:sage [2009/12/10(木) 21:09:04 ]
- ヨットについて検索してたらでてきた
detail.chiebukuro.yahoo.co.jp/qa/question_detail/q1333937893 まぁ、どうでもいいんだけど
- 591 名前:デフォルトの名無しさん [2009/12/10(木) 22:06:16 ]
- 588
ヨットのルールです。 www7.ocn.ne.jp/~sdc/game/help/yacht_help.html ボーナスポイントはなくてもかまいません。 プログラミングわかるかたいたら教えてください。
- 592 名前:デフォルトの名無しさん mailto:sage [2009/12/10(木) 22:13:04 ]
- >>591
>>1
- 593 名前:デフォルトの名無しさん mailto:sage [2009/12/11(金) 01:33:06 ]
- >>857の大学は「javaによる知能プログラム入門」とか使ってるな
見たことあると思ったらうちに本があった
- 594 名前:デフォルトの名無しさん mailto:sage [2009/12/11(金) 01:46:22 ]
- こんな大学生ばっかで大学は大丈夫なのか?
- 595 名前:デフォルトの名無しさん mailto:sage [2009/12/11(金) 02:00:54 ]
- お前ら厳しいなwww
- 596 名前:デフォルトの名無しさん mailto:sage [2009/12/11(金) 02:05:58 ]
- 日本の将来を憂う
- 597 名前:デフォルトの名無しさん mailto:sage [2009/12/11(金) 02:06:41 ]
- こんなだからインド人にプログラマー枠の求人を盗られるんだよ
- 598 名前:デフォルトの名無しさん mailto:sage [2009/12/11(金) 02:09:10 ]
- インド人はいい、チャイニーズを何とかしてくれ
- 599 名前:デフォルトの名無しさん mailto:sage [2009/12/11(金) 12:13:45 ]
- >>594
さすがに、ここに来ている大学生はダメな大学生だけ。 ただし、卒業できなくて当たり前のはずの学生も、卒業して「大卒でござい」となる。
- 600 名前:デフォルトの名無しさん mailto:sage [2009/12/11(金) 22:56:39 ]
- >>558
ttp://www.net.c.dendai.ac.jp/intro.html ロンダなんだから
- 601 名前:デフォルトの名無しさん mailto:sage [2009/12/11(金) 23:11:15 ]
- この電電卒東工ロンダの人、誘導形式で課題作ってくれてるんだから
きちんとやっていけば解けると思うんだけどな
- 602 名前:デフォルトの名無しさん [2009/12/12(土) 00:42:08 ]
- 【 課題 】複数人の名前を入力してから3教科の点数を全員分入力し、各教科の平均点と、最高点と取った人の名前を表示せよ。
【 形態 】Javaアプリケーション(main()で開始) 【 GUI 】指定なし 【 期限 】12/14 【 Ver 】1.6.0_16 【 補足 】初歩的な質問で済みません。点数を入力させるとこまではいきました。 丸投げですがよろしくお願いします
- 603 名前:デフォルトの名無しさん mailto:sage [2009/12/12(土) 10:39:35 ]
- >>601
それは、当たり前の学生なら解けるワケで… ここに来るのは…
- 604 名前:デフォルトの名無しさん mailto:sage [2009/12/12(土) 13:05:36 ]
- ・自分で作れるだけの技術はあるが、忙しく、初歩レベルのプログラミング作成なんかに時間割きたくない、が単位落せばGPAに響くのでどうにかしたい
・自分で作れる技術がない、が単位落とせばGPAに響くのでどうにかしたい ・自分で作れるだけの技術はあるが、ただ面倒だから人任せにしたい、誰もやってくれなければ自分でやるわ ・宿題というのは提出すればよいもので誰が解答を作ったかは関係ない。面倒だからおまいらやってくれ
- 605 名前:デフォルトの名無しさん mailto:sage [2009/12/12(土) 13:39:39 ]
- >>604
質問もまともに出来ない学生が、自力で解けるとは信じられない
- 606 名前:デフォルトの名無しさん mailto:sage [2009/12/12(土) 13:46:25 ]
- 人に頼ってばっかの奴が大学教授とかになったら最悪だな
- 607 名前:デフォルトの名無しさん mailto:sage [2009/12/12(土) 14:21:39 ]
- 教授の椅子までなると、本人の力だけではどうにも…
- 608 名前:デフォルトの名無しさん mailto:sage [2009/12/12(土) 14:22:53 ]
- 根回しとか賄賂とか必要だよね
- 609 名前:デフォルトの名無しさん [2009/12/12(土) 19:49:39 ]
- あ
- 610 名前:デフォルトの名無しさん [2009/12/12(土) 19:55:35 ]
- >>602
とりあえずこんな感じでok? ttp://rg550.hp.infoseek.co.jp/cgi-bin/joyful/img/858.zip 入力チェック処理とかしてないので必要な場合は自分で考えてみて
- 611 名前:デフォルトの名無しさん [2009/12/12(土) 22:02:11 ]
- >>610
有難う御座います! 理解できなかったところがわかりました
- 612 名前:デフォルトの名無しさん [2009/12/12(土) 22:47:28 ]
- NetBeansでしょうね。
- 613 名前:デフォルトの名無しさん mailto:sage [2009/12/13(日) 21:38:40 ]
- 【 課題 】rg550.hp.infoseek.co.jp/cgi-bin/joyful/img/859.txt
【 形態 】2 Applet 【 期限 】12/14 14時 【 補足 】黒い円周上の上を回転する赤い球の周りを、青い球に回転させなさいという課題です。 課題文のプログラムを少し変えると出来るようです。 よろしくお願いします。
- 614 名前:デフォルトの名無しさん mailto:sage [2009/12/13(日) 22:25:11 ]
- >>613
こんな感じでどうでしょうか? codepad.org/EoiuFPUF
- 615 名前:デフォルトの名無しさん mailto:sage [2009/12/14(月) 00:23:14 ]
- >>614
どうもありがとうございます。 学校に行かないと確認出来ませんが…感謝。
- 616 名前:デフォルトの名無しさん mailto:sage [2009/12/16(水) 18:35:22 ]
- 【 課題 】コンボボックスを使って中の条件によりコンソールかアプレットで内容を表示
【 形態 】Javaアプリケーションかアプレットで 【 期限 】2,3日で 【 補足 】コンボボックスの中にP0,P1…P9を書きP0を選択したら○を表示させたりやP1を選択したら◎など表示させるプログラムです コンソールかアプレットに表示させたいです
- 617 名前:デフォルトの名無しさん [2009/12/17(木) 03:37:05 ]
- >>616
内容がないよう
- 618 名前:デフォルトの名無しさん mailto:sage [2009/12/17(木) 22:05:59 ]
- import java.awt.event.*;
import javax.swing.*; public class Kadai616 extends JFrame { public Kadai616() { String items[] = { "P0", "P1", "P2", "P3", "P4", "P5", "P6", "P7", "P8", "P9" }; final JComboBox cb = new JComboBox(items); cb.addActionListener(new ActionListener() { @Override public void actionPerformed(ActionEvent e) { switch (cb.getSelectedIndex()) { case 0: System.out.println("◯"); break; case 1: System.out.println("◎"); break; default: System.out.println(cb.getSelectedItem()); } } }); add(cb); setVisible(true); } public static void main(String[] args) { new Kadai616(); } }
- 619 名前:デフォルトの名無しさん mailto:sage [2009/12/17(木) 22:29:35 ]
- 【課題】ServletRequest.getRequestDispatche()とServletContext.getRequestDispatche()の違い
よろしくお願いします。
- 620 名前:デフォルトの名無しさん [2009/12/19(土) 12:15:51 ]
- 同じ
- 621 名前:デフォルトの名無しさん mailto:sage [2009/12/19(土) 14:23:54 ]
- 【 課題 】3問ありますのでアップローダに投稿させていただきました。
www.dotup.org/uploda/www.dotup.org473124.zip 【 形態 】Javaアプリケーション(main()で開始) 【 GUI 】4. 制限なし 【 期限 】12/23 【 Ver 】1.6.0_16 【 補足 】課題文にいくつかの指定がありますのでその通りでお願いします。 宜しくお願いします。
- 622 名前:デフォルトの名無しさん mailto:sage [2009/12/20(日) 01:55:24 ]
- >>621
課題1 codepad.org/zt92NdS8 課題2 codepad.org/ZszRX7DC 課題3 codepad.org/ntLVtxI5 問題などあったら教えて下さい。
- 623 名前:デフォルトの名無しさん mailto:sage [2009/12/20(日) 05:15:49 ]
- 【 課題 】TextBoxから拾得した文字列をMobileFelicaで出力
【 形態 】4. 携帯(Doja5.0)/5. その他(MobileFelica) 【 GUI 】1. AWTのみ/2. Swing/3. SWT/4. 制限なし/ 5. その他(明記すること) 《GUIの課題の場合必ず選択》 【 期限 】12月22日早朝 【 Ver 】java version "1.6.0_17" 【 用語 】 【 補足 】 Felica関係の宿題もこちらでよろしいでしょうか? 丸投げでなくて申し訳ありませんが、ある程度自分で作ったファイルがあります。 ttp://www1.axfc.net/uploader/Sc/so/65585 起動はするのですが、ADF設定で「仮想FeliCaデータファイルへのFeliCaCPID、PINの関連付けに失敗しました」というエラーが出ます。 Java部分は動いているように見えるので、Felica部分で上記エラーを起こしていると思います。 残り期間等少ないですが、よろしくお願いします。
- 624 名前:デフォルトの名無しさん mailto:sage [2009/12/20(日) 08:25:58 ]
- >>622
回答ありがとうございます! 2、3は問題ありませんでした。 1の1行目のパッケージを使用せず乱数を発生させる方法というのはありませんでしょうか? まだ習っていないもので…。
- 625 名前:デフォルトの名無しさん mailto:sage [2009/12/20(日) 12:20:54 ]
- >>624
Math.random() を使うのはオッケーであることを信じて。。。 codepad.org/oYdeVN92
- 626 名前:デフォルトの名無しさん mailto:sage [2009/12/20(日) 13:21:34 ]
- Canvas3Dをフレームの領域指定して貼り付けたいのですがどうすればいいでしょうか?
例えばフレームサイズが(500,400)として,Rect(10, 10, 390, 390)くらいの領域だけで3D描画を行わせたり等がしたいです。
- 627 名前:626 mailto:sage [2009/12/20(日) 13:23:37 ]
- すみませんスレッド間違えました。
スルーして下さい。
- 628 名前:デフォルトの名無しさん mailto:sage [2009/12/20(日) 14:25:05 ]
- >>625
Math.random()なら問題ありません。 お手数をおかけして申し訳ないです。 有難うございました。
- 629 名前:デフォルトの名無しさん [2009/12/20(日) 14:54:56 ]
- 【 課題 】氏名(string)、ふりがな(string)、携帯番号(string)、メールアドレス(string)
をフィールドとして持つクラスAddressBookを定義せよ。 クラス内に、ふりがなで辞書順に並べ替えるためのcompareToを定義せよ。 外部に,MailSortという、メールアドレスを辞書順に並び変えるためのメソッドを 作成せよ。 メイン・プログラムで、AddressBookクラスの配列(大きさ3)を定義し、 以下の動作をおこなうプログラムを作れ。 3人分のデータをキーボードから入力し、配列に代入する。 ・配列に代入されたデータをふるがな順に、見やすく出力する。 ・配列に代入されたデータをメールアドレス順に、見やすく出力する。 入力、出力には、for文を使うこと。 【形態 】1. Javaアプリケーション(main()で開始) 【 GUI 】 制限なし 【 期限 】12/21 15時まで。 【 Ver 】1.6.0_16 【補足 】いろんなサイトみてますが、応用できません。お願いします。
- 630 名前:デフォルトの名無しさん mailto:sage [2009/12/20(日) 18:01:47 ]
- >>629
codepad.org/QnzkUMQ2
- 631 名前:デフォルトの名無しさん mailto:sage [2009/12/20(日) 18:53:57 ]
- >>619
sirius.itfrontier.co.jp/jrun/docs/jr4/docs/html/Programmers_Guide/techniques_servlet17.html
- 632 名前:デフォルトの名無しさん [2009/12/20(日) 21:20:47 ]
- >>630 きれいなプログラムありがとうございます。
僕の課題はこちらでした。。。 【 課題 】 氏名(string)、ふりがな(string)、携帯番号(string)、メールアドレス(string) をフィールドとして持つクラスAddressBookを定義せよ。 クラス内に、ふりがなで辞書順に並べ替えるためのcompareToを定義せよ。 外部に,TelNoSortという、電話番号(文字列)を辞書順に並び変えるためのメソッドを 作成せよ。 メイン・プログラムで、AddressBookクラスの配列(ArrayList)を定義し、 以下の動作をおこなうプログラムを作れ。 3人分のデータをキーボードから入力し、リストに代入する。 ・配列に代入されたデータをふりがな順に、見やすく出力する。 ・配列に代入されたデータを電話番号順に、見やすく出力する。 入力、出力には、for文を使うこと。 【形態 】1. Javaアプリケーション(main()で開始) 【 GUI 】 制限なし 【 期限 】12/21 15時まで。 【 Ver 】1.6.0_16 【補足 】今自分でやってますがお願いします
- 633 名前:デフォルトの名無しさん [2009/12/21(月) 01:01:52 ]
- なんとか自力で>>632できました。
ありがとうございました。
- 634 名前:デフォルトの名無しさん [2009/12/21(月) 18:26:22 ]
- それはよかった
- 635 名前:デフォルトの名無しさん [2009/12/21(月) 19:21:19 ]
- 【 課題 】コマンドラインから数値を受け取り、その数値の因数を全て表示するプログラムを完成させなさい。
【 形態 】1. Javaアプリケーション(main()で開始) 【 期限 】あと少しなので今日中にお願いします。 【 Ver 】1.4.2_03 【 補足 】【 】の中身がわからないのでよろしくお願いします。 import java.lang.*; public class kadai { public static void main(final String[] argStringArray) throws Exception { int vInt = 0; int vMax = 0; int vFactor = 0; vInt = Integer.parseInt(argStringArray[0]); vMax = 【 】(int); for(vFactor = 1; vFactor < vMax; vFactor++) { if((vInt % vFactor) == 0) { System.out.println(vInt + " = " + vFactor + " * " + (vInt / vFactor)); }}}} 実行結果 java kadai 8 8 = 1 * 8 8 = 2 * 4 java kadai 120 120 = 1 * 120 120 = 2 * 60 120 = 3 * 40 120 = 4 * 30 120 = 5 * 24 120 = 6 * 20 120 = 8 * 15 120 = 10 * 12
- 636 名前:デフォルトの名無しさん mailto:sage [2009/12/21(月) 19:37:19 ]
- >>635
vMax = (int)Math.sqrt(2.0) + 1;
- 637 名前:デフォルトの名無しさん mailto:sage [2009/12/21(月) 19:38:50 ]
- すまん。こっち
vMax = (int)Math.sqrt(vInt) + 1;
- 638 名前:デフォルトの名無しさん [2009/12/21(月) 19:43:48 ]
- >>637
(int)は後ろに来るんですよ。 キャストじゃないっぽいんですよね。
- 639 名前:デフォルトの名無しさん mailto:sage [2009/12/21(月) 20:27:25 ]
- そんな書き方はありまへん
- 640 名前:デフォルトの名無しさん mailto:sage [2009/12/23(水) 02:14:46 ]
- vMax = (int)Math.sqrt(vInt) + 1; //
- 641 名前:デフォルトの名無しさん mailto:sage [2009/12/23(水) 19:02:26 ]
- >>640
天才だな
- 642 名前:デフォルトの名無しさん mailto:sage [2009/12/23(水) 23:04:33 ]
- w
- 643 名前:デフォルトの名無しさん mailto:sage [2009/12/24(木) 00:22:41 ]
- 【 課題 】与えられた課題文をそのまま書きます。 《必須》
1.System.currentTimeMillis();を使ったストップウォッチの結果を、実行する度に、 外部ファイルであるlog.csvに、書き込む時の日と一緒に書き込みを行うプログラムの作成をせよ。 public static void main(String args[]){ start = System.currentTimeMillis(); (略) stop = System.currentTimeMillis(); time = stop - start; } で出来たストップウォッチの結果timeを、log.csvに保存すると言うことです。他のクラスでメソッドとか作ってもOKです。 保存形式は [day],24000 [day],25000 [day],25000 このような形です。([day]の部分には書き込んだ時の日が記録される。数字がtime) このログを持っているときに再度、mainを実行したら、新たにまた[day],23000など追加する機能がいるということです。 2.上記で作成したファイルを読み取り、[day]を除いてtimeの値を全て合計し、 それをlog2.csvのうち time_sum = と書かれた部分にその合計値を記録するプログラムの作成をせよ。 log2.csvは、初期は (改行) time_sum,0 となってるcsvです。(二度目以降の実行では0に違う数字が入ってる可能性も) このcsvの何行か目にtime_sumと言う文字があり、実行したら time_sum,50000 (この値は↑のlog.csvの値の合計)となるプログラムということです。 【 形態 】Javaアプリケーション 【 GUI 】特に無し 【 期限 】24日の24時まで(遅れても減点はされるだけですが…) 【 Ver 】java version "1.6.0_16" よろしくお願いします。
- 644 名前:デフォルトの名無しさん [2009/12/24(木) 00:27:24 ]
- 2の上記で作成した〜と言うのは、log.csvのことです。
log.csvを読み取り、log2.csvに書き込む、と言うことです。これは1のプログラムとは別のmainで作成です 度々すいません、どうかお願いします…
- 645 名前:デフォルトの名無しさん [2009/12/24(木) 01:49:56 ]
- 【課題】以下のサイトのプログラムのアルゴリズムをなるべく詳しく説明せよ。
サイト↓ oraclesqlpuzzle.hp.infoseek.co.jp/java/java-3-6.html よろしくお願いしますm(_ _)m
- 646 名前:デフォルトの名無しさん [2009/12/24(木) 02:46:11 ]
- アプレットのプログラムについてです。
内容はボールを反射させて動かす(ピンボールのような)プログラムです。 g.setColor(Color.red); g.fillOval((int)(this.x2-3),(int)(this.y2-3),6,6); このようなプログラムが組まれており意味してるものは動かすボールの色と大きさを指定しているのは理解できるのですがこれでなぜ色と大きさが指定できているのか細かい部分がよくわかりません。 これでなぜ色と大きさを指定できるのか説明するものです。 宜しくお願いします。
- 647 名前:デフォルトの名無しさん mailto:sage [2009/12/24(木) 03:00:34 ]
- ?
- 648 名前:デフォルトの名無しさん mailto:sage [2009/12/24(木) 11:23:52 ]
- 日本語でおk
- 649 名前:デフォルトの名無しさん mailto:sage [2009/12/24(木) 11:39:48 ]
- pc12.2ch.net/test/read.cgi/tech/1258793926/793
とのマルチだろ
- 650 名前:デフォルトの名無しさん [2009/12/24(木) 12:58:37 ]
- >>643
別にやる予定があるわけじゃないんだけど このストップウォッチって勝手にスタートして勝手に止まるの?
- 651 名前:デフォルトの名無しさん mailto:sage [2009/12/24(木) 13:29:33 ]
- 略の中に重い処理が書かれてるんだろう
- 652 名前:デフォルトの名無しさん mailto:sage [2009/12/24(木) 17:14:36 ]
- 【 課題 】キーボードから文字入力し、":"で文字列分割をし、結果を表示する。
文字列分割の際にはsplitメソッドを利用すること。 【形態 】1. Javaアプリケーション(main()で開始) 【 GUI 】 制限なし 【 期限 】12/25 15時まで。 【 Ver 】1.6.0_15 【補足 】キー入力と分割はできましたが、ひらがなを入力すると表示するとき文字化けしてしまいます・・・ 色々なサイト見たのですが解決できませんでした。よろしくお願いいたします。
- 653 名前:デフォルトの名無しさん mailto:sage [2009/12/24(木) 19:46:04 ]
- >>652
環境書け Eclipse使ってるなら使わない
- 654 名前:デフォルトの名無しさん mailto:sage [2009/12/24(木) 20:26:08 ]
- >>653
環境はEclipse version3.4.1です。 Eclipse使わずにやれば問題ないということでしょうか??
- 655 名前:デフォルトの名無しさん mailto:sage [2009/12/24(木) 22:42:22 ]
- >>643
import java.io.*; import java.util.Calendar; public class StopWatch{ public static void main(String[] args){ FileOutputStream os = null; FileReader fr = null; try{ // ファイル操作などでエラーが出たときの例外用(ストリームを閉じる以外特に処理しないけど) long t = System.currentTimeMillis(); System.in.read(); // キー入力待ち t = System.currentTimeMillis()-t; PrintStream out = new PrintStream(os = new FileOutputStream("log.csv", true)); // 出力ストリーム開く out.println("["+Calendar.getInstance().get(Calendar.DATE)+"],"+t); // "[日付],結果時間"で出力 os.close(); // 出力ストリーム閉じる os = null; if(args.length >= 1 && args[0].equals("-t")){ // オプションで-tってあったら合計出力処理 String line; // 行取得用 BufferedReader br = new BufferedReader(fr = new FileReader("log.csv")); // 読み込みストリーム開く t = 0; while((line = br.readLine()) != null){ // 一行読み込み try{ // 変な文法の行だったら何もしない例外処理にまわす(空行とかも) t += Integer.valueOf(line.substring(line.indexOf(",")+1)).intValue(); // 時間があったら }catch(Exception e2){} } fr.close(); // 読み込みストリーム閉じる
- 656 名前:デフォルトの名無しさん mailto:sage [2009/12/24(木) 22:44:20 ]
- //続き
fr = null; ByteArrayOutputStream bos; out = new PrintStream(bos = new ByteArrayOutputStream()); // 出力内容バッファ try{ // log2.csvが開けないときはファイルが存在しないとみなし、新しいファイルを作成して出力はしたいので外の例外処理に回さない br = new BufferedReader(fr = new FileReader("log2.csv")); // while((line = br.readLine()) != null){ try{ // ','が無い行などは何もしない例外として処理 if(line.substring(0,line.indexOf(',')).trim().equals("time_sum"))break; // "time_sum,〜"なら〜が数値以外でも目的の行と判断(ちょっといい加減だけど) }catch(Exception e){} out.println(line); // 関係ない行はそのまま出力 } }catch(Exception e2){} out.println("time_sum,"+t); // 目的行出力 if(br != null)while((line = br.readLine()) != null)out.println(line); // 残りの関係ない行もそのまま出力 (os = new FileOutputStream("log2.csv")).write(bos.toByteArray()); // 全体を実書き出し(ストリームは通常時もfinallyで閉じる) } }catch(Exception e){}finally{ try{ if(os != null)os.close(); // ファイルストリーム後処理 if(fr != null)fr.close(); // }catch(Exception e){} } } }
- 657 名前:デフォルトの名無しさん mailto:sage [2009/12/25(金) 00:04:00 ]
- >>645
これは何者かが考えた15パズルを解くプログラムである。 以前の試行より手数が多くなるならそこでやめるという特色があるものの、基本は単なる総当りだ。 試行回数の最大は根拠があるのかわからないが、初期値として30が入っている。 バッファを99999取っているところから見ると適当なのだろう。 読むものを混乱に陥れるためとしか思えない箇所が随所に見られ、作者の正気を疑いたくなる。 例えば > priInfo.Log = priInfo.Log.replaceAll("←","上"); > priInfo.Log = priInfo.Log.replaceAll("→","下"); > priInfo.Log = priInfo.Log.replaceAll("↑","左"); > priInfo.Log = priInfo.Log.replaceAll("↓","右"); という箇所があるが、それなら最初から"上"などの文字を使わないのはなぜだろう。 他にもつっこみどころ満載だが 一番突っ込みたいのはこんなアルゴリズムの解読をしろという>>645の課題だ。
- 658 名前:デフォルトの名無しさん mailto:sage [2009/12/25(金) 00:17:14 ]
- なんとなく解った
左側の添え字にX、右側の添え字にYっていう変な方法を取った結果(普通は[y][x]だよね?) 上下と左右がごちゃごちゃになってしまい 悔し紛れに最後に文字を差し替えることにしたんだろう ただ←から↑に差し替えると ↑を差し替えるときに既に←から差し替え済みの↑まで差し替えてしまう それを回避するために矢印から漢字に差し替えたんだろう
- 659 名前:デフォルトの名無しさん mailto:sage [2009/12/25(金) 07:58:15 ]
- >>658
> 普通は[y][x]だよね? Java ではそうなんですか?
- 660 名前:デフォルトの名無しさん mailto:sage [2009/12/25(金) 14:18:25 ]
- >>655
遅れましたが親切にありがとうございます、本当助かりました!
- 661 名前:デフォルトの名無しさん mailto:sage [2009/12/26(土) 02:13:13 ]
- >>659
2次元配列を書くときの横方向にあたるのが右に来る添え字だから普通はそうじゃないだろうか これはテキストエディタ上での問題だけじゃなくてメモリ上で隣接した方向って感覚があるのかも メモリ上で隣接っていうのはビットマップ画像の横方向みたいなことで 説明下手で悪いけど とはいえ関数の引数なら(x,y)が普通だし、数学とかの慣習でもそうだから それに合わせて[x][y]という人も少なからずいるだろうとは思う ただ[x][y]派の人と一緒に作業することになって、どっちかに統一することになるだろうけど、 これに関しては譲る気になれない 引数の(x,y)と合わせる利点は認めるが、上に書いたことを覆せるものじゃない あるていど考える人なら[y][x]ってやり方に落ち着くだろうと思う
- 662 名前:デフォルトの名無しさん mailto:sage [2009/12/26(土) 02:19:31 ]
- プログラムにおけるデータの扱い方で変えてる
y方向に何度も走査するようなプログラムなら[x][y]のほうがいいし x方向に何度も走査するようなプログラムなら[y][x]のほうがいいし どっちも頻度に大差なかったりするなら[x][y]にしてる
- 663 名前:デフォルトの名無しさん mailto:sage [2009/12/26(土) 02:23:09 ]
- 他人と一緒に作るなら事前に取り決めておけよ。
個人の趣味でやるなら自由でいいと思うよ。 メモリアクセスの多少の違いがどうとか気にするレベルじゃないだろ宿題なんて
- 664 名前:デフォルトの名無しさん mailto:sage [2009/12/26(土) 02:53:09 ]
- 何のための抽象データ型だよ・・・
- 665 名前:デフォルトの名無しさん mailto:sage [2009/12/26(土) 11:24:37 ]
- >>661
よく意味がわからないので、仮に統一の話が出てもこちらも譲る機がないのですけど。 わざわざ y, x と逆にするのが不自然ですね。
- 666 名前:デフォルトの名無しさん mailto:sage [2009/12/26(土) 13:35:16 ]
- >>665
わざわざy,xとする理由が661にあるんじゃないの? 理解もせず不自然と考えるのはちょっとばか
- 667 名前:665 mailto:sage [2009/12/26(土) 13:38:15 ]
- >>666
そんなものがあるのですか?理由とは名ばかりの思い込みではないですか?
- 668 名前:デフォルトの名無しさん mailto:sage [2009/12/26(土) 14:09:22 ]
- >>667
思い込んでるのはあなたじゃないですか
- 669 名前:デフォルトの名無しさん mailto:sage [2009/12/26(土) 15:50:29 ]
- >>665
自分で >よく意味が分からないので って言ってるじゃん。まず理解してから発言しようよ
- 670 名前:665 mailto:sage [2009/12/26(土) 16:13:26 ]
- >>662 はよく理解できるのですけれども、>>661 の「横方向にあたるのは右の添え字だから」というフレーズが理解できません。
さらに「あるていど考える人なら[y][x]ってやり方に落ち着くだろうと思う」という断言にはついていけません。
- 671 名前:デフォルトの名無しさん mailto:sage [2009/12/26(土) 16:39:04 ]
- hoge[][] aのa[0]は行なんだよ
通念なんだよ
- 672 名前:665 mailto:sage [2009/12/26(土) 17:48:11 ]
- >>671
それと、実際の行へのマッピングとは別の話なんですが。 付け加えれば、>>662 はよくわかります。
- 673 名前:デフォルトの名無しさん mailto:sage [2009/12/26(土) 18:04:49 ]
- >>661
変数の名付けが間違ってるだけじゃん。
- 674 名前:661 mailto:sage [2009/12/26(土) 20:07:12 ]
- >>670
まず前提としてxは横方向、yは縦方向というのは了解できますか? さらに言うと左はx軸の負の方向、右は正の方向で yは数学の慣習とは違ってややこしくなりますが、コンピュータの画面表示では 上がy軸の負方向、下がy軸の正方向とするのが一般的だと思います(3Dだとまた変わってきますが2Dなら)。 x++ 右に移動、x-- 左に移動、y++ 下に移動、 y-- 上に移動。了解できますか? その上で a b c d という盤を使ったゲームか何かがあるとします。 aの位置にいるならx=0, y=0、bならx=1,y=0、cならx=0, y=1、dならx=1,y=1。 盤を2次元配列であらわすときに char[][] data = { { 'a', 'b' }, {' c', 'd' }, }; とそのまま書けるのが[y][x]法です。 aの位置である x=0,y=0 から x++ すれば右にあるbの位置 x=1,y=0 に行けます。 しかし[x][y]法だと x=0,y=0 から x++ するとcの位置に、つまり下に移動したことになってしまう。 [x][y]法では char[][] data = { { 'a', 'c'}, { 'b', 'd'}, }; と書かなければいけません。上下と左右を変えなければならず紛らわしいと私は思います こういうことを言っていたつもりなんですけど解りましたか
- 675 名前:665 mailto:sage [2009/12/26(土) 20:26:30 ]
- >>674
なるほど、初期化の際に、static な初期化子をそのままのイメージで記述することができる、という利点があるのですね。 よくわかりました。丁寧なご説明、ありがとうございました。
- 676 名前:デフォルトの名無しさん mailto:sage [2009/12/26(土) 21:08:32 ]
- なんか説明聞くだけで実際にはやっていなさそう
- 677 名前:デフォルトの名無しさん mailto:sage [2009/12/27(日) 13:10:17 ]
- >>676
まとめて代入・初期化するときには [y][x] 方式では利点がありますが、実際初期化するときに char[][] data = { ... }; とする機会があるかどうかですね。なければ >>662 を加味して、最終的に決定するだけです。 もちろん >>674 の考え方に一理あるとは考えています。
|

|