[表示 : 全て 最新50 1-99 101- 201- 2chのread.cgiへ]
Update time : 11/02 13:57 / Filesize : 112 KB / Number-of Response : 295
[このスレッドの書き込みを削除する]
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧] [類似スレッド一覧]


↑キャッシュ検索、類似スレ動作を修正しました、ご迷惑をお掛けしました

★★ Java の宿題ここで答えます Part 69 ★★



1 名前:デフォルトの名無しさん mailto:sage [2010/03/05(金) 22:46: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/1248012902/

231 名前:デフォルトの名無しさん [2010/07/04(日) 18:16:48 ]
【 課題 】()が使える電卓に改造しなさい。(再帰メソッド使用)
【 形態 】2. Applet
【 GUI  】2. Swing
【 期限 】7/5
【 Ver  】1.6.0_15
【 補足 】()以外の部分は完成しているのですが、()の部分をどう作って
いいかわからず困っています。「再帰メソッド」というのも色々調べてみましたが、
上手く理解できません。以下がソースです。
tukimatigusa.hp.infoseek.co.jp/s0.txt

232 名前:デフォルトの名無しさん mailto:sage [2010/07/04(日) 18:28:50 ]
^^

233 名前:デフォルトの名無しさん [2010/07/05(月) 05:23:24 ]
【 課題 】部分一致文字列の探索関数の比較(配列‐二分探索とTrie(26進))
 作成関数:   追加、探索
 キー:   文字列
 使用ファイル: wordE100KR.dat
・二分探索法を改良し、前方一致(例: info?)を実現する関数を作成する。
・多分探索木の巡回関数に基づき、部分木出力関数をTrie(26進)に適用し、前方一致(例: info?)を実現する関数(部分木巡回‐出力関数)を作成する。
・特定の部分文字集合(100)に対し、比較(照合)回数、および出力時間を測定し、これらの結果を、表、グラフに表し、分析する。
【 形態 】1. Javaアプリケーション(main()で開始)
【 GUI  】4. 制限なし
【 期限 】7月12日
【 Ver  】1.6.0_15
【 補足 】参照ファイルはアップしてあります。

よろしくお願いします。

234 名前:デフォルトの名無しさん mailto:sage [2010/07/05(月) 14:40:48 ]
>>231
入れ子不可。エラーチェック無し。
s0_cal#getAns()内
while(a<s.length()){
if(s.charAt(a) == '(') {//追加
int b=++a;//追加
while(s.charAt(a++)!=')');//追加
z=getAns(s.substring(b, a-1)+"=");//追加(この辺が再帰)
} else {//追加
int b=a++;
while(a<s.length() ){//小数点の定義
char c= s.charAt(a++);
if( ( c=='+' || c=='-' ) && s.charAt(a-2)=='e' || c=='.')
continue;
if(!Character.isDigit(c))
break;
}
z=Double.parseDouble(s.substring(b, --a));
}//追加
// if(w=='('){
// char cc=s.charAt(a++);
// if(cc==')'){
// getAns(s);
// }
// }

235 名前:デフォルトの名無しさん mailto:sage [2010/07/05(月) 14:59:38 ]
>>228
sum = 0;
for(i = 0; i < 5; i++) {
sum = sum + z[i].getNum();
}

236 名前:デフォルトの名無しさん mailto:sage [2010/07/05(月) 15:13:24 ]
>>230
import java.io.*;
import java.util.*;
public class _230 {
public static void main(String[] args) throws IOException {
BufferedReader reader = null;
try {
reader = new BufferedReader(new FileReader(new File(args[0])));
Map<Character,Integer> map = new HashMap<Character,Integer>();
String line;
for(int lineno=1; (line=reader.readLine())!=null; lineno++) {
map.clear();
for(char c : line.toCharArray()) map.put(c, (map.containsKey(c)?map.get(c):0)+1);
System.out.print(lineno+".");
for(char c : map.keySet()) System.out.print(" "+c+","+map.get(c));
System.out.println();
}
} finally {
if(reader != null) reader.close();
}}}

237 名前:デフォルトの名無しさん mailto:sage [2010/07/05(月) 16:58:59 ]
>>235
動作確認出来ました
ありがとうございました


238 名前:デフォルトの名無しさん [2010/07/05(月) 17:11:18 ]
>>222
>中置記法1:
>(((3 + (2 - 1)) x (4 x 7)) / (6 / 2))
>中置記法2:
>(3 + 2 - 1) x 4 x 7 / (6 / 2)
4 x 7 の括弧は外れて 6 / 2 の括弧は外さないって、
演算子が / の場合は〜とかチェックする以外に方法ある?


239 名前:デフォルトの名無しさん mailto:sage [2010/07/05(月) 17:13:41 ]
コンストラクタって何ですか教えろハゲ共



240 名前:デフォルトの名無しさん mailto:sage [2010/07/05(月) 17:15:22 ]
>>239
おフェラーリとか、そんなの。
でぶ

241 名前:デフォルトの名無しさん mailto:sage [2010/07/05(月) 17:23:48 ]
【 課題 】1.B木を実現するプログラムのフローチャートをすべてかけ。ただし、プログラムの最初で各節点が持つ最大の子の数(m)を入力して、プログラムを開始せよ。
      2.上で設計したプログラムを作成せよ。
【 形態 】1. Javaアプリケーション(main()で開始)
【 GUI  】4. 制限なし
【 期限 】7/12
【 Ver  】1.6.0_15
【 補足 】フローチャートは自力でがんばります。なるべく簡単なプログラムをお願いいたします。


242 名前:デフォルトの名無しさん mailto:sage [2010/07/05(月) 17:25:58 ]
>>240
氏ね

243 名前:デフォルトの名無しさん mailto:sage [2010/07/05(月) 17:31:08 ]
>>241
B木ならアルゴリズム関係の本探せば載ってるんじゃないか。

244 名前:デフォルトの名無しさん [2010/07/05(月) 19:59:30 ]
>>234
動作確認できました!
ありがとうございます!!

245 名前:デフォルトの名無しさん mailto:sage [2010/07/06(火) 01:07:51 ]
コンストラクタは「クラスをインスタンス化する」ためのメソッド

//例えばX座標とY座標を表すクラスを作るとする
class Point { 
 private int x;
 private int y;

 //コンストラクタの宣言
 public Point() {
 }

 public setX(int x) {
  this.x = x;
 }
 public setY(int y) {
  this.y = y;
 }
}

上のは引数を持たないコンストラクタ
けど、X座標とY座標を表すクラスなんだから、setX()とかsetY()をした後じゃないとクラスとして意味を成さない
インスタンス化した時点で意味を成すクラスの方が便利じゃん
だからこの場合、普通は引数を持ったコンストラクタで宣言する

 //コンストラクタの宣言
 public Point(int x, int y) {
  this.x = x;
  this.y = y;
 }

246 名前:デフォルトの名無しさん [2010/07/06(火) 23:57:37 ]
[課題]
マインスイーパを作れ。(Eclipse)
[補足]
できれば、Windows のマインスイーパのように地雷と思われるマスに
フラグを立てられるようにしたり、残りの地雷の数を表示できるようにしたりしてください。

247 名前:デフォルトの名無しさん mailto:sage [2010/07/07(水) 01:49:44 ]
>>246
>>1

248 名前:デフォルトの名無しさん mailto:sage [2010/07/07(水) 01:53:06 ]
>>246
ってか
>>131
>>140
電卓といいマインスイーパといいなんというか

249 名前:デフォルトの名無しさん mailto:sage [2010/07/07(水) 22:28:40 ]
電卓→マインスイーパときたらお次は麻雀か?



250 名前:デフォルトの名無しさん mailto:sage [2010/07/08(木) 00:32:18 ]
可愛い巨乳な娘の脱衣で…頼む

251 名前:デフォルトの名無しさん mailto:sage [2010/07/08(木) 01:23:12 ]
ある英文の文字列の中のアルファベット(a〜z)までの出現個数を数える。なお,大文字は小文字に変えて,数える。もし,出現個数が0個の場合は,出力しない。

お願いします


252 名前:デフォルトの名無しさん [2010/07/08(木) 05:45:44 ]
>>251
import java.util.Map;
import java.util.TreeMap;

public class SentenceAnalizer {

 public static void main(String[] args) {
  SentenceAnalizer analizer = new SentenceAnalizer();
  String sentence = "hello world";
  Map<Character, Long> map = analizer.analize(sentence);
  for (Character c : map.keySet()) {
   System.out.println(c + ":" + map.get(c));
  }
 }
 
 public Map<Character, Long> analize(String str) {
  Map<Character, Long> map = new TreeMap<Character, Long>();
  char[] chars = str.toLowerCase().toCharArray();
  for (char c : chars) {
   if (map.containsKey(c)) map.put(c, map.get(c) + 1);
   else map.put(c, new Long(1));
  }
  return map;
 }
}


253 名前:252 [2010/07/08(木) 05:48:18 ]
あ、スペースとか記号までカウントされてしまうので気をつけて

254 名前:デフォルトの名無しさん mailto:sage [2010/07/08(木) 12:46:43 ]
とりあえず
>>246
>>251

>>1
だろ

255 名前:デフォルトの名無しさん [2010/07/08(木) 16:02:55 ]
ソフトキーボードを実現し、クリックした文字を表示し、バックスペースキーをクリックすると一文字消し、エンターキーを押すと全部消すプログラムをお願いします

256 名前:デフォルトの名無しさん mailto:sage [2010/07/08(木) 17:31:03 ]
>>255
もはや釣り

257 名前:デフォルトの名無しさん mailto:sage [2010/07/08(木) 18:49:55 ]
>>236
助かりました。ありがとうございます。

258 名前:デフォルトの名無しさん mailto:sage [2010/07/08(木) 19:14:54 ]
>>252
ありがとうございました

259 名前:デフォルトの名無しさん [2010/07/09(金) 14:34:29 ]
誰か、昨日私が書き込んだ質問に答えて下さい!



260 名前:デフォルトの名無しさん mailto:sage [2010/07/09(金) 14:52:47 ]
【 課題 】今月のカレンダ作成詳細は下に書きます
【 形態 】Javaアプリケーション(main()で開始)
【 期限 】7月14日日
【 Ver  】1.6.0_20

今月、7月のカレンダーを2次元配列に格納してください。
要素数は縦5横7の配列となります。(曜日は格納する必要がありません。)
週の先頭が日曜日はじまりで格納してください
配列のカレンダーを表示するコードを追加してください。
日にちを1つ入力するとその日が何曜日かを表示するコードに修正してください。
よろしくお願いします


261 名前:デフォルトの名無しさん mailto:sage [2010/07/09(金) 16:38:21 ]
>>255
>>259
質問ってこれ?

ist.ksc.kwansei.ac.jp/~kakusho/prog2/r10.html

262 名前:デフォルトの名無しさん [2010/07/09(金) 19:28:37 ]
【 課題 】自動販売機プログラム(レイアウトは自由)
【 形態 】 Servlet/JSP
【 GUI  】制限なし
【 期限 】7/13(最長7/16)
【 Ver  】1.6.0_15
【 補足 】
1. 商品は10種類、購入商品は選択可能。
2. 商品の価格は150円が3種類、130円が2種類、100円が5種類とする。
3. 使用できる硬貨は、500円、100円、50円、10円とし、紙幣は1000円のみ使用可能とする。硬貨投入後に投入した硬貨の返却が出来る。
4. お釣り用の硬貨は初期値でそれぞれ10枚ずつ設定されている。
5. 500円硬貨が0になった場合に、100円硬貨が5枚以上存在した場合には100円硬貨を返却する。また、100円硬貨以下についても、代替できるものは他の硬貨を用いて返却を可能とする。
6. お釣りが返却できない硬貨投入時には、お釣りが無くなった旨を表示、購入不可とする。
7. 商品は初期値でそれぞれ10個ずつ在庫があるものとする。
8. 商品の在庫が無くなった場合には、商品の在庫が無くなった旨を表示し、購入不可とする。
お願いいたします。


263 名前:デフォルトの名無しさん [2010/07/09(金) 20:21:13 ]
【 課題 】メモリー機能や定数機能を持つ電卓を作りなさい。
【 形態 】2. Applet
【 GUI  】2. Swing
【 期限 】7/12
【 Ver  】1.6.0_15
【 補足 】私の作ったソースでは上手くメモリー機能が働かないうえに、
定数機能というものをどう作っていいのかわかりません。以下がソースです。
tukimatigusa.hp.infoseek.co.jp/s0.txt

264 名前:名無しさん@そうだ選挙に行こう mailto:sage [2010/07/10(土) 13:22:14 ]
【 課題 】

16進数で構成されるテキストファイルを入力し
2文字ずつに区切って10進数に変換し
昇順に頻度を統計したデータをファイルを出力させよ。

【 形態 】 Javaアプリケーション(main()で開始)
【 GUI  】 制限なし
【 期限 】 7/13
【 Ver  】 java version "1.6.0_20"
【 補足 】

入力データ例:

FF78FF1AFF1A
99FF99FF991A


出力データ例:

26:2 120:1 255:3
26:1 153:3 255:2

よろしくお願いします。

265 名前:名無しさん@そうだ選挙に行こう mailto:sage [2010/07/10(土) 16:35:49 ]
>>264
rg550.hp.infoseek.co.jp/cgi-bin/joyful/img/999.java

266 名前:名無しさん@そうだ選挙に行こう mailto:sage [2010/07/10(土) 21:27:31 ]
>>263
コンパイルエラーにならない状態でアップしろよ。
「メモリー機能」や「定数機能」のボタンも見当たらないのだが。

267 名前:名無しさん@そうだ選挙に行こう mailto:sage [2010/07/10(土) 21:51:13 ]
>>260
import java.util.Scanner;
public class _260 {
public static void main(String[] args) {
int[][] c201007={
{ 0, 0, 0, 0, 1, 2, 3},
{ 4, 5, 6, 7, 8, 9,10},
{11,12,13,14,15,16,17},
{18,19,20,21,22,23,24},
{25,26,27,28,29,30,31}};
String[] w = {"日","月","火","水","木","金","土"};
System.out.println(" 2010年7月");
for(int i=0; i<5; i++) {
for(int j=0; j<7; j++) {
if(c201007[i][j] >= 1) System.out.printf(" %2d",c201007[i][j]);
else System.out.print(" ");
}
System.out.println();
}
System.out.println("----------------------");
System.out.print("曜日を調べる日(1-31):");
String line = new Scanner(System.in).nextLine();
try {
int day = Integer.parseInt(line);
if(day >= 1 && day <= 31) {
System.out.println("7月"+day+"日は"+w[(day+3)%7]+"曜日");
} else {
System.out.println("日付範囲が 1-31 ではありません");
}
} catch(NumberFormatException e) {
System.out.println("日付が数値ではありません");
}}}

268 名前:名無しさん@そうだ選挙に行こう [2010/07/10(土) 21:52:46 ]
>>266
すいません、上げるソース間違えました。
こちらがエラーが出ない方のソースです。
tukimatigusa.hp.infoseek.co.jp/ss.txt

また、定数機能は加算ボタンなどを二度押しして、
イコールを押したらどんどん加算などができるようにしたいのです。

269 名前:267 mailto:sage [2010/07/10(土) 21:56:17 ]
すまん、半角スペースがHTMLだと1個になるんだった。
途中にある
>else System.out.print(" ");
で表示するスペースは3個ってことで。



270 名前:名無しさん@そうだ選挙に行こう mailto:sage [2010/07/10(土) 22:17:11 ]
>>267
15行目にある(" ")の間のスペースを3個にするんですよね
コピペしたら最初から3個分空いてましたけど
ありがとうございました

271 名前:名無しさん@そうだ選挙に行こう mailto:sage [2010/07/11(日) 14:25:08 ]
>>263
>>268
rg550.hp.infoseek.co.jp/cgi-bin/joyful/img/1000.java
ボタンの ActionListener を幾つかに分けたのでそのつもりで。

定数計算については以下を参考にしてみた
detail.chiebukuro.yahoo.co.jp/qa/question_detail/q1438742854
定数計算をやめるのがいつなのか分からなかったのでACボタンでやめるようにした。

272 名前:名無しさん@そうだ選挙に行こう [2010/07/11(日) 17:38:42 ]
>>271
ありがとうございます! 助かりました!!

273 名前:デフォルトの名無しさん [2010/07/12(月) 02:06:35 ]
【 課題 】javascriptで出てくるdojoを簡潔に説明せよ
【 形態 】word
【 GUI  】/
【 期限 】7/12
【 Ver  】
【 補足 】ネットで調べたのですが理解できませんし、説明がわかりません
どなたかおねがいします。

274 名前:デフォルトの名無しさん mailto:sage [2010/07/12(月) 02:48:42 ]
>>273
スレ違い

275 名前:デフォルトの名無しさん mailto:sage [2010/07/12(月) 15:21:25 ]
【 課題 】関数の変更による処理の高速化
rg550.hp.infoseek.co.jp/cgi-bin/joyful/img/1001.zip
【 形態 】1. Javaアプリケーション(main()で開始)
【 期限 】7/16
【 Ver  】 1.6.0_18-b07
【 補足 】添付したテキストに説明があります。どうぞよろしくお願いします。


276 名前:デフォルトの名無しさん mailto:sage [2010/07/12(月) 20:54:53 ]
>>273
もう流行ってないだろ

277 名前:デフォルトの名無しさん mailto:sage [2010/07/12(月) 23:34:16 ]
>>276
だろ。さん乙

278 名前:デフォルトの名無しさん mailto:sage [2010/07/13(火) 12:33:47 ]
【 課題 】53!を正確に計算して出力するjavaプログラムを作成せよ。1桁
分の数を記憶するオブジェクトを多数作り計算するプログラムにすること。

 環境はcで、問題がjavaで、unixを使ってemacsで作成してk-termで実行します。よくわからないのでわかる環境を書きましたよろしくお願いします
【 期限 】7/14


279 名前:デフォルトの名無しさん mailto:sage [2010/07/13(火) 15:45:27 ]
環境がcならcじゃね?スレチ



280 名前:デフォルトの名無しさん mailto:sage [2010/07/13(火) 19:16:02 ]
いや、あちらでも問題になっていますが、「環境は c で出題は java 」といわれても、なんだかよくわからなくて。
>>278
環境が c というのは、いったいどういう意味なんですか。くわしく教えてください。

281 名前:デフォルトの名無しさん mailto:sage [2010/07/13(火) 20:48:23 ]
今までcでやって来て、今回はjavaってことか?

282 名前:デフォルトの名無しさん mailto:sage [2010/07/13(火) 20:55:06 ]
>>278
>>1

283 名前:デフォルトの名無しさん mailto:sage [2010/07/13(火) 21:11:51 ]
C Shellな環境の可能性も

284 名前:デフォルトの名無しさん mailto:sage [2010/07/13(火) 22:01:01 ]
mono か‥‥‥。

285 名前:デフォルトの名無しさん mailto:sage [2010/07/13(火) 23:52:26 ]
>>280,281

すみません、環境がcと意味不明なこと書きましたが、普通にjavaだと思います。unixでemacsで作って、k-termでコンパイルします。

よろしくお願いします。

286 名前:デフォルトの名無しさん mailto:sage [2010/07/14(水) 00:49:44 ]
多倍長整数演算、任意精度演算の勉強かな
ライブラリがあるから移植するとかBigDecimal・・・はセンセの意図と違うか
ようするにソロバンだ

287 名前:デフォルトの名無しさん mailto:sage [2010/07/14(水) 04:58:34 ]
>>275
>このプログラムは、数独をGA(遺伝的アルゴリズム)で解いています。
>しかし、このプログラムでは処理の実行時間がまだ遅いです。
>課題:Population.javaの126行目からのクイックソートを改良することで、
>Action.javaの「実行時間」の短縮を行ってください。
たったこれだけなのに「添付したテキストに説明が」なんて面倒なことすんなよ。

で、変更していいのはクイックソートの所だけなのか?
プロファイルしたわけじゃないが、遅い原因は他にもっとありそうじゃないか。

288 名前:デフォルトの名無しさん mailto:sage [2010/07/14(水) 11:40:52 ]
【 課題 】入力したテキストファイルを行毎にUTF-8の文字コードに変換してファイルに出力するプログラムを作成せよ
【 形態 】Javaアプリケーション(main()で開始)
【 GUI  】制限なし
【 期限 】7/16
【 Ver  】 1.6.0_20
【 補足 】 
あいうえお
アイウエオ

という2行のファイルを入力させた場合

E38182E38184E38186E38188E3818A
E382A2E382A4E382A6E382A8E382AA

というファイルを出力させたいです。よろしくお願いします。

289 名前:デフォルトの名無しさん mailto:sage [2010/07/14(水) 17:33:46 ]
>>285
必須の意味知ってる?



290 名前:275 mailto:sage [2010/07/14(水) 20:39:55 ]
>>287

遅くなりました。
クイックソート以外にも、改良できそうな箇所があればよろしくお願いします!

291 名前:287 mailto:sage [2010/07/14(水) 21:36:26 ]
>>275>>290
簡単で効果があったもの。
---- Chromosome.java ----

int length; //遺伝子長
int fitness = -1; //追加

public void setValue(int i, int j, int n) {
fitness = -1; //追加

public void setNum(int[][] num) {
fitness = -1; //追加

---- CalcFitness.java ----

//メソッド内全変更
public static int getFitness(Chromosome chrom) {
if(chrom.fitness < 0) chrom.fitness = numberOfRow(chrom) + numberOfColumn(chrom);
return chrom.fitness;
}

--------
以上の変更で、世代数1000回で5回実行の平均で1:50台が0:30台になった。
なお実行したのは古いWin2000server/Pen3S 1.4GHzx2機。
ApacheやらTomcatやらBOINCやらごちゃ動いてるヤツなので世代数を減らして実行した。

292 名前:デフォルトの名無しさん mailto:sage [2010/07/15(木) 08:07:11 ]
お願いします…
【 課題 】 シフトJISコードが入っている int cをJAVAで使われてるユニコードに変換しなさい

293 名前:デフォルトの名無しさん mailto:sage [2010/07/15(木) 10:50:30 ]
>>292
>>1

294 名前:デフォルトの名無しさん mailto:sage [2010/07/15(木) 10:57:44 ]
>>291

ありがとうございます。
これだけでもだいぶ早くなりました。






[ 新着レスの取得/表示 (agate) ] / [ 携帯版 ]

前100 次100 最新50 [ このスレをブックマーク! 携帯に送る ] 2chのread.cgiへ
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧]( ´∀`)<112KB

read.cgi ver5.27 [feat.BBS2 +1.6] / e.0.2 (02/09/03) / eucaly.net products.
担当:undef