1 名前:JavaScriptは板違い、Web制作板をご利用ください [2007/05/15(火) 03:49:29 ] 【質問者へ】 回答者の便宜のため、以下の注意事項を遵守してください。 ・質問は【課題提示用テンプレ】を利用してください。 ・問題文は、出題されたまま全文を書いてください。 ・数学問題は「○×法でせよ」だけでなく、その数式、前提条件も説明してください。 ・JavaScriptは板違い、Web制作板をご利用ください。 ・エラーは、その詳細と発生した行を書きましょう。エラーメッセージはコピペしてください。 ・後から問題に付け足しするのはやめましょう。付け足しは作業を無駄にしがちです。 ・回答されたら動作報告を必ずしてください。 【課題提示用テンプレ】 【 課題 】与えられた課題文をそのまま書きます。 《必須》 【 形態 】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 www.wikiroom.com/java/ ソースポストネット sourcepost.sytes.net/ 【前スレ】 pc11.2ch.net/test/read.cgi/tech/1169300052/
281 名前:デフォルトの名無しさん [2007/06/10(日) 17:38:34 ] ".txt" ".dat"などの指定したファイルを読み込みアプレット上のTextArea などに表示させる。 そこに表示させた文字列を全てコピーできるようにするため "全て選択"、"コピー"という2つのボタンを作成する。 そのボタンを押すと全て選択できコピーしてテキストファイルなどの中身を どこにでも貼り付けることが出来るようになる。 以上の機能を備えたJAVAアプレットのGUIを作成せよ どうかよろしくお願いします
282 名前:デフォルトの名無しさん mailto:sage [2007/06/10(日) 17:40:43 ] >>281 >>1 のテンプレで書き直せ。
283 名前:デフォルトの名無しさん mailto:sage [2007/06/10(日) 20:33:54 ] 質問とは違うんですが、どこかに販売管理系のサンプルデータベースのスキーマって見たことないでしょうか? ある程度のデータもあると嬉しいんです。 JDBC辺りを勉強しようと思っているんですが、ある程度のデータが詰まった業務に近い形のサンプルがないかと・・・ もし、知っていたらば教えてください。
284 名前:デフォルトの名無しさん mailto:sage [2007/06/10(日) 20:34:19 ] なんか基礎すら出来てないのがよく分かるスレだな。 投げるから身に付かないのか教える側に力がないのか。 上の計算機の課題はRPNや逆ポーランド記法でググって理解できんなら 初歩の初歩からやり直し他方が良いぞ。 大学の宿題なら気にせんで良いが。
285 名前:デフォルトの名無しさん mailto:sage [2007/06/10(日) 20:36:37 ] アプレットからシステムクリップボードいじれたっけ?
286 名前:デフォルトの名無しさん [2007/06/10(日) 20:47:05 ] 【 課題 】".txt" ".dat"などの指定したファイルを読み込みアプレット上のTextArea などに表示させる。 そこに表示させた文字列を全てコピーできるようにするため "全て選択"、"コピー"という2つのボタンを作成する。 そのボタンを押すと全て選択できコピーしてテキストファイルなどの中身を どこにでも貼り付けることが出来るようになる。 以上の機能を備えたJAVAアプレットのGUIを作成せよ どうかよろしくお願いします 【 形態 】Applet 【 GUI 】AWTのみ 【 期限 】6月17日
287 名前:デフォルトの名無しさん mailto:sage [2007/06/10(日) 20:57:21 ] 【 課題 】 以下のようなテキストファイルを読み込み、数字(double型)のみを配列に入れよ。 なお、配列は2次、a[行(length)][列(5)]のようにし、lengthは自動取得せよ。 テキストファイル例 #コメント #コメント #コメント 0.00 1.00 2.00 3.00 4.00 0.00 1.00 2.00 3.00 4.00 0.00 1.00 2.00 3.00 4.00 ・ ・ ・ ・ 【 形態 】1. Javaアプリケーション(main()で開始) 【 GUI 】4. 制限なし 【 期限 】2007/06/10 PM3:00 【 Ver 】java version "1.5.0_11" 【 補足 】丸投げです。よろしくお願いします。
288 名前:デフォルトの名無しさん mailto:sage [2007/06/10(日) 21:01:57 ] >>286 Javaのバージョンは? 【 Ver 】コンソールでjava -versionを実行し、その結果を貼ります。 《必須》
289 名前:デフォルトの名無しさん [2007/06/10(日) 21:16:26 ] 【 課題 】".txt" ".dat"などの指定したファイルを読み込みアプレット上のTextArea などに表示させる。 そこに表示させた文字列を全てコピーできるようにするため "全て選択"、"コピー"という2つのボタンを作成する。 そのボタンを押すと全て選択できコピーしてテキストファイルなどの中身を どこにでも貼り付けることが出来るようになる。 以上の機能を備えたJAVAアプレットのGUIを作成せよ どうかよろしくお願いします 【 形態 】Applet 【 GUI 】AWTのみ 【 期限 】6月17日 【 Ver 】 1.6.0_01
290 名前:デフォルトの名無しさん mailto:sage [2007/06/10(日) 21:23:23 ] >>281 == >>286 == >>289 参考ページ ttp://java.sun.com/j2se/1.5.0/ja/docs/ja/api/java/awt/datatransfer/Clipboard.html
291 名前:デフォルトの名無しさん [2007/06/10(日) 21:54:21 ] >>290 ありがとうございます ただそれを参考に自分でやってみたのですがダメで…情けないですがよく理解で来ません どなたか代わりにやっていただけないでしょうか?
292 名前:デフォルトの名無しさん mailto:sage [2007/06/10(日) 22:14:40 ] 【 課題 】 任意の文字列を入力して、また、ある任意の文字を入力し、後で入力した文字が、先に入力した文字列の中に何回出てくるかを調べるクラスkadaiをつくれ。 【 形態 】1. Javaアプリケーション(main()で開始) 【 GUI 】4. 制限なし 【 期限 】2007/06/12 PM01:00 【 Ver 】java version "1.5.0_11" 【 補足 】丸投げです。よろしくお願いします。
293 名前:287 mailto:sage [2007/06/10(日) 22:22:50 ] すいません、期限間違えました。 正しくは、 【 期限 】2007/06/11 PM3:00 です。よろしくお願いします。
294 名前:デフォルトの名無しさん mailto:sage [2007/06/10(日) 22:25:49 ] >>289 未完成。参考になるかは知らん。 kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/4209.txt Eclipse上ではできたんだけど コンソールからappletviewerするとエラー出た。 java.security.AccessControlException: access denied (java.awt.AWTPermission accessClipboard) AWTじゃなくSwingだったら簡単に出来る。 JTextComponent#copyメソッド使うだけ。
295 名前:奏 [2007/06/10(日) 22:48:49 ] 【課題提示用テンプレ】 【 課題 】"Name"で区切られた文字列strから、名前を取りだし表示し、また名前の前に付けられた"(m)","(w)"により男女を判定し、その人数を表示する。【】を埋めなさい。 【 形態 】 Javaアプリケーション 【 GUI 】制限なし 【 期限 】一週間以内
296 名前:奏 [2007/06/10(日) 22:51:08 ] class Meibo{ String meb; String sep="Name"; Meibo(String me){meb=me}; String getName(int index){ int start,end; Start=indx+【】.【】; if((end=meb.indexOf(sep,start))<0) end=meb.【】; String name=【】.【】(start,end); return name; } int getKugiri(int offset){ return meb.indexOf(sep,offset); } }
297 名前:奏 [2007/06/10(日) 22:54:05 ] 続きです。 public class strCheck{ public static void main(String []arg){ Meibo inc=new Meibo("Name(m)aikawa Name(w)ikeda Name(m)ueda"); String tk=null; int mn=0,wn=0,offset=0;indx; while((indx=inc.getKugiri(offset))>=0){ tk=inc.getName(indx); System.out.println(tk); if(【】.【】("(m)")) mn++; else if(【】.【】("(w)")) wn++; offset=indx+inc.【】.【】; } } } 実行結果 (m)aikawa (W)ikeda (m)ueda 男:2女:1
298 名前:デフォルトの名無しさん mailto:sage [2007/06/10(日) 22:55:39 ] >>295 かなりの勢いで特定。
299 名前:デフォルトの名無しさん mailto:sage [2007/06/11(月) 00:20:02 ] >>295 穴埋め問題だけどあまりにもコードが読みづらいので 変数名とか勝手に直した。 kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/4212.txt
300 名前:299 mailto:sage [2007/06/11(月) 00:34:43 ] ちょっと見直したら実行結果が違うわ。 メソッド String getName(int index) で int start = index + meb.indexOf(sep); ↓ int start = index + sep.length(); に変更してくれ。
301 名前:奏 [2007/06/11(月) 00:56:57 ] >299 ありがとうございました!
302 名前:デフォルトの名無しさん mailto:sage [2007/06/11(月) 01:46:37 ] >>281 == >>286 == >>289 == >>291 ttp://kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/4213.txt
303 名前:デフォルトの名無しさん mailto:sage [2007/06/11(月) 11:27:50 ] 【 課題 】 キーボードから整数(0-100)をいくつか入力し、終わった時点で、それらの最大値・最小値・平均を表示させよう。 処理の終了条件は「改行のみ入力」。 入力のたびにすべきこと: 最大値と最小値の更新 入力の総和に加算 入力の個数を1増加 【 形態 】1. Javaアプリケーション(main()で開始) 【 GUI 】4. 制限なし 【 期限 】今日中にお願いします。 【 Ver 】java version "1.5.0_11" 【 補足 】よろしくお願いします。
304 名前:デフォルトの名無しさん mailto:sage [2007/06/11(月) 11:30:51 ] 【 課題 】 for文を使い、九九表を作る 1の段 2の段 ・・段のように段落に分けよ 【 形態 】1. Javaアプリケーション(main()で開始) 【 GUI 】4. 制限なし 【 期限 】今日中にお願いします。 【 Ver 】java version "1.5.0_11" 【 補足 】よろしくお願いします。
305 名前:デフォルトの名無しさん mailto:sage [2007/06/11(月) 11:33:29 ] 【 課題 】 キーボードから入力した文字列内に、空白文字(' ')がいくつ含まれるかを表示させよ。 "This is a pen." ⇒ 3個あります String型の変数 str に対して、 strに入っている文字列の長さ:str.length(); strに入っている文字列のN番目の文字: str.charAt(N); ※ 先頭文字は0番目 先頭から最後尾まで文字を繰り返し取る 【 形態 】1. Javaアプリケーション(main()で開始) 【 GUI 】4. 制限なし 【 期限 】今日中にお願いします。 【 Ver 】java version "1.5.0_11" 【 補足 】よろしくお願いします。
306 名前:デフォルトの名無しさん mailto:sage [2007/06/11(月) 15:25:37 ] >>303-305 ttp://sourcepost.sytes.net/sourcepost/sourceview.aspx?source_id=29450
307 名前:デフォルトの名無しさん mailto:sage [2007/06/11(月) 16:26:20 ] 【課題】 月を読み込み、その月の日数を表示する3月なら31日(2,4,6,9,11月は30日) switch文とif文の組み合わせで作る 【期間】なし 【補足】switch文では普通にできますがif文を組み合わせるということが分りません。 この部分だけアドバイスしてくだされば十分です。よろしくお願いします。
308 名前:デフォルトの名無しさん mailto:sage [2007/06/11(月) 16:34:51 ] >>307 問題文の説明なんて先生に聞けよw 入力でif文使ってりゃいんじゃねw
309 名前:デフォルトの名無しさん mailto:sage [2007/06/11(月) 16:35:55 ] >>307 月に応じて表示の処理を変える部分だけならたぶんswitch文だけでできそう if文は必須なん? ところで2月は30日でええのん? それともうるう判定とかなしに28日?
310 名前:307 mailto:sage [2007/06/11(月) 16:39:26 ] 2月は28日と表示で判定なしが「範囲エラー」と表示させます。 if文、switch文両方のバージョンで作れるんですが組み合わせるという意図が分りません。 私の聞き間違いかもしれないので今日聞いてきます、すみませんがレスできそうにないのでスルーして結構です。 返答して頂いた方には感謝します
311 名前:デフォルトの名無しさん mailto:sage [2007/06/11(月) 16:42:15 ] >>307 出題者の意図がつかめないけど無理やり組み込んでみた。 public class MyCalender { public void printDayOfMonth(int month) { if(month >= 1 && month <= 12) { switch(month) { case 1: case 3: case 5: case 7: case 8: case 10: case 12: System.out.println("31 days"); break; case 2: case 4: case 6: case 9: case 11: System.out.println("30 days"); break; default: break; } } else { System.err.println("it's wrong month"); } } public static void main(String[] args) { new MyCalender().printDayOfMonth(3); } }
312 名前:デフォルトの名無しさん [2007/06/11(月) 18:46:53 ] 【 課題 】/*A*/を埋めて正方形(0,0)-(1,1)内で、かつ半径1の円の内側の座標を 表示するプログラムを作りなさい。ただし正方形内の座標はx、y座標共に 0.02きざみで判定すること 【 形態 】Javaアプリケーション 【 期限 】今週の木曜日まで 【 Ver 】java version "1.6.0" 【 補足 】丸投げです。よろしくお願いします。
313 名前:デフォルトの名無しさん mailto:sage [2007/06/11(月) 18:49:13 ] ↑の【 課題 】のリスト /*座標(x、y)が、半径1の円の内側にあるかどうか判定する関数*/ /*引数:double型→x座標、y座標*/ /*戻り値:int型→0(円の内側か境界線上),1(円の外側)*/ public class a{ /*A*/(double x,double y){ if(/*A*/){ /*A*/ }else{ /*A*/ } } public static void main(String[] args) { /*A*/ if(/*A*/){ System.out.println(x+" "+y); } /*A*/ } } 2回に分けてすみません
314 名前:デフォルトの名無しさん mailto:sage [2007/06/11(月) 19:35:33 ] 【 課題 】 10個目ごとの区切りを*ではなく@で表示するよう修正せよ。 実行したときの出力結果↓ いくつ*を出力しますか?: 22 *********@*********@** ※ printの実行を1度だけにするには? 【 形態 】1. Javaアプリケーション(main()で開始) 【 GUI 】4. 制限なし 【 期限 】今日中にお願いします。 【 Ver 】java version "1.5.0_11" 【 補足 】よろしくお願いします。
315 名前:デフォルトの名無しさん mailto:sage [2007/06/11(月) 19:35:46 ] >>307 みたいな中途半端な前提見てると閏年か和暦を入力したくなってくる俺ドS
316 名前:デフォルトの名無しさん mailto:sage [2007/06/11(月) 20:08:25 ] 【 課題 】問題を表示し、テキストフィールド内に答えを入力後に 解答ボタンを押すと正誤を判定するタイピングクイズを作れ。(3問程度) 【 形態 】1. Javaアプリケーション(main()で開始) 【 GUI 】1. AWTのみ 【 期限 】今日中でお願いします 【 Ver 】1.5.0_09 【 補足 】特にテキストフィールド内の文字列の判定式が分かりません。 ご教授お願いします。
317 名前:デフォルトの名無しさん mailto:sage [2007/06/11(月) 22:05:42 ] >>314 お願いしますー
318 名前:デフォルトの名無しさん mailto:sage [2007/06/11(月) 22:16:32 ] >>317 「修正せよ」ってんだから修正前のソースを見せてくれなくっちゃだわ。
319 名前:デフォルトの名無しさん [2007/06/11(月) 22:17:06 ] >>315 問題はどうやって年を入力するかだ
320 名前:デフォルトの名無しさん mailto:sage [2007/06/11(月) 22:20:31 ] >>292 をどなたかお願いします…
321 名前:デフォルトの名無しさん [2007/06/11(月) 22:21:28 ] 【 課題 】アルファベットをランダムに表示し、該当キーを入力後に その時間差を測定しそれを数回繰り返し合否判定する タイピング練習ソフトを作れ。 【 形態 】1. Javaアプリケーション(main()で開始) 【 GUI 】1. AWTのみ 【 期限 】今日中でお願いします 【 Ver 】1.5.0_09 【 補足 】特にリアルタイムキー入力の検出方法が分かりません。 ご教授お願いします。
322 名前:デフォルトの名無しさん [2007/06/11(月) 22:39:01 ] だめだ。 314の問題を解こうと思ったんだが、もう寝ます
323 名前:デフォルトの名無しさん mailto:sage [2007/06/11(月) 23:25:35 ] >>314 の修正前ソースです。遅れてすみませんでした import java.io.*; class sample3 { Public static void main(String args[])throws IOException{ System.out.println("いくつ*を出力しますか?"); BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); String str = br.readLine(); int num = Integer.parseInt(str); for(int i=1; i<=num; i++){ System.out.print("*"); } } }
324 名前:デフォルトの名無しさん mailto:sage [2007/06/11(月) 23:32:45 ] このようにして丸投げで単位を取り、情報系の学校を卒業し、業界に入ってくるわけだ。 ・・・くんな
325 名前:デフォルトの名無しさん mailto:sage [2007/06/11(月) 23:41:38 ] 情報の小出しらめぇ
326 名前:デフォルトの名無しさん mailto:sage [2007/06/12(火) 00:30:46 ] >>314 >>323 の「System.out.print("*");」の行を System.out.print(((i%10)==0)?'@':'*'); に変更する。
327 名前:307 mailto:sage [2007/06/12(火) 00:45:28 ] >>311 今、閲覧させて頂きました、わざわざありがとうございます。 意図していることはたぶん、それだと思います。 今日、聞くチャンスがなかったですが、この通りに組んで提出してみようと思います。 とても役に立ちました
328 名前:デフォルトの名無しさん mailto:sage [2007/06/12(火) 01:54:55 ] >>312 自力でとけました
329 名前:デフォルトの名無しさん mailto:sage [2007/06/12(火) 04:35:38 ] >>321 おながいします
330 名前:デフォルトの名無しさん mailto:sage [2007/06/12(火) 09:28:17 ] >>329 解釈が二つあるぜ。 入力対象文字が表示されてたらキー入力されるまでのディレイタイムを割り出す+ 対象と実際に入力された文字が一致するか判定だけでいのか、 わざわざディレイタイム測定するという事は一定以上遅延した場合に 入力成功判定で失敗にするのか。 時間を測定して何がしたいのか不明。
331 名前:デフォルトの名無しさん mailto:sage [2007/06/12(火) 09:36:52 ] 時間と判定を本質的に分けた方が良いな。 1)測定した時間は何に使うのか? 2)合否判定条件は何か?
332 名前:デフォルトの名無しさん mailto:sage [2007/06/12(火) 13:36:11 ] awt に Timer ってあったっけ
333 名前:デフォルトの名無しさん mailto:sage [2007/06/12(火) 13:39:47 ] >>329 sourcepost.sytes.net/sourcepost/sourceview.aspx?source_id=29454 ・測定した時間は最後の表示のみ使うようにした。1問の時間制限とか付けたいなら改造してくれ。 ・表示されていない文字を打てば合、表示されている文字を打てば否とした。 あんまりデバッグしてないので何かあったら適当に直してくれ。
334 名前:デフォルトの名無しさん mailto:SAGE [2007/06/12(火) 14:56:40 ] これ答えひとつしかないんですねw
335 名前:デフォルトの名無しさん mailto:sage [2007/06/12(火) 15:00:08 ] タイピングの練習にはならないから 課題提出としては失格なんだろうか
336 名前:デフォルトの名無しさん mailto:sage [2007/06/12(火) 15:40:07 ] >>329 足りない分は適当に補ってくれ sourcepost.sytes.net/sourcepost/sourceview.aspx?source_id=29456
337 名前:デフォルトの名無しさん mailto:sage [2007/06/12(火) 20:21:43 ] 丸投げですがよろしくお願いします。 【 課題 】JLabel, JButton, JCheckBox, JRadioButtonを複数利用して リスナ(ボタン入力)によるイベント処理を 追加したアプレットを作成しなさい。 【 形態 】2. Applet 【 GUI 】なし 【 期限 】6/13 23:00 まで 【 Ver 】java version "1.6.0_01" 【 補足 】どのようなプログラムにするかはラジオボタンで 進数を変更できるような電卓というのを考えてみました。 チェックボックスを電卓でどう利用するかは思いつきませんでした。 一応このようなプログラムを考えてみましたが 課題内容にあてはまるのであればどのようなプログラムでも いいのでよろしくお願いします。
338 名前:デフォルトの名無しさん mailto:sage [2007/06/12(火) 21:26:43 ] GUIなしって・・・
339 名前:デフォルトの名無しさん mailto:sage [2007/06/12(火) 22:25:42 ] >>337 sourcepost.sytes.net/sourcepost/sourceview.aspx?source_id=29457
340 名前:デフォルトの名無しさん [2007/06/12(火) 22:42:36 ] 【 課題 】魔方陣(n*n)をつくりなさい。(nは奇数入力) 【 形態 】1. Javaアプリケーション(main()で開始) 【 GUI 】5. その他(GUIなし。コマンドラインで操作) 【 期限 】6月13日 【 Ver 】java version "1.6.0_01" Java(TM) SE Runtime Environment (build 1.6.0_01-b06) Java HotSpot(TM) Client VM (build 1.6.0_01-b06, mixed mode, sharing) 【 補足 】 import java.io.*; import java.text.DecimalFormat; class mahou{ public static void main(String args[]){ int k=0,n=3,a[][]; for (int i= -n/2;i<=n/2;i++) for(int j=0;j<n;j++) a[(j-i+n)%n][(j+i+n)%n]=++k; } } 問題は上記の通り1行でした。 java習い始めて1週間で出された課題で、さっぱり分かりません。 なんとなく調べて見たもののサッパリです。 補足のソースは無視していただいても結構です。
341 名前:デフォルトの名無しさん mailto:sage [2007/06/12(火) 22:51:56 ] >>337 >>339 Set/Resetだとつまらないので改良した sourcepost.sytes.net/sourcepost/sourceview.aspx?source_id=29458 バグあるけど目立たないからいいやw
342 名前:デフォルトの名無しさん mailto:sage [2007/06/13(水) 00:20:40 ] >>340 ttp://sourcepost.sytes.net/sourceview.aspx?source_id=29459 ウィキペディア 「魔方陣−奇数×奇数の魔方陣の作り方」 の手順で作成 ttp://ja.wikipedia.org/wiki/%E9%AD%94%E6%96%B9%E9%99%A3
343 名前:デフォルトの名無しさん mailto:sage [2007/06/13(水) 00:44:37 ] 丸投げですが、よろしくお願いします>< 【 課題 】1から20までの範囲の整数に対して、それぞれの平方根の値をプリントする Javaプログラムを作成しなさい。 【 形態 】Javaアプリケーション 【 GUI 】なし 【 期限 】6/14 まで 【 Ver 】java version "1.6.0_01" 【 補足 】プログラムは二つのクラスからできているものとする。 一方のクラスは、正整数を受け取ってその平方根の値を返すようなメソッドを持つ。 他方のクラスは主メソッドをもち、1から20までの整数それぞれに対して、 先のメソッドを呼ぶことで平方根を計算し、プリントする、ということを繰り返す。 さらに、一つのパッケージを定義して、先の二つのクラスをそのパッケージの中に入れておいて、コンパイル/実行しなさい。クラスは別々のファイルに入る。
344 名前:デフォルトの名無しさん mailto:sage [2007/06/13(水) 00:55:24 ] >>343 Hoge.java package foo.bar; public class Hoge { public double hoge(int i) { return Math.sqrt(i); } } Moge.java package foo.bar; public class Moge { public static void main(String[] args) { for (int i = 1; i <= 20; i++) System.out.println(new Hoge().hoge(i)); } }
345 名前:デフォルトの名無しさん mailto:sage [2007/06/13(水) 11:39:08 ] インスタンス化する意味がないな
346 名前:デフォルトの名無しさん mailto:sage [2007/06/13(水) 11:46:59 ] うん、ヒドスw
347 名前:デフォルトの名無しさん [2007/06/13(水) 11:47:40 ] 【 課題 】java.util.logging.* を使用して syslogd へログを出力するプログラムを作成する 【 形態 】1. Javaアプリケーション(main()で開始) 【 GUI 】3. SWT 【 期限 】今日中でお願いします 【 Ver 】1.5.0_11 【 補足 】途中まで作ってみたのですがエラーが出て先へ進めません>< try{ Logger logger = Logger.getLogger("hoge.logging"); SocketHandler = new SocketHandler("localhost", 514); h.setFormatter(new SimpleFormatter()); logger.addHandler(h); logger.setLevel(Level.ALL); logger.log(Level.INFO, System.currentTimeMillis() + " test"); }catch(IllegalArgumentException e){ e.printStackTrace(); }catch(IOException e){ e.printStackTrace(); }catch(Exception e){ e.printStackTrace(); } これで実行すると IOException: Connection refused になってしまいます。 localhost:514 で syslogd は正しく動作しています。 (他のアプリケーションからの Level.INFO は受け取れています。) SocketHandler = new SocketHandler("localhost", 514); のところを FileHandler = new FileHandler("hoge.log", true); などとするとファイルには出力出来ています。
348 名前:デフォルトの名無しさん mailto:sage [2007/06/13(水) 13:23:13 ] そもそも>>343 みたいなクラス設計がひどすぎだろw
349 名前:デフォルトの名無しさん mailto:sage [2007/06/13(水) 13:37:34 ] クラス設計以前に、ソースレベルで必要のないnewしてるところが、 ヒドスと言ってるんだろ?わかれよ。
350 名前:デフォルトの名無しさん mailto:sage [2007/06/13(水) 13:39:17 ] ソースレベルではnewしないとインスタンスメソッドは呼び出せないってことくらいわかれよ。
351 名前:デフォルトの名無しさん mailto:sage [2007/06/13(水) 13:40:36 ] >>347 syslogdはデフォルトではネットワーク越しのメッセージは受け付けない もしかして-rオプションを有効にしてないとか
352 名前:デフォルトの名無しさん mailto:sage [2007/06/13(水) 13:42:10 ] バカが集うスレにはバカしか集まらないんだな。全員バカだ。
353 名前:デフォルトの名無しさん mailto:sage [2007/06/13(水) 13:47:42 ] バカしか集まらないからこそバカが集うスレというんではないかい? 日本語がおかしいぞ
354 名前:デフォルトの名無しさん mailto:sage [2007/06/13(水) 14:12:57 ] つまり、みんなバカばっかなんですね m9(=ω=.)m
355 名前:デフォルトの名無しさん mailto:sage [2007/06/13(水) 14:50:18 ] >>350 インスタンスメソッドにする必要性を教えてくれ
356 名前:デフォルトの名無しさん mailto:sage [2007/06/13(水) 15:07:49 ] バカにはインスタンスメソッドでいいんじゃね
357 名前:デフォルトの名無しさん mailto:sage [2007/06/13(水) 16:40:24 ] >>351 大丈夫です 他のアプリだとネットワーク越しでもローカルでもちゃんとログが出ます java.util.logging.* の SocketHandler からだけ接続出来ないんです なぜでしょうか
358 名前:337 mailto:sage [2007/06/13(水) 20:23:07 ] >>339 >>341 迅速な対応ありがとうございました。 また機会がありましたらよろしくお願いします。
359 名前:デフォルトの名無しさん mailto:sage [2007/06/13(水) 21:15:38 ] >>358 だが出来れば答える側に回れるようになって欲しいと願う親心
360 名前:デフォルトの名無しさん mailto:sage [2007/06/13(水) 21:17:32 ] 【 課題 】「華氏75.2度を摂氏に変換してください」のような質問に答えるため、 ディスプレイ上に摂氏⇔華氏を行うインタフェースを設計しなさい。 ただし、(1) 摂氏→華氏、華氏→摂氏の頻度はほぼ同じ (2) 温度は大抵は浮動小数点数で、桁数は平均4桁 (3) 数値の入力にはキーもしくはマウスを使用 (4) 変換結果はディスプレイに出力 インターフェースは以下のようなものとする。 www.csync.net/service/file/view.cgi?id=1181736920 【 形態 】2. Applet 【 GUI 】4. 制限なし 【 期限 】6/14 9:00までに 【 Ver 】java version "1.6.0_01" 【 補足 】丸投げです。よろしくお願いします
361 名前:デフォルトの名無しさん [2007/06/13(水) 21:47:07 ] 【 課題 】2つの整数を読んで再帰的メソッドで 最大公約数を求め出力するプログラムを作成せよ。 【 形態 】1. Javaアプリケーション(main()で開始) 【 期限 】今夜中に>< 【 補足 】丸投げです済みません。 fact(n)={n*fact(n-1)(n>0)} {1 (n=0)} こんなのが入るような気がします。 宜しくお願いします><;;
362 名前:デフォルトの名無しさん mailto:sage [2007/06/13(水) 22:02:44 ] 【 課題 】英字(一文字の小文字),四則演算,括弧からなる中置記法の式を後置記法に変換するプログラムを JavaCCを使って作成せよ。以下の3種類のテストケースで確認せよ。 (注意: 最初は、a, (a), a+b など簡単なテストケースできちんと動くかどうかを確かめること。複雑な例ではデバッグは難しくなる。) 例) a/(b-(c*d*e))+f/g (答:abcd*e*-/fg/+) a*b-((c+d)/e)/f (答:ab*cd+e/f/-) a+(b-(c*d+e))/(((f+g)*h+i)/j-k)- (答:abcd*e+-fg+h*i+j/k-/+m-) 【 形態 】1. Javaアプリケーション(main()で開始) 【 期限 】6/16 19:00まで 【 Ver 】java version "1.6.0_01" 【 補足 】よろしくお願いします
363 名前:デフォルトの名無しさん mailto:sage [2007/06/13(水) 22:21:34 ] >>360 sourcepost.sytes.net/sourcepost/sourceview.aspx?source_id=29460
364 名前:デフォルトの名無しさん [2007/06/13(水) 22:29:33 ] >>347 おながいます
365 名前:デフォルトの名無しさん mailto:sage [2007/06/14(木) 04:52:54 ] >>347 普通syslogdは514/udpだからUDPで514番ポートにログメッセージを送る必要がある。 しかし、SocketHandlerはTCP用。514/tcpをsyslogdが受け付ける仕組みを持たない限り当然エラーになる。 java.util.logging.*ではUDP版のSocketHandlerは無かった気がする。もしあればそれを使えば動くはず。 java.util.logging.*を使用してってことだけど、 1.Log4Jならsyslogに対応していたと思うので、使えるならそれを使う。 2.UDPを扱えるjava.util.logging.Handlerのサブクラスを探して(例えばLog4Jではないがjakartaプロジェクトにあるかも)を使う。 1,2では設問から外れて駄目だということなら、 3.SocketHandlerの代わりにスーパークラスのStreamHandlerを継承して、 setOutputStreamメソッドでログ情報をUDPで流すように実装したOutputStreamを設定する。 ログメッセージをバッファに入れて、DatagramPacket(byte[], int, InetAddress, int)でパケットにして、 DatagramSocket#send(DatagramPacket)で送る。1パケットが1ログメッセージなのでバラして送らないように注意。
366 名前:デフォルトの名無しさん mailto:sage [2007/06/14(木) 05:35:30 ] 3の方法だと、ログメッセージ毎にパケットを送るためには、 setOutputStreamで設定したOutputStreamがwriteで行う書き込みはバッファに格納するだけで、 StreamHandler#publishの方もオーバーライドして、こちらでバッファ全体を送る処理を行わないといけない。 処理が二ヶ所に分かれて見通しが悪いかも。 それなら、StreamHandlerを継承するよりもHandlerを継承して、Handler#publishを実装して、 この中でLogRecordをUDPパケットにして送出するようにした方がいいかもしれない。 publish以外にflushとcloseも実装しないといけないけど、とりあえず空実装でも大丈夫そう。
367 名前:デフォルトの名無しさん mailto:sage [2007/06/14(木) 06:59:10 ] >>347 ttp://sourcepost.sytes.net/sourcepost/sourceview.aspx?source_id=29461 java.util.logging.Handlerを継承する方法で。エラー処理はいい加減。
368 名前:デフォルトの名無しさん mailto:sage [2007/06/14(木) 07:12:14 ] 忘れてた。 DatagramSocketHandler#close()は空実装にしているけど、socketをcloseするべきかも。
369 名前:デフォルトの名無しさん [2007/06/14(木) 09:22:45 ] >>361 もお願いしますm(__)m
370 名前:デフォルトの名無しさん [2007/06/14(木) 09:31:53 ] 【課題】for文を使って以下の結果を表示させる * *** ***** 【期限】今日まで 【ver】1.4 【補足】以下のようなことまではできるのですが、 * ** *** 1,3,5と*が増える、空白が減っていく、と言った仕組みが思いつきません。 よろしくお願いします。
371 名前:デフォルトの名無しさん mailto:sage [2007/06/14(木) 11:22:46 ] >>363 ありがとうございます これ数値を入力して、ボタンを二つ作ってそれぞれ変換するようなアプレットだとどうなりますか? こちらの場合も作ってくださるとありがたいです…
372 名前:デフォルトの名無しさん mailto:sage [2007/06/14(木) 11:48:16 ] >>370 for (int i=1;;i+=2) { StringBuffer buf = new StringBuffer(); for (int j=0;j<i;j++) { buf.append("*"); } System.out.println(buf.toString()); }
373 名前:デフォルトの名無しさん mailto:sage [2007/06/14(木) 13:44:31 ] >>361 public class GCD { public static int gcd(int m, int n) { int r = m % n; return r == 0 ? n : gcd(n, r); } public static void main(String[] args) { int a = 2 * 2 * 3 * 3 * 7 * 11 * 17; int b = 2 * 3 * 5 * 5 * 11 * 13 * 19; System.out.println("gcd(" + a + ", " + b + ") = " + gcd(a, b)); } } 補足にあるような階乗の計算は入ってない。
374 名前:デフォルトの名無しさん mailto:sage [2007/06/14(木) 15:39:53 ] >>362 ttp://sourcepost.sytes.net/sourcepost/sourceview.aspx?source_id=29463 オプションがJDK_VERSION = "1.5";になってるけど、 JavaCC4.0が"1.6"を理解せずgenericsサポート以前のコードを吐くため。 プログラムの終了はControl+DやControl+ZでEOF入力するか強制終了させて。 文法に合わない入力にはエラーを出して終了する。 最後のテストケースはa+(b-(c*d+e))/(((f+g)*h+i)/j-k)-mでいいんだよね?
375 名前:デフォルトの名無しさん mailto:sage [2007/06/14(木) 16:13:23 ] >>364-368 迅速な対応ありがとうございました。 また機会がありましたらよろしくお願いします。
376 名前:デフォルトの名無しさん mailto:sage [2007/06/14(木) 17:00:58 ] 自分でやる気は始めからないのか。
377 名前:デフォルトの名無しさん mailto:sage [2007/06/14(木) 17:17:52 ] この場合は途中までは作成したがクラスの使い方が不適切で動作しなかったので質問したわけだから、 はじめからやる気がないってことではないだろ。でも、 > また機会がありましたらよろしくお願いします。 は余計だよ。どちらかというと機会があったら答える側に回ってくれ。
378 名前:デフォルトの名無しさん mailto:sage [2007/06/14(木) 18:35:03 ] 何かデジャブ感じたと思ったら>>358-359 か・・・
379 名前:デフォルトの名無しさん mailto:sage [2007/06/14(木) 18:51:25 ] いつものことだろデジャブなんて
380 名前:デフォルトの名無しさん mailto:sage [2007/06/14(木) 23:03:48 ] >>374 System.out.print(variable.image); のところでvariable.imageは解決できないか、フィールドではありません というエラーメッセージが出るのと、Tokenのインスタンスを作成できませんってエラーが出ます…
381 名前:デフォルトの名無しさん [2007/06/15(金) 00:05:27 ] >>373 遅くなって済みません もう回答もらえないと思ってました! 本当に有り難うございます