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/
905 名前:デフォルトの名無しさん [2010/02/24(水) 02:31:33 ] Write a program to sum the following series: (これらを合計するプログラムを書きなさい) 1/3 + 3/5 + 7/9 + 9/11 + 11/13+..........+95/97 + 97/99 途中までこんな感じでやったのですがもう何がなんだかさっぱり・・・ public class Quiz2 { public static void main(String[] args) { int sum = 0; int num = 1; int den = 3; for(int x = 0; x < 100; x++ ) { if(x % 2 == 0) { x = num / den; sum = sum + x; } } System.out.println("Sum is " + sum); } } よろしくお願いいたします。
906 名前:デフォルトの名無しさん mailto:sage [2010/02/24(水) 02:45:10 ] double sum = 0.0; for(int i=0; (i * 2 + 3)<100; i++){ int 分子 = i * 2 + 1; int 分母 = i * 2 + 3; sum += (double)分子 / 分母; } System.out.println("合計: " + sum); こねくり回せばもっと効率の良い書き方はあるが。
907 名前:デフォルトの名無しさん [2010/02/24(水) 03:03:54 ] >>906 ありがとうございます。 そのやり方で試してみます。
908 名前:905 [2010/02/24(水) 03:18:03 ] >>906 public class Quiz2 { public static void main(String[] args){ double sum = 0; for(int x = 0; (x*2+3)<100; x++) { int numerator = x*2+1; int denominator = x*2+3; sum = sum + (double) numerator / denominator; } System.out.println("Sum is " +sum); } } 合計は1683となりました。 ありがとうございました。
909 名前:デフォルトの名無しさん mailto:sage [2010/02/24(水) 08:59:08 ] >>908 ちょっと待て。その結論はおかしい。
910 名前:デフォルトの名無しさん mailto:sage [2010/02/24(水) 10:48:16 ] >>908 のコードをコピペして実行しても 1683なんて答えは得られないじゃねーか sum = sum + (double) numerator / denominator; ↓ sum = sum + (double) numerator / (double)denominator; にしろ
911 名前:デフォルトの名無しさん mailto:sage [2010/02/24(水) 17:48:49 ] >>910 w
912 名前:デフォルトの名無しさん [2010/02/24(水) 22:24:29 ] 【 課題 】アプレットで作品をつくる 【 形態 】2. Applet/ 【 期限 】2月26日 【 補足 】初心者です。お手柔らかにお願いします。 javaアプレットで 画像を12枚取り込んで、 そのうちの5枚を並べて表示、 1秒ごと10%の確率で 各画像を変更したいのですが どうしたらいいのでしょうか・・・。 画像を取り込むところまでできています。。。
913 名前:デフォルトの名無しさん mailto:sage [2010/02/25(木) 00:30:12 ] >>912 その画像を取り込むところまで見せてもらおうか それとテンプレ必須項目くらいは埋めようぜ > 1秒ごと10%の確率で 表示されている5枚それぞれについてサイコロを振って換えるかどうか決めるってことでいいの?
914 名前:デフォルトの名無しさん mailto:sage [2010/02/25(木) 03:59:34 ] >>912 画像ファイルはクラスファイルと同じ場所にあるimage00.jpg〜image11.jpgの12枚 1秒毎に各画像ごとに10%の確率で画像を変えているのでどの画像も変わらない確率が秒毎にC(5,0)*(0.1^0)*(0.9^5)=約60%ある import javax.swing.*; public class Hoge extends JApplet implements java.awt.event.ActionListener { private java.util.List<ImageIcon> pool = new java.util.LinkedList<ImageIcon>(); private Timer timer = new Timer(1000, this); private JLabel[] label = new JLabel[5]; @Override public void init() { setLayout(new java.awt.FlowLayout()); for (int i = 0; i < 12; i++) pool.add(new ImageIcon(getImage(getCodeBase(), String.format("image%02d.jpg", i)))); java.util.Collections.shuffle(pool); for (int i = 0; i < 5; i++) add(label[i] = new JLabel(pool.remove(0))); } @Override public void destroy() { getContentPane().removeAll(); pool.clear(); } @Override public void start() { timer.start(); } @Override public void stop() { timer.stop(); } public void actionPerformed(java.awt.event.ActionEvent e) { for (int i = 0; i < 5; i++) { if (Math.random() >= 0.1) continue; pool.add((ImageIcon)label[i].getIcon()); label[i].setIcon(pool.remove(0)); } } }
915 名前:デフォルトの名無しさん mailto:sage [2010/02/25(木) 06:52:19 ] >>905 最後に5/7を引かないといけないそうです。 pc12.2ch.net/test/read.cgi/tech/1261443439/757
916 名前:デフォルトの名無しさん mailto:sage [2010/02/25(木) 20:09:35 ] >>905 通分しないと誤差が出るんじゃないかと rg550.hp.infoseek.co.jp/cgi-bin/joyful/img/931.java
917 名前:デフォルトの名無しさん mailto:sage [2010/02/26(金) 02:51:14 ] >>916 多分そういうのも考慮しろっていう問題だよねえ。
918 名前:916 mailto:sage [2010/02/26(金) 18:00:26 ] せっかくなんでFraction.javaをまともに実装してみた 正直まともにテストしてない rg550.hp.infoseek.co.jp/cgi-bin/joyful/img/933.java
919 名前:デフォルトの名無しさん mailto:sage [2010/02/27(土) 00:27:14 ] >>918 普通にやった場合と、どの位の差がでるの?
920 名前:デフォルトの名無しさん mailto:sage [2010/02/27(土) 03:47:49 ] >>919 916ではないけれど3通りほどの方法で ttp://rg550.hp.infoseek.co.jp/cgi-bin/joyful/img/934.java このくらいの違い
921 名前:920 mailto:sage [2010/02/27(土) 03:56:31 ] 間違った 小さいもの順の足し算なので while (x.size() > 1) x.add(x.pollFirst() + x.pollFirst()); System.out.println(n - x.first() * 2); に修正^^;
922 名前:デフォルトの名無しさん mailto:sage [2010/02/27(土) 04:24:17 ] 一番目の方法はうちの環境では 44.410164588764474 と表示されるけど小数点以下の部分だけ出すなら System.out.println(4 - x.first() * 2); にすると .41016458876447004 なので .410164588764470250... にさらに近づくかな
923 名前:デフォルトの名無しさん mailto:sage [2010/02/27(土) 12:40:50 ] キーボードから5人分の点数を入力して、合計、平均、最高点、最低点を 表示するプログラムを作成してくださいというものです。 今は途中で終わっています rg550.hp.infoseek.co.jp/cgi-bin/joyful/img/935.java お願いしますm(_ _)m
924 名前:デフォルトの名無しさん mailto:sage [2010/02/27(土) 13:26:53 ] >>923 >>1 くらいよめ
925 名前:デフォルトの名無しさん mailto:sage [2010/02/27(土) 16:38:11 ] >>923 rg550.hp.infoseek.co.jp/cgi-bin/joyful/img/936.java