[表示 : 全て 最新50 1-99 101- 201- 301- 401- 501- 601- 2chのread.cgiへ]
Update time : 06/14 16:58 / Filesize : 239 KB / Number-of Response : 609
[このスレッドの書き込みを削除する]
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧] [類似スレッド一覧]


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

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



1 名前:JavaScriptは板違い、Web制作板をご利用ください mailto:sage [2008/09/17(水) 20:50:06 ]
【質問者へ】
回答者の便宜のため、以下の注意事項を遵守してください。
・質問は【課題提示用テンプレ】を利用してください。
・問題文は、出題されたまま全文を書いてください。
・数学問題は「○×法でせよ」だけでなく、その数式、前提条件も説明してください。
・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

【前スレ】
pc11.2ch.net/test/read.cgi/tech/1212085079/

2 名前:デフォルトの名無しさん mailto:sage [2008/09/17(水) 21:18:52 ]
>>1
        γ⌒ヽ、
        (ww、,oヽ人 ノ|
乙鮫だばぁ ('(‘ω‘*∩ `ヽーっ

3 名前:デフォルトの名無しさん mailto:sage [2008/09/19(金) 18:29:17 ]
おっつー

4 名前:デフォルトの名無しさん [2008/09/21(日) 19:13:08 ]
ここってJXTA分かる人いますかね?

5 名前:デフォルトの名無しさん [2008/09/21(日) 22:13:52 ]
【 課題 】カレンダー形式のスケジュール管理ソフトを作る
        ・日付をクリックするとスケジュールの編集(書き込みと削除)ができること
        ・スケジュールの内容をCSV形式のファイルに保存できること
【 形態 】2. Applet 《必ず選択》
【 GUI  】4. 制限なし
【 期限 】9/24(21時頃までにお願いします!) 《必須》
【 Ver  】1.6.0_07 《必須》
【 補足 】丸投げですみませんがどうかお願いします。
      カレンダーは今月分だけで構いませんので。

6 名前:デフォルトの名無しさん mailto:sage [2008/09/21(日) 22:19:17 ]
Appletでファイル出力とな?

7 名前:デフォルトの名無しさん [2008/09/21(日) 22:59:36 ]
>>6
すみません;
初心者なもので、変なことを書いてしまったようです;

 ・スケジュールの内容をCSV〜

…の件は抜きで構わないです。

8 名前:デフォルトの名無しさん mailto:sage [2008/09/22(月) 12:46:52 ]
rg550.hp.infoseek.co.jp/cgi-bin/joyful/img/418.zip
デスクトップアプリケーションのつもりで作ってて、最後に無理矢理アプレットに変えましたのですごくおかしなことになってます。
デスクトップアプリケーションの場合はSchedulerのmainから始めてください。入出力もサポートしてます。
アプレットの場合はSchedulerAppletを使用してください。
カレンダーの描画やら選択処理やら面倒だったのでテーブル使いましたw

9 名前:ウォン [2008/09/22(月) 14:06:59 ]
いつもお世話になっております。
またいつもの課題で躓く所がありまして、ご指導願いたいです。
【 課題 】txtファイルを読み込み、昇順にソートしなおすプログラム
【 形態 】1. Javaアプリケーション(main()で開始
【 GUI  】?
【 期限 】2008.09.22
【 Ver  】1.6.0_07
【 補足 】rg550.hp.infoseek.co.jp/cgi-bin/joyful/main.htm にある419javaを、ArrayListを使って作り直せとのことです。
ルールは、while文は1回しか使えない。つまりwhile ((line = reader.readLine())
!= null)は1回しか使ってはいけないそうです。あと2回使っているBufferedReaderを1回にする。
ちなみにtxtファイルの内容は下記のとおりです。
3:田中
5:佐藤
9:吉田
7:加藤
1:黒田
4:森
2:福島
8:小林
6:新井
10:中村

よろしくお願い致します。

10 名前:デフォルトの名無しさん mailto:sage [2008/09/22(月) 14:26:42 ]
import java.io.*;
import java.util.ArrayList;
public class Test1 {
public static void main(String[] args) throws Throwable {
String line;
ArrayList<String> list = new ArrayList<String>();
BufferedReader reader = new BufferedReader(new InputStreamReader(new FileInputStream(args[0])));
while ((line = reader.readLine()) != null) {
list.add(line);
}
reader.close();
for (int i = 0; i < list.size(); i++) {
for (int j = i + 1; j < list.size(); j++) {
String[] a = list.get(i).split(":");
String[] b = list.get(j).split(":");
int aI = Integer.parseInt(a[0]);
int bI = Integer.parseInt(b[0]);
if(aI > bI) {
String x = list.get(i);
list.set(i, list.get(j));
list.set(j, x);
}
}
}
for (int i = 0; i < list.size(); i++) {
System.out.println(list.get(i));
}
System.out.println("");
}
}



11 名前:デフォルトの名無しさん [2008/09/22(月) 16:07:50 ]
ご指導お願いいたします
【 課題 】新しいボタンを追加し、そのボタンを押すとテキストフィールドに「別のボタンが押されました」と表示するプログラムを作成せよ
【 形態 】Javaアプリケーション(main()で開始)
【 GUI  】制限なし
【 期限 】09/26
【 Ver  】1.6.0_07
【 補足 】


12 名前:デフォルトの名無しさん [2008/09/22(月) 16:08:45 ]
import java.awt.*;
import java.awt.event.*;
import java.util.*;

class MyWindow extends Frame {
Button btn;
TextField txt;
public static void main(String[] agrs) {
MyWindow frame = new MyWindow();
frame.addWindowListener(new WindowAdapter() {
public void windowClosing(WindowEvent e) {
System.exit(0); } } );
frame.setLayout(new FlowLayout());
frame.setSize(300, 200);
frame.setVisible(true);
}


13 名前:デフォルトの名無しさん [2008/09/22(月) 16:09:27 ]
MyWindow() {
btn = new Button("My Button");
txt = new MyTextField("My Text");
btn.addActionListener(new MyButtonListener());
add(btn);
add(txt);
}
class MyTextField extends TextField {
MyTextField(String s) {
super(s);
}
public void paint(Graphics g) {
setSize(130, 25);
}
}
class MyButtonListener implements ActionListener {
public void actionPerformed(ActionEvent e){
txt.setText("ボタンが押されました");
String[ ] args = new String[ ] {"0","0"};
Simulator.main(args);
}
}
}


14 名前:デフォルトの名無しさん mailto:sage [2008/09/22(月) 16:13:52 ]
Simulatorってなーあにッ?

15 名前:デフォルトの名無しさん [2008/09/22(月) 17:47:46 ]
下の二行いりません すみません
ご指摘ありがとうございます

16 名前:デフォルトの名無しさん mailto:sage [2008/09/22(月) 18:04:46 ]
>>11
rg550.hp.infoseek.co.jp/cgi-bin/joyful/img/420.java

17 名前:ウォン mailto:sage [2008/09/22(月) 19:26:43 ]
10さんありがとうございました。とても助かりました。

18 名前:デフォルトの名無しさん [2008/09/22(月) 23:07:46 ]
>>16
ありがとうございます
失敗ばかりしていたので非常にたすかりました

19 名前:デフォルトの名無しさん [2008/09/23(火) 00:57:55 ]
>>8さん
スケジュールソフトの作成をお願いしていた5です。
お返事遅くなってしまって申し訳ないです;

ただいま動作確認いたしました。素晴らしいです…!
しかも、こんなに早々にお返事いただけるとは思っていなかったのでひたすら感動しました。

この度は私の無茶な書き込みにも関わらず、
立派なアプリケーションを素早く作って下さってありがとうございました!
もう本当に、助かりました…^^;
提出期日が迫っていたので恥ずかしながら他力本願になってしまいましたが、
後学のためにも、8さんが作成して下さったソースを見ながら初心者なりに勉強してみようと思います。

重ねてお礼申し上げます。
本当にどうもありがとうございました。

20 名前:デフォルトの名無しさん [2008/09/24(水) 19:59:50 ]
【 課題 】n × m マスの中から、ランダムに選ばれた10個のマスの中心の点を巡回セールスマン(Travelling Salesman Problem TSP)を用いてその際のルートと距離を表示させる。
【 形態 】2. Applet
【 GUI  】2. Swing
【 期限 】2008.09.29
【 Ver  】1.6.0_07
【 用語 】TSP:所定の点を1回だけ巡回する場合の最短距離を求める
【 補足 】TSPの解法は特に問いません。スタートとゴールは左下のマスでお願いします。丸投げで申し訳ありませんが、よろしくお願いします。




21 名前:デフォルトの名無しさん mailto:sage [2008/09/25(木) 15:30:45 ]
>>9
collections.sort

22 名前:デフォルトの名無しさん [2008/09/29(月) 17:52:09 ]
javaを始めたばかりなのですが誰か次のプログラムの作り方教えてください。

4ケタの数字をランダムに選びます。選ばれた4ケタの数字は見えないようにする。

左のケタから順に1〜9の数字を選びtrueならひとつ右のケタに移動しまた1〜9を選び、

それを繰り返し4ケタ当てるプログラムを作りたいので教えてください。



23 名前:デフォルトの名無しさん [2008/09/29(月) 19:14:47 ]
javaを始めたばかりなのですが誰か次のプログラムの作り方教えてください。

【 課題 】4ケタの数字をランダムに選びます。選ばれた4ケタの数字は見えないようにする。

左のケタから順に1〜9の数字を選びtrueならひとつ右のケタに移動しまた1〜9を選び、

それを繰り返し4ケタ当てるプログラムを作りたいので教えてください。
 【 形態 】Javaアプリケーション(main()で開始)
【 GUI  】制限なし
【 期限 】10/01
【 Ver  】1.6.0_07
【 補足 】

お願いします。



24 名前:デフォルトの名無しさん mailto:sage [2008/09/29(月) 19:29:54 ]
int[] 答え= new int[4];
ランダムに4桁の数値を決める(ans);
for(int i = 0; i < 4; i++){
int 入力;
do{
System.out.println((4-i)+"桁目");
入力 = ユーザーに1桁入力させる();
}while(入力 != 答え[i]);
}
System.out.println("答えは"+答え[0]+""+答え[1]+""+答え[2]+""+答え[3]+"でした。")


25 名前:デフォルトの名無しさん mailto:sage [2008/09/30(火) 09:54:54 ]
【課題】リスト内のデータとリストのさまざまな機能 (データの追加、リスト全体の表示) を 1つのクラスとして設計し実装しなさい。
クラス名 MyLinkedList1 とし、次のような機能を持つこと。
コンストラクタ
MyLinkedList1()
中身が空のリストを生成する。
メソッド
addLast(String elem)
リストの末尾に文字列 elem を追加する。
addFirst(String elem)
リストの先頭に文字列 elem を追加する。
print()
リスト全体を表示する。
なお、ここで作成するクラス MyLinkedList1 は、次のような main メソッドで動作を確認すること。さらに作成したプログラムが正しく動作するかどうか、必要かつ十分なテストを行うこと。

public class MyLinkedList1Main {
public static void main(String[] args) {
MyLinkedList1 list = new MyLinkedList1();

list.addLast("Copernicus");
list.addLast("Newton");
list.addLast("Heisenberg");
list.addLast("Einstein");

list.addFirst("Maxwell");

list.print();
}
}
【形態】1. Javaアプリケーション(main()で開始)
【期限】10月1日 17;00
【Ver】1.5.0.11
【補足】丸投げです。宜しくお願いします

26 名前:デフォルトの名無しさん mailto:sage [2008/09/30(火) 10:05:40 ]
>>25
LinkedList内部で使っちゃったらだめなの?
課題には実装方法指定されてないんだけど・・・

27 名前:デフォルトの名無しさん mailto:sage [2008/09/30(火) 10:10:25 ]
>>26
Javaのクラスライブラリ内の LinkedList の機能縮小版を自分で作るようにと言われました

28 名前:デフォルトの名無しさん mailto:sage [2008/09/30(火) 16:36:39 ]
>>25
rg550.hp.infoseek.co.jp/cgi-bin/joyful/img/422.java

29 名前:デフォルトの名無しさん mailto:sage [2008/09/30(火) 17:01:38 ]
>>23
import java.util.*;
public class J23 {
public static void main(String[] args) {
int[] values = new int[4];
Random random = new Random();
for(int i=0; i<values.length; i++) values[i] = random.nextInt(9)+1;
System.out.println("* "+values.length+"桁の数字");
Scanner scanner = new Scanner(System.in);
for(int i=0; i<values.length; i++) {
int anser;
do {
System.out.print((i+1)+"桁目(1〜9):");
anser = scanner.nextInt();
} while(values[i] != anser);
}
System.out.print("* 答え :");
for(int i=0; i<values.length; i++) System.out.print(values[i]);
System.out.println();
}}

30 名前:デフォルトの名無しさん mailto:sage [2008/10/03(金) 19:59:51 ]
>>28
ありがとうございます。
返答が遅れてしまい申し訳ありませんでした



31 名前:デフォルトの名無しさん [2008/10/05(日) 08:02:27 ]
【 課題 】バイナリーツリー(二分木)を書くという課題ですが、要求されているメソッドの内の二つを完成させることができませんので、お力を貸していただく次第です。
まだ完成していないメソッドは以下です。compareStructure: 二つのツリーの構造を比較する。printLevel: ツリーに含まれているノードをレベル順に左から画面にプリントする。
ソースコードはこちらにアップしてあります。
rg550.hp.infoseek.co.jp/cgi-bin/joyful/img/427.java
rg550.hp.infoseek.co.jp/cgi-bin/joyful/img/428.java
こちらの二つがセットになります。
一応compareStructure(340-354行), printLevel(357-385行)と共に自分なりにやっているのをご覧頂けますが、ちゃんと作動していません。compareStructureの方はmainより使う方法がわかりません。私が実装したメソッド自体が間違えている場合は訂正頂きたく思います。
printLevelの方はqueueを使いPOPしようと試みていたのですが、上手く行きません。この二つのメソッドと二つのメソッドに対するmainの部分を丸投げさせていただきたく思います。
よろしくお願い致します。
【 形態 】1. Javaアプリケーション(main()で開始)
【 GUI  】 制限なし
【 期限 】2008.10.07 1pm
【 Ver  】1.6.0_07
【 補足 】compareStructureのサンプルです。www51.tok2.com/home/rg550/cgi-bin/hosoku/img0015.jpg
printLevelの出力例です。www51.tok2.com/home/rg550/cgi-bin/hosoku/img0014.jpg

32 名前:デフォルトの名無しさん mailto:sage [2008/10/05(日) 14:25:51 ]
printLevel の出力例って7の上と下に5があるが、そんなツリー作れるのか?
下は6の間違いか?

33 名前:デフォルトの名無しさん mailto:sage [2008/10/05(日) 14:43:34 ]
>>31
printLevels(の一つ?)

private String printLevels(BinaryNode<AnyType> t) {
ArrayList<BinaryNode<AnyType>> list = new ArrayList<BinaryNode<AnyType>>();
list.add(t);
for(int i=0; i<list.size(); i++) {
BinaryNode<AnyType> node = list.get(i);
if(node.left != null) list.add(node.left);
if(node.right != null) list.add(node.right);
}
StringBuilder sb = new StringBuilder();
for(BinaryNode<AnyType> node : list) sb.append(" ").append(node.element);
return sb.deleteCharAt(0).toString();
}


34 名前:デフォルトの名無しさん [2008/10/05(日) 15:40:36 ]
お世話になっています。
>32さん
あ、ほんとだ!間違っていました。最後のリーフの5は6に訂正して考えていただけばと思います。
>33さん
書き込みありがとうございます。ただ、私のコードで379行と382行のif-ステートメントを入れ替わらせたら出来ました!うっかりミスでN時間も無駄にしてしまいました・・・(トホホ。
if(p.right != null)
q.push(p.right);
if(p.left != null)
q.push(p.left);
わざわざ書いていただいたコードのアルゴリズムは思いも付きませんでした。大変勉強になります。ありがとうございます!!

後はcompareStructuresが残りました。どちら様か助言をいただければ大変助かります。
引き続きよろしくお願いします。

35 名前:デフォルトの名無しさん mailto:sage [2008/10/05(日) 16:43:25 ]
比較する相手を貰わんでどうする。
public boolean compareStructure(BinaryNode<AnyType> k){
return compareStructure(root, k);
}

System.out.println(t.compareStructure(k));

36 名前:デフォルトの名無しさん mailto:sage [2008/10/05(日) 16:59:14 ]
1、While文を用いる。50から5刻みに減らしていき、20未満になったら終了するプログラムを作成する
ただしプログラムの動きがわかるような出力を適宜出すこと

2、switch〜case文で「breakがあるときとない時の動作の違い」がわかるプログラムを作成し実行する

3、「for(i=1;i<10;i++)System.out.println(i);」をwhile文で作成する


【 形態 】1. Javaアプリケーション(main()で開始
【 GUI  】制限なし/
      
【 期限 】10月6日午後2時までです。急ぎで申し訳ありません

どれか一つだけとかでもいいんでどなたかよろしくお願いします

37 名前:デフォルトの名無しさん mailto:sage [2008/10/05(日) 17:50:04 ]
>>36
int num = 50;
do {
System.out.println("num = "+num);
num -= 5;
}while(num >= 20);
System.exit(0);

38 名前:デフォルトの名無しさん mailto:sage [2008/10/05(日) 17:51:56 ]
あ、while文とdo~while文って違うのかな

int num = 50;
while(num >= 20){
System.out.println("num = " + num);
num -= 5;
}
System.exit(0);

39 名前:デフォルトの名無しさん mailto:sage [2008/10/05(日) 19:23:00 ]
>>34
入れ替えてもダメだと思うぞ。
提示されたmainにあるデータだと正常に出来たと見えるだろうが、
出力例のツリーを表示させたら、間違ったものが出てくるだろう。
34のprintLevelsの問題は、LinkListのメソッドpop(),push()の組合せは、
queue動作(FIFO)ではなくstack動作(FILO)だ。
APIドキュメントを見直せ。

40 名前:デフォルトの名無しさん mailto:sage [2008/10/05(日) 23:31:59 ]
>>36
この程度の課題すら丸投げでこの先大丈夫なのか?



41 名前:デフォルトの名無しさん [2008/10/06(月) 01:12:39 ]
>35さん
パラメタからノードを渡せばよかったのか。
ありがとうございました。


42 名前:デフォルトの名無しさん [2008/10/06(月) 01:26:25 ]
>39さん
わかりました。もう少ししっかり見直してみます。ありがとうございます。

43 名前:デフォルトの名無しさん mailto:sage [2008/10/06(月) 01:28:40 ]
>>40
たぶんダメだと思います・・・
でもいいんです

44 名前:デフォルトの名無しさん [2008/10/07(火) 13:21:42 ]
【 課題 】画像の特徴点の抽出
【 形態 】Javaアプリケーション(main()で開始)
【 GUI  】Swing
【 期限 】提出期限:2008/10/8(火) 明日までです。急な要望で申し訳ないです
【 Ver  】1.6.0_06
【 補足 】特にないです

45 名前:デフォルトの名無しさん mailto:sage [2008/10/08(水) 01:23:43 ]
【 課題 】ttp://rg550.hp.infoseek.co.jp/cgi-bin/joyful/img/429.txt
【 形態 】1. Javaアプリケーション(main()で開始)
【 GUI  】GUIではありません
【 期限 】10月9日15:00
【 Ver  】1.4.2
【 補足 】丸投げです。
       コマンドラインを使わずに入力するようお願いします。
       宜しくお願いします。

46 名前:デフォルトの名無しさん [2008/10/08(水) 03:01:10 ]
【 課題 】授業で作成したファイルを元に工夫した時計を作りなさい
【 形態 】1. Javaアプリケーション(main()で開始)
【 GUI  】AWTを使ってるらしいですが良く分かりません
【 期限 】10月10日
【 Ver  】
java version "1.6.0_05"
Java(TM) SE Runtime Environment (build 1.6.0_05-b13)
Java HotSpot(TM) Client VM (build 10.0-b19, mixed mode, sharing)
【 補足 】
時計に数字を入れたい・Alarmを動作させたい、のですがどうすればいいのか分かりません。
よろしくお願いします

[Clock]ttp://rg550.hp.infoseek.co.jp/cgi-bin/joyful/img/430.java
[AlarmClock]/[Ex]ttp://rg550.hp.infoseek.co.jp/cgi-bin/joyful/img/431.txt

47 名前:デフォルトの名無しさん mailto:sage [2008/10/08(水) 04:16:56 ]
AlarmClock なんてクラスは見当たらない

48 名前:デフォルトの名無しさん mailto:sage [2008/10/08(水) 04:19:35 ]
>時計に数字を入れたい
なんの数字をどこにどういう風にだよw

AlarmClock なんてクラスも見当たらないよw

49 名前:デフォルトの名無しさん [2008/10/08(水) 04:26:01 ]
46です
貼るべきファイルを間違えてました…
[AlarmClock]/[Ex]ttp://rg550.hp.infoseek.co.jp/cgi-bin/joyful/img/432.txt
「時計に数字を入れたい→文字盤の数字を表示させたい」です。紛らわしくてすみませn

50 名前:デフォルトの名無しさん mailto:sage [2008/10/08(水) 10:59:24 ]
>46さん
ttp://rg550.hp.infoseek.co.jp/cgi-bin/joyful/img/433.zip




51 名前:デフォルトの名無しさん [2008/10/08(水) 13:38:51 ]
>>50
ありがとうございました!
なんとなく書いてあることが分かったのでもうちょっと工夫してみます(´∀`)ノ

52 名前:デフォルトの名無しさん [2008/10/09(木) 22:14:04 ]
【 課題 】幅5x高さ5x5列の棚の在庫管理を行うプログラムを作れ。
      棚へのデータ格納は入庫モードで行い、棚の空いているマスにデータを入れる。
      棚からのデータ排出は出庫モードで行い、IDで指定したデータを棚のマスから削除する。
      上記入庫と出庫はそれぞれ別の機能として実装する。
      (別々のソースでもいいし、別々のボタンで呼ばれるメソッドでもいい)
      格納データはそれぞれユニークな適当な桁のIDで
      区別し、棚の収納スペースは幅、高さ、列を持つ三次元配列を
      使って指定せよ。
【 形態 】1. Javaアプリケーション。GUIはあってもなくても可。
      仕様は極度にシンプルでOK。入庫と出庫の最低限のロジックさえあればいい。
【 GUI  】制限なし      
【 期限 】10/11まで
【 Ver  】java 1.6




53 名前:デフォルトの名無しさん [2008/10/09(木) 23:44:20 ]
お世話になります。

【 課題 】二次元配列の条件にあわせて出力するプログラム。
【 形態 】1. Javaアプリケーション(main()で開始
【 GUI  】?
【 期限 】2008.10.10
【 Ver  】1.6.0_07
【 補足 】下記のみ完成品を完成させると言うものです。
public class Po2 {
public static void main(String[] args) {
int x, y;
int[][] g = {
○{ 1, 2 },
×{ 3, 4 },
×{ 5, 6 },
×{ 7, 8 },
};
for(int i = 0; i < g.length; i++){
if(×だったらtrue){
x = g[i][0];
y = g[i][1];
}
System.out.println("x = " + "g [" + i + "]" + "[0]" + " →" + x);
System.out.println("y = " + "g [" + i + "]" + "[1]" + " →" + y);
System.out.println("****************");
}
}
}
よろしくお願い致します。


54 名前:デフォルトの名無しさん mailto:sage [2008/10/10(金) 00:45:20 ]
>>53
書き込む前に自分の書き込みを客観的に見直して、
ちゃんと理解できるかどうかくらい確認してもいいんでは?

55 名前:デフォルトの名無しさん [2008/10/10(金) 01:25:10 ]
>>54
申し訳ないです。超初心者なもんで、ifとがわかりません。
申し訳ありません。

56 名前:デフォルトの名無しさん mailto:sage [2008/10/10(金) 01:48:42 ]
>>55
いくらプログラミングの超初心者であっても、
○{ 1, 2 },
×{ 3, 4 },
×{ 5, 6 },
×{ 7, 8 },
というサンプルを示すだけでは「条件」が一体何なのかを説明していないことは分かるでしょ?
配列のインデックスに関連する条件があるのか、配列の内容で条件が定まるのか、そういったことを示さないと。

57 名前:デフォルトの名無しさん mailto:sage [2008/10/10(金) 04:07:26 ]
分かってないんならこれでいんじゃね。

if(×だったらtrue){

if(i > 0){

58 名前:デフォルトの名無しさん mailto:sage [2008/10/10(金) 12:14:07 ]
【 課題 】パターンマッチングの応用
【 形態 】Javaアプリケーション(main()で開始)
【 GUI  】制限なし
【 期限 】10/17
【 Ver  】1.6.0_07
【 補足 】
rg550.hp.infoseek.co.jp/cgi-bin/joyful/img/434.java

↑のプログラムでは原画像からpatternと同じ画像しか抜き取ることしかできなかったが、
サイズの違うpatternと似たような図形も抜き出せるようにしたい。

例)
原画像の円を抜き出したかったら、サイズの違う円でもすべて抜き出せるようにしたい。

59 名前:デフォルトの名無しさん [2008/10/10(金) 12:31:18 ]
いつもお世話になっております。

【 課題 】 配列の中にランダムで整数がはっているプログラム
【 形態 】1. Javaアプリケーション(main()で開始
【 GUI  】?
【 期限 】2008.10.10
【 Ver  】1.6.0_07
【 補足 】1桁の整数を以下のように 出力するプログラム

1桁の整数はxx個あります。
すべて足すとxxになります。
全部の整数の数はxx個あります。
全部足すとxxになります。
--------------------------------------
下記まで自分で作ったのですが、わからなくなってしまいました。
public class Test {
public static void main(String[] args) {
int[] data = { 1, 41, 529, 26, 3, 58, 997, 83, 6, 8 };
int a = 0;
for (int i = 0; i < data.length; i++) {
if (0 <= data[i] && data[i] <= 9 ) {
a = data[i];
System.out.println(a);
}
}
}
}

よろしくお願い致します。

60 名前:デフォルトの名無しさん mailto:sage [2008/10/10(金) 13:35:32 ]
>>59
public class Test {
public static void main(String[] args) {
int[] data = { 1, 41, 529, 26, 3, 58, 997, 83, 6, 8 };
int hitoketa = 0, nhitoketa = 0, all = 0;
for (int i = 0; i < data.length; i++) {
if (0 <= data[i] && data[i] <= 9 ) {
hitoketa += data[i];
nhitoketa++;
}
all += data[i];
}
System.out.println("1桁の整数は" + nhitoketa + "個あります。");
System.out.println("すべて足すと" + hitoketa + "になります。");
System.out.println("全部の整数の数は" + data.length + "個あります。");
System.out.println("全部足すと" + all + "になります。");
}
}



61 名前:44 [2008/10/10(金) 16:48:14 ]
最近課題をお願いしたものですが、とりあえず特徴点を算出するメソッドは先生からある程度ヒントをもらったので出来たのですが、それでもまだ分からないので出来ればお願いします
【 課題 】画像の特徴点の抽出
【 形態 】Javaアプリケーション(main()で開始)
【 GUI  】Swing
【 期限 】2008/10/14
【 Ver  】1.6.0_06
【 補足 】今悩んでいるのは、処理する画像を開く、保存するといったことが出来ず、また、インポートもなにを使えばいいのか分かりません。
      ほぼ丸投げに近くて申し訳ありません
一応、特徴点算出メソッドだけは貼らさせて頂きます


62 名前:44 [2008/10/10(金) 16:49:02 ]
class tokutyou {

int w = 68;
int h = 68;
int g_data[] = new int[w*h];
int p[] = new int[9];
tokutyou tok;
int z[][] = new int[w][h];
int i,k,l;
int[][] stept0(int gt_data[][]){
tok = new tokutyou();
for(k = 1; k < h-1; k++){
for(l = 1;l < w-1;l++){
p[0] = gt_data[k][l];
p[1] = gt_data[k+1][l];
p[2] = gt_data[k+1][l-1];
p[3] = gt_data[k][l-1];
p[4] = gt_data[k-1][l-1];
p[5] = gt_data[k-1][l];
p[6] = gt_data[k-1][l+1];
p[7] = gt_data[k][l+1];
p[8] = gt_data[k+1][l+1];
z[k][l] = tok.tokstepstept3(p);
}
}
return z;
}



63 名前:44 [2008/10/10(金) 16:49:45 ]
private int tokstepstept3(int q[]){
int k;
int j;
int u[] = new int[10];
for(k = 0;k < 9;k++)u[k] = q[k];
u[9] = u[1];
if(tokutyou1(u) == 1)
if(tokutyou2(u) == 1)
return 1;
else if(tokutyou3(u) == 1){
if(tokutyou4(u) == 1)
return 1;
else if(tokutyou5(u) == 1)
return 1;
}else if(tokutyou6(u) == 1)
return 1;
return 0;
}


64 名前:44 [2008/10/10(金) 16:51:05 ]
private int tokutyou1(int r[]){
if(r[0] == 1)
return 1;
else
return 0;
}
private int tokutyou2(int r[]){
int s = 0;
for(int i = 1;i<9;i++)
s = s + r[i];
if( s <= 1)
return 1;
else
return 0;
}


65 名前:44 [2008/10/10(金) 16:51:48 ]
private int tokutyou3(int r[]){
int s = 0;
for(int i = 1;i<9;i++)
s = s + r[i];
if(s == 2)
return 1;
else
return 0;
}
private int tokutyou4(int r[]){
int s = 0;
for(int i=1;i<9;i++)
if(r[i]*r[i+1] == 1)
s++;
if(s != 0)
return 1;
else
return 0;
}


66 名前:44 [2008/10/10(金) 16:53:35 ]
private int tokutyou5(int r[]){
if(r[1] * r[3] == 1||r[1] * r[7] ==1||r[3] * r[5] == 1||r[5] * r[7] ==1)
return 1;
else
return 0;
}
private int tokutyou6(int r[]){
int s = 0;
for(int i = 1;i<9;i++)
s++;
if(s == 0)
return 1;
else
return 0;
}

}

もし、今張ったメソッドが職人様に合わなければ、職人様の書き換えて頂いても構いません
何卒よろしくお願いします

67 名前:デフォルトの名無しさん [2008/10/10(金) 19:00:30 ]
>>60
ありがとうございました。感謝しています。

68 名前:デフォルトの名無しさん mailto:sage [2008/10/11(土) 01:11:19 ]
>>61-66
あぷろだ使え。
boolean使え。
tokutyou6は必ず0か?

69 名前:デフォルトの名無しさん mailto:sage [2008/10/11(土) 15:57:35 ]
>>61
Cのプログラムを無理矢理java用にしたようなソースだw
ソースを見るに画像はモノクロということでいいの?
処理対象の画像をどうやって指定するのか、
抽出した特徴をどういう形で出力するのか、
プログラムの入出力の方法や形式を指定する必要がある。
それとも御自由に?

悩んでいるところのヒントだけでいいのなら、
画像を開いたり保存したりするには javax.imageio.ImageIO クラスが便利。
このクラスのreadメソッドはBufferedImageを返すので、
ピクセル単位でなんだかんだやるときには単なるImageより扱いやすい。
保存もwriteメソッドでいける。

>>1にもあるし>>68も言ってるけど無駄にスレを消費するからソースが長い時はうpろだを使った方がいい。

70 名前:デフォルトの名無しさん mailto:sage [2008/10/11(土) 16:32:45 ]
モノクロじゃなくて二値画像か



71 名前:44 [2008/10/12(日) 06:56:41 ]
>>68-70
規制によりレスが遅れてしまいました
早いレスに対応出来なくて申し訳ないです

>>68
すみませんでした。次回からはアプロダを使います
先生のヒントを聞く限りだと、tokutyou6は必ず0だと思います


72 名前:44 [2008/10/12(日) 07:00:05 ]
>>69
画像を指定は、画像を開くメニューを作り、それにより開いた画像の特徴点を抽出するというものです
抽出した特徴点は、赤丸で囲むようにして出力するらしいです。しかし、それはまだ難しいらしいので、今は特徴点の座標を表示さえ出来ればいいらしいです。

プログラムの入出力方法とはどういう意味ですか?ちょっと分からないです

73 名前:デフォルトの名無しさん [2008/10/12(日) 11:34:42 ]
【 課題 】briefcase.yahoo.co.jp/bc/kenwoody20/lst?.dir=/ae57&.order=&.view=l&.src=bc&.done=http%3a//briefcase.yahoo.co.jp/bc/kenwoody20/lst%3f%26.dir=/ae57%26.src=bc%26.view=l
こちらのリンクにハッシュテーブルのコードがアップされています。こちらのコードを使い英単語がテーブルに記入済みかどうかを確認するクラスを実装するといったものです。ですからアップしていますコードは変えません。
流れて的にはユーザーがStringをインプットし、テーブルに存在しないワードを指します。
文字はこちらになります。"He","She", "I", "You", "We", "Everyone", "went", "at","the", "to", "theatre", "school", "fun", "has", "movie", "see", "a"
仮に,"He and she went to the theatre to see movie with you." と打てば、”withは存在しません”とメッセージを出します。 sheとyouはSheとYouと同じ様に認識させます。
【 形態 】(main()で開始)/2.
【 GUI  】4. 制限なし/
【 期限 】10/14
【 Ver  】1.6.0_07
【 補足 】
課題の説明書きがわかりづらく申し訳ないと思います。
何となくコードは書けたのですが、この「コードを使うclassを書く」という部分が上手くできません。
一応、顧問を満たすコードもwordというtxtファイルでアップしてあります。
mainからはちゃんと動きます。これを他のクラスから実装する方法がわかりません。
とりあえず自分のコードの良し悪しより先輩のコードを参考にさせていただきたいので丸投げという形を取らせていただこうと思います。
よろしくお願いします。

74 名前:デフォルトの名無しさん mailto:sage [2008/10/12(日) 12:17:54 ]
>>73
SeparateChainingHashTable に定義されている main(String[]) メソッドは無いものと思って、
Hashtable 等と同じように使えばいい。

75 名前:デフォルトの名無しさん mailto:sage [2008/10/12(日) 12:20:45 ]
>>72
> プログラムの入出力方法や形式
まさにそういうレスのように、
プログラムにどうやって画像を入力してどういう情報をどういうふうに出力するかということ。
それが決まらなければ人間がプログラムに情報を与えられないし情報を引き出すこともできない。

>>61
とりあえず作ってみた。GUIとかいい加減なので適当に修正を。
ttp://sourcepost.sytes.net/sourcepost/sourceview.aspx?source_id=30477
簡単なサンプル画像を作って1ピクセル幅で描いた線分の端点や四角形の頂点とかが抽出されたけど…

>>71
次回を予約せずにもっと自分でがんばれw

76 名前:デフォルトの名無しさん mailto:sage [2008/10/12(日) 12:25:14 ]
>>71-72
じゃあtokutyou6はなんのためにあんだよw
抽出元の画像をあぷしてくれ
座標の出力は標準出力でいいのか?
特徴点を(まだ)○で囲まないなら、画像の保存は要らないな?

77 名前:76 mailto:sage [2008/10/12(日) 12:27:56 ]
おおぅ、62-66で遊んでるうちに先越されたwww

78 名前:デフォルトの名無しさん mailto:sage [2008/10/12(日) 12:38:42 ]
>>76
面倒だったのでカウントさせずにtokutyou6はすぐにfalseを返すようにしたw
tokstepstept3のif-else塊が見にくいのでそこらへんを勘違いしてコーディングしてるかも。
少なくともリファレンスになる画像とその場合の答がないと本当は安心できないや。

79 名前:デフォルトの名無しさん mailto:sage [2008/10/12(日) 14:35:31 ]
【 課題 】
「イヌ(dog)」というクラスを定義する
フィールドは次の通り String型で名前(name) char型で色(color){白はw 灰色はg 茶色はb 斑はsで区別
            String型で飼い主(owner) double型で体重(weight) String型で鳴き声(barking){ワンワン、キャンキャン、ワォ〜〜ンなど自分で定義)
メソッドは次の通り  飼う(breed):その犬を貰い飼い主になる(=飼い主フィールドに飼い主の名前をセットする)
鳴く(bark):コンソールに鳴き声を出力
名前は?(getname):コンソールに名前を出力
           名付け(naming):名前を付ける
ダイエット(diet):体重を10%減少させる
脱色(bleach):茶、灰色の体系を白にする

コンストラクタは次の種類 1、体色を指定するコンストラクタ
             2、飼い主の名前とイヌの名前を指定するコンストラクタ  

何も指定しないで作成した(newした)とき、各フィールドには以下のデータをセットする(=引数なしのコンストラクタの定義)
名前(name):空白  色(color):茶色→b  飼い主(owner):みのもんた 体重(weight):10.0 鳴き声(barking):ワンワン

【 形態 】1. Javaアプリケーション(main()で開始
【 GUI  】4. 制限なし
      
【 期限 】10月13日午後2時まで


どなたかよろしくお願いします


80 名前:デフォルトの名無しさん mailto:sage [2008/10/12(日) 15:05:50 ]
【 課題 】lmf形式(txtで開くと文字化け)のファイルを
      文字化けのしていないテキストファイルにして保存する
【 形態 】Javaアプリケーション(main()で開始
【 GUI  】制限なし
【 期限 】10月17日
【 Ver  】1.6.0_07
【 補足 】lmfファイルの仕様は以下のようになっています。
unsigned int iArchiveFlag = true;
unsigned int LMDateFormat;
unsigned int LMNumberOfCoordinates;
unsigned int LMHeaderSize;
unsigned int LMUserHeaderSize;
unsigned int LMNumberOfEvents;
CTime LMStatTime;
CTime LMStopTime;
CString LMVersionString;
CString LMFilePathName;
CString LMComment;

FileInputStream、InputStreamReader等で読み込もうとしたのですが、
初心者ですので上手くいきません。どなたかよろしくお願いいたします。



81 名前:デフォルトの名無しさん mailto:sage [2008/10/12(日) 15:45:30 ]
>>80
C/C++の型で書いているのだと思うがunsigned intのビット幅は?
CTimeとCStringのファイル内表現はどんな仕様なの?
書き出すテキストファイルのフォーマットはどういう風にするの?

82 名前:デフォルトの名無しさん mailto:sage [2008/10/12(日) 15:53:09 ]
>>80
まだ足りなかった
バイトオーダーも教えて

83 名前:デフォルトの名無しさん mailto:sage [2008/10/12(日) 16:56:26 ]
>>80
そのlmfファイルをあぷしろ。
読み込もうして上手く行かなかったソースを、どう上手く行かないのか
(どこでどうなってどうなるハズなのにどうなった等)のコメントを含めてあぷしろ。

84 名前:デフォルトの名無しさん mailto:sage [2008/10/12(日) 20:30:18 ]
>>79
出題者の変数・メソッド名の命名センスが悪すぎてやる気が起きない・・・

85 名前:デフォルトの名無しさん mailto:sage [2008/10/13(月) 00:07:05 ]
>>84
そこですかw
なんとかやってもらうわけにはいきませんか?

86 名前:デフォルトの名無しさん [2008/10/13(月) 00:10:10 ]
自分で努力しないところ見ると、先生にも嫌われてるようだなw

87 名前:デフォルトの名無しさん [2008/10/13(月) 04:32:14 ]
73です。
>>74
コメントありがとうございます。
本などを見ながら色々やってみましたが、やり方自体が全くわかりません(汗
どちら様かよろしくお願いします。

88 名前:デフォルトの名無しさん mailto:sage [2008/10/13(月) 09:50:48 ]
>>79をどなたかお願いできませんか?
自分でやろうにもクラスとか全く知らない感じでこの課題だされたもので
何からどう手をつけていいか分からない状況なんです
すごい最初のほうだけとかでもいいんでできればよろしくお願いします

89 名前:sage [2008/10/13(月) 11:06:18 ]
>73
よく中身みてないので的外れだったらごめん
単に、
1)新しいクラスを作って
2)今動いているmainを1)にコピペ
んじゃダメなの?


90 名前:デフォルトの名無しさん mailto:sage [2008/10/13(月) 11:07:36 ]
久々の書き込みでsageに失敗…orz



91 名前:デフォルトの名無しさん mailto:sage [2008/10/13(月) 13:48:15 ]
>>79
public class Dog {
private String name = "サイト";
private char color = 'k';
private String owner = "ルイズ";
private double weight = 50.0;
private String barking = "おっぱい";
public void breed(String owner) { this.owner = owner; }
public void bark() { System.out.println(barking); }
public void getname() { System.out.println(name); }
public void naming(String name) { this.name = name; }
public void diet() { weight *= 0.9; }
public void bleach() {if (color == 'b' || color == 'g') color = 'w'; }
public Dog(char color) { this.color = color; }
public Dog(String name, String owner) { this.name = name; this.owner = owner; }
public Dog() {}
}

92 名前:デフォルトの名無しさん [2008/10/13(月) 13:52:51 ]
>>89

先生に尋ねたところ、89さんのおっしゃるとおり。ただメインをコピペしたらOKということでした。想像と違い意外な結末でしたが、無事に自己解決しましたので一安心です。
コメントしていただいた方、ありがとうございます。またよろしくお願いします。

93 名前:デフォルトの名無しさん [2008/10/13(月) 13:54:32 ]
先生に聞くなら初めからそうしろ

94 名前:デフォルトの名無しさん mailto:sage [2008/10/13(月) 15:56:47 ]
>>81,82

80です
unsigned intの部分は32ビットです。
CTimeは1.202*10^9のような数字が入っています。
バイトオーダーは24です。
unsigned int LMDateFormat;  2バイト
unsigned int LMNumberOfCoordinates;  24バイト
unsigned int LMHeaderSize;  134バイト
unsigned int LMUserHeaderSize;  111バイト
unsigned int LMNumberOfEvents;  4*10^5バイト

CTimeにデータが入っており
CStringの部分は切り捨ててもらってかまいません。

テキストのフォーマットは、CTimeの部分が縦に並ぶようにしていただければ
他の部分は、やり易い様にしてください。

>>83
すみませんでした、うpします。17.6MBと大きいファイルです。
PASS:java
ttp://www.rupan.net/uploader/download/1223879090.lmf

始めはテキストとして読み込もうとして文字化け
バイナリファイルとして読み込んでも欲しいデータの形になりません。
一つ一つ定義して読み込むことがわかってないのでできませんでした。

ほんとすいません。Javaの教科書を読んでたので出された課題なんです。


95 名前:デフォルトの名無しさん mailto:sage [2008/10/13(月) 16:33:07 ]
バイトオーダーが24とかunsigned intは32ビットと言いつつ2バイトだったり111バイトだったり
どこをどうつっこんでいいのやら

96 名前:デフォルトの名無しさん mailto:sage [2008/10/13(月) 16:58:11 ]
>>94
ぐぐるに、CAMAC Crate Controllerとやらが吐いたイベントデータファイルかな。
情報は小出しにせずきちんと全部出せ。
面倒だからデータファイルは落としてないんで確認はしていないけど、
> unsigned int LMDateFormat;  2バイト
は2バイトなんじゃなくて2というイベントデータの形式を示す値が格納されているということじゃないのか?
他のもデータサイズでなくヘッダに格納されている数値そのものじゃないの?
CTimeやCStringがMFC4.xのクラスらしいからバイトオーダーはリトルエンディアンかな。

97 名前:デフォルトの名無しさん mailto:sage [2008/10/13(月) 18:53:31 ]
>>95
バカですみません、エンディアンという言葉を知りませんでした。

>>96
先生にヘッダーを捨てて、24バイトずつに並べればいいんじゃないかと言われ
その部分がバイトだと思いこんでいました。
ヘッダーに格納されている数値でしたか。
CTimeとCStringはC++のMFC4.xでいいそうです。

98 名前:44 [2008/10/15(水) 00:08:52 ]
>>72
諸事情によりレスを返すことが出来ませんでした。遅れて申し訳ありません。
それと、ありがとうございます。
画像の指定方法なども予想よりはるかに優れたもので感激しました。
ただ、画像の特徴点についてなんですが、先生の考えでは、画像の交差点と分岐点も求められないといけないらしいです………。
この2点を求めるにはどうすればいいですか?
正直こんなこと聞ける立場ではないのですが、もしよろしければ教えて下さいませんでしょうか?

99 名前:44 [2008/10/15(水) 00:12:03 ]
間違えました
×>>72
>>75

100 名前:デフォルトの名無しさん mailto:sage [2008/10/15(水) 01:17:50 ]
>>98
聞く相手はまさにその先生ではないのかなと思うけどw
>>75のアルゴリズムでは交差点とかは求まりそうにない。

ttp://sourcepost.sytes.net/sourcepost/sourceview.aspx?source_id=30482
適当に三叉の分岐点や十字の交差点も求められるようにしてみた。
いい加減な抽出法なのでいい加減な結果しか出ないが。
例えば、交差点でも、
■□■
□■□
■□■
は抽出するけど、
■□□■
□■■□
□■■□
■□□■
はダメとか。
改良は自分でfeatureやfeature?のコメントを参考に考えてみて。
とはいえ、この特徴点抽出方法では周囲の八つの点だけしか見ていないから、
どんなに改良してもあまり賢い動作はさせようがない。
もっと大局的なデータを利用するとマシになると思う。
そこら辺はjavaの宿題というよりも画像処理とかのアルゴリズムの課題になるだろうけど。








[ 続きを読む ] / [ 携帯版 ]

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

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