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/
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 の考え方に一理あるとは考えています。
678 名前:デフォルトの名無しさん mailto:sage [2009/12/27(日) 19:58:52 ] すげーどうでもいい話題だな
679 名前:デフォルトの名無しさん mailto:sage [2009/12/28(月) 14:21:05 ] >>674 みたいな考え方をする人は 二次元のデータを一次元の配列で処理されたりするのは嫌だったりするのか?
680 名前:デフォルトの名無しさん mailto:sage [2009/12/28(月) 17:53:54 ] 一次元で表現するからこそ[y][x]になる {"abcd"}→{"ab","cd"}→{{'a','b'},{'c','d'}} テキストも画像もデータベースも普通[縦][横]
681 名前:デフォルトの名無しさん mailto:sage [2009/12/28(月) 18:11:02 ] >>680 初期化にこだわらなければ、どっちでもいいのでは? まとめて初期化するときだけ、[縦][横] としたほうがすわりがいい、という結論だと思うのですが。
682 名前:デフォルトの名無しさん mailto:sage [2009/12/29(火) 01:15:12 ] a[x][y]はC言語で int **a; int *b[5]; int c[5]; b[0] = c; a=b; int d = a[4][0]; とか暗黙でyの方が次元が大きいからじゃないかな
683 名前:デフォルトの名無しさん mailto:sage [2009/12/29(火) 01:40:11 ] 初期化にこだわらずとも、 「ノードが縦にたくさんある。ノードの中身が横の配列」 ってイメージが強いからじゃない? イメージどおりにした方がやりやすいっていう。
684 名前:デフォルトの名無しさん mailto:sage [2009/12/29(火) 03:00:36 ] イメージとかいいだしたら それこそ(x,y)だってただのイメージだろ
685 名前:デフォルトの名無しさん mailto:sage [2009/12/29(火) 09:29:59 ] 省メモリだとか高速だとかならともかく、>>674 みたいな理由ならコメントでちゃんと書いてあればどっちでもいいよ。 こんなので絶対に譲れない(キリッ)とか言われたら面倒くさくて合わせてしまう。 結局個人によって何がわかり易いかなんて違うんだから宗教と変わらんわ。
686 名前:デフォルトの名無しさん [2009/12/29(火) 13:51:31 ] テキストファイルのデータ(配列)を読み込む方法教えてください!!! 無知で申し訳ないです・・・
687 名前:デフォルトの名無しさん mailto:sage [2009/12/29(火) 15:46:42 ] 【 課題 】課題は2問です。 www.dotup.org/uploda/www.dotup.org508261.zip 【 形態 】Javaアプリケーション(main()で開始) 【 GUI 】指定なし 【 期限 】1/4 【 Ver 】1.6.0_16 【 補足 】課題文の通りでお願いします。 宜しくお願いします。
688 名前:デフォルトの名無しさん mailto:sage [2009/12/30(水) 01:39:25 ] >>686 説明不足、不明瞭でよく解らないが 例えばファイルの最初の行に書かれたカンマで区切られた整数を読み込みint配列にするなら int[] array; FileReader fr = null; try{ BufferedReader br = new BufferedReader(fr = new FileReader(file)); String line = br.readLine().trim(); // 前後の空白文字を除いた一行を取得 int begin=0,end; // 文字列内の値部分の開始位置,終端位置 ArrayList<Integer> vec = new ArrayList<Integer>(); while( (end=line.indexOf(',',begin)) != -1 || // 次のカンマ場所を調べる begin < line.length() ){ // 最後の','より後ろに値が文字がある if(end == -1)end = line.length(); // 最後のカンマの後ろの文字部分 try{ vec.add(new Integer(line.substring(begin,end).trim())); // 文字列の一部を取り出して、Integerのオブジェクトにする }catch(Exception e){vec.add(new Integer(0));} // 整数じゃなかったら0とする begin = end+1; // beginにカンマの次の位置を代入 } array = new int[vec.size()]; // 配列 for(int i=array.length;i--!=0;)array[i] = vec. get(i).intValue(); // intにして配列に代入 }catch(IOException e){ array = null; } // ファイルが存在しないなど finally{ try{ if(fr != null)fr.close(); }catch(Exception e){} } みたいな感じでどうだろうか
689 名前:デフォルトの名無しさん mailto:sage [2009/12/30(水) 02:18:03 ] >>687 // 課題2 public class Daigaku extends Human{ private String number; public static void main(String[] args){ Daigaku[] student = { new Daigaku("00A00", "Taro", 165.0, 55.0), new Daigaku("00A01", "Hanako", 138.3, 45.2), new Daigaku("00A02", "Ken", 189.7, 105.8), }; for(int i=0;i < student.length;i++)student[i].showData(); } public Daigaku(String number, String name, double height, double weight){ super(height,weight,name); this.number = number; } public void showData(){ System.out.print("学籍番号:"+number+" , "); showValue(); } } // 課題3 // Humaのheight,weight,nameをprivateからprotectedに変える // DaigakuのshowDataを下記に変更 public void showData(){ System.out.print("学籍番号:"+number+" , "); System.out.print("名前:"+name+", "); System.out.print("身長:"+height+"cm, "); System.out.println("体重:"+weight+"kg, "); } って感じでいいんだろうか。 課題1が出来てるんだし2、3も出来るんじゃないのと思った ただ問題に誤植が多いし、言葉の選び方なんかも不用意で問題としてどうかだし 内容もつまらんから途中で嫌になったのかな
690 名前:デフォルトの名無しさん mailto:sage [2009/12/30(水) 02:20:31 ] >>687 ttp://rg550.hp.infoseek.co.jp/cgi-bin/joyful/img/866.zip 課題3にはheightとweightについてしか記述がなかったが、 nameについてもprotectedつけてみた
691 名前:デフォルトの名無しさん mailto:sage [2009/12/30(水) 07:17:25 ] >>689-690 動作確認できました 助かりました。有難うございます
692 名前:デフォルトの名無しさん mailto:sage; [2009/12/31(木) 17:39:10 ] 【 課題 】キーワードからクロスワードを完成させる ttp://rg550.hp.infoseek.co.jp/cgi-bin/joyful/img/867.zip 【 形態 】Javaアプリケーション(main()で開始 【 期限 】できれば、1/3までにはお願いします。 (提出日は7日なのですがソースを理解する時間が欲しいので) 年末で忙しいとは思いますが、よろしくお願いいたします。
693 名前:デフォルトの名無しさん mailto:sage [2010/01/03(日) 00:50:41 ] 【 課題 】@ 配布した「MouseArt2009」を元にした オリジナルの作品であること A 見る人が画面をクリックするたびに、不思議な模様を描き、そして音声が再生されるものであること。 B 「楽しさ」、「クールさ」、「荘厳さ」、など受け手が感心するような作品を考えてください C if文、for文、配列、Mathクラスなどを有効に使って、プログラムならではの表現を試みてください 【 形態 】Applet 【 GUI 】制限なし 【 期限 】解答希望日:1/5もしくは1/6 【 Ver 】1.6.0 16 【 補足 】キーボードの画像のアルファベット部分(A〜Z)をクリックすると、クリックした1文字が画面に表示され、 新たにもう一文字クリックすると今度はその1文字が表示される。 F1〜F4のキーをクリックすると任意の自己紹介などを表示する。 クリックした際には音がなる。(A〜Zで同じ音、F1〜F4で同じ音。計2つの音がある。) その他のキー(A〜Z、F1〜F4以外)は何もアクションはおこらない。 使用するキーボード画像、音楽がはいったファイルはこちらになります。 ttp://www51.tok2.com/home/rg550/cgi-bin/hosoku/img0048.zip 誠に勝手ではありますが、動作確認やソース理解などをするため1/5もしくは1/6までにお願いいたします。 丸投げですがどなたかよろしくお願いいたします。