5ちゃんねる ★スマホ版★ ■掲示板に戻る■ 全部 1- 最新50  

■ このスレッドは過去ログ倉庫に格納されています

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

1 :デフォルトの名無しさん: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

【前スレ】
http://pc12.2ch.net/test/read.cgi/tech/1232627790/

2 :デフォルトの名無しさん:2009/07/19(日) 23:20:07
>>1
乙です

前スレ967です

課題 ttp://uploaders.ddo.jp/upload/1mb/count.cgi?1up6511.zip

【 形態 】1. Javaアプリケーション(main()で開始)
【 GUI  】制限なし
【 期限 】7月21日 
【 Ver  】1.6.0_11

ノルムについての資料をうpしました
http://a-draw.com/contents/uploader2/src/up9667.jpg

どなたか分かる方、お願いします

3 :デフォルトの名無しさん:2009/07/19(日) 23:27:52
>>2
ノルムはどこに出力するの?

4 :デフォルトの名無しさん:2009/07/19(日) 23:38:27
>>3
ノルムは計算結果さえ表示できれば
テキストファイルに出力する必要はないそうです

5 :デフォルトの名無しさん:2009/07/19(日) 23:56:35
>>2
こんなか?
double [][]a = fileInMatrix(inputfolder,matrix_in); //行列用の読み込み
double []b = fileInVector(inputfolder,vector_in); //ベクトル用の読み込み
double []x = fileInVector(inputfolder,vector2_in); //ベクトル用の読み込み

double []solution=new double[a.length];
for(int i=0;i<a.length;i++){
solution[i]=0;
for(int j=0;j<x.length;j++){
solution[i]+=a[i][j]*x[j];
}
}
for(int i=0;i<solution.length;i++){
solution[i]-=b[i];
}
fileOutVector(outputfolder,vector_out,shutsuryoku,solution); //ベクトル用の書き込み

double euqlid=0;
for(double d :solution){
euqlid+=d*d;
}
System.out.println("e-norm:"+Math.sqrt(euqlid));
double max = solution[0];
for(int i=1;i<solution.length;i++){
if(max<solution[i]){
max=Math.abs(solution[i]);
}
}
System.out.println("max-norm:"+max);


6 :デフォルトの名無しさん:2009/07/20(月) 00:06:20
>>前すれ998
自分で移植してこその理解だ

7 :デフォルトの名無しさん:2009/07/20(月) 00:48:07
>>5
ありがとうございます
実行してみたところ、正しく動作しました
ユークリッドノルムの値をネット上で見つけたもの

stat.sm.u-tokai.ac.jp/~numa/Java/Vectornorm.java


で実行した場合は 215.56152395133645 となったのですが
今回の結果では 215.5615169227253 と若干誤差がでたのですが
このような誤差はなぜ起こったのでしょうか?

8 :デフォルトの名無しさん:2009/07/20(月) 19:22:32
>>1乙です

【 課題 】アクションゲームの基本を作る
      @ 左右への移動
      A ジャンプ
      B 障害物(ブロック)との当たり判定
      ※キャラクターの画像は各自で用意すること。

【 形態 】1. Javaアプリケーション(main()で開始)
【 期限 】8月1日まで
【 Ver  】1.6.0_13
【 補足 】@左右移動したときの画像の向きの変更
      A当たり判定の大きさを変更できるようにしたい。
      ※「JAVAでゲーム作りますが何か?」のページでやってみましたが、
       補足の@Aの部分が上手くいきませんでした…。
       どなたかよろしくお願いします。

9 :デフォルトの名無しさん:2009/07/20(月) 20:19:35
>>7
テキストファイルに出力している値は、少数以下5桁しか載ってないからじゃね?

10 :デフォルトの名無しさん:2009/07/20(月) 20:37:02
>>8
そこのソースコード見ればできるだろ。

11 :デフォルトの名無しさん:2009/07/20(月) 21:36:14
>>9
あーなるほど
ありがとうございました!

12 :デフォルトの名無しさん:2009/07/20(月) 22:30:05
前スレの975ですが答えてくれた方ありがとうございました。
質問してからレスしてないので答えてたのは自分じゃないです。
お騒がせしました。

13 :デフォルトの名無しさん:2009/07/20(月) 22:38:55
>>10
用意した画像が「縦100横80」で画像の「x15,y1〜x50,y85」部分を
当たり判定にしたいのですが、キャラクターがブロックに触れると
画面外にすっ飛んだり、弾んだりして上手くいきませんでした。

14 :デフォルトの名無しさん:2009/07/20(月) 23:07:26
>>13
public Point getTileCollision(Sprite sprite, double newX, double newY) {
newX = Math.ceil(newX);
newY = Math.ceil(newY);
double fromX = Math.min(sprite.getX(), newX);
double fromY = Math.min(sprite.getY(), newY);
double toX = Math.max(sprite.getX(), newX);
double toY = Math.max(sprite.getY(), newY);
int fromTileX = pixelsToTiles(fromX);
int fromTileY = pixelsToTiles(fromY);
int toTileX = pixelsToTiles(toX + sprite.getWidth() -1);
int toTileY = pixelsToTiles(toY + sprite.getHeight() -1);
for(int x=fromTileX;x<=toTileX;x++) {
for(int y=fromTileY;y<=toTileY;y++) {
//Outside the boundary
if(x<0 || x>=col) {
return new Point(x,y);
}
if(y<0 || y>=row) {
return new Point(x,y);
}
if(map[y][x] == '1') {
return new Point(x,y);
}
}
}
return null;
}
これの252ページにコードと解説が載っています。
http://books.google.com/books?id=rSs35Uw11okC&printsec=frontcover&dq=java+game

15 :デフォルトの名無しさん:2009/07/21(火) 00:38:08
【 課題 】背景色、長方形の色、文字色を、それぞれボタンを押すごとに(黒→赤→青→緑→白→黒→・・・)の順に変化していくようにせよ(初期値は別々にすること)。
新しくクラスを作ることが望ましい。
http://rg550.hp.infoseek.co.jp/cgi-bin/joyful/img/764.zip
【 形態 】1. Javaアプリケーション(main()で開始)
【 GUI  】2. Swing
【 期限 】7/21
【 Ver  】1.6.0_13

よろしくおねがいします。

16 :デフォルトの名無しさん:2009/07/21(火) 01:59:42
>>14
ありがとうございます!ブロックとの当たり判定はできました。
後は画像の方向だけなのですが。
用意した画像が@立ち(右左)A走り(左右)Bジャンプ(左右)
の6ファイルでそれぞれ別に用意しました。AとBはgifアニメーションです。
よろしくお願いします。

17 :デフォルトの名無しさん:2009/07/21(火) 02:15:30
>>16
左右の動きをどう作り込んだか分かりませんが、キャラクタを実装しているクラスに方向フラグを追加して描画時にフラグで切り替える。方向フラグはキーが押された時にアップデートすればよいかな。

18 :デフォルトの名無しさん:2009/07/21(火) 08:39:22
>>17
キーが押されたときに画像が切り替わるようにする方法が分かりません。
あと、ジャンプ(つまり地面に接地してない)時の画像の切り替えもよく分かりません。

左右の動きはここを参考にしました。
ttp://javagame.skr.jp/index.php?%BA%B8%B1%A6%B0%DC%C6%B0

19 :デフォルトの名無しさん:2009/07/21(火) 10:01:03
>>18
http://javagame.skr.jp/index.php?%A5%A4%A5%E1%A1%BC%A5%B8%A4%F2%BB%C8%A4%A6

20 :デフォルトの名無しさん:2009/07/22(水) 16:40:05
>>19
ありがとうございます。色々試していたらお返事が遅くなってしまいました。
向きの切り替えはできましたが、
ボタンを押したている間、走る画像に切り替えるのと
空中にいる間、ジャンプ画像に切り替えるというのが上手くいきませんでした…
何度も申し訳ありませんが…またお願いします。

21 :Indooroopilly:2009/07/22(水) 21:09:54
>>20
左右の向きと同じようにジャンプしている状態を判断するフラグをひとつ追加して、
キャラクターの描画時にフラグを見て画像を切り替えればOK。

22 :デフォルトの名無しさん:2009/07/22(水) 21:28:02
>>21
ジャンプもその方法でやったのですが…
ジャンプ中に左や右を押すと右や左の画像に切り替わってしまうんです

23 :Indooroopilly:2009/07/22(水) 21:54:28
>>22
ジャンプ時は同じ方向しか向かない(途中で反対方向に移動しない)ような仕様でしょうか?
であれば、ジャンプ時は反対の方向を押されても移動させない。
ジャンプ時も反対方向に移動するのであれば、ジャンプ時用の画像を左右用意する。
細かい実装が分からないのですが、決めの問題かと思います。

24 :デフォルトの名無しさん:2009/07/23(木) 17:04:43
【 課題 】
配布資料に記載されたプログラムを参考にして、画面にウインドウを
開き、以下の注意点に従い、任意の関数のグラフを描くプログラムを作成せよ。
出力結果の見やすさも採点対象とする。

(1)y=logxのグラフを表示せよ。
   また、用いた関数式も表示させよ。
(2)表示したグラフに対してx軸、y軸を表示せよ。

(3) (1)、(2)に加えて、java.lang.Mathクラスを用いて
  sin関数を表示せよ。

【 形態 】1. Javaアプリケーション

【 期限 】7/24 午後12:30

【 Ver  】java version "1.5.0_05"

急で申し訳ありません よろしくお願いします。

25 :デフォルトの名無しさん:2009/07/23(木) 17:22:30
>>24
配布資料は?

26 :デフォルトの名無しさん:2009/07/23(木) 18:16:38
配布資料は転記ミスです
よろしくお願いします

27 :デフォルトの名無しさん:2009/07/23(木) 18:41:26
任意の関数って書いてるけど注意点にある対数関数と正弦関数以外どういう関数をどういう風に与えるの?

28 :デフォルトの名無しさん:2009/07/23(木) 23:44:32
ksk

29 :デフォルトの名無しさん:2009/07/24(金) 00:12:54
>>26
だったらちゃんと転記しろよ。

(1)〜(3)はどう見ても課題そのもので、
任意の関数を描画するため注意点には見えんのだが。

何を注意すれば良いんだ?

30 :デフォルトの名無しさん:2009/07/24(金) 00:21:09
先生、javaでlogのグラフを書く意味が分かりません

31 :デフォルトの名無しさん:2009/07/24(金) 01:40:23
>>30
単純だし、ちゃんと描けているかどうかボンクラ学生でも分かるからじゃね?

32 :デフォルトの名無しさん:2009/07/24(金) 08:54:25
>>24 java入門GUI編に答えが載ってるよ
たぶん学校の先生もこの本見たんだろうなぁと予想

33 :デフォルトの名無しさん:2009/07/24(金) 12:48:23
>>24は結局まにあったのかな?

34 :デフォルトの名無しさん:2009/07/24(金) 22:17:52
>>32
ちょw出版社つぶれてるおw
俺は持ってるけどね

35 :デフォルトの名無しさん:2009/07/25(土) 00:51:40
>>15誰かお願いします

36 :デフォルトの名無しさん:2009/07/25(土) 00:53:05
>>35
完成像がさっぱり思い浮かばない

37 :デフォルトの名無しさん:2009/07/25(土) 01:30:11
>>23
お返事が遅くなりましたが、
無事できました。ありがとうございました!


38 :デフォルトの名無しさん:2009/07/25(土) 01:48:14
>>35
Str.classで描画している四角形と文字列とバックグラウンドの色を変えれば良いの?

っていうか、期限過ぎてるよね。

39 :Indooroopilly:2009/07/25(土) 01:50:19
>>37
お疲れ。それをベースに敵とか作ってアイスクライマーみたいにすると結構遊べます。お試しあれ。

40 :デフォルトの名無しさん:2009/07/25(土) 02:02:54
>>35
ttp://rg550.hp.infoseek.co.jp/cgi-bin/joyful/img/765.java

41 :デフォルトの名無しさん:2009/07/25(土) 02:05:48
>>40
ありがとうございます!

>>38
とりあえずやっておきたかったので。

42 :デフォルトの名無しさん:2009/07/25(土) 03:11:54
>>40さんのを少し改良して、以下のようなif文を追加したいのですが、
上手く反応しません。
bの部分が違うのでしょうか?

public void actionPerformed(ActionEvent e) {
Object source = e.getSource();
if(source == b){
background = background.next();
rectangle = rectangle.next();
string = string.next();
}
repaint();
}

43 :Indooroopilly:2009/07/25(土) 03:40:13
>>42
多分、やりたいのはこういう事かな?
public void actionPerformed(ActionEvent e) {
if(e.getActionCommand().equals("change colors")){
background = background.next();
rectangle = rectangle.next();
string = string.next();
}
repaint();

}

44 :デフォルトの名無しさん:2009/07/25(土) 03:53:11
>>43さんのプログラムでif文の部分は上手く動くようになりましたが、
repaint();によってリアルタイムで時間を表示していたのですが、ボタンを押さないと時間が再描画されないようになってしまいました・・。

45 :Indooroopilly:2009/07/25(土) 04:01:01
>>44
何がやりたいの?

46 :デフォルトの名無しさん:2009/07/25(土) 04:02:30
>>44
>>40のStrExはActionEventのソースをコンポーネント自身が知らなくてもいいように分離されているので
特定のボタンをソースとするActionEventだけを色を変更するきっかけとしたいのなら
StrExの方で色を変更するメソッドをactionPerformedでなくchangeColorsとでも名前を変更して定義して
S02Exの方で
final StrEx s = new StrEx();
JButton b = new JButton("change colors");
b.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
s.changeColors();
}
});
frame.add(s);
のようにすればStrEx自身は色を変えるきっかけとなるイベントソースが何であるかを気にしなくてすむようになる
そうすれば時刻表示の更新のためのactionPerformedをそのまま使用できる
時刻表示の更新もこの色変更と同じ考え方で実装すればStrEx自体にActionListenerを実装する必要がなくなる

47 :デフォルトの名無しさん:2009/07/27(月) 13:56:34
課題 http://rg550.hp.infoseek.co.jp/cgi-bin/joyful/img/767.txt

【 形態 】1. Javaアプリケーション(main()で開始)
【 GUI  】制限なし
【 期限 】7月28日 
【 Ver  】1.6.0_07

どなたか分かる方、よろしくお願いします.

48 :Indooroopilly:2009/07/27(月) 15:15:16
>>47
コンパイルエラーになる原因
1.BadGradeExceptionがStudent.javaで定義されている。
2.PersonクラスにprintGradeメソッドは定義されていない、よって型がPersonなgeorgeは使えない。
3.martinはPersonなのでStudentにキャストする必要がある。

修正箇所
1.BadGradeException.javaというファイルを作ってその中で定義。
2.georgeの型をStudentにするかキャストしてメソッドコール。((Student)george).printGrade();
3.martinの型をStudentにするかキャストするか、そもそもleader使ってないので行ごと消す。

49 :デフォルトの名無しさん:2009/07/27(月) 15:17:32
>>48
微妙に問題と解答がかみ合ってないぞw

50 :デフォルトの名無しさん:2009/07/27(月) 15:26:04
>>47
BadGradeException を Student.java にってのは転載ミスだろ。
1.
16行目: george.printGrade();
 george は Person クラスと宣言されているため、Person で宣言されているメソッドしか利用できない。
19行目: Student leader = martin;
 leader は Student クラス、martin は Person クラスのオブジェクトであり、
 Student は Person だが Person は Student ではないため。
2.
"Name: Jhon" <- 5行目 Person.print() が呼ばれ、名前を表示
"Age: 32" <- 6行目 Person.printAge() が呼ばれ、年齢を表示
"Name: Paul" <- 10行目 Student.print() から super.print() により Person.print() が呼ばれ、名前を表示
"Job: student" <- 10行目 Student.print() の super.print() の後、固定文字列を表示
"grade: 3" <- 11行目 Student.printGrade() が呼ばれ、学年を表示
"Age: 20" <- 12行目 Student.printAge() は無いが親クラスの Person.printAge() が呼ばれ、年齢を表示
"Name: George" <- 15行目 george は Person だが実体は Student のため、Student.print() が呼ばれ、名前を表示
"Job: student" <- 15行目 Student.print() の super.print() の後、固定文字列を表示
"5 is out of range." <- Student のコンストラクタ(10行目)で BadGradeException が発生し、25行目でキャッチされ、26行目で表示
※例外によりcatchに飛んだので、22行目の ringo.print()は実行されない。

51 :50:2009/07/27(月) 15:30:49
>>50
"n行目"というのは
1: /* PrintPersons.java に保存 */
2: public class PrintPersons {
    :
と先頭にコメントが1行入った状態

52 :デフォルトの名無しさん:2009/07/27(月) 17:48:27
すいません、返事が遅れました。
>>48さん、 >>50さん本当にありがとうございました!

53 :デフォルトの名無しさん:2009/07/27(月) 20:07:28
【 課題 】
以下のURLから正規表現を用いてキーワードの部分のみ抽出する
プログラムを作成せよ。

http://www.google.co.jp/search?q=キーワード&lr=lang_ja&ie=utf-8&oe=utf-8&aq=t&rls=org.mozilla:ja:official&client=firefox-a

【 形態 】1. Javaアプリケーション

【 期限 】7/28 午後17:00

【 Ver  】java version "1.5.0_19"

先生、宜しくお願いします!

54 :デフォルトの名無しさん:2009/07/27(月) 22:13:30
>>53
import java.util.regex.*;
public class GoogleKeyword {
public static void main(String[] args) {
Pattern p = Pattern.compile("(?:\\?|&)q=(.*?)(?:&|$)");
Matcher m = p.matcher("http://www.google.co.jp/search?q=キーワード&lr=lang_ja&ie=utf-8&oe=utf-8&aq=t&rls=org.mozilla:ja:official&client=firefox-a");
if(m.find()) System.out.println("keyword="+m.group(1));
else System.out.println("not found");
}
}

55 :Indooroopilly:2009/07/27(月) 22:15:31
import java.util.Scanner;
import java.util.regex.*;
public class KeywordExtractor{

public static void main(String [] args)throws Exception{

String keyword = "q=([^&]+)";
Pattern pattern = Pattern.compile(keyword);

System.out.print("Input URL: ");
Scanner scan = new Scanner(System.in);
Matcher matcher;
String line = "";
while(scan.hasNext()){
line = scan.nextLine();
matcher = pattern.matcher(line);
if(matcher.find()){
String foundWord = matcher.group().replaceAll("q=", "");
System.out.println("Keyword: " + foundWord);
}else{
System.out.println("Did not find any keyword in the text.");
}
matcher.reset();
System.out.print("Try other URL: ");
}
}
}

56 :デフォルトの名無しさん:2009/07/27(月) 23:51:27
>>54
動かないんですが・・

57 :デフォルトの名無しさん:2009/07/28(火) 00:14:41
>>56
>>55は動くぞ。

58 :54:2009/07/28(火) 01:22:32
>>56
すまん。こっちでは動いたんだが…。
できれば「動かない」ってだけじゃなくて、「どう」動かないのか教えてくれるか。
コンパイルでこんなエラーになるとか、実行するとこんなエラーが表示されるとか…。
それとも 56 のように実行するとURLを入力する状態にならないといけなかったのか。

59 :53:2009/07/28(火) 11:06:33
>>54>>55

完璧に動作したのを検証しました。
苦手な正規表現の勉強になりました。

先生ありがとうございます!!

60 :デフォルトの名無しさん:2009/07/28(火) 12:49:00
53はお騒がせだな。

61 : ◆MvRbZL6NeQ :2009/07/28(火) 21:14:12
【 課題 】このプログラムを実数が扱えるように書き換える.
ttp://rg550.hp.infoseek.co.jp/cgi-bin/joyful/img/768.zip
【 形態 】1. Javaアプリケーション(main()で開始)
【 GUI  】4. 制限なし
【 期限 】2009/08/02
【 Ver  】java version "1.5.0_18"
【 用語 】特になし
【 補足 】さっぱり分からないので,よろしくお願い致します.

62 :デフォルトの名無しさん:2009/07/29(水) 00:42:25
>>61
ToolInt を ToolDouble に名前を変えて、
内部の int value を double value に変えて、
Scanner.lexDigit() を小数点も取り込んで Double を返すようにして、
こまごまと int → double, Integer → Double にすりゃいいんじゃないか

63 : ◆MvRbZL6NeQ :2009/07/29(水) 09:32:30
>>62
実は両方使えるようにしたいんです、言葉が足らずに申し訳ありません。

64 :デフォルトの名無しさん:2009/07/29(水) 09:55:12
>>63
double に変えたって整数は使えるだろ
正確さが欲しいなら BigDecimal でも使っとけ

65 :デフォルトの名無しさん:2009/07/29(水) 10:49:04
>>61
BigDecimal化変更分のみ
ttp://rg550.hp.infoseek.co.jp/cgi-bin/joyful/img/769.zip

66 : ◆MvRbZL6NeQ :2009/07/29(水) 15:13:42
>>64-65
書き込みが遅れてすみません.
ありがとうございました!

67 :デフォルトの名無しさん:2009/07/29(水) 21:50:27
【 課題 】与えられたクラスを利用して,複数の図形を描くクラスを作成する
      ※詳しい内容や利用するプログラムは
      ttp://rg550.hp.infoseek.co.jp/cgi-bin/joyful/img/773.zip
      内のsetsumei.txtに書いてあります。
【 形態 】1. Javaアプリケーション(main()で開始)
【 期限 】7/30 15:00
【 Ver  】java version 1.6.0_14
【 補足 】一日中考えてて今も頑張ってますが、
      javaに馴染みがなくてさっぱり分かりません(;つД`)
      よろしくお願いします。

68 :デフォルトの名無しさん:2009/07/30(木) 00:48:21
>>67
とりあえず、TurtleRectangle.javaがコンパイル通んないんだけど?

69 :デフォルトの名無しさん:2009/07/30(木) 00:59:32
>>67
問題文の
> // 初期座標(100, 200), 速度 10, 長さ 15, 赤色
> remocons[3] = new TurtleHexagon(100, 200, 10, 15);
> remocons[3].setColor(java.awt.Color.BLACK);
の添え字は4の間違いだな。

70 :デフォルトの名無しさん:2009/07/30(木) 01:00:33
>>67
TurtleHexagon.javaが六角形のはずが五角形を描くし

71 :デフォルトの名無しさん:2009/07/30(木) 01:09:12
>>67
とりあえず、引数とループはこんな。
public static void drawFigures(TurtleRemoCon[]trcs ) {
while (true) { // 無限ループ
// 引数の配列を順番に操作し、
// step() メソッドを利用して図を書かせる
for(TurtleRemoCon t:trcs){
t.step();
}
}
}



72 :67:2009/07/30(木) 01:22:31
67です。
アップした課題ですが、先程自力で完成させることが出来ました。
レス下さったのにすみません&ありがとうございます!

そしてたった今動作確認していて、六角形と書いたにも関わらず、
なぜか五角形の動きをしているのに気付いて、茶を吹いていた所です。
アップ前に見直したはずなのにこの有様は酷い…orz
TurtleRectangle.javaは自分の方ではエラーは出なかったのですがなぜだろう…


73 :デフォルトの名無しさん:2009/07/30(木) 01:37:28
>>72
そいつだけ文字コードがEUCになってたぞ。
ついでに、Turtle.java の 97行目で
java.util.ConcurrentModificationException が発生するぞぼけ
と講師に言っとけ。
いまどき
private Vector turtles; // must be atomic.
なんて書いてちゃあな。

74 :デフォルトの名無しさん:2009/07/30(木) 23:48:55
【 課題 】じゃんけんとその結果を記録する
ttp://files.or.tp/up3399.zip
      
【 形態 】1. Javaアプリケーション(main()で開始)
【 期限 】8/5
【 Ver  】java version 1.6.0_14


75 :デフォルトの名無しさん:2009/07/31(金) 02:35:35
すいません、>>67の課題の中にある問題3なんですが、
どういうことを書けばいいんでしょうか。
例外処理の説明?


76 :デフォルトの名無しさん:2009/07/31(金) 02:47:34
【 課題 】タートルグラフィックスを描写するプログラムを作成する。
      http://rg550.hp.infoseek.co.jp/cgi-bin/joyful/img/775.zip
【 形態 】1. Javaアプリケーション(main()で開始)
【 期限 】8/2
【 Ver  】 java version 1.6.0_14
【 補足 】どう手を付けたらいいのか分からない状態です…
       実装するのはright left forwardの3つだけでいいみたいです。
       よろしくお願いします。

77 :デフォルトの名無しさん:2009/07/31(金) 04:05:50
>>76
とても大人が書いたとは思えない文章だな…

78 :デフォルトの名無しさん:2009/07/31(金) 17:24:16
>>76
http://rg550.hp.infoseek.co.jp/cgi-bin/joyful/img/776.java
リピートとか出来ないし、字下げとかも未対応

79 :デフォルトの名無しさん:2009/07/31(金) 22:18:53
>>78
Commandパターンは何処へ行った?

80 :デフォルトの名無しさん:2009/07/31(金) 23:50:07
>>79
特に要求されてないし

81 :デフォルトの名無しさん:2009/08/01(土) 02:36:32
>>76
http://rg550.hp.infoseek.co.jp/cgi-bin/joyful/img/777.java
リピートしてみた。

>>79
デザインパターンわかんない

82 :デフォルトの名無しさん:2009/08/01(土) 03:35:43
>>78 >>81
まぁ、学生が作ったっぽくはあるな

83 :デフォルトの名無しさん:2009/08/01(土) 03:47:10
まじめに作ろうかと思ったけど、学生がつくったっぽさがあった方がいいのか
そこは気付かなかった

84 :デフォルトの名無しさん:2009/08/01(土) 15:32:34
>>74お願いします。

85 :デフォルトの名無しさん:2009/08/01(土) 16:43:31
>>74
このjavadoc通りの構成にして、どう実行したらどう出力されればいいんだ?

86 :デフォルトの名無しさん:2009/08/01(土) 18:05:15
ここに出されてる宿題って成果物の仕様とかがあいまいでどこまでつくればいいのか
分からない

87 :デフォルトの名無しさん:2009/08/01(土) 18:34:33
>>86
javaで入門レベルの宿題が出来ないやつが質問してるんだから・・・

88 :デフォルトの名無しさん:2009/08/01(土) 20:00:24
>>74
こんなんでいいか
ttp://rg550.hp.infoseek.co.jp/cgi-bin/joyful/img/778.zip

89 :デフォルトの名無しさん:2009/08/02(日) 14:05:09
>>88
少し自分で変えることで完璧なものができました。
どうもありがとうございました。
できましたら、学校の講師に見つかってしまうかもしれないので、
うpろだのファイルを削除してもらえたら嬉しいです。
勝手ではありますが、お願いします
本当にありがとうございました。

90 :デフォルトの名無しさん:2009/08/02(日) 14:58:18
>>89
まだ時間はある。
「少し」と言わずあちこちをいじって動かしてみれば、それが「理解」することになるし、
プログラムが自分のモノになるぞ。

91 :デフォルトの名無しさん:2009/08/03(月) 00:39:26
問題と回答を各所に無断転載しました

92 :デフォルトの名無しさん:2009/08/03(月) 01:14:03
>>89
バレるのが怖いなら自分でやれよw

93 :デフォルトの名無しさん:2009/08/03(月) 03:20:44
【 課題 】
RacingCar.javaとRaceManager.javaから成るカーレースゲームを作れ
車1台で走るバージョンのソースと,複数台を競走させるバージョンのクラスファイルを配付
車1台バージョンを複数台競走バージョンに改造せよ
【 形態 】
1. Javaアプリケーション(main()で開始)
【 GUI  】
4. 制限なし
【 期限 】
提出期限:8月4日23:59まで
【 Ver  】
1.6.0_11
【 用語 】
【 補足 】
添付ファイル
http://rg550.hp.infoseek.co.jp/cgi-bin/joyful/img/780.zip
お願いします

94 :デフォルトの名無しさん:2009/08/03(月) 06:38:47
>>93
import java.io.*;

// レーシングカーによるレースの管理
public class RaceManager{
public static void main(String args[]) throws IOException{
int goal = args.length>0?Integer.parseInt(args[0]):72;
RacingCar.setGoal(goal); // ゴールまでの距離の設定
final int ksize = 9;
RacingCar[] rcs = new RacingCar[ksize]; // レーシングカーの生成
for(int i=0;i<ksize;i++){
rcs[i]=new RacingCar();
}
BufferedReader br =
new BufferedReader(new InputStreamReader(System.in));
boolean flag = true; // レース継続/終了フラグ
System.out.println("START!!");
while(flag){
br.readLine(); // キーボードからの入力を待つ
for(RacingCar rc:rcs){
flag = rc.run() & flag; // 車を走らせる。ゴールしたらfalseが返るので,flagもfalseになる rc.run() & flag
}

for(int i=0; i<goal; i++){
System.out.print("-");
} // 走行1回分の区切り線を表示
System.out.println();
}
System.out.println("FINISHED!!");
}
}
こんな?

95 :デフォルトの名無しさん:2009/08/03(月) 07:36:53
>>93
つjad

96 :デフォルトの名無しさん:2009/08/03(月) 19:55:15
>>94
ありがとうございます。間に合いました。
>>95
それは何ですか?
reflectorみたいなものですか?

97 :デフォルトの名無しさん:2009/08/04(火) 11:22:18
>>96
ggrks

98 :デフォルトの名無しさん:2009/08/06(木) 17:11:21
>>97
yfrks

99 :98:2009/08/06(木) 17:12:57
>>96のみす

100 :デフォルトの名無しさん:2009/08/07(金) 11:54:52
夏休み〜夏休みだよ〜

101 :デフォルトの名無しさん:2009/08/07(金) 20:55:45
夏休みの宿題の駆け込みとかあったらイヤだな

102 :デフォルトの名無しさん:2009/08/08(土) 15:34:04
jad知らないもんなんだな。もしかしたらeclipseも知らないのかね。
学生ってまぞいことやってるんだな。

103 :デフォルトの名無しさん:2009/08/08(土) 15:48:47
>>102
学生に割り当てられるショボイPCだと、最新のeclipseはきついかも知れない。

104 :デフォルトの名無しさん:2009/08/08(土) 16:19:51
>>102
昔Jadclipseってのがあったな。今もあるのか知らないけど。

>>103
eclipseはごちゃごちゃプラグイン入れなければ、
バージョン3の方が2の時より軽い気がするが、気のせいか。
10年程前か、始めて使いはじめた頃は正直遅くて使えなかったな。

105 :デフォルトの名無しさん:2009/08/08(土) 18:09:21
>>102
つーか、学生にclassファイル渡してこれと同じのを作れって言う
講師ともどもってことだなw

106 :デフォルトの名無しさん:2009/08/10(月) 16:59:12
わからないことが多すぎて
もう自分に向いてない気がしてきた。
問題も全部英語だし、その意味すらもあやふやだし
この科目の単位さえ取れればいいのに。

107 :デフォルトの名無しさん:2009/08/10(月) 17:52:03
>>106
講師に言え

108 :デフォルトの名無しさん:2009/08/10(月) 18:22:21
なんか、延々、オーストラリアかどこかの通信制大学の課題を投げてるやつがいたっけ。

109 :デフォルトの名無しさん:2009/08/11(火) 21:03:20
abstract class Animal {
private static int count;
public static void increment() { count++; }
public static int getCount() { return count; }
abstract void noise();
}
class Dog extends Animal {
public Dog() {};
public void noise() {
System.out.println("Woof");
increment();
}
}
class Cat extends Animal {
public Cat() {};
public void noise() {
System.out.println("Meow");
increment();
}
}
public class Counter{
public static void main(String[] args) {
Animal[] a = {new Dog(), new Cat(), new Cat(), new Dog(), new Dog()};
for (int i = 0; i < a.length; i++)
a[i].noise();
System.out.println(Dog.getCount() + " woofs and " + Cat.getCount() + " meow");
}
}
なんかおかしいところありますか?

110 :デフォルトの名無しさん:2009/08/11(火) 21:50:09
>>109
スレ違い。

111 :デフォルトの名無しさん:2009/08/11(火) 21:57:10
>>109
おかしくはないが、思っているようには動かんだろうな。

112 :デフォルトの名無しさん:2009/08/11(火) 23:29:19
暇だから弄るか

>>109
プログラムは書かれている通り動いたぞ
>Woof
>Meow
>Meow
>Woof
>Woof
>5 woofs and 5 meow

113 :デフォルトの名無しさん:2009/08/12(水) 00:33:54
>>110-112
ありがとうございました。
どう変えれば
3Woofs and 2Meowになるのでしょうか?

114 :デフォルトの名無しさん:2009/08/12(水) 00:46:07
>>113
スレ違いだといってるだろうが
>>1を見るか質問スレへ行くかしろ

115 :デフォルトの名無しさん:2009/08/12(水) 01:12:40
>>113
自分で考えろ。以上。

116 :デフォルトの名無しさん:2009/08/12(水) 17:41:03
【 課題 】3×3のマス目で行うマルバツゲームの作成。人対コンピュータで、難易度の選択が可能。
レベル1 だれでも勝てるようなレベル レベル2 人間と互角 レベル3 勝つことは不可能に近い
【 形態 】2. Applet
【 GUI  】4. 制限なし
【 期限 】8月22日 正午まで
【 Ver  】java version "1.6.0_13"


117 :デフォルトの名無しさん:2009/08/12(水) 17:55:27
>>116
ええと、人間なら勝敗はつかないゲームなんだけど・・・
http://ja.wikipedia.org/wiki/%E4%B8%89%E7%9B%AE%E4%B8%A6%E3%81%B9

118 :デフォルトの名無しさん:2009/08/12(水) 17:59:03
3x3のマルバツゲームなら最善手で引分けになる
そして最善手で進めるのは普通の人間でも十分可能
つまり人間と互角のレベルと
勝つことは不可能に近い=引き分けになってしまうレベルは同じくらいだろう
どんな人間を想定しているのか知らないがレベル1とレベル3だけでいいんでは?
人間と互角っていうのがあやふや過ぎる

119 :デフォルトの名無しさん:2009/08/12(水) 17:59:09
>>116
これ出した奴はただのアホだな。

120 :デフォルトの名無しさん:2009/08/12(水) 18:14:32
>>119
「○×ゲームつくれ、あと、工夫したら加点」くらいの課題だったのでは?

121 :デフォルトの名無しさん:2009/08/12(水) 19:08:38
>>120
出題者乙

とか言ってみたり

122 :デフォルトの名無しさん:2009/08/12(水) 22:57:27
>>116
レベル1:人間先手で、交互に置いて、最終的に多く置けたほうが勝ち
レベル2:特定のマスをランダムに決めておいて、そこに置いたほうが勝ち
レベル3:人間先手で、交互に置いて、最終的に少なく置いたほうが勝ち

123 :デフォルトの名無しさん:2009/08/12(水) 23:33:19
それ既にマルバツゲームじゃなくね?w

124 :デフォルトの名無しさん:2009/08/12(水) 23:36:26
そうか、仕様策定からはいるわけか。。。
うまいな

125 :デフォルトの名無しさん:2009/08/13(木) 21:09:07
引き分けは後手勝ちにすればいんじゃね?

126 :デフォルトの名無しさん:2009/08/13(木) 21:22:21
人間ってなんだろう?

127 :デフォルトの名無しさん:2009/08/14(金) 00:01:21
>>125
それで、レベル1は人間が後手、レベル2はランダムで後手が決まり、
レベル3はコンピュータが後手ということですね。

128 :デフォルトの名無しさん:2009/08/14(金) 00:39:21
期限まで時間がまだあるから難易度についての詳細か仕様変更の>>116のレス待ちだな

129 :デフォルトの名無しさん:2009/08/14(金) 00:59:09
マルバツゲームをするときは、相手に揃えさせたら勝ちって風にすることがある


130 :デフォルトの名無しさん:2009/08/14(金) 01:04:08
>>129
その場合でも先攻後攻ともに最善を尽くせば引き分けになる

131 :デフォルトの名無しさん:2009/08/14(金) 14:24:55
先手が真ん中取れば相手の反対側に打っていけば絶対そろわないしな

132 :デフォルトの名無しさん:2009/08/14(金) 14:30:55
引き分けたら乱数で決めちゃえ

133 :デフォルトの名無しさん:2009/08/15(土) 18:50:39
>>116

ttp://rg550.hp.infoseek.co.jp/cgi-bin/joyful/img/782.java

EASY:負けるように負けるようにと動く
HARD:最悪でも引き分けに持ち込む
NORMAL:基本的にHARDとして振舞うがたまにミスる(ミスるところが人並み)
というようにした
めんどくさいのでユーザは常に先手

改良の余地多し
特に メモリを喰いすぎる点がまずい
そこを半端に対策練って変に高度になってしまったとこもまずい

134 :デフォルトの名無しさん:2009/08/16(日) 01:15:35
【 課題 】JPEG圧縮データからBMP画像を生成するプログラム。
      ただし、ハフマン復号化、逆量子化、逆DCT変換の処理は自ら作成する。
【 形態 】1. Javaアプリケーション(main()で開始)
【 GUI  】4. 制限なし
【 期限 】8月いっぱい
【 Ver  】java version "1.6.0_13"


135 :134:2009/08/16(日) 01:35:35
御免!!これも頼みます。

これは一応なんとなくはできてるんだけど、自信がないので。

【 課題 】BMP画像からJPEG圧縮データ生成するプログラム。
      ただし、DCT変換、量子化、ハフマン符号化の処理は自ら作成する。
【 形態 】1. Javaアプリケーション(main()で開始)
【 GUI  】4. 制限なし
【 期限 】8月いっぱい
【 Ver  】java version "1.6.0_13"

136 :デフォルトの名無しさん:2009/08/16(日) 03:53:50
>>135
自ら作成するというのが死ぬほど難しいな。

137 :デフォルトの名無しさん:2009/08/16(日) 04:01:29
jpegに関する資料とかあればやってくれる人いるかも

138 :134:2009/08/16(日) 04:21:48
jpeg圧縮のプログラムは↓を参考にしてみた。ってかこれ一応できてるけど。

http://www.geocities.co.jp/SiliconValley-SanJose/8609/labo/jpegcoder.html

jpegのファイル構造は↓にある

http://hp.vector.co.jp/authors/VA032610/JPEGFormat/StructureOfJPEG.htm

あと↓には詳しいアルゴリズムが載ってる

http://www.marguerite.jp/Nihongo/Labo/Image/JPEG.html

一番苦労しそうなのが、jpegデータからハフマン復号するところかな!?

どうか、よろしく頼みます。

139 :デフォルトの名無しさん:2009/08/16(日) 09:55:07
既にハードチップに組み込まれてるほど普及してるのになんでまたjavaで再生産するの?
それよりjpegのアルゴリズムのコツをまとめたサイトを作るほうに時間使ったほうが断然いいんじゃないのか。

140 :デフォルトの名無しさん:2009/08/16(日) 13:43:44
Palm用にアセンブラで JPEG デコーダ作ったことあったな・・・
その情熱はもう無いわ

141 :デフォルトの名無しさん:2009/08/16(日) 17:09:04
【 課題 】ろだ2の783でうpしてあります。
【 形態 】1
【 GUI  】4
【 期限 】8月28日まで
事情があり授業にほとんど出れてないので、ほとんどわかりません。。
一応参考書は開いてみたのですが、自力でできる気がしないのでよろしくお願いします。

142 :デフォルトの名無しさん:2009/08/16(日) 17:18:26
>>141
授業出ないと学費払ってる親が泣くぞ.

143 :141:2009/08/16(日) 17:57:08
>>142
すみません、やむを得ない事情がありまして。。
よろしくお願いします。

144 :デフォルトの名無しさん:2009/08/16(日) 18:23:33
>>141 に限らずだが。
確かに>>1に添った書き方にはなってるがな。
もうちょっと、せめてどんなレベルなのか(じゃんけんなのか電卓なのかjpedCODECなのか程度)
一言でいいから書いといて貰えないか。
出来そうもないようなモノをわざわざダウンロードして中身みる手間をかけずにすむ。

145 :デフォルトの名無しさん:2009/08/16(日) 20:00:38
学校も高校・高専・専門・大学一般・大学理工に分けてくれると判り易いな

146 :デフォルトの名無しさん:2009/08/16(日) 20:57:08
たんなるテキストデータだからDLしなくてもブラウザで見れる
ttp://rg550.hp.infoseek.co.jp/cgi-bin/joyful/img/783.txt

147 :デフォルトの名無しさん:2009/08/17(月) 10:38:10
>>141
ttp://rg550.hp.infoseek.co.jp/cgi-bin/joyful/img/784.txt

148 :tor-proxy:2009/08/17(月) 17:51:51
自動焼人 ★ = 自動保守 ◆KAWORUKOFI = 自動保守#K9K?_D[L

名言集 その3
『いつもサボってばかりのキャップがウゼえ』

http://yutori7.2ch.net/test/read.cgi/news4vip/1249830540/ ID:PVAf+dux0 = 自動焼人 ★
> 71 :以下、名無しにかわりましてVIPがお送りします [sage] :2009/08/10(月) 00:58:57.28 ID:PVAf+dux0
> >>69
> 大変って言うか
> 毎日、報告されたのを見て、判断して、処理して、完了報告して、以下ループ。
> ちょっとでもミスすると、普段は作業もしてないキャップさんたちがさんざん文句言ってきて
> その言いわけを考えないと、キャップはく奪されたりアカウント凍結されたりするから
>
> 登録されてから一年以上経って、やっといいたいこと言えるようになってきたよ。



----------------------------------------------
この自動焼人 ★メールマガジンの配信停止をご希望される方は
http://qb5.2ch.net/test/read.cgi/sec2chd/1250169591/
にて自動焼人 ★までご連絡ください

149 :デフォルトの名無しさん:2009/08/24(月) 13:14:28
サーブレットプログラミングに関する宿題の質問は受け付けていませんか?


150 :デフォルトの名無しさん:2009/08/24(月) 13:16:57
>>149
【 形態 】3. Servlet

151 :デフォルトの名無しさん:2009/08/24(月) 20:06:06
>>149
>>1

152 :名無しさん@そうだ選挙に行こう:2009/08/30(日) 13:36:47
【 課題 】ttp://rg550.hp.infoseek.co.jp/cgi-bin/joyful/img/786.txt
【 形態 】3
【 GUI  】4
【 期限 】今日中

よろしくお願いします。


153 :名無しさん@そうだ選挙に行こう:2009/08/30(日) 17:03:27
プログラム中でどう使用されているかの説明を求められているわけでなく
クラスやメソッドの機能の説明をせよってことなんだから
APIドキュメントの記述をそのままコピーすればいいんじゃない?

154 :名無しさん@そうだ選挙に行こう:2009/08/30(日) 19:03:40
>>153
すみません、具体的に教えてもらってもいいですか?
ほんと知識が0に等しいもので・・・

155 :デフォルトの名無しさん:2009/08/31(月) 16:57:20
>>154
http://sdc.sun.co.jp/java/docs/j2ee/sdk_1.3/ja/techdocs/api/javax/servlet/package-summary.html

156 :デフォルトの名無しさん:2009/09/01(火) 14:12:33
>>155
??

157 :デフォルトの名無しさん:2009/09/01(火) 15:40:13
【 課題 】ttp://rg550.hp.infoseek.co.jp/cgi-bin/joyful/img/787.txt
【 形態 】コマンドプロンプト
【 GUI  】制限なし
【 期限 】9月2日16時まで (なるべく早く)
【 Ver  】1.6.0_12

行列や固有値を扱う数値計算の課題です。
締切まで時間がなく申し訳ありませんが、どうぞよろしくお願いします。

158 :157:2009/09/01(火) 15:50:39
↑一個ズレました。

【 課題 】ttp://rg550.hp.infoseek.co.jp/cgi-bin/joyful/img/788.txt

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

159 :デフォルトの名無しさん:2009/09/01(火) 16:21:15
>>157
参考リンクの逆反復法のソースを見たけど変なプログラムだな。
命名規則は置いておいても再描画のたびに数値計算を最初から繰り返すとか。
改造の大まかな方針としては、
paintの中のコードをそのままmainのコードとして置き換えて、
Drawで始まるメソッドやg.drawStringは数値計算ではなく出力するだけの部分なので、
drawStringについてはSystem.out.printlnでdrawStringの第一引数を与えるものに置き換える。
本来フレームのタイトルになるsetTitleについてもそのまま標準出力に出せばいい。
Drawで始まるメソッドについては与えられた行列やベクトルを表示するためのものなので、
例えばDrawMatVect(g, "*","=", 240, A, B, C, 4,4);なら、
A, B, Cという行列やベクトルの値をループを回して各要素ごとに標準出力に出力するようにする。
行列の要素を行単位で出力するコードくらいは書けるでしょ?

160 :デフォルトの名無しさん:2009/09/01(火) 16:29:36
>>159
ありがとうございます。
自身はないですが、やってみます。

他にも回答を下さる方がいましたら、どうぞよろしくお願いします。

161 :デフォルトの名無しさん:2009/09/01(火) 16:30:06
忘れてた。
paintの中身をmainに持ってくる場合、
MultMV等のインスタンスメソッドはクラスメソッドにしておかないと呼べなくなる。
メソッドにstaticを付けるのさえ面倒なら、
mainの中身をnew InvPower().calculate();とでもして、
InvPowerのコンストラクタを消して、
paint(Graphics g)をcalculate()と名前を変えてもいい。
extends Frameも要らない。

162 :デフォルトの名無しさん:2009/09/01(火) 17:09:57
>>158
ttp://rg550.hp.infoseek.co.jp/cgi-bin/joyful/img/789.java
>>159の方針に従って最小限の改変をした
表示がgdgdなのはそちらで直してくれ
表示の行と列の向きがこれで合ってるかどうか確認するのも面倒なんで
もし逆なら行と列を入れ替えて表示するよう直してくれ

163 :162:2009/09/01(火) 17:27:02
課題そのものはその先があったのか
まあ出力の改変方法が分からなくて改変し切れなかったということみたいだから参考程度にしてくれ

164 :157:2009/09/01(火) 20:13:08
皆さんありがとうございますm(_ _)m

参考にはなりましたが、>>162はLU分解を用いないものでした;

全部で多くても100行程、メソッド数も少なく済ませられるとのことなので、
課題>>158を引き続きお願いします。

165 :デフォルトの名無しさん:2009/09/02(水) 11:44:26
【 課題 】20億個の数字が入っているファイル(約16GB)をソートし、結果をファイルに出力せよ
      数字は32bit(Float)のバイナリフォーマットで記録されている
      基準となる実行時間は15分(4 AMD Opteron 848 processors and 8 GB of RAM上)
      
【 形態 】コマンドプロンプト
【 期限 】9/5 15:00まで
【 Ver  】java version 1.6.0_14
【 補足 】よろしくお願いします

166 :デフォルトの名無しさん:2009/09/02(水) 12:36:51
嫌です

167 :デフォルトの名無しさん:2009/09/02(水) 13:02:34
>>165
動作確認する気にもならんし。遅くても知らん。つか絶対早くは無い。
import java.io.*;
import java.util.Arrays;
public class Floats {
public static void main(String[] args) throws IOException {
float[] datas = new float[2000000000];
DataInputStream dis = new DataInputStream(new BufferedInputStream(new FileInputStream(args[0])));
try {
for(int i=0; i<datas.length; i++) datas[i] = dis.readFloat();
} finally {
dis.close();
}
Arrays.sort(datas);
DataOutputStream dos = new DataOutputStream(new BufferedOutputStream(new FileOutputStream(args[1])));
try {
for(int i=0; i<datas.length; i++) dos.writeFloat(datas[i]);
} finally {
dos.close();
}}}

168 :デフォルトの名無しさん:2009/09/02(水) 13:34:44
【 課題 】以下のようなコンソールアプリケーションを作成しなさい。
・画像などのバイナリファイルをコピーする
・プログラムの第1引数でコピー元のファイル名を、第2引数でコピー先のファイル名を指定する
・コピーの際に、必ずバッファリングを行う

【 形態 】1. Javaアプリケーション(main()で開始)/
【 期限 】本日
【 Ver  】1.6.0_13

よろしくお願いします

169 :デフォルトの名無しさん:2009/09/02(水) 13:36:11
>>167
回答ありがとうございます
でも、ファイルが16GBの大きさなので、全部一度に読み込むとメモリが足りません
なんとか、メモリの消費を抑え、15分程度でソートを完了する方法はないでしょうか?
Merge sortで、2個のファイルに分割、その2つのファイルを入力とし、
Mergeしてファイルに書き込む(繰り返し)
というようなことを考えたのですが、いまいちよくわかりません。

170 :デフォルトの名無しさん:2009/09/02(水) 14:11:15
【 課題 】以下のようなコンソールアプリケーションを作成しなさい。

・HTMLなどのテキストファイルをウィンドウに表示する
・プログラムの第1引数で指定したファイルを、ウィンドウのJTextAreaで表示する
・読み込みの際、必ずバッファリングを行う


以下のようなコンソールアプリケーションを作成しなさい。

・HTMLなどのテキストファイルを、別の文字コードに変換してコピーする
・コピー元のファイル名と文字コード、およびコピー先のファイル名と文字コードは、
 プログラムの引数ではなく通話的にコンソールから入力する。
・ファイル名や文字コードの指定ミスがあった場合、エラー内容を表示して再入力を促す。
・コピーの際、必ずバッファリングを行う。

【 形態 】1. Javaアプリケーション(main()で開始)/
【 期限 】できれば本日
【 Ver  】1.6.0_13

追加でよろしくお願いします。

171 :デフォルトの名無しさん:2009/09/02(水) 14:12:14
そうか、自分でやるのか〜。
先生うれしいぞ〜

172 :デフォルトの名無しさん:2009/09/02(水) 22:24:24
>>169
その考えで正解だと思うが、何がいまいち分からんの?

173 :デフォルトの名無しさん:2009/09/02(水) 22:52:05
>165
4バイトデータが20億個入った16GBファイルの残り8GB以上は何が入ってるの?
頭から20億個データを読んであとは無視してソート後の出力ファイルは半分のサイズになっていいということ?

174 :165:2009/09/02(水) 23:10:18
>>173
本当だ、おかしいですね、混乱させてすみません
4バイトデータが16GB分あるということです だから出力ファイルも同じサイズになります
数字の数は気にしないでください

>>172
何がわからないのかさえもよくわからないというか…
すみません、自分の力不足です

スピードを求めるなら、Merge sortの前に、メモリに読み込める分を分割して読み込んで
Quick sortした方がいいのでしょうか?

175 :デフォルトの名無しさん:2009/09/03(木) 00:08:35
>>174
クイックソートは意味ない。

単純に
1.ある範囲ごとに記録するファイルを変更する
2.各々のファイルに関して
 2.1そのデータを丸ごとメモリに読めるなら、読んでクイックソート。
 2.2丸ごと読めないならそのファイルに関して1に戻る。
3.全てのファイルでソートが終わったら
 ソート済みのファイルを、記録範囲が小さい順番に結合する。

こんな感じじゃない?

速度を気にするなら、
 1で元ファイルのデータ読み込みで1度に読む量を増やす。
  (当然メモリ使用量は増える)
 2.1で丸ごと読める上限を上げる。
位じゃないかな?

176 :172:2009/09/03(木) 00:19:04
>>174
>>175に追記

マルチプロセッサなら、
2の処理を複数のスレッドに分配すれば、処理時間は短くなるかも知れん。

あと、メモリ8GB積んでいるってことは64bitOSなんだよな?
遅くていいなら>>167は動くはず。
64bitプロセスならデータがメモリに載らないことはない。


177 :165:2009/09/03(木) 01:09:18
>>176
すみません、あまり理解できていません…

3 5 4 1 9 8 7 2 15 を、まず一部分ごとにQuick sort して、
3 4 5 | 1 8 9 | 2 7 15 というようにして、このファイルを先頭から交互に2つのファイルに記録し、
その二つのファイルをmergeする(繰り返し)という意味だったのですが、
やはり、はじめのQuick sortは意味がないでしょうか?

学校のサーバで、OSはRedhat Enterprise Linux 5.3です。

178 :デフォルトの名無しさん:2009/09/03(木) 06:40:43
もし>>174の通りfloatデータが16GB分あるのならデータ個数はintの範囲を超えるので、
たとえメモリが潤沢にあったとしてもデータ全体を収めるfloatの配列を作ることはできない。
また物理メモリサイズと同程度の大きさを確保してデータを収めるために使えば、
JVMやOSその他で使っているメモリが追いやられてしまうので速度的にとても不利になる。
もう少し小さめの例えば4GBくらいのfloat配列を確保して、
(1) 4GB分データをfloat配列に読み込む。
(2) float配列をソートする。クイックソートを使うArrays#sortでもいいし、他の好みのソートでもいいと思う。
(3) ソートされた配列の内容を一時ファイルに書き出す。
(4) (1)-(3)を4回繰り返して4つの一時ファイルを作成する。
ここまでが部分ごとにソートされたデータを作成する段階で、
(5) 1番目と2番目、3番目と4番目に作成した一時ファイルをそれぞれマージして新たなファイルを2個作成する。
(6) (5)で作成した2個のファイルをマージして全体がソートされた出力ファイルとする。
のように2つのファイルの先頭から小さい方(大きい方)を取り出して新しいファイルに出力することを繰り返す。
もちろんファイルの読み書きでは1個ずつとかでなくバッファを利用した読み書きにする。
FileChannelを利用し、バッファも大きいサイズのダイレクトバッファを予め用意して使い回せば、
ファイルの読み書きは少しは速くなるかもしれない。
ディスクの空き容量がそれなりに必要(上の例なら元データ+ソート済みデータ+2段階の一時ファイルで64GB分)なので、
空き容量次第で一時ファイルはマージ終了後にすぐに消さないといけないかもしれない。
それからJVMの最大ヒープサイズの初期設定は物理メモリの1/4か1GBの小さい方なので-Xmxで必要分を指定してやること。
初期ヒープサイズもついでに最初から大きく取っておいてもいいかも。

179 :デフォルトの名無しさん:2009/09/03(木) 06:53:49
> たとえメモリが潤沢にあったとしても
は余計でした。
メモリ容量のこととJavaの文法的に作れないこととは別の話なので。

180 :デフォルトの名無しさん:2009/09/03(木) 08:36:57
>>177
ttp://rg550.hp.infoseek.co.jp/cgi-bin/joyful/img/790.java
効率とかエラー処理とか諸々を全く考えずに大まかな流れだけを実装するとこんな感じに。
データ数を10000個(CHUNK_SIZE=2500)にしてソートされたっぽいファイルができたことだけは確かめた。

181 :165:2009/09/03(木) 14:20:19
>>180
何から何までありがとうございます
これを参考にして、頑張ってみます

182 :デフォルトの名無しさん:2009/09/04(金) 06:15:27
>>177
もう見てないかも知れんが。

3 5 4 1 9 8 7 2 15 を例にとると、
 ・データの範囲を0〜19とする。
 ・データは3つまでしか読めない。
という仮定で、簡略化のため、テンポラリファイルにも3つの値しか書きこまないとする。
テンポラリファイルは7つできる。それぞれ0.dat〜6.datとする。

最初に、3つ読み込む
 メモリには「3,4,5」がある。
 これを0.dat〜6.datに振り分ける。
 この場合、1.datに3,4,5が書き込まれ、他のテンポラリファイルには何のデータもない。
次にもう3つ読む。
 メモリには「1,9,8」がある。
 これを振り分けると、1→0.dat、9→3.dat、8→2.datとなる。
最後に3つ読み振り分ける。7→2.dat、2→0.dat、15→5.datとなる。
この時点で振り分け終わり。各テンポラリファイルには、
 0.dat:「2」、1.dat:「3,4,5」、2.dat:「8,7」、3.dat:「9」、4.dat:「」、5.dat:「」、6.dat:「15」
というデータが入っている。

次に各テンポラリファイルごとに読み込みなおして、クイックソート→書き戻しを行う。
これでテンポラリファイルの内容は
 0.dat:「2」、1.dat:「3,4,5」、2.dat:「7,8」、3.dat:「9」、4.dat:「」、5.dat:「」、6.dat:「15」
となる。これを連結すれば
 「2,3,4,5,7,8,9,15」
となって全体のソートが完了する。

こんな感じ。


183 :デフォルトの名無しさん:2009/09/04(金) 07:35:40
>>182
float範囲内にどう分布しているか分からないのに振り分けてどうするんだよ。
ヘタしたら1ファイルに全部入るだろ。

184 :182:2009/09/04(金) 21:45:19
>>183
むしろ振り分けなくてどうやるつもりなんだ?

1ファイルに入ることは何の問題もないだろ。
そのファイルを再分割するだけじゃん。

185 :デフォルトの名無しさん:2009/09/05(土) 13:04:42
>>184
狭い範囲に集中してた場合、時間が掛からんか?

186 :182:2009/09/05(土) 14:54:44
>>185
何を問題視しているかが良く分からん。
一体何と比較して時間がかかることを懸念しているんだ?
再帰が1段増えるだけじゃん。
再帰の深さもlogNのオーダだよな?

187 :デフォルトの名無しさん:2009/09/05(土) 17:28:29
>>186

DataInputStreamがデータ一周なめるだけで15分の大半を消費しね?
ファイル処理の再帰が不用意に一段深くなるだけでアウトになりかねない。(時間制限的に)

バイナリレベルでファイル分割->ソート(一発メモリ上ソート)->マージ
上の流れならいけると思う。
DataInputStreamを最低2周させる必要がある。
ファイル分割以降の処理をCPUコア数で並行処理できても、
最後のマージを工夫しないと結構きついかな。

188 :182:2009/09/05(土) 18:57:22
>>187
>バイナリレベルでファイル分割->ソート(一発メモリ上ソート)->マージ

その場合マージの過程が大変じゃね?
と思って最初の分割に一工夫入れてマージ作業を楽にしようと考えたんだけど。

>>187のやり方だと、マージ処理で次に結果ファイルに書き込む値を決めるときに
ファイルから値の読み込み→ソートという処理を行う必要があるよね?
メモリ上にN個のデータの最小値を決定して、結果ファイルに書き込んで
次に書き込む値を決定するときに、ファイル上のデータ最小の可能性もある訳で、
メモリ上のN-1個のデータで最小値を決めるわけには行かないよね?
俺的にはこの部分が非常にヤバイ(データの偏り関係に関係なく必ずI/O数が爆発する)と
思うんだけど、その辺は大丈夫なの?


189 :182:2009/09/05(土) 19:11:47
追記。

俺のやり方が突っ込みまくられてるのは、I/Oのデータ量が
馬鹿にならなくなるからだと思う。

んで、確認しておきたいんだけど、このテの問題って
 ・I/Oのデータ量を抑えること
 ・I/Oの要求数を抑えること
のどっちが大切なの?

俺は今まで後者だと思っていたんだけど、この認識が
間違い?



190 :デフォルトの名無しさん:2009/09/05(土) 19:22:50
>>186
どう再分割するかが問題
狭い範囲にデータが集中しているようなものの場合その再分割を
たとえば値が集中した区画を単純に等分していくなら再帰が一段増える程度では済まんだろ
対象のデータ量の規模が大きいから1段増加するだけでもかなりのロスになる
何かlogNよりも大きい方法と比べているわけでないからlogNのオーダーであることは意味を持たない
結局データの分布を調べないといけないんだが
一度にfloatがとりうる各値の度数を調べるには無理がきかない体だ
確かに分布さえ分かっているのなら分布数え上げソートできなくもないが
何段になるか分からない再帰を行うよりも
オンメモリの範囲で分割して回数の分かっているマージを行う>>187の方が現実的

191 :デフォルトの名無しさん:2009/09/05(土) 19:29:06
>>188
マージソートについて何か勘違いしてるんじゃないか?
マージ前の各部分については既にソート済みなんだから、
マージは各部分の先頭を見てどちらかを選択していくだけで済む。

192 :182:2009/09/05(土) 20:10:36
>>190

理解できた。ありがと。

>>191
勘違いしてた。
いっぺんにマージすることばっかり考えてて、ボトムアップ的に
マージすることが頭になかったわ。

確かに>>187が普通のやり方だね。

193 :デフォルトの名無しさん:2009/09/05(土) 21:01:11
floatの上位4ビットを使ってテンポラリファイル0〜15に書き出す。
テンポラリファイル8〜15、0〜7の順にバケットソート→結果ファイルに出力。

これで良い気がしてきた。

194 :193:2009/09/05(土) 21:13:17
NaNの扱いをどうにかしないとだめか

195 :デフォルトの名無しさん:2009/09/06(日) 01:50:59
もちっと期限に余裕があったら182のも書けば165が実際に試してくれたかもな。

196 :デフォルトの名無しさん:2009/09/08(火) 04:00:11
【 課題 】
1.
キーボードから次々に非負整数の入力を受け付け、それらの中での正の最小値を表示するプログラムを作成せよ。
データ入力の終わりは負の整数の入力とする。
2.
キーボードから次々に非負整数の入力を受け付け、それらの中での(正の)偶数、奇数、ゼロが
それぞれ何個ずつであったのかを*の数で表示するプログラムを作成せよ。
データ入力の終わりは負の整数の入力とする。

【 形態 】1. Javaアプリケーション(main()で開始   ??
【 GUI  】?
【 期限 】今から2時間後まで
【 Ver  】?
【 補足 】初歩のプログラムの授業の課題で、私自身もさっぱりの状態です・・・
      できるだけ基本的なプログラムでお願いします。


197 :196:2009/09/08(火) 05:45:57
期限を1時間伸ばします
どなたかよろしくお願いいたします


198 :デフォルトの名無しさん:2009/09/08(火) 06:10:51
>>196
課題1
public class MainClass {
public static void main(String[] args) {
java.util.Scanner sc = new java.util.Scanner(System.in);
System.out.print("整数を入力してね(負数で終了):");
int input = sc.nextInt();
int min = input;
while(0<=input){
if(input<min){
min=input;
}
System.out.print("整数を入力してね(負数で終了):");
input = sc.nextInt();
};
System.out.print("最小の値は ");
if(0<=min){
System.out.println(min);
}else{
System.out.println("定まりませんでした ");

}
}

}


199 :デフォルトの名無しさん:2009/09/08(火) 06:11:10
>>196
課題2
public class MainClass {
public static void main(String[] args) {
java.util.Scanner sc = new java.util.Scanner(System.in);
int zero=0,even=0,odd=0;
while(true){
System.out.print("整数を入力してね(負数で終了):");
int input = sc.nextInt();
if(0<=input){
if(input==0){
zero++;
}else if(input%2==0){
even++;
}else{
odd++;
}
}else{
break;
}
};
System.out.println("ゼロの個数:"+zero);
System.out.println("偶数の個数:"+even);
System.out.println("奇数の個数:"+odd);
}

}


200 :196:2009/09/08(火) 06:47:36
>>198-199
ありがとうございます。非常に助かりました。


201 :デフォルトの名無しさん:2009/09/09(水) 02:15:25
課題2の結果は、「*」の繰り返しで表示するんじゃないの?

微妙に仕様と違う動きなのが
初心者っぽさの演出にはなっているが…。

202 :デフォルトの名無しさん:2009/09/09(水) 02:24:56
非常に付きで助かったんだからいいんじゃないの?
依頼者は動作確認どころか課題そのものを読んでもいないのかもしれないけど

203 :デフォルトの名無しさん:2009/09/09(水) 03:10:50
>>201
ああ、そうだっけ。
まあ、そのくらいでき…できるならここに丸投げしてないな。

204 :デフォルトの名無しさん:2009/09/10(木) 20:54:12
【 課題 】ttp://rg550.hp.infoseek.co.jp/cgi-bin/joyful/img/791.java
【 形態 】1. Javaアプリケーション(main()で開始?
【 GUI  】?
【 期限 】9月11日正午まで
【 Ver  】?
【 補足 】始めたばかりで不明な所が多く、申し訳ございません。
      よろしくお願いします。

205 :デフォルトの名無しさん:2009/09/10(木) 21:10:36
>>204
Webページの表示はフレーム上、ブラウザ上?

206 :205:2009/09/10(木) 21:15:02
>>204
フレーム上でお願いします。

207 :205:2009/09/10(木) 21:16:04
名前と安価が逆でしたorz

208 :デフォルトの名無しさん:2009/09/10(木) 21:21:45
>>206
フレーム上にページを表示するとなると表示はどのレベルまでサポートするの?

209 :204:2009/09/10(木) 21:30:15
>>208
普段ブラウザで見ているのと同じ様に表示されるようにしたいのです
上手く答えられなくてすいません

210 :デフォルトの名無しさん:2009/09/10(木) 22:19:47
>>209
JEditorPaneレベルならともかく、
明日の昼までにフルブラウザは厳しいな。
っていうか、俺には出来ない。

偉い人、よろしく。

211 :204:2009/09/10(木) 22:45:39
うはっ、フルプラウザとまではいかなくても
ただWebページが表示されればいいなと思っていましたが、難しいですかね。

212 :デフォルトの名無しさん:2009/09/11(金) 21:26:32
>>204
一応、RESETボタンを押すとimg2の画像をimg1に戻すようにしたソース↓
ttp://rg550.hp.infoseek.co.jp/cgi-bin/joyful/img/792.java

画像クリックのやつはわからんかった


213 :デフォルトの名無しさん:2009/09/11(金) 21:28:27
よく見たら期限過ぎてた

214 :デフォルトの名無しさん:2009/09/11(金) 23:11:27
【 課題 】http://matomesite.hp.infoseek.co.jp/cgi-bin/src/up0550.txt
【 形態 】1. Javaアプリケーション(main()で開始)/
【 期限 】9月13日
【 Ver  】1.6.0_11

丸投げで申し訳ないのですが、どなたかお願いします

215 :デフォルトの名無しさん:2009/09/12(土) 00:37:38
訂正
語群 11.k=k+1 です

丸投げといったのですが、所々わかったところがあるので追記です

アは5.Math.abs((x[k]-x[k-1])/x[k-1])<eps か 9.Math.abs(f(x[k]))<eps
イは11.k=k+1 か 13.iteration = k
ウは3..breakで間違いないと思います
エ、オはわかりません

216 :デフォルトの名無しさん:2009/09/12(土) 01:17:04
>>214
ア=5
イ=13
ウ=3
エ=4
オ=12

と思ったけど、12の括弧が閉じてない。

217 :デフォルトの名無しさん:2009/09/12(土) 01:55:18
>>216
すみません、12の括弧は書き忘れました
ありがとうございました

218 :デフォルトの名無しさん:2009/09/12(土) 11:08:51
ここに出てる課題を解けば勉強になると思ってる時期がありました

219 :デフォルトの名無しさん:2009/09/12(土) 18:33:53
次の数列の和を小数第11を四捨五入して第10位まで求めよ
またそれぞれについて、どちらの方が誤差が少なくなるか
あるいは同じ値になるか?理由もつけて答えよ

N=10 20 30 に対して
(1)納n=1,N](1/(2^n)
(2)納n=N,1](1/(2^n)

【 形態 】1. Javaアプリケーション(main()で開始)
【 期限 】7月14日 
【 Ver  】1.6.0_11

前スレで教えていただいたプログラムの数値部分だけをいじったのですが
2^nをどのように表記すればいいのかがわからず解がうまくでません

http://rg550.hp.infoseek.co.jp/cgi-bin/joyful/img/793.txt

(Math.pow(2,k)の所がおかしいのだと思うのですが・・・初歩的なことですみません

よろしくお願いします

220 :デフォルトの名無しさん:2009/09/12(土) 19:21:02
>>218
まあ、普段ならしないことをやるチャンスはある。殆どないけど。

221 :デフォルトの名無しさん:2009/09/12(土) 19:31:54
>>219
いくつになれば、正しいんだ?

222 :デフォルトの名無しさん:2009/09/12(土) 19:58:25
>>221
答えはわかりませんが、張ったソースは数列の和ではなく誤差を調べるものでした
言葉足らずですみません

>>次の数列の和を小数第11を四捨五入して第10位まで求めよ
の部分は無視してもらって構いません

N=10、20、30の全ての場合で誤差がでず
まったく同じ数値になってしまったのでおかしいなと思って質問しました


223 :デフォルトの名無しさん:2009/09/12(土) 21:30:26
>>222
足す順序で誤差が出るってこと?

どうなると誤差を調べたことになるの?

224 :デフォルトの名無しさん:2009/09/12(土) 22:14:51
>>223
そういうことです
例えば前スレの

N=10 100 1000 10000に対して
(1)納k=1,N](1/(k^2)
(2)納k=N,1](1/(k^2)

この場合の結果が
http://www.dotup.org/uploda/www.dotup.org134514.jpg
で、N=10以外で数値に誤差がでました
計算誤差(丸め誤差や打ち切り誤差?)が起こってるんだと思うのですが

225 :デフォルトの名無しさん:2009/09/12(土) 22:32:19
>>219
Math.powが怪しいとか適当なことを言っていないできちんと誤差評価した方が建設的だ
doubleは52ビットの仮数部を持っている
そして1/2のべき乗を2^-1から始めて大きい順か2^-30から始めて小さい順に加算するということは
その総和であるsumでは加算するたびに仮数部のビットを1個ずつ立てていくことになる
つまり2進数表記で
0.1 + 0.01 + 0.001 + ...
というように足した回数桁分の1が並ぶ数が総和になる
doubleでは仮数部の最も大きいビットは1であると決められて省略されているから
この数を表すのに必要な仮数部は29ビットになる
どちらの順から加算を始めたとしても52ビットある仮数部で十分に総和も加算する数自体も正確に表せる
元々正確に表せている数値を10進小数第10位までの表記になっても同じになるのは当然

1/2のべき乗の場合はまあ大丈夫だけど四捨五入は10進数の数値操作なのでdoubleの値の評価に使うときは注意

226 :デフォルトの名無しさん:2009/09/12(土) 22:34:19
> この数を表すのに必要な仮数部は29ビットになる
N=30の場合ね

227 :デフォルトの名無しさん:2009/09/12(土) 22:49:37
>>225
ありがとうございます
誤差は起こり得ないということですね
試しに52ビットを超える場合(N=54以上)でやってみたところ、すべて1.0になりました
これの意味することが、まだいまいち把握できてないのですが
あとは参考書なり読んでみます

お騒がせしてしまって、すみませんでした

228 :デフォルトの名無しさん:2009/09/12(土) 23:11:03
>>227
ついでなので
その場合足す数はdoubleで正しく表せるが足される総和の方が正確に表せる範囲を超える
大きい順に足していった場合N=53で総和の仮数部が一杯になり次の2^-54を足した段階で総和は正確に表せず1となってしまう
次の2^-55以降を足してもそれは1のイプシロンつまり機械イプシロン以下の大きさしかないから総和は変化しない
小さい順に足していった場合N=8で総和の仮数部が一杯になり次の2^-7を足した段階で総和は正確に表せず2^-6となってしまう
あとは2^-6、2^-5と足していけば総和は2^-5、2^-4と増えてゆき最後は1になる

229 :デフォルトの名無しさん:2009/09/12(土) 23:30:59
>>228
なるほど
まだなんとなくですが、イメージは掴めました
わざわざ詳しい説明をしてくださって、ありがとうございました

230 :デフォルトの名無しさん:2009/09/12(土) 23:31:30
またNを書き忘れたorz
>>228の話はN=60の場合ね
要は有限桁しか表せない浮動小数点では
1 * 2^-m = 0.1111111....111 * 2^-m
とみなされてしまう桁長が右辺の数値にはあるということ
mは大きい順なら0、小さい順なら足し始めた数に応じる

231 :デフォルトの名無しさん:2009/09/20(日) 16:20:59
【 課題 】以下のようなサーバプログラムCountServer.javaとクライアントプログラム
CountClient.javaを作成してください。

      [条件]
      ・サーバは、クライアントから文字列を受信し、その文字数をカウントして
       結果をクライアントに返す。
      ・クライアントプログラムを実行時に、コマンドラインから、サーバホスト名
       java CountClient サーバホスト名 "文字列"
      ・クライアントは、サーバからの結果を受け取り、画面に表示する。
      ・サーバは、ポート番号 4321 で接続要求を受け付けるようにする。

サーバプログラムの実行
>java CountServer

クライアントプログラムの実行と実行結果
>java CountClient host1 "Java Programming"
16  

【 形態 】Javaアプリケーション(main()で開始) 
【 GUI  】制限なし
【 期限 】9月22日午後5時までお願いします。
【 Ver  】1.6.0_11
【 用語 】
【 補足 】丸投げです。お願いします。


232 :デフォルトの名無しさん:2009/09/20(日) 18:15:50
>>231
http://rg550.hp.infoseek.co.jp/cgi-bin/joyful/img/794.zip

233 :デフォルトの名無しさん:2009/09/20(日) 19:39:06
>>232
CountServer.javaでは4行目で
「インポートされた java.io.DataOutputStream は 1 度も使用されていません」
とエラーが出て、
countClient.javaでは18行目で
「フィールド CountClient.inDataStream はローカルで読み取られません」
とエラーが出ました。


CountServer.javaの方は単純に4行目を削除すればよいのでしょうか?


234 :デフォルトの名無しさん:2009/09/20(日) 19:50:46
>>233
それ、使ってないね。決して良いよ。
16:private DataInputStream inDataStream;
33:inDataStream = new DataInputStream(inStream);


235 :デフォルトの名無しさん:2009/09/20(日) 20:50:18
決しちゃっていいのか

236 :デフォルトの名無しさん:2009/09/20(日) 20:58:00
おう、キッチリと決しちゃってくれ。悔いが残らぬように。

237 :デフォルトの名無しさん:2009/09/20(日) 21:02:04
エラーと警告の区別がついていないのはいいのか

238 :デフォルトの名無しさん:2009/09/20(日) 21:08:39
学ぶ事を放棄して来たのだから良いんじゃないか。

239 :232:2009/09/20(日) 23:06:20
>>231
>>232のコードのリファクタ版。
今回はワーニングでないと思うが、なんかあったらレスくれ。
http://rg550.hp.infoseek.co.jp/cgi-bin/joyful/img/795.zip

240 :デフォルトの名無しさん:2009/09/21(月) 05:43:28
嫌だ

241 :デフォルトの名無しさん:2009/09/21(月) 09:34:50
じゃあ好きにしろ

242 :デフォルトの名無しさん:2009/09/21(月) 09:57:14
(´・ω・`)やんのかお?

243 :232:2009/09/21(月) 17:09:28
>>231
暇なのでまたちょっとリファクタ

変更点:
最大文字数制限に対応
複数クライアント対応
スレッドプール変更
http://rg550.hp.infoseek.co.jp/cgi-bin/joyful/img/796.zip

244 :デフォルトの名無しさん:2009/09/21(月) 17:20:33
もういいって・・・

245 :デフォルトの名無しさん:2009/09/22(火) 13:40:20
【 課題 】1.ユニークな9桁の数値100万個を記述した乱数ファイルを作成する
      ※数値はランダムに生成し作成された順に記述される
      ※9桁目はゼロであってはならない→×000000001 ○100000000
      ※ひとつの数値が1行に記述され改行で区切られる
      ※乱数ファイルがユニークに作成されている根拠をコメントに書け
      
      2.9桁の数値を入力し、その数値の乱数ファイル上の行番号と
      昇順でソートした際の順序番号で表示するアプリを作成する
      ※乱数ファイルは一度しかパースしてはならない
      ※ライブラリのデータ構造を使用してはならない(プリミティブタイプ、配列は可)
      ※ブルートフォースアルゴリズムを使用してはならない

      3.エクストラポイント
      ※検索手順をGUI上で可視化する(制限なし)

【 形態 】1. Javaアプリケーション(main()で開始)
【 GUI  】2. Swing
【 期限 】9月24日18:00まで
【 Ver  】1.6.0_15
【 用語 】
【 補足 】丸投げです。宜しくお願いします。




246 :デフォルトの名無しさん:2009/09/23(水) 01:18:41
>>245
>※ブルートフォースアルゴリズムを使用してはならない
制約の意味がわからない

247 :デフォルトの名無しさん:2009/09/23(水) 01:21:44
>>246
総当たりの事です。要はO(n)のアルゴリズムではダメ。

248 :デフォルトの名無しさん:2009/09/23(水) 01:49:50
>>247
未ソートのデータから検索なんて、他に方法はないのでは?

249 :デフォルトの名無しさん:2009/09/23(水) 09:04:13
>>248
ありませんよ

250 :デフォルトの名無しさん:2009/09/23(水) 11:47:56
ソートが出来ない訳ではありませんが、パース出来るのは一度だけです。

251 :245:2009/09/23(水) 14:30:49
誰か分かる方いらっしゃらないでしょうか。

252 :デフォルトの名無しさん:2009/09/23(水) 23:25:48
>>251
いや、未ソートのデータの検索に総当り以外のアルゴリズムなんて無いだろ。

253 :デフォルトの名無しさん:2009/09/23(水) 23:53:31
>>252
一度パースができるとあるので、そこでソートしながら自前のデータ構造にいれれば良いんじゃね。
で、出来上がったデータ構造上をO(log)位のアルゴリズムで検索すれば
ソートオーダの位置と未ソート時の位置を取得できるんじゃないのかな?俺には作れないけど。

254 :デフォルトの名無しさん:2009/09/24(木) 01:18:09
>>253
それでいいのならソート自体が目的ではないのでO(n)のメモリが必要なデータ構造を用意する必要はない。
ファイルをスキャンしながら検索対象以下の数値の個数をカウントして、
最後まで読み終わった時点で検索対象が現れていたら、
現れた行番号が「乱数ファイル上の行番号」であり、
検索対象以下の数値の個数が「昇順でソートした際の順序番号」になるので、
行番号と個数を覚えておくだけのO(1)のメモリで済むしファイルを読んだ後の探索もいらない。
でもこれって結局ファイル上ではあるもののO(n)の探索には変わりないんだよね。
ファイルを一通り読んでいいのに探索はO(n)では駄目とかの>>245の要求が矛盾しているというか。

255 :デフォルトの名無しさん:2009/09/24(木) 02:10:30
>>254
その場合2回目の検索はどうする?

256 :デフォルトの名無しさん:2009/09/24(木) 02:24:21
複数回問い合わせることを前提に、検索部分のコストだけということでは?
http://rg550.hp.infoseek.co.jp/cgi-bin/joyful/img/798.java

257 :デフォルトの名無しさん:2009/09/24(木) 02:42:28
Arrays.sortとArrays.binarySearchで許してくれんのかな。

余計かもしれんがDataのamountがIntegerなのはcompareToしたいから?
intのまま減算して返せばよくね?

258 :デフォルトの名無しさん:2009/09/24(木) 02:49:03
>>257
>Arrays.sortとArrays.binarySearchで許してくれんのかな。

>※ライブラリのデータ構造を使用してはならない(プリミティブタイプ、配列は可)
って文言には反してないが、どうなんだろうね。
出題者の期待している解答ではないかも。

>余計かもしれんがDataのamountがIntegerなのはcompareToしたいから?
yes
intの差の方が良いね。

259 :デフォルトの名無しさん:2009/09/24(木) 03:05:17
>>256
【 GUI  】2. Swing


260 :デフォルトの名無しさん:2009/09/24(木) 03:08:54
>>259
>3.エクストラポイント
っていってるし。面白みも無い。
つか、そもそも、主旨が合っているのかどうかもあやうい。

261 :デフォルトの名無しさん:2009/09/24(木) 03:13:51
あとはArrays.binarySearchのステップを可視化できたら尚OKか。

えーと、最初にcompareTo呼ばれたDataは50万個目だよね。
staticに(binarySearchによる)compareToの呼び出しカウントを保持しておけば
次回配列インデックスへの差分量がわかるから、compareToの結果を元に追跡可能だな。
表示は極端にシンボル化されるから、仮に配列インデックスの計算誤差があっても無視できるしね。


262 :245:2009/09/24(木) 03:50:03
ご対応頂いてありがとうございます。

>>254
最初の読み込みで自前のデータ構造に取り込んでソートすることはOKです。
GUI上のテキストフィールドで入力した数値で複数回検索する必要がありますので、
読み込み時にO(n)であっても以降の検索処理がO(n)で無ければ良いそうです。

>>257>>258
Arraysは利用出来ません。ソートは自前のデータ構造に対して実装する必要があります。

>>259>>260
基本的にコマンドではなくGUIでアプリをつくる必要があります。
エクストラポイントについては検索時のツリー構造等の移動/変化を
GUI上に描画してグラフィカルに表示した場合にポイントとなります。

以上、宜しくお願いします。


263 :245:2009/09/24(木) 03:51:10
追記:
乱数ファイルを作成するクラスについてはGUIである必要はありません。

264 :デフォルトの名無しさん:2009/09/24(木) 04:02:59
>>262
>Arraysは利用出来ません。ソートは自前のデータ構造に対して実装する必要があります。
構造と言っても二分探索は配列で出来るし、実装は退屈だからパス

>基本的にコマンドではなくGUIでアプリをつくる必要があります。
面白味は無いのでパス

>エクストラポイントについては検索時のツリー構造等の移動/変化を
着目している対象くらいは変わるが、構造自体は検索中に変わったりしないのだが…

265 :デフォルトの名無しさん:2009/09/24(木) 07:46:23
http://rg550.hp.infoseek.co.jp/cgi-bin/joyful/img/799.java
視覚化してみた

266 :デフォルトの名無しさん:2009/09/24(木) 07:59:09


【 課題 】 作曲プログラムの作成について

JAVAで作曲ソフトを作成しなさい。
しかし普通の作曲ソフトではなく、もともと持っていた画像を取り込み、そこに5線譜を引き、点をとって音を再生するというようなものです。

【 形態 】1. Javaアプリケーション(main()で開始)
【 GUI  】2. Swing
【 期限 】9月24日18:00まで
【 Ver  】1.6.0_15
【 用語 】
【 補足 】わかりにくくてすいません。
http://nikitoki.blog.so-net.ne.jp/2007-11-17-4
↑の中でやっているようなことができる作曲ソフトを作りたいと考えています。

よろしくおねがいします

267 :デフォルトの名無しさん:2009/09/24(木) 08:03:21
↑訂正です
期限は9月26日18時まででした。
すみません。

268 :デフォルトの名無しさん:2009/09/24(木) 08:48:17
何言ってんだか、さっぱりだし、宿題感がしねえ

269 :デフォルトの名無しさん:2009/09/24(木) 10:24:16
【課題提示用テンプレ】
【 課題 】「プログラム言語Java」と「JRuby」の特徴比較について調べ、記述せよ
      RubyではなくJRubyである点に注意してください。特に、両者に差が
      あるポイントを明確に論じてください。
【 形態 】その他(記述)
【 期限 】明日まで^^;

JRubyの資料が全然なくて困ってます^^;
簡単でもいいのでだれかお願いします

270 :デフォルトの名無しさん:2009/09/24(木) 10:38:59
ゆとりか・・・

271 :デフォルトの名無しさん:2009/09/24(木) 10:55:21
そりゃ、現時点で学生だろうし、その中でも極限のバカしかここに依頼しないし

272 :デフォルトの名無しさん:2009/09/24(木) 11:36:31
>>269
抜け作の君に20代男性からの老婆心だ
とりあえず顔文字つけときゃいいってもんじゃないよ
頼みごとをしようって時にふざけてんの?
資料がないっつーのも苦しい言い訳
プログラムを書くわけでもないし、ちょちょっとまとめるくらい難しくはないでしょ
JavaとJRubyではどちらが早いか、どちらが普及しているか、便利な点、不便な点
そういうのを読み取って羅列する

273 :245:2009/09/24(木) 12:18:46
>>265
ありがとうございます。
自前のソート、検索処理の部分もお願い出来ないでしょうか。


274 :デフォルトの名無しさん:2009/09/25(金) 07:22:41
>>267
土曜に締め切りって何だよ

275 :デフォルトの名無しさん:2009/09/25(金) 09:49:01
>>266
パンをパンと認識するのは人間だからできることだ。
それをコンピュータにやらせるのがどんだけ大変か分かってるのか。
しかもそれを宿題スレで人にやってもらうってか。

もっと要件を限定せい。

276 :デフォルトの名無しさん:2009/09/25(金) 20:18:23

【 課題 】http://rg550.hp.infoseek.co.jp/cgi-bin/joyful/img/800.zip
【 形態 】1. Javaアプリケーション(main()で開始)
【 GUI  】制限なし
【 期限 】9/31
【 Ver  】1.6.0_13
【 用語 】特に無し
【 補足 】丸投げです。お手数をおかけしますが、宜しくお願いします。

277 :デフォルトの名無しさん:2009/09/25(金) 22:03:35
public class Kadai01_5 {

public static void main(String[] args) {
double theta;
double f;

int divider = 18;

for(int i = 1; i <= divider; i++){
theta = Math.PI * i / divider;
f = Math.sin(theta) + Math.cos(theta);
System.out.printf("孤度 θ: %10.5f [ラジアン]\t\t関数F: %10.5f \n", theta, f);
}

}

}

278 :デフォルトの名無しさん:2009/09/26(土) 10:05:06
ここは美術のアイデアも教えていただけますか?

279 :デフォルトの名無しさん:2009/09/26(土) 11:57:17
>>277 180/18=10 なんだな

280 :デフォルトの名無しさん:2009/09/26(土) 17:02:45
>>279
何か?

281 :デフォルトの名無しさん:2009/09/28(月) 00:50:59
forループの数が18回になってる

282 :デフォルトの名無しさん:2009/09/28(月) 00:56:19
ああ、Π/18ごとは10度ごとだから18回で良かったのか

283 :デフォルトの名無しさん:2009/09/28(月) 01:00:16
何が言いたいのかわからん?間違いを指摘してるのかな?

なんか課題ないのー?
もう寝るけどさ。

284 :276:2009/09/29(火) 09:44:02
すみません。>>277をコンパイルして実行してみたのですが実行例と数値が違うみたいです。


285 :デフォルトの名無しさん:2009/09/29(火) 11:56:20
>>284
i を0からはじめればいいよ。
for(int i = 0; i <= divider; i++){

286 :デフォルトの名無しさん:2009/09/29(火) 23:36:42
【 課題 】9×9の数独の解を求めるAppletを作成せよ。
9×9ののマスを用意し、問題を手で入力する。(マスの外枠と3×3の境目になる線は太くする。)
http://ja.wikipedia.org/wiki/%E3%83%95%E3%82%A1%E3%82%A4%E3%83%AB:Sudoku-by-L2G-20050714.svg この画像のようなデザイン
問題として与えられている数字をマスに入力し、「解を求める」ボタンを押すことで残りのマスに数字を埋めていく。
求めた数字の文字色を青色とする。
リセットボタンを用意し、白紙のマスに戻す機能を付けること。
【 形態 】2. Applet
【 GUI  】4. 制限なし
【 期限 】10月6日午前中
【 Ver  】java version "1.6.0_15"

よろしくお願いします。


287 :デフォルトの名無しさん:2009/10/02(金) 23:33:36
【 課題 】以下のプログラムを元に標準偏差も計算できるように変更せよ。数値は実数を受け入れられるようにせよ。データはファイルで与え1.0 2,0 3,0 4,0 5,0 を試してみよ。
標準偏差は全体7カラム。小数点以下5桁で表せ。
【 形態 】1. Javaアプリケーション(main()で開始)
【 GUI  】4. 制限なし
【 期限 】10月6日
【 Ver  】java version "1.6.0_05"
【 用語 】標準偏差 = √1/n煤ix-a)^2 (aはxの平均)
【 補足 】


288 :デフォルトの名無しさん:2009/10/02(金) 23:40:15
>>287の続き
http://rg550.hp.infoseek.co.jp/cgi-bin/joyful/img/801.java

よろしくお願いします

289 :デフォルトの名無しさん:2009/10/03(土) 00:40:13
>>287
import java.io.*;
class k3_1 {
public static void main(String[] args) {
try {
BufferedReader br = new BufferedReader(new FileReader("test2.txt"));
double[] test = new double[5];
for (int i = 0; i < test.length; i++) {
String str = br.readLine();
test[i] = Double.parseDouble(str);
}
double max = test[0], min = test[0], s1 = 0, s2 = 0;
for (int i = 0; i < test.length; i++) {
if (max < test[i]) max = test[i];
if (min > test[i]) min = test[i];
s1 += test[i] / test.length;
s2 += test[i] * test[i] / test.length;
System.out.println(test[i]);
}
System.out.println("最高点は" + max + "です");
System.out.println("最低点は" + min + "です");
System.out.printf("標準偏差は%7.5fです%n", Math.sqrt(s2 - s1 * s1));
br.close();
} catch (IOException e) {
System.out.println("入出力エラーです");
}
}
}

290 :デフォルトの名無しさん:2009/10/04(日) 23:04:40
>>289
ありがとうございます。
>System.out.printf("標準偏差は%7.5fです%n", Math.sqrt(s2 - s1 * s1));
この部分のみ、エラー吐いたのですが自己解決できました。

291 :デフォルトの名無しさん:2009/10/04(日) 23:15:17
>>290
どんなエラー?

292 :デフォルトの名無しさん:2009/10/05(月) 00:25:18
>>291
k3_1.java:33: シンボルを見つけられません。
シンボル: メソッド println(java.lang.String,double)
場所 : java.io.PrintStream の クラス
System.out.println("標準偏差は%7.5fです",Math.sqrt(s2 -
s1 * s1));
^
エラー 1 個

293 :デフォルトの名無しさん:2009/10/05(月) 00:29:40
【 課題 】テキストファイルをあらかじめ作っておいて、その内容を表示しながら
別のファイルにコピーするプログラムを書け。
コマンド例(file_a.txtからfile_b.txtへコピーする)
内容例
123456
234567
abcdefg
【 形態 】1. Javaアプリケーション(main()で開始)
【 GUI  】4. 制限なし
【 期限 】10月7日
【 Ver  】java version "1.6.0_05"
【 用語 】
【 補足 】
よろしくお願いします

294 :デフォルトの名無しさん:2009/10/05(月) 00:35:35
>>292
>>289と違うじゃねーかw

295 :デフォルトの名無しさん:2009/10/05(月) 00:38:14
>>292
> System.out.printf("標準偏差は%7.5fです%n", Math.sqrt(s2 - s1 * s1));
でエラーを吐いたわけじゃなかったのか

296 :デフォルトの名無しさん:2009/10/05(月) 00:52:03
>>293
import java.io.*;
public class Copy {
public static void main(String[] args) throws IOException {
BufferedReader in = null;
BufferedWriter out = null;
try {
in = new BufferedReader(new FileReader(args[0]));
out = new BufferedWriter(new FileWriter(args[1]));
char[] buf = new char[10 * 1024];
int n;
while ((n = in.read(buf)) != -1) {
System.out.print(String.valueOf(buf, 0, n));
out.write(buf, 0, n);
}
} finally {
if (out != null) out.close();
if (in != null) in.close();
}
}
}
使い方 java Copy file_a.txt file_b.txt

297 :デフォルトの名無しさん:2009/10/05(月) 01:09:44
>>293
import java.io.*;
public class TextFileCopy {
public static void main(String[] args) {
String inFile = "file_a.txt";
String outFile = "file_b.txt";
BufferedReader br = null;
BufferedWriter bw = null;
try {
br = new BufferedReader(new FileReader(inFile));
bw = new BufferedWriter(new FileWriter(outFile));
String tmpStr;
while ((tmpStr = br.readLine()) != null) {
bw.write(tmpStr);
bw.newLine();
System.out.println(tmpStr);
}
} catch (IOException e) {
System.out.println(e.getMessage());
} finally {
try {
if (br != null) {br.close();}
if (bw != null) {bw.close();}
} catch (IOException e) {}
}
}
}


298 :デフォルトの名無しさん:2009/10/05(月) 08:27:20
>>297
その方法だとコピーとは言えないな
文字のコピーであって、ファイルのコピーじゃない

299 :デフォルトの名無しさん:2009/10/05(月) 18:15:54
>>296-297
ありがとうございます。共に正常に動作確認できました。

>>296について厚かましいのですが、
>char[] buf = new char[10 * 1024];
この一文は何をしているのか教えていただけませんか?

300 :デフォルトの名無しさん:2009/10/05(月) 19:11:03
10240要素の char 配列を作成してる。
なぜ char 配列が必要かは BufferedReader のドキュメント読め。

バッファサイズ(ここでは配列の要素数)に関してはどのくらいがいいかは一概に言えない。

301 :デフォルトの名無しさん:2009/10/05(月) 22:04:39
>>298
297じゃないが、そこまでこだわるほどのものには思えないがな。

302 :デフォルトの名無しさん:2009/10/05(月) 22:15:09
298ではないが、297はファイル名を引数で渡せない作りになってたり
解答としては微妙だからな。つい突っ込みたくなったんじゃないか?

303 :デフォルトの名無しさん:2009/10/06(火) 12:10:54
>>299
ホントにあつかましいな。
自分で調べろ、カス。

304 :デフォルトの名無しさん:2009/10/06(火) 22:57:36
【 課題 】与えられた行列データ A.txt (20×2) を読み込み前進消去し、txtファイルB.txtに出力せよ
【 形態 】1. Javaアプリケーション(main()で開始)
【 期限 】10月8日
【 Ver  】1.6.0_11
【 用語 】前進消去=行列の掃き出しです。これの前半部分です

http://ja.wikipedia.org/wiki/%E3%82%AC%E3%82%A6%E3%82%B9%E3%81%AE%E6%B6%88%E5%8E%BB%E6%B3%95

【 補足 】一応、作っては見たもののコンパイルエラーが起きてしまいました

http://rg550.hp.infoseek.co.jp/cgi-bin/joyful/img/802.java

お願いします

305 :デフォルトの名無しさん:2009/10/06(火) 23:36:09
>>304
IDE使ってないの?コードコピペしただけで、おかしいって文句言ってくるじゃん
>String shutsuryoku = "%13.10f";
>fileOutMatrix(outputfolder,matrix_out,shutsuryoku);
>static void fileOutMatrix(String outputfolder, String matrix_out, String shutsuryoku, double [][]a)

fileOutMatrix()がdoubleの二次元配列を要求しているのに、Stringを渡したら例外出るさ
内容?眠いから見てない

306 :デフォルトの名無しさん:2009/10/07(水) 01:40:25
>>304
4つの引数が必要なメソッドに3つの引数しか渡さずに呼び出している
第4引数に a を指定すればコンパイルは通るけどそれが正しい結果を返すコードかどうかは知らない
自分でA.txtを作って確かめてもしおかしようならA.txtやその正答もうpして再依頼すればいい

307 :デフォルトの名無しさん:2009/10/07(水) 02:14:02
>>305-306
ありがとうございます

第4引数にaを指定し、A1.txtを
1,2
2,1
に設定して実行してみたところ
1,2
2,-3
と出力されましたが
正答は
1,2
0,-3
なので、ピボットに選んだ下の列が0になっていないようです

1,2,1
2,1,1
1,1,1
で試したところ、やはり同様に
1,2,1
2,-3,-1
1,-1,1/3

正答は
1,2,1
0,-3,-1
0,0,1/3
となって、行列の下三角?の部分が与えた行列と変化してないようです

間違っている箇所を直していただけたら助かりますorz
お願いします

308 :デフォルトの名無しさん:2009/10/07(水) 02:29:05
>>307
人の話は聞け。

309 :デフォルトの名無しさん:2009/10/07(水) 02:34:09
for(int k=0; k<a[0].length; k++) {
for(int i=k+1; i<a[0].length; i++) {
n = a[i][k] / a[k][k];
a[i][k] = 0;
for(int j=k+1; j<a[0].length; j++) {
a[i][j] -= n * a[k][j];
}
}
}
前進消去部分のみ
a[i][k]をピボットで割ったあとそれ自身には0を代入する

310 :デフォルトの名無しさん:2009/10/07(水) 02:53:17
勘違いしないために念のために付け加えておく
0を代入するのは無理に0にするためではなく計算しなくても自分自身を引いて0になることがわかっているから
ためしにつぎのように0を代入することをやめてj=kから計算を始めるようにしても結果は同じになる
for(int k=0; k<a[0].length; k++) {
for(int i=k+1; i<a[0].length; i++) {
n = a[i][k] / a[k][k];
for(int j=k; j<a[0].length; j++) {
a[i][j] -= n * a[k][j];
}
}
}

311 :デフォルトの名無しさん:2009/10/07(水) 15:28:57
>>308
聞いたつもりだったのですが・・・すみません

>>309-310
詳しくありがとうございます
よく分かりました

312 :デフォルトの名無しさん:2009/10/09(金) 00:16:13
【 課題 】http://www.dotup.org/uploda/www.dotup.org236876.txt.html
【 形態 】Applet
【 GUI  】制限なし
【 期限 】10/10
【 Ver  】1.6.0-11

お願いします

313 :デフォルトの名無しさん:2009/10/09(金) 01:33:21
>>312
真面目にやる気がなくなるほどのif-elseの羅列だw
init()メソッドの一番末尾に追加
((Button)add(new Button("reverse"))).addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
StringBuilder buf = new StringBuilder();
for (ListIterator i = v.listIterator(v.size()); i.hasPrevious(); ) buf.append(i.previous()).append(" ");
showStatus(buf.toString());
}
});
もし元ソースのフォーマットに合わせたいならreverse用のボタンreverseBtnをインスタンス変数として定義して
displayBtnの場合を参考にしてinit()メソッドとactionPerformed()メソッドにこの処理を分ける
元のソースから出てる警告は質問者が自分で修正してくれ

314 :デフォルトの名無しさん:2009/10/11(日) 22:12:01
【 課題 】2進数で000000001から111111111まで作成する。
【 形態 】Javaアプリケーション(main()で開始)/
【 GUI  】制限なし
【 期限 】10/15
【 Ver  】わからん


315 :デフォルトの名無しさん:2009/10/11(日) 22:32:19
>>314
作成するってどういう意味?
000000001
000000010
000000011
000000100
...
111111111
という感じで文字列を表示すればいいの?
問題文はできれば自分で解釈したりせずに原文をそのまま出してほしい

316 :314:2009/10/11(日) 23:37:51
問題文:2進数で1から255までの数字を表現しなさい。

ので315のように表示できるようにして欲しいです。

317 :デフォルトの名無しさん:2009/10/11(日) 23:39:17
>>314
public class Bin {
public static void main(String[] args) {
final int START = Integer.parseInt("000000001", 2);
final int END = Integer.parseInt("111111111", 2);
StringBuffer sb = new StringBuffer("000000000");
for (int i = START; i <= END; i++) {
sb.append(Integer.toBinaryString(i));
System.out.println(sb.substring(sb.length() - 9));
sb.setLength(9);
}
}
}

318 :デフォルトの名無しさん:2009/10/11(日) 23:44:07
念為2進数を扱うメソッドそのものを実装することが目的の場合用
public class Bin2 {
public static void main(String[] args) {
final int START = parseInt("000000001");
final int END = parseInt("111111111");
for (int i = START; i <= END; i++) showBinaryString(i);
}
private static int parseInt(String s) {
int result = 0, len = s.length();
for (int i = 0; i < len; i++) result += result + s.charAt(i) - '0';
return result;
}
private static char[] buf = new char[9];
private static void showBinaryString(int i) {
int j = 9;
do {
buf[--j] = (char)('0' + (i & 1));
} while ((i>>>= 1) != 0);
while (j-- > 0) buf[j] = '0';
System.out.println(buf);
}
}

319 :デフォルトの名無しさん:2009/10/11(日) 23:56:09
問題文は1から255じゃないかw
>>314が9ビットだったから>>317-318は511まで表示するようにしてる
適当に直してくれ
それに問題では1とか255というように与えられているからparseIntせずに直接START=1,END=255でいいね

320 :デフォルトの名無しさん:2009/10/12(月) 02:11:18
これ、読んだひと居ますか?
http://page19.auctions.yahoo.co.jp/jp/auction/x75377655
http://page18.auctions.yahoo.co.jp/jp/auction/w43923215

321 :デフォルトの名無しさん:2009/10/12(月) 03:21:06
>>314
やっぱり255までなのが気になったのでついでに記述をシンプルに
もし9桁必要ならj = 128をj = 256に変更
public static void main(String[] args) {
for (int i = 1; i <= 255; i++) {
for (int j = 128; j > 0; j >>= 1) System.out.print((i & j) == 0 ? '0' : '1');
System.out.println();
}
}
Integer#toBinaryStringを利用していいのなら
for (int i = 1; i <= 255; i++) {
String s = "00000000" + Integer.toBinaryString(i);
System.out.println(s.substring(s.length() - 8));
}
みたいな感じに
本当はStringBufferや1.5以上ならStringBuilderを使えばいいけどこの程度なら変わらない

322 :デフォルトの名無しさん:2009/10/12(月) 04:34:56
teikadeってどうなったの?

323 :デフォルトの名無しさん:2009/10/12(月) 05:57:40
>>314
なんか見たなと思えば
C/C++の宿題片付けます 130代目
http://pc12.2ch.net/test/read.cgi/tech/1250204272/783

783 名前:デフォルトの名無しさん[] 投稿日:2009/10/11(日) 11:31:43
[1] 授業単元:
プログラミング1
[2] 問題文(含コード&リンク):
2進数で00000001から11111111まで表示する。
[3] 環境
 [3.1] OS:windows
 [3.2] わからん
 [3.3] C言語
[4] 期限: 10月15日まで
[5] とくになし。この前for文を習ったばっかり。




324 :デフォルトの名無しさん:2009/10/12(月) 20:56:48
どなたか教えてください。例えば、
hoge[]={300,400,500,200,100} をソートしたときに元の配列番号の並びかえで
{4,3,0,1,2}として別の配列に格納したいんですがどうしたらいいでしょうか。
テンプレ使うまでもない質問だと思ったので、こんな形ですいません。
よろしくお願いします。

325 :デフォルトの名無しさん:2009/10/12(月) 21:18:01
すいません>>324の補足です
ソート時にはjava.util.Arrays.sort(hoge)を使います。

326 :デフォルトの名無しさん:2009/10/12(月) 23:04:07
>>324
テンプレ使うまでもない質問なら質問スレへどうぞ

327 :デフォルトの名無しさん:2009/10/13(火) 01:07:20
>>324
3000,4001,5002,2003,1004をソートして%10
新たにclass作ってimplements Comparable

328 :デフォルトの名無しさん:2009/10/13(火) 09:35:59
>>324
>>245


329 :デフォルトの名無しさん:2009/10/13(火) 11:45:44
>>327
答えてやるなよ・・

330 :デフォルトの名無しさん:2009/10/13(火) 17:28:17
【 形態 】1. Javaアプリケーション(main()で開始)
【 期限 】10月17日 
【 Ver  】1.6.0_11

A=
{-7.29565,6.54738,4.07991}
{-5.58592,7.51773,-1.78163}
{9.22599,-3.26847,-3.03223}
{6.25081,-8.75345,-4.31528}

行列norm ||A||1、||A||∞を求めるプログラムを作成せよ


参考になるかはわかりませんが、複素数ベクトル版の2-norm、∞-normを
求めるプログラムはこれです
ttp://rg550.hp.infoseek.co.jp/cgi-bin/joyful/img/803.java


お願いします

331 :デフォルトの名無しさん:2009/10/13(火) 18:16:53
>>330
http://rg550.hp.infoseek.co.jp/cgi-bin/joyful/img/804.java

332 :デフォルトの名無しさん:2009/10/13(火) 20:21:39
わざわざベクトルノルムのソースを出してきてるということは
誘導ノルムでなく成分に関するノルムが求めるものなのかも…
意味も分からず探し出してきたものを提示しただけかもしれんが
課題は実行列なのに無駄に複素ベクトル用だし

333 :デフォルトの名無しさん:2009/10/13(火) 21:01:50
>>331-332
ありがとうございます

いえ、これで合っていると思われます
わかりにくくてすみません
複素ベクトルは授業で少しやったので
少しでも参考になる部分があるかなと

Double.MIN_VALUEというのが初めて見るものなので調べてみます

334 :デフォルトの名無しさん:2009/10/14(水) 00:11:19
【 課題 】1.任意のWebページから、"http://"で始まるハイパーリンクを抽出するように下のプログラムを改良
http://rg550.hp.infoseek.co.jp/cgi-bin/joyful/img/805.java
2.上のプログラムと下のプログラムを合わせて任意のWebページ10ページに含まれる単語のうち
       上位10位の単語リストとその出現頻度を表示
       http://rg550.hp.infoseek.co.jp/cgi-bin/joyful/img/806.java
【 形態 】Javaアプリケーション(main()で開始)
【 GUI  】制限なし
【 期限 】10/15
【 Ver  】1.6.0_11
【 用語 】
【 補足 】2.はsenという形態素解析器がないと実行できないと思いますが
       プログラムコードだけでもどうかよろしくお願いします。

335 :デフォルトの名無しさん:2009/10/14(水) 00:30:27
>>333
その課題のAを含むほとんど全ての行列で大丈夫だけど
ただ零行列のノルムを求めようとすると0を返せないので
maxは素直にDouble.MIN_VALUEでなく0で初期化した方がいいと思う

336 :デフォルトの名無しさん:2009/10/14(水) 00:50:38
>>335
なんのことかさっぱりわからんけど、x[0].lengthで死ぬと思う


337 :デフォルトの名無しさん:2009/10/14(水) 01:11:12
>>336
零行列というのは全ての成分が0になっている行列
行や列の数が0であるようなものは行列とは普通考えない

||A||1や||A||∞の誘導ノルムは各行や各列の成分の絶対値の和の中で最大のものなので
最大値を検索するときに最大値候補が入るmaxがDouble.MIN_VALUEで初期化されていると
零行列ではmaxを越える和sumがないので本来0を返すべきなのにDouble.MIN_VALUEが返ってしまう

338 :デフォルトの名無しさん:2009/10/14(水) 12:56:43
【 課題 】http://www.dotup.org/uploda/www.dotup.org259089.txt.html
【 形態 】Applet
【 GUI  】制限なし
【 期限 】10/15
【 Ver  】1.6.0-11
お願いします。

339 :デフォルトの名無しさん:2009/10/14(水) 13:01:06
>>337
ああ やっと意味わかった
Double.MIN_VALUEって正の数なのか


340 :デフォルトの名無しさん:2009/10/14(水) 14:07:29
【 課題 】1.任意のWebページから、"http://"で始まるハイパーリンクを抽出するように下のプログラムを改良
http://rg550.hp.infoseek.co.jp/cgi-bin/joyful/img/805.java
2.上のプログラムと下のプログラムを合わせて任意のWebページ10ページに含まれる単語のうち
       上位10位の単語リストとその出現頻度を表示
       http://rg550.hp.infoseek.co.jp/cgi-bin/joyful/img/806.java
【 形態 】Javaアプリケーション(main()で開始)
【 GUI  】制限なし
【 期限 】10/15
【 Ver  】1.6.0_11
【 用語 】
【 補足 】2.はsenという形態素解析器がないと実行できないと思いますが
       プログラムコードだけでもどうかよろしくお願いします。

341 :デフォルトの名無しさん:2009/10/14(水) 14:17:26
>>340
上はパターンにhttp://を足せばいいだろうけど、
下は、senちゃら言うのを使ってるか、これから入れてくれる人が現れないと…

342 :デフォルトの名無しさん:2009/10/14(水) 18:07:35
>>338
まず、ソースがアプレットじゃねーし

343 :デフォルトの名無しさん:2009/10/15(木) 09:33:13
>>342
すいませんアプリケーションでしたorz

344 :デフォルトの名無しさん:2009/10/15(木) 20:13:51
【課題】
コマンド引数(Java プログラム実行時の引数)を利用する。
キーボード(標準入力)から単語(アルファベット)入力し,入力した順番と逆の順にモニタ(標準出力)に表示する.
入力した文字列の個数も number of use として表示する。
プログラムの実行結果。
$ java Kadai 1 2 3 4 5
number of use = 5
args[0] = 5
args[1] = 4
args[2] = 3
args[3] = 2
args[4] = 1
【 形態 】1. Javaアプリケーション(main()で開始)
【 GUI  】制限なし
【 Ver  】1.6.0_11
【 期限 】10/16
import.java.io*;を使うそうです。意味不明すぎて丸投げです。お願いします。

345 :デフォルトの名無しさん:2009/10/15(木) 20:21:19
超難問だな。単語(アルファベット)の入力は「プログラムの実行結果」で言うところのどれよ?

346 :デフォルトの名無しさん:2009/10/15(木) 20:39:00
わかりづらくてすみません。
$ java Kadai "1 2 3 4 5"の部分です

347 :デフォルトの名無しさん:2009/10/15(木) 20:53:45
【 課題 】コマンドライン引数に任意で入力した文字列に文字列毎にカンマを入れ、カンマ区切りの文字列を
カンマ区切りごとに分割し、最後に分割した回数を出力する。

【 形態 】1. Javaアプリケーション(main()で開始)

【 期限 】10月16日AM10
【 Ver  】java version "1.6.0_14" 

【 補足 】丸一日悩みましたが結果わからずです。
ソースに含まれる文章を.split(",")で分割できるのはわかったのですが、
コマンドラインで、任意となるとわからなくなりました。

java Bunkatu java,Java,JAVA

java
Java
JAVA
以上3件に分割しました。

こんな感じです。
よろしくお願いします。

348 :デフォルトの名無しさん :2009/10/15(木) 21:00:05
>>344
class Kadai{
public static void main(String[] args)
{
System.out.println("number of use = " + args.length);
for(int i=args.length-1;i>=0;i--){
System.out.println(args[i]);
}
}
}

349 :デフォルトの名無しさん :2009/10/15(木) 21:25:54
>>347
public class Bunkatu{
public static void main(String[] args)
{
String[] strary= args[0].split(",");
for(int i=0;i<strary.length;i++){
System.out.println(strary[i]);
}
System.out.println("以上" + strary.length + "件に分割しました。");
}
}

350 :デフォルトの名無しさん:2009/10/15(木) 22:26:57
>>345ありがとうございます!

351 :デフォルトの名無しさん:2009/10/15(木) 22:35:49
【課題】
キーボード(標準入力)より整数を1つ入力し,その数値までの九九の表を作成し,モニタ(標準出力)に表示する。
二次元配列と for 文を利用する。
各行の数字が縦に揃うように注意せよ。
九九の値の表示部分は以下のようにするのがよい。
int[][]a = new int[n][n];
for(i=0;i<あ;i++){
for(j=0;j<い;j++){
a[i][j] = う;
if(a[i][j]<10){
System.out.print(" ");
}
System.out.print(" " + a[i][j]);
}
System.out.println();
}
【 形態 】1. Javaアプリケーション(main()で開始)
【 GUI  】なし
【 期限 】10/16
【 Ver  】1.6.0_11
3を入力すると
1 2 3
2 4 6
3 6 9
のような結果になるそうです。お願いします




352 :デフォルトの名無しさん:2009/10/15(木) 22:59:45
>>351
表示部分の指定がひどすぎるwwwww

353 :デフォルトの名無しさん:2009/10/15(木) 23:07:36
あ i<n&i<9
い j<n&j<9
う (i+1)*(j+1)

354 :デフォルトの名無しさん:2009/10/15(木) 23:11:06
>>351
与えられている部分の前に
System.out.print("1から9までの整数を入れてください:");
int n = Integer.parseInt(System.console().readLine());
int i, j;
の3行を加え
「あ」、「い」は n、「う」は (i + 1) * (j + 1)

355 :デフォルトの名無しさん:2009/10/15(木) 23:27:05
>>349
ありがとうございます!!!
無事起動できました。

String[] str = args[0].split(",");
for(int i = 0; i < str.length; i++)
ここが思い浮かばなかったです・
素早い回答に感謝します。

356 :デフォルトの名無しさん:2009/10/15(木) 23:51:08
どなたか>>334お願いできませんか?
ちなみに同じやつの>>340自分じゃないので・・

357 :デフォルトの名無しさん:2009/10/16(金) 00:52:44
【課題】
整数値を値とする5行3列の大きさの2次元配列 a を定義し,0 から 9 までの整数乱数を代入して初期化する。
2次元配列 a をモニタ(標準出力)に表示する。

【形態】1. Javaアプリケーション(main()で開始)
【期限】10/16
【Ver】1.6.0_11
実行結果として
$ java Kadai
a[0,0] = 8 a[0,1] = 0 a[0,2] = 8
a[1,0] = 9 a[1,1] = 0 a[1,2] = 3
a[2,0] = 0 a[2,1] = 2 a[2,2] = 8
a[3,0] = 0 a[3,1] = 6 a[3,2] = 1
a[4,0] = 3 a[4,1] = 9 a[4,2] = 8

ただし、この例の配列要素の値は整数乱数であるので、場合ごとに異なった値が代入されている。
だそうです。まったく意味がわかりません。お願いします



358 :デフォルトの名無しさん:2009/10/16(金) 01:08:50
import java.util.Random;

public class Kadai {
public static void main(String[] args) {
int[][] a = new int[5][3];
Random r = new Random(System.currentTimeMillis());
for (int i = 0; i < a.length; i++) {
for (int j = 0; j < a[i].length; j++) {
a[i][j] = r.nextInt(10);
if (j != 0) System.out.print(" ");
System.out.print("a[" + i + "," + j + "] = " + a[i][j]);
}
System.out.println();
}
}
}


359 :デフォルトの名無しさん:2009/10/16(金) 01:24:37
>>358ありがとうございました

360 :デフォルトの名無しさん :2009/10/16(金) 02:25:56
>>351
http://kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/9981.txt

361 :デフォルトの名無しさん:2009/10/16(金) 11:53:30
【 課題 】http://www.dotup.org/uploda/www.dotup.org265866.txt.html
【 形態 】Applet
【 期限 】10/20
【 Ver  】1.6.0-11

よろしくお願いします

362 :デフォルトの名無しさん:2009/10/16(金) 13:09:32
>>361
http://rg550.hp.infoseek.co.jp/cgi-bin/joyful/img/807.java

363 :デフォルトの名無しさん:2009/10/16(金) 15:13:56
>>362
無言は勘弁してください…

364 :デフォルトの名無しさん:2009/10/16(金) 20:56:26
【 課題 】http://rg550.hp.infoseek.co.jp/cgi-bin/joyful/img/808.zip
【 形態 】Javaアプリケーション(main()で開始)
【 GUI  】制限なし
【 期限 】10/21
【 Ver  】1.6.0_11
【 補足 】参考プログラムを添付してありますので、それを参考にお願いします。


365 :デフォルトの名無しさん:2009/10/16(金) 21:26:52
>>364
public class Kadai03_5 {
public static void main(String[] args) {
int[] num = {23, 76, 48, 93, 16, 34, 87};
showArray(num);
System.out.println("\t----- Sort -----");
sort(num);
System.out.println("\t----- Result -----");
showArray(num);
}
private static void showArray(int[] a) {
if (a.length != 0) {
for (int i = 0; i < a.length - 1; i++) System.out.print(a[i] + ", ");
System.out.print(a[a.length - 1]);
}
System.out.println();
}
private static void sort(int[] a) {
for (int i = 0; i < a.length - 1; i++) for (int j = i + 1; j < a.length; j++) {
if (a[i] < a[j]) {
System.out.print("Exchange num[" + i + "]=" + a[i] + " for num[" + j + "]=" + a[j] + " ");
int b = a[i]; a[i] = a[j]; a[j] = b;
showArray(a);
}
}
}
}

366 :デフォルトの名無しさん:2009/10/17(土) 07:41:30
>>365
すみません。
参考プログラムの穴に埋めるような形でお願いします。

367 :デフォルトの名無しさん:2009/10/17(土) 08:32:57
参考プログラムをコピペしてブランクを埋めようとしたんだけど
なぜかコピーできなかったからクラス名とかだけ参考にしたよ

368 :デフォルトの名無しさん:2009/10/17(土) 08:38:02
>>367
すみません。
この形式ではコピーできませんよね、失礼しました。

public static void main(String args[]){
int num[] = {23,76,48,93,16,34,87};
int num_work;
int i,j,n=7;
for( i = 0; i < n; i++)
System.out.print(num[i] + " , ");
System.out.println("\n \t----- Sort ----- ");

ここから下をお願いします。

369 :デフォルトの名無しさん:2009/10/17(土) 12:16:48
パソコンを変えて環境変数をpathで設定したがプロントでjavaってやると英語が大量に原因がわかりません。
最後の部分コピペしてきました。
ommon Files\Roxio Shared\10.0\DLLShared\;C:\Program Files\Java\jdk1.6.0_13\bin
binのオブジェクト名のところC:\Program Files\Java\jdk1.6.0_16\bin

370 :デフォルトの名無しさん:2009/10/17(土) 12:18:58
あ,13じゃなくて16になってます。スミマセン
それでも無理です

371 :デフォルトの名無しさん:2009/10/17(土) 12:33:53
自己解決しましたスイマセンでした

372 :デフォルトの名無しさん:2009/10/17(土) 12:42:15
>>369
全部貼りなさいよ!

373 :デフォルトの名無しさん:2009/10/17(土) 13:07:04

【 課題 】C♯もしくはJAVAでBMI計算プログラムをvisual studio 2005 で作成
【 形態 】1. Javaアプリケーション(main()で開始)
【 GUI  】4. 制限なし
【 期限 】10月18日 日曜22時まで
【 補足 】できればC♯でお願いします。

374 :デフォルトの名無しさん:2009/10/17(土) 13:11:15
>>373 web アプリケーションでお願いします。

375 :デフォルトの名無しさん:2009/10/17(土) 13:54:19
>>373
マルチの上にJavaスレでC#希望とか死ねばいいのに

376 :デフォルトの名無しさん:2009/10/17(土) 22:03:54
【 形態 】1. Javaアプリケーション(main()で開始)
【 期限 】10月21日 
【 Ver  】1.6.0_11

・課題
与えられたベクトルファイル(c.txt)を読み込み
1-normの結果を表示させるプログラムを作成せよ

途中までのソースとベクトルファイルです
http://rg550.hp.infoseek.co.jp/cgi-bin/joyful/img/809.java
http://kissho.xii.jp/1/src/1jyou94333.txt.html


お願いします

377 :デフォルトの名無しさん:2009/10/17(土) 22:25:36
>>368
class Kadai03_5 {
public static void main(String args[]) {
int num[] = {23, 76, 48, 93, 16, 34, 87};
int num_work;
int i, j, n = 7;

for (i = 0; i < n; i++)
System.out.print(num[i] + " , ");
System.out.println("\n \t----- Sort ----- ");

// 2重ループ(for文など)を用いる。(pp.202-203を参照)
for (int l = 0; l < num.length - 1; l++) for (int m = l + 1; m < num.length; m++) if (num[l] < num[m]) {
// 交換の条件を満たした場合に交換の要素を表示。
System.out.printf("Exchange num[%d]=%d for num[%d]=%d ", l, num[l], m, num[m]);
// 交換の実行
int nm = num[l]; num[l] = num[m]; num[m] = nm;
// 交換後の要素表示。(別の変数int kなどを用いてループで出力)
for (int k = 0; k < num.length; k++) System.out.print(num[k] + ", ");
System.out.println();
}
// ソート後の結果表示。
System.out.println();
System.out.println("\t----- Result ----- ");
for (int k = 0; k < num.length; k++) System.out.print(num[k] + " , ");
}
}

378 :デフォルトの名無しさん:2009/10/17(土) 23:06:23
>>376
/* 操作するプログラム ここから */
double norm = 0;
for (double d : c) norm += Math.abs(d);
System.out.println(norm);
}
/* ここまで */

379 :デフォルトの名無しさん:2009/10/18(日) 06:00:46
出力書式を使用するなら
System.out.println(norm);

System.out.println(String.format(shutsuryoku, norm));
とか
System.out.printf(shutsuryoku + "%n", norm);
とか
System.out.printf(shutsuryoku, norm);
System.out.println();
とか

380 :デフォルトの名無しさん:2009/10/18(日) 14:25:50
【 課題 】
1・コマンドライン引数で2つの文字列を入力し、1番目に指定された文字列の中に2番目に指定された文字列が存在する場合は
「この文字列はあります。(○文字目)」と表示し、存在しない場合は「この文字列は存在しません」と表示しなさい。 入力文字数は、1番目の文字列は10文字以上とし、2番目の文字列は2文字以上4文字以内とする。
また、文字列は先頭から検索し、最初に見つかった文字のインデックスを表示することとする。。

2・任意の文字列を内部で指定し、コマンドライン引数で2つの文字列を入力する。
もし内部で指定した文字列に、1番目に指定した文字列が存在する場合は、その文字列を
2番目に指定した文字列と置き換えてから表示し、存在しない場合は「置き換えなし」と表示しなさい。
入力文字数は、1番目、2番目ともに4文字以内とする。また最初に内部指定文字列を表示し、
1番目の文字列が複数する場合は、すべて置き換わっていること。

3・コマンドライン引数で入力された文字列が
3文字以下なら、その文字列を20個文字列連結して表示
4文字以上なら”たくさん” を表示しなさい。
文字列連結の際はStringBufferクラスを使用しなさい
for文を使用しなさい

【 形態 】1. Javaアプリケーション(main()で開始)

【 期限 】10月19日AM11
【 Ver  】java version "1.6.0_14" 

【 補足 】3問ありますが、複数の条件が重なった場合の文法の書き方がわかりません。
よろしくお願いします

381 :デフォルトの名無しさん:2009/10/18(日) 16:37:23
>>380
public class Kadai01 {
public static void main(String[] args) {
if(args[0].contains(args[1])){
System.out.println("「この文字列はあります。("+(args[0].indexOf(args[1])+1)+"文字目)」");
}else{
System.out.println("「この文字列は存在しません」");
}}}
public class Kadai02 {
public static void main(String[] args) {
final String str = "abracadabra";
if(str.contains(args[0])){
System.out.println("「この文字列はあります。("+(args[0].indexOf(args[1])+1)+"文字目)」");
System.out.println(str);
System.out.println(str.replaceAll(args[0], args[1]));
}else{
System.out.println("「置き換えなし」");
}}}
public class Kadai03 {
public static void main(String[] args) {
if(args[0].length()<=3){
StringBuffer sb = new StringBuffer();
for(int i=0;i<20;i++){
sb.append(args[0]);
}
System.out.println(sb.toString());
}else{
System.out.println("たくさん");
}}}


382 :デフォルトの名無しさん:2009/10/18(日) 16:38:44
>>381
おっと、要らない行が混じっていた。
public class Kadai02 {
public static void main(String[] args) {
final String str = "abracadabra";
if(str.contains(args[0])){
System.out.println(str);
System.out.println(str.replaceAll(args[0], args[1]));
}else{
System.out.println("「置き換えなし」");
}}}

383 :デフォルトの名無しさん:2009/10/18(日) 21:07:09
>>382
"abracadabra"なら大丈夫だけどstrに正規表現のメタキャラクタとかが含まれていた時のために、
str.replaceAll(java.util.regex.Pattern.quote(args[0]), args[1])
にしておいた方がいいんではなかろか。

384 :デフォルトの名無しさん:2009/10/18(日) 21:23:34
【 課題 】ソースコードのプログラムに追加機能をつける
(機能はソースコードにあります)
【 形態 】2 Applet
【 期限 】10月22日
【 Ver  java version "1.6.0_14
【 補足 】
ソースコードは
http://rg550.hp.infoseek.co.jp/cgi-bin/joyful/main.htm
のjava810です。

385 :デフォルトの名無しさん:2009/10/18(日) 21:47:16
http://rg550.hp.infoseek.co.jp/cgi-bin/joyful/img/810.java

386 :デフォルトの名無しさん:2009/10/18(日) 21:56:01
>>381

ありがとうございます。
そのままの使用だとあまりにも為にならないため、少し自分なりに構文を変更し
作成しました。ありがとうございます。


387 :デフォルトの名無しさん:2009/10/18(日) 22:08:14
>>384
失礼しました。正しいソースコードはjava811のものです。

388 :デフォルトの名無しさん:2009/10/19(月) 00:43:01
>>378-379
ありがとうございました

389 :デフォルトの名無しさん:2009/10/19(月) 06:24:36
>>384
ここら辺で躓いてたら中盤の掃除機問題とかに行く前に死んじゃうんじゃないか?

390 :デフォルトの名無しさん:2009/10/19(月) 13:27:36
>>362
解答ありがとうございます
しかしこれだと2つほど型のエラーが出てくるのですが・・・

391 :デフォルトの名無しさん:2009/10/19(月) 13:35:30
>>390
もう一度問題をあげておきます
http://www.dotup.org/uploda/www.dotup.org278737.txt.html
テンプレは>>381です

392 :デフォルトの名無しさん:2009/10/19(月) 16:51:55
>>391
テンプレは>>361でした…何度もすみません

393 :デフォルトの名無しさん:2009/10/19(月) 17:59:56
>>391
元のソースがジェネリクス以前だしバージョン1.6でコンパイルしてないだろ
>>384とか見てないようだしどうも同じカリキュラムを受けてる人間が2人来てるようだな
そんなことじゃ人工知能なんて全然理解できないぞ

394 :デフォルトの名無しさん:2009/10/19(月) 18:05:31
× >>384とか見てないようだし
>>384とか過去ログを見てないようだし

dotupを使ってパッケージ名を削除しているの(>>312とかもそうだろう)と
rg550使ってるのとの二人だな

395 :デフォルトの名無しさん:2009/10/19(月) 18:15:52
>>390
エラーくらい貼り付けろ

あと、>>394の言うようにコンパイラのバージョンがあってない。
>>1の"【 Ver  】コンソールでjava -versionを実行し、その結果を貼ります。 《必須》"にしたがって確認しろ。

396 :デフォルトの名無しさん:2009/10/19(月) 18:16:44
>>395
×>>394
>>393


397 :デフォルトの名無しさん:2009/10/20(火) 19:17:05
【 課題 】http://www1.axfc.net/uploader/File/so/32892
【 形態 】1. Javaアプリケーション
【 GUI  】制限無し
【 期限 】10月21日の15時まで
【 Ver  】1.6.0_07
【 補足 】課題4−1と4−2をお願いします。できれば両方ですが片方だけなら4−2をお願いします

398 :デフォルトの名無しさん:2009/10/20(火) 19:27:01
>>397
ごめんなさい
×【 形態 】1. Javaアプリケーション
○【 形態 】Eclipse ver3.4.2

399 :デフォルトの名無しさん:2009/10/20(火) 19:39:06
課題4-1とも4-2とも設問がどこにも書いてないし課題4-2の実行例だけしかないように見えるのは気のせいか
>>398はなぜ正しかったものをわざわざ誤った記述にするのか意味不明

400 :デフォルトの名無しさん:2009/10/20(火) 19:43:52
>>397
URLのpdfに課題番号なし
一応 (a, b, c) (d, e, f) の内積は ad + be + cf ってのは覚えてるけど
ベクトル同士の畳込みについて計算方法うp

401 :デフォルトの名無しさん:2009/10/20(火) 19:44:40
そんなんだからこうなったんだね
すっごくわかるよー

402 :デフォルトの名無しさん:2009/10/20(火) 20:15:18
【 形態 】1. Javaアプリケーション(main()で開始)

【 期限 】10月21日AM12
【 Ver  】java version "1.6.0_14" 

【 補足 】3問です。本日1日悩みましたが、わかりませんでした。
いかなる場合でも予期しない例外が出ないこと。

@
コマンドライン引数に入力された日付から現在日まで何日かを計算し、「今日まで●日」と表示しなさい。
現在日より入力された日付が小さい場合は「-(マイナス)」をつけて表示すること。
(日付その他のチェックも行う事)

Aコマンドライン引数に入力された年と月から、その月が何日まであるかを表示しなさい。
(日付その他のチェックも行う事)

Bコマンドライン引数に入力された日付が、入力された日付の年の何番目の週かを
「●年の●週目」と表示しなさい。(●年の"●"は入力された日付の年)
(日付その他のチェックも行う事)


403 :デフォルトの名無しさん:2009/10/20(火) 20:21:28
例外が投げられっぱなしにならないようにcatchして適切な処理をするという意味でなくて、
どんな例外も投げられること自体がないように予防線を張ったコードにするってこと?

404 :デフォルトの名無しさん:2009/10/20(火) 20:28:11
>>397の畳み込みのpdfです
http://www1.axfc.net/uploader/File/so/32898
課題については勘違いしてたみたいです。1問だけです

405 :デフォルトの名無しさん:2009/10/20(火) 20:29:33
>>403

自分なりに考えられるキャッチしたものは、その症状を表示し、
プログラムを終了させる感じです。

406 :デフォルトの名無しさん:2009/10/20(火) 20:31:56
>>404
課題が書かれてないし

407 :デフォルトの名無しさん:2009/10/20(火) 21:14:22
>>397
http://codepad.org/AfvBdYKJ

408 :おねがいします:2009/10/20(火) 21:36:14
【 課題 】文字列"GPIB-002.70V"から文字列"-022.70"を取り出して、
      その文字列をDoubleオブジェクトにし、それをdouble型
      実数値に変換して数値を表示している。空欄を埋めよ。
      public class Kadai{
       public static void main(String a[ ]){
       String s = "GPIB-022.70V",ds;
       ds = s.substring( @ );
       Double dd = A ;
       double d = B ;
        System.out.println(d);
       }
      }
【 形態 】1. Javaアプリケーション(main()で開始)
【 期限 】 今週中
【 補足 】ど素人なのでよろしくお願いします。

409 :たのみます:2009/10/20(火) 21:50:16
【 課題 】 半径が10ピクセルの黒塗り円がマウスをドラッグすることで、
       円がマウスポインタに追従するように、次の空欄を埋めて
       Javaアプレットを完成させなさい。
       
import java.applet.*;
import java.awt.*;
import java.awt.event.*;
public class Kadai3ee extends @ {
 int x = 10 , y = 10;
 public void init( ) {
 A
 }
 public void paint(Graphics g){
 B (x,y,20,20);
 }
 public void mouseDragged (MouseEvent me) {
 C
 D
 E
 }
 public void mouseMoved (MouseEvent me) { }
}

【 形態 】 2. Applet
【 GUI  】 ?
【 期限 】今週中
【 補足 】@〜Eが空欄です。




410 :たのみますNo.3:2009/10/20(火) 22:13:02
【 課題 】
マウスをクリックして描画の起点とし、そのままマウスをドラッグしたときに楕円を逐次描き、マウスボタンを放したとき最終的に
終点を決定して楕円を描くように、次の空欄を埋めてJavaアプレットを完成させなさい。ただし、マウスを左や上にドラッグしても
楕円を表示するように起点と終点を選択するように処理する事。
importは省略
public class Kadai3gg extends@{
 int x1,y1;
 public void init( ){
 A
 B}
 public void mouseDragged(MouseEvent me){
  int x0,y0,x2,y2;
  Graphics g = this.getGraphics( );
  g.clearRect(0,0,300,300);
x2 = C
y2 = D
if(x1>=x2) E else F
if(y1>=y2) G else H
g.drawOval(I,J,K,L);}
public void mouseMoved(MouseEvent me) {}
public void mousePressed(MouseEvent me){
M
N
}
public void mouseReleased(MouseEvent me)←この他の文も省略
}
【 形態 】 2. Applet
【 GUI  】 ?
【 期限 】今週中
【 補足 】@〜Nが空欄です。

411 :たのみますNo.4:2009/10/20(火) 22:40:26
【 課題 】画像を表示し、マウスをクリックすればその場所に画像が移動するように、次の空欄を埋めてJavaアプレットを完成させなさい。
import java.awt.*;
import java.awt.event.*;
import java.applet.*;
public class Kadai3ff extends @ {
A    img;
int x=10 ,y=10;
public void init(){
img =  B  (getCodeBase(),"a.gif");
    C
}
public void paint(Graphics g)
{
D(img,x,y,this);
}
public void mouseClicked(MouseEvent me){
E
F
G
}
public void mouseReleased(MouseEvent me){}←この他の文省略
} 
【 形態 】 2. Applet
【 GUI  】 ?
【 期限 】今週中
【 補足 】@〜Gが空欄です。
      何度も何度も本当にすみません、理解に苦しんでいるため書き込まさせていただきました。
      空欄のところの具体的なコードをいただけるとありがたいです。最初の2つの名前にナンバーを
      つけ忘れました。No.1〜No.4までよろしくお願いします。




412 :デフォルトの名無しさん:2009/10/20(火) 22:45:32
ここまで穴だらけだと一から作り直したい
中途半端に識別子が決められてるとこうぇぇ

413 :たのみます:2009/10/20(火) 22:47:34
穴埋め課題なもので・・・。
すみません&お願いします。

414 :デフォルトの名無しさん:2009/10/21(水) 00:53:23
あれ,結構前にも同じ課題があがったらしいな

>>409
http://detail.chiebukuro.yahoo.co.jp/qa/question_detail/q1427568299

>>410
http://detail.chiebukuro.yahoo.co.jp/qa/question_detail/q1327571168

>>411
みつからね

なんとかなるんでね?

415 :デフォルトの名無しさん:2009/10/21(水) 02:46:15
>>407
起動確認できました。
ありがとうございました。

416 :デフォルトの名無しさん:2009/10/21(水) 12:52:56
【 課題 】http://rg550.hp.infoseek.co.jp/cgi-bin/joyful/main.htm 813.txt
【 形態 】1. Javaアプリケーション(main()で開始)
【 GUI  】その他
【 期限 】10月22日
【 Ver  】1.6.0-14

417 :デフォルトの名無しさん:2009/10/21(水) 13:41:53
application/octet-stream
ほお。

418 :デフォルトの名無しさん:2009/10/21(水) 14:17:33
>>416
http://codepad.org/v0Q03Ks4

419 :デフォルトの名無しさん:2009/10/21(水) 14:53:05
メモ帳を作成していますができません。メニューにファイルとあって、
それをクリックするとメニューアイテムの新規作成、ファイルの読込、ファイルの保存と
表示されます。外観はwinのメモ帳とほぼ同じです。

【 課題 】
初期実行画面(メニューバーの"ファイル"をクリックした状況が下記のように表示される
簡単なメモ帳機能を有するプログラムを作成しなさい。(写真が載っている。)
TinyMemo、Panels、FileIOの3個のクラスで実現してください。ただし、Panelクラスでは部品
(MenuBar,TextAreaなど)定義を行い、FileIOクラスでは、ファイルの読込、保存の処理を
行います。
新規作成アイテムをクリックすると、画面が初期化(削除)されるようにしてください。
また、ファイルの読込、保存で、ファイル名の選択はFileDialogを使ってください。

【 形態 】1. Javaアプリケーション(main()で開始)/

【 GUI  】1. AWTのみ

【 期限 】11月1日まで

よろしくお願いします。

420 :デフォルトの名無しさん:2009/10/21(水) 23:11:46
穴埋めとかクラスの数を指定とか、うざい課題が多いな
クラス数とか指定する必要なんてないだろうに

421 :デフォルトの名無しさん:2009/10/22(木) 01:33:41
あなたの宿題じゃないんですからうざければわざわざやらなくてもいいんですよ

422 :デフォルトの名無しさん:2009/10/22(木) 04:42:35
>>421
おかげさまで、やらないことにしました。

423 :デフォルトの名無しさん:2009/10/22(木) 22:33:39
>>419
ttp://rg550.hp.infoseek.co.jp/cgi-bin/joyful/img/814.java
1.6.0_16+WinXPでTextAreaの最末尾が改行だと
コンポーネントをマウスクリックするなどすると
その最後の改行がされないように見える現象が起きるけどAWTの不具合なのかな
データ的に消えるわけではないしカーソルキーでカレットを次の行に移動できるけど
Frame f = new Frame();
f.add(new TextArea());
f.pack();
f.setVisible(true);
単にフレームに貼り付けたこれだけでも再現するし1.5.0_21でも同じだった
最近AWTコンポーネントをほとんど使わないので気がつかなかったがうちの環境だけ?

424 :デフォルトの名無しさん:2009/10/23(金) 00:10:02
【 課題 】
(1) クラスQintegerを改良し、更に長い桁の計算ができるようにせよ。
(2) 改良したQintegerを利用し、Qfactで100!の正確な値を計算せよ
・クラスQintegerの仕様は変更しない(コンストラクタ等の追加は可)

【 形態 】1. Javaアプリケーション(main()で開始)
【 期限 】10月25日(日)
【 Ver  】1.6.0_15
【 補足 】
[1]Qinteger.java(sample) http://rg550.hp.infoseek.co.jp/cgi-bin/joyful/img/815.java
[2]Qfact.java(sample)+Qintegerの補足説明 http://rg550.hp.infoseek.co.jp/cgi-bin/joyful/img/816.java
[3] [1]を[2]の説明に基づいて自身で作成したQinteger.java http://rg550.hp.infoseek.co.jp/cgi-bin/joyful/img/817.java

よろしくお願いします

425 :デフォルトの名無しさん:2009/10/23(金) 00:41:18
もうちょいちゃんと説明書いてくれ。
[3]のコードを期待した動きをするように直せばいいんだな?
先頭コメントつけた2行を直した。

public Qinteger add(Qinteger n){
/*貼り付けできないから省略....*/
for(i=4; i<MAXARR; i++){
temp = (long)num[i] + (long)n.num[i] + (long)carry ;
/*上の行に修正*/ temp = (long)num[i] + (long)carry ;
rnum[i] = (int) (temp % MAXINT) ;
carry = (int) (temp/MAXINT) ;
}
return new Qinteger(rnum);
}

public String toString(){
java.text.DecimalFormat df = new java.text.DecimalFormat("000000000");
StringBuilder rs = new StringBuilder();
for(int i=MAXARR-1; i>=0; i--)
rs.append(rs.length() == 0 ? trimzero(df.format(num[i])) : df.format(num[i]));
/*上の行に修正*/ rs.append(trimzero(df.format(num[i])));
return new String(rs);
}

426 :デフォルトの名無しさん:2009/10/23(金) 00:43:53
/*上の行に修正*/
で始まってる行消してコンパイルしてくれ。

427 :デフォルトの名無しさん:2009/10/23(金) 00:48:44
>>424
ごめん。もう一箇所直してた。

private static String trimzero(String arg){
int i = 0, n = arg.length();
while( i < n && arg.charAt(i) == '0' ){
i++ ;
}
return( arg.substring(i) );
}

428 :424:2009/10/23(金) 01:10:53
>>425
おかげ様で無事にコンパイルでき動かすことができました
わざわざこちらのコードを訂正していただく形で素早い回答ありがとうございました

429 :419:2009/10/23(金) 05:49:21
>>423 ありがとうございます。

430 :デフォルトの名無しさん:2009/10/27(火) 01:48:44
【 課題 】http://uploader.sakura.ne.jp/src/up1280.jpg
【 形態 】1. Javaアプリケーション
【 GUI  】4. 制限なし
【 期限 】10月27日
【 Ver  】1.6.0_14
【 補足 】携帯で撮影したものを繋げました

431 :デフォルトの名無しさん:2009/10/27(火) 02:12:59
歪んでるはコントラスト低いはでやる気が出にくい課題だなw

432 :デフォルトの名無しさん:2009/10/27(火) 03:09:44
>>430
ttp://rg550.hp.infoseek.co.jp/cgi-bin/joyful/img/818.java

433 :デフォルトの名無しさん:2009/10/27(火) 11:03:00
>>432
ありがとうございます

434 :デフォルトの名無しさん:2009/10/27(火) 12:23:07
【 課題 】http://www1.axfc.net/uploader/Sc/so/49653
【 形態 】1. Javaアプリケーション
【 GUI  】4. 制限なし
【 期限 】10月27日
【 Ver  】1.6.0_07

435 :デフォルトの名無しさん:2009/10/27(火) 14:50:12
できれば5-2もお願いします

436 :デフォルトの名無しさん:2009/10/27(火) 18:33:56
はやくしろよ!時間なくなるだろ!

437 :デフォルトの名無しさん:2009/10/27(火) 19:53:36
>>434ですが>>436ではありません

438 :デフォルトの名無しさん:2009/10/28(水) 13:30:44
http://rg550.hp.infoseek.co.jp/cgi-bin/joyful/main.htm

【 課題 】http://rg550.hp.infoseek.co.jp/cgi-bin/joyful/main.htm
【 形態 】2. Applet
【 GUI  】制限なし
【 期限 】091029
【 Ver  】1.6.0_14もしくは16

439 :デフォルトの名無しさん:2009/10/28(水) 13:34:20
>>434じゃないけどこの課題の5-1のレベル3までできたらお願いしたいです。
期限は10/29の夜9時までです

440 :デフォルトの名無しさん:2009/10/28(水) 14:34:40
>>439
何でだよ・・
まぁいいや、やってやるからちょっと待ってろ。

441 :デフォルトの名無しさん:2009/10/28(水) 16:14:34
>>438
すいませんファイルは819です

442 :デフォルトの名無しさん:2009/10/29(木) 12:11:41
【 課題 】h ttp://rg550.hp.infoseek.co.jp/cgi-bin/joyful/img/820.txt
【 形態 】2. Applet
【 GUI  】制限なし
【 期限 】11/3
【 Ver  】1.6.0_16

よろしくおねがいします

443 :デフォルトの名無しさん:2009/10/29(木) 17:18:50
【 課題 】(nの階乗 < 10000)が成り立つ最大の n を求める.ループは while 文を利用すること.
n の階乗とは, n! := 1×2×3×…×n である.[ヒント]: 10000 を超えるまで順に階乗の n を増やし,階乗が 10000 を超えた時点で最後の n を乗算する前の n を出力する.与えられた課題文をそのまま書きます
【 形態 】1. Javaアプリケーション(main()で開始)
【 GUI  】4 【 期限 】29

444 :デフォルトの名無しさん:2009/10/31(土) 00:06:20
【課題】課題は3つあります。
http://www.dotup.org/uploda/www.dotup.org318192.zip
【形態】Javaアプリケーション【GUI】制限なし
【期限】11/2
【Ver】1.6.0_16

宜しくお願いします。

445 :デフォルトの名無しさん:2009/11/01(日) 11:20:12
>>444
リンクが死んでいるよ

446 :デフォルトの名無しさん:2009/11/01(日) 14:14:15
>>444です。リンク先の障害でファイルが削除されてしまったので再度アップしました。
宜しくお願いします。
http://www.dotup.org/uploda/www.dotup.org321867.zip

>>445
ご指摘有り難うございました。

447 :デフォルトの名無しさん:2009/11/01(日) 15:10:01
>>446
http://rg550.hp.infoseek.co.jp/cgi-bin/joyful/img/821.java

最低限の処理しかやってない
気になるとこあったら自分で直してね

448 :デフォルトの名無しさん:2009/11/01(日) 21:01:09
>>447
少し修正しましたが無事実行例通り動作しました。
有り難うございました。

449 :デフォルトの名無しさん:2009/11/02(月) 17:05:52
【 課題 】次の条件を満たすjavaプログラムを作成しなさい。
(1)分岐構造と反復構造をともに一つ以上持つ
2)一つ以上のメソッドを利用

【 期限 】提出期限は11/2 19:30
【 補足 】できるだけ既存のものとかぶらない

お願いします。

450 :デフォルトの名無しさん:2009/11/02(月) 22:23:51
既存てなんだよw

451 :デフォルトの名無しさん:2009/11/02(月) 22:57:11
変態的な書き方がお望みか?

452 :デフォルトの名無しさん:2009/11/03(火) 01:29:50
だれか>>442をお願いします

453 :しょしんしゃです:2009/11/03(火) 08:54:39
public class ans443 {
  public static void main(String[] args) {
    int i=1, a=1;
    while(a<10000) {
      System.out.println(i+" "+a);
      a *= i++;
    }
    System.out.println("ans="+(i-1));
  }
}

454 :デフォルトの名無しさん:2009/11/06(金) 14:38:15
【 課題 】http://rg550.hp.infoseek.co.jp/cgi-bin/joyful/main.htm 822.txt
【 形態 】1. Javaアプリケーション(main()で開始)
【 GUI  】4. 制限なし
【 期限 】11/9 15:00
【 補足 】よろしくお願いします。

455 :デフォルトの名無しさん:2009/11/06(金) 17:57:10
>454
import java.util.*;

public class P68_454 {
public static void main(String[] args) {
System.out.printf("正の整数を入力してください: ");
Scanner scanner = new Scanner(System.in);
int input = scanner.nextInt();
System.out.printf("%dは" + (isPrime(input) ? "素数です。%n" : "素数ではありません。%n"), input);
System.out.printf("%dの最小の素因数は%dです。%n", input, minimumDivisor(input));
}

private static boolean isPrime(int input) {
if(input == 1) return false;
for(int i=2; i<input; i++) {
if(input % i == 0) return false;
}
return true;
}

private static int minimumDivisor(int input) {
if(input == 1) return 0;
for(int i=2; i<input; i++) {
if(input % i == 0) return i;
}
return 0;
}
}

456 :デフォルトの名無しさん:2009/11/06(金) 23:24:28
【 課題 】クラスQintegerで掛け算を行うメソッドtimesを作成し、n!の結果を求めるプログラムQfact.javaがBigIntegerを用いた場合(Bfact.java)の計算速度に近づけるようにせよ。
http://www.dotup.org/uploda/www.dotup.org336397.zip
【 形態 】1. Javaアプリケーション(main()で開始)
【 期限 】11月8日(日)まで
【 Ver  】1.6.0_16
【 補足 】上記ファイルのQinteger.javaに含まれるメソッドtimesは自分で作成途中のものなので無視して構いません

よろしくお願いします

457 :デフォルトの名無しさん:2009/11/07(土) 03:28:13
>>456
前に見たような課題だな。

print()が遅いから計算だけをそれぞれ実行させた場合
BigInteger:45ms
Qinteger:80ms
くらいだった。あとは自力でチューニングしてみてくれ。

  private int maxDigit = 0;
  public Qinteger times(int n) {
    long temp;
    int carry = 0;
    for (int i = MAXARR - 1; maxDigit < 0 && i >= 0; i--) if (num[i] != 0) { maxDigit = i; break; }
    for (int i = 0; i < MAXARR && i <= maxDigit; i++) {
      if (num[i] == 0) { num[i] = carry; carry = 0; continue; }
      temp = (long)num[i] * n;
      num[i] = carry + (int)(temp % MAXINT);
      carry = (int)(temp / MAXINT);
      if (i == maxDigit && carry != 0) maxDigit++;
    }
    return this;
  }

458 :デフォルトの名無しさん:2009/11/07(土) 03:29:49
すまそ。貼り付け前に修正して漏れてた。

正 : private int maxDigit = -1;
誤 : private int maxDigit = 0;


459 :デフォルトの名無しさん:2009/11/07(土) 06:13:11
>>457
無事プログラムを実行できました。ありがとうございました

460 :デフォルトの名無しさん:2009/11/07(土) 23:41:29
【 課題 】マップに敵を配置する。
http://rg550.hp.infoseek.co.jp/cgi-bin/joyful/main.htm 824.zip
【 形態 】1. Javaアプリケーション(main()で開始)
【 期限 】11月20日
【 Ver  】1.6.0_13
【 補足 】詳細はフォルダ内「課題補足」

宜しくお願いいたします。

461 :デフォルトの名無しさん:2009/11/08(日) 23:35:59
【 形態 】1. Javaアプリケーション(main()で開始)
【 期限 】11月11日 
【 Ver  】1.6.0_11


課題です
http://rg550.hp.infoseek.co.jp/cgi-bin/joyful/img/825.zip

お願いいたします

462 :デフォルトの名無しさん:2009/11/09(月) 12:51:46
>>455
作動確認できました。ありがとうございます。

463 :デフォルトの名無しさん:2009/11/09(月) 14:35:44

【課題】
http://www51.tok2.com/home/rg550/cgi-bin/hosoku/img0047.zip
【形態】Javaアプリケーション
【GUI】制限なし
【期限】11/12
【Ver】1.6.0_16

課題は2つです。
宜しくお願いします。

464 :デフォルトの名無しさん:2009/11/09(月) 17:18:38
0〜30の数字の中からランダムに5つ重複なしで選びたいんですが
どうやったらいいでしょうか?
もしそういう関数があれば教えてください

期限:なるべく早く

465 :デフォルトの名無しさん:2009/11/09(月) 17:23:11
Java質問スレで見てたけどこんな感じ?

import java.io.*;
import java.util.*;

public class RandomStack{
public static void main(String[] args){
Random rdm = new Random();
int[] stacks = new int[31];
for(int i=0;i<31;i++){
stacks[i] = i;
//System.out.println(stacks[i]);
}
int trda;
int trdb;
int tmp;
for(int i=0;i<1000;i++){
trda = rdm.nextInt(31);
trdb = rdm.nextInt(31);
tmp = stacks[trda];
stacks[trda] = stacks[trdb];
stacks[trdb] = tmp;
}
for(int i=0;i<5;i++){
System.out.println("["+i+"]:"+stacks[i]);
}
}
}


466 :464:2009/11/09(月) 17:29:13
>>465
ありがとうございます!

467 :デフォルトの名無しさん:2009/11/10(火) 11:31:05
>>465
テンプレも守れない奴に答えんな馬鹿。

468 :デフォルトの名無しさん:2009/11/10(火) 19:10:03
>>467
ちゃんとテンプレ使えって教えてあげればいいだけなのに
お前こそバカ

469 :デフォルトの名無しさん:2009/11/10(火) 19:26:22
どなたか>>461をお願いします

470 :デフォルトの名無しさん:2009/11/10(火) 20:56:17
【 課題 】塗りつぶしを行うアプリをアプリケーションに書き換えよ。
http://rg550.hp.infoseek.co.jp/cgi-bin/joyful/img/826.java
【 形態 】1. Javaアプリケーション(main()で開始)
【 GUI  】制限なし
【 期限 】11月13日
【 Ver  】1.6.0_16  

自分で挑戦してもエラーが出てしまい困っています。
どうぞよろしくお願いします。

471 :デフォルトの名無しさん:2009/11/11(水) 18:42:06
>>468
とりあえず、だ。
>>467が誰にレスしてるか考えてから書き込もうか。

>>465はテンプレ違反に答えちゃテンプレ違反が増える元になるから答えたらまずいよ。
>>467はもっと優しく言った方が言いよ。そうすれば>>468みた
いな無駄レスなかっただろうしね。


472 :デフォルトの名無しさん:2009/11/11(水) 21:50:15
【 課題 】
Gaussの消去法(Pivot選択付き)を用いた逆行列を求めるプログラムを作成し
Aについて、逆行列A^-1を求めよ
A=
{2,-1,1}
{-1,2,-1}
{2,-2,-1}

【 形態 】1. Javaアプリケーション(main()で開始)
【 期限 】11月15日 
【 Ver  】1.6.0_11
【 補足 】

Pivot選択『なし』でのGaussの消去法と逆行列を求めるプログラム
http://rg550.hp.infoseek.co.jp/cgi-bin/joyful/img/827.java
はできたのですが
前進消去部分をどのように変えれば、Pivot選択付きになるのかがわかりません
数学的なものに偏ってしまって申し訳ないのですが
わかる方がいましたらお願いします

473 :デフォルトの名無しさん:2009/11/11(水) 22:49:11
>>463をお願いします

474 :デフォルトの名無しさん:2009/11/11(水) 23:39:53
【 課題 】http://www1.axfc.net/uploader/File/so/34028
【 形態 】1. Javaアプリケーション
【 GUI  】4. 制限なし
【 期限 】11月12日
【 Ver  】1.6.0_07
【 補足 】レベル1まででもできればいいのでお願いします。

475 :デフォルトの名無しさん:2009/11/12(木) 21:32:33
【課題提示用テンプレ】
【 課題 】キーボードから身長を入力し、標準体重を作成するプログラムを作成しなさい。
【 形態 】1. Javaアプリケーション(main()で開始)
【 GUI  4. 制限なし/
【 期限 】11月12日の22時半までにお願いします
【 Ver  】java version "1.6.0_17"
【 補足 】標準体重 = 身長(m)2乗×22 でお願いします。

<入力例>
身長=170

<出力例>
身長 (170) : 標準体重=63.5799999999999kgです。

専門学校1年生でまだ簡単な問題なんですが躓いてしまいました。おねがいします

476 :デフォルトの名無しさん:2009/11/13(金) 00:55:35
import java.io.*;
class ans475 {
  public static void main(String[] args) {
    int height; double weight;
    InputStreamReader in = new InputStreamReader(System.in);
    BufferedReader br = new BufferedReader(in);

    try {
      System.out.print("身長(cm)=");
      height = Integer.parseInt(br.readLine());
    } catch (IOException e) {
      System.out.println("入力エラー");
      return;
    } catch (NumberFormatException e) {
      System.out.println("数値エラー");
      return;
    }
    weight = height/100. * height/100. * 22;
    System.out.println("身長="+ height + "(cm) : 標準体重=" + weight + "(kg)です。");
  }
}

477 :デフォルトの名無しさん:2009/11/13(金) 06:59:48
>>476
ありがとうございます

478 :デフォルトの名無しさん:2009/11/14(土) 11:05:01

どなたか>>463をお願いします

479 :デフォルトの名無しさん:2009/11/14(土) 16:17:55
>463
import java.io.*;
public class P68_463_1 {
public static void main(String[] args) throws IOException {
new P68_463_1().process();
}
public void process() throws IOException {
System.out.printf("文字列を入力してください%n");
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
String str = br.readLine();
char[] result = new char[str.length()];
for(int i=0; i<str.length(); i++) {
result[i] = str.charAt(i);
}
for(int i=0; i<result.length-1; i++) {
for(int j=result.length-1; j>i; j--) {
if(result[j] < result[j-1]) {
char tmp = result[j];
result[j] = result[j-1];
result[j-1] = tmp;
}
}
}
System.out.printf(new String(result) + "%n");
}
}

480 :デフォルトの名無しさん:2009/11/14(土) 16:18:41
>463
public class P68_463_2 {
public static void main(String[] args) {
new P68_463_2().process();
}
public void process() {
int[] count = new int[10];
int sum = 0;
for(int i=0; i<100; i++) {
int num = (int)(Math.random() * 10);
System.out.printf("%d ", num);
count[num]++;
sum += num;
}
System.out.printf("%n");
for(int i=0; i<count.length; i++) {
System.out.printf("%d ", i);
for(int j=0; j<count[i]; j++) {
System.out.printf("*");
}
System.out.printf(" %d%n", count[i]);
}
System.out.printf("平均 " + sum*1.0/100 + "%n");
}
}

481 :デフォルトの名無しさん:2009/11/14(土) 18:16:58
>>479-480
有難うございます!

482 :デフォルトの名無しさん:2009/11/15(日) 22:28:57
便乗して>>472もお願いします

483 :デフォルトの名無しさん:2009/11/16(月) 12:10:50
嫌です

484 :デフォルトの名無しさん:2009/11/16(月) 14:48:41
【 課題 】http://kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/10127.txt
【 形態 】1. Javaアプリケーション
【 GUI  】4.
【 期限 】11月1日
【 Ver  】1
【 補足 】おねがいします

485 :484:2009/11/16(月) 15:40:48
すいません
期限は今日の16日です

486 :デフォルトの名無しさん:2009/11/16(月) 16:07:28
嫌です

487 :デフォルトの名無しさん:2009/11/18(水) 22:58:42
【 課題 】http://rg550.hp.infoseek.co.jp/cgi-bin/joyful/img/834.txt
【 形態 】1. Javaアプリケーション
【 GUI  】4. 制限なし
【 期限 】11月25日
【 Ver  】
【 補足 】プログラムの指定された設定の部分以外のクラス名などはなんでもいいです
      課題がたくさんあるのでどれか一つでもやってくださると凄く助かります。よろしくお願いします




488 :デフォルトの名無しさん:2009/11/19(木) 01:05:43
【 課題 】マウスでダブルクリックした場所にr=5の円を描画できるようにしなさい
     その際すでに作成された円と重なる場合は新たに作成しない
【 形態 】 2.applet
【 GUI  】 4. 制限なし
【 期限 】11月25日 
【 補足 】

お願いします




489 :デフォルトの名無しさん:2009/11/19(木) 15:36:30
>>487-488
面白い事した方の問題を解いてやるよ。

490 :デフォルトの名無しさん:2009/11/19(木) 15:37:06
【 課題 】http://edu.net.c.dendai.ac.jp/ad1/2009/kadai.html
【 形態 】javaアプリケーション
【 期限 】2009年11月25日くらいまでに。
【 補足 】困っています。お願いします。

491 :デフォルトの名無しさん:2009/11/19(木) 16:16:21
>487,488,490
何故バージョンを書かない?

492 :デフォルトの名無しさん:2009/11/19(木) 17:26:46
>491
488ですがversionは"1.6.0_14"です

>489
自分不器用ですから

493 :デフォルトの名無しさん:2009/11/20(金) 01:03:04
【 課題 】http://rg550.hp.infoseek.co.jp/cgi-bin/joyful/img/840.txt
【 形態 】1. Javaアプリケーション
【 GUI  】制限なし
【 期限 】11/20の16:00までに
【 Ver  】1.6.0_16
【 補足 】2進数のみで36進数はいいのでお願いします。

494 :デフォルトの名無しさん:2009/11/20(金) 02:13:04
>>493

/*10進数から2進数に変換するメソッド*/
public void decToBinary(int decInput) {
if (decInput == 0) binaryAns.add(new Integer(0));
for (int i = decInput; i != 0; i >>>= 1)
binaryAns.add(new Integer(i & 0x01));
Collections.reverse(binaryAns);
}

495 :デフォルトの名無しさん:2009/11/20(金) 17:00:21
>491
"1.6.0_13"です

496 :デフォルトの名無しさん:2009/11/20(金) 17:16:08
>491
490ですが"1.6.0_13"です

497 :デフォルトの名無しさん:2009/11/21(土) 15:43:40
>>488
http://pc11.2ch.net/test/read.cgi/tech/1196543694/278

498 :デフォルトの名無しさん:2009/11/21(土) 20:51:48
>490
課題1だけやった。
ttp://www.wikihouse.com/java/index.php?SourcePost__________#tabb0f8b

499 :デフォルトの名無しさん:2009/11/22(日) 13:03:15
>>498
助かりました。
ありがとうございます。

500 :デフォルトの名無しさん:2009/11/22(日) 13:36:28
>>493
問題文見たんだが,ソースがカオスなのでちょっと変えた
http://codepad.org/dVG1otrB

ダメって言われたら,理由を聞いてこい
おもに「binaryAnsとthirtyAnsがArrayList<Integer>なのはどういう結果を望んで,どういう使い方を望んでいるの?」と,
32進数をArrayList<Integer>にどうやって格納したいのか分からん

トリッキーなことは一切していないので Integer.toString(int, int) を使うなんて卑怯だ!
って言われたら家庭崩壊しね

501 :デフォルトの名無しさん:2009/11/22(日) 17:34:52
>>500
494が回答済みじゃん。
基数ごとの各桁をIntegerで持たせるんだろ。36進数なら値0-35のIntegerが桁数分並ぶんだよ。
showはおそらくIntegerをint変換して、String0-Zを要素とするString配列のIndexとして使うんでしょ。

設計はクソだが、APIをうまく使う練習をさせるための問題ではないのでは。
勉強のために多少の再発明(劣化コピー)は仕方がないように思う。

502 :デフォルトの名無しさん:2009/11/22(日) 18:17:31
>>501
全て推測しかないから勝負になりまへん

503 :デフォルトの名無しさん:2009/11/22(日) 18:21:05
いや、勝負っていうか、穴埋めの問題文自体書き換えたら
解答になってないでしょ。機能を作る問題じゃないんだからさ。

504 :デフォルトの名無しさん:2009/11/22(日) 18:24:29
設問不備って書いてあるよね?
ちゃんと読んでる?

505 :デフォルトの名無しさん:2009/11/22(日) 18:36:06
>>504
ごめん見逃してたのかも。どこに書いてある?>設問不備

506 :デフォルトの名無しさん:2009/11/22(日) 18:44:50
ああ、勘違いしてた。

500の主張が「設問不備だからオリジナルのソースを踏襲する必要がない」って意味ね。
なかなか自由な雰囲気で勉強してきたみたいだねw

507 :デフォルトの名無しさん:2009/11/22(日) 20:30:34
のだめか

508 :デフォルトの名無しさん:2009/11/22(日) 20:49:58
そもそもプログラミングなんて勉強してないし^p^

509 :デフォルトの名無しさん:2009/11/23(月) 17:16:03
【 課題 】
http://rg550.hp.infoseek.co.jp/cgi-bin/joyful/img/841.txt
うpする為に拡張子を変えています、拡張子をtxt→jpgに変えてください。
図の有向グラフの最短経路を求めよ。
初期値がMAXでアルゴリズムを作れ。
【 形態 】1. Javaアプリケーション(main()で開始)
【 期限 】11月31日までにお願いします。
【 Ver  】1.6.0_16
【 補足 】要所要所の動作をコメントアウトで説明してもらえると助かります、よろしくお願いします。


510 :デフォルトの名無しさん:2009/11/24(火) 14:20:18
【 課題 】http://rg550.hp.infoseek.co.jp/cgi-bin/joyful/img/842.txt
【 形態 】eclipse
【 GUI 】制限なし
【 期限 】11/26
【 Ver 】1.6.0_16
【 補足 】お願いします。(1),(2)のみでも構いません。

511 :デフォルトの名無しさん:2009/11/25(水) 00:05:46
> (1)学生の姓名を入力し、該当する学生の学籍番号、学年、席次を表示する。
>    次のデータは学生の学籍番号、名前、欠席日数、席次を配列linesで格納したものです。
>    String[] lines = { "0001, 山田太郎,2,3,42", "0002, 田中一郎,2,6,31", "0003, 斎藤花子,2,2,4" };
学籍番号  名前   欠席日数 席次を配列  学年・・・?
 ↓       ↓    ↓      ↓       ↓
0001   , 山田太郎 , 2     , 3       ,42

512 :デフォルトの名無しさん:2009/11/25(水) 00:56:00
【 課題 】ナップサック問題のプログラムを理解するために十分な量の
      コメントをソースに書け
      http://rg550.hp.infoseek.co.jp/cgi-bin/joyful/img/844.java
      http://rg550.hp.infoseek.co.jp/cgi-bin/joyful/img/843.java
【 形態 】1. Javaアプリケーション(main()で開始)
【 GUI  】制限なし
【 期限 】11/26
【 Ver  】1.6.0_16
【 用語 】
【 補足 】プログラムは遺伝的アルゴリズムを用いています。
      特に変更箇所と書かれたところを詳しく書いてもらえればうれしいです。

513 :デフォルトの名無しさん:2009/11/25(水) 01:13:19
>>511
学籍番号 名前 学年 欠席日数 席次です
すみません

514 :デフォルトの名無しさん:2009/11/25(水) 01:26:03
>>512
class ... {
}
//ここまで理解した

とかか…

515 :デフォルトの名無しさん:2009/11/25(水) 02:05:19
>>512
http://rg550.hp.infoseek.co.jp/cgi-bin/joyful/img/844.java 
 ->http://codepad.org/JEzL3ZJ7
http://rg550.hp.infoseek.co.jp/cgi-bin/joyful/img/843.java 
 ->http://codepad.org/6leUtQq8

勉強になったわ.
用語とかは適当に雰囲気つかんで直してくだちぃ

516 :デフォルトの名無しさん:2009/11/25(水) 02:06:38
>>515
適用度ってなんだ適応度じゃないか(´ω`;

直しておいてね!

517 :デフォルトの名無しさん:2009/11/25(水) 02:36:20
>>510
http://codepad.org/XA2ZKtBo
適当に作った

518 :デフォルトの名無しさん:2009/11/25(水) 02:37:41
>>517
デバッグ用のコード消してなかった

97行目の args = new String[] {"-q"}; の一行丸ごと消しておいて^p^;

519 :デフォルトの名無しさん:2009/11/25(水) 08:48:41
componentAction

520 :デフォルトの名無しさん:2009/11/25(水) 19:10:26
>>515
ありがとうございます。本当に助かりました!

521 :デフォルトの名無しさん:2009/11/25(水) 21:48:13
>>487なのですがどなたかやっていただけないでしょうか?

522 :デフォルトの名無しさん:2009/11/25(水) 22:28:58
>>487

書いてみた。
http://rg550.hp.infoseek.co.jp/cgi-bin/joyful/img/845.zip

523 :522:2009/11/25(水) 23:08:34
なんか今みたら[6]の問題読み間違えてるわ。
ちょっと直すから時間くれ。

524 :522:2009/11/25(水) 23:23:00
>>487
[6]は一応こんな感じでいいと思う
http://rg550.hp.infoseek.co.jp/cgi-bin/joyful/img/846.java

525 :522:2009/11/25(水) 23:27:52
なんどもすまん。反省してる。
いちどアンダーフローしたあとバグるね。
コメントつけた行足しておいて。

public int pop() {
if (--size < 0) {
++size; //この行足しといて
throw new IllegalStateException();
}

526 :デフォルトの名無しさん:2009/11/26(木) 04:43:50
>>522
マジでありがとうございます。結構量あったのにやっていただけて感謝です

527 :デフォルトの名無しさん:2009/11/26(木) 16:02:22
【 課題 】 http://www.dotup.org/uploda/www.dotup.org397919.txt.html
【 形態 】1
【 GUI  】4
【 期限 】11/27まで
【 Ver  】1.6.0_16

できれば動作の解説もお願いします

528 :デフォルトの名無しさん:2009/11/26(木) 17:24:13
>>490
こちらの課題2をやっていただけないでしょうか?

529 :デフォルトの名無しさん:2009/11/26(木) 18:18:05
>>527
importが*な時点でカスだな

530 :デフォルトの名無しさん:2009/11/26(木) 19:27:56
>>529
しかし、JDKのソースコードを読むと普通にimportに*を使っている

531 :デフォルトの名無しさん:2009/11/26(木) 21:38:51
"you are a student" と "You are Student"
を同じと判定したいの?文脈から見るとそうとれるけど、
ケースセンシティブの問題以前に冠詞の有無は無視するの?

532 :sage:2009/11/27(金) 01:16:51
>>531
あ、失礼しました冠詞についてはただのミスです
単にアルファベットを識別する場合は大文字小文字の差異を誤差として認識しない
ということです

533 :orz:2009/11/27(金) 01:17:33
失礼しました・・・

534 :デフォルトの名無しさん:2009/11/27(金) 02:13:43
以下の一行修正するだけでいいんじゃね。

boolean tokenMatching(String token1, String token2){
  if(token1.toLowerCase().equals(token2.toLowerCase())) //この行修正

実行結果
you are a student
You ? a Student
{?=are}
true

535 :デフォルトの名無しさん:2009/11/27(金) 02:28:58
ああ、解説も欲しいのね。

どの程度の解説が欲しいのかわからん。
もうちょい具体的に書いてくれ。

一応簡単に書いておくと、
文字列をトークン(空白区切り)に切り出して、
それぞれのトークン毎に相手のトークンと一致しているか比較している。
?で始まるトークンが来た場合は、相手方の文字列の
同じ位置のトークンと一致している(ワイルドカード)と見なすらしい。
ただし、同じ?始まりのトークン(たとえば?aが)もう一度出現した場合、
最初に出現したときに一致した相手方トークンに置き換えられる。

you are a student     相手方文字列
you ?a ?b student -> (置換え結果 you are a student) OK
you ?a ?a studen -> (置換え結果 you are are student) NG

536 :orz:2009/11/27(金) 02:38:18
>>534
なるほど、指定したものをあらかじめすべて小文字にすればいいのですね
ありがとうございました

537 :デフォルトの名無しさん:2009/11/27(金) 02:42:22
?トークンが再出現したときにケースセンシティブになっちゃってたね。
以下の一行も修正してくれ

boolean tokenMatching(String token1, String token2){
  token1 = token1.toLowerCase(); //追加
  token2 = token2.toLowerCase(); //追加
  if(token1.equals(token2)) //もとの書き方に戻す

結果
ABC abc Abc xxx XXX
?Abc ?abC ?abc ?xxx xXx
{?xxx=xxx, ?abc=abc}
true

538 :デフォルトの名無しさん:2009/11/27(金) 04:14:19
重ね重ねありがとうございます

539 :デフォルトの名無しさん:2009/11/27(金) 16:23:27
【 課題 】三目並べゲームを作れ(以下は仕様)
      ・二人の対戦者が交互にO,Xの場所をマウスでクリックする
      ・マウスがクリックされたとき、対戦者のテーマ音を一回再生する
      ・既にO,Xがある場所が指定されたら、無視する
      ・勝敗が決定すると勝者のマーク(XorO)を赤で描画し、テーマ音を3回鳴らす
      ・勝敗が決すると入力を無視する
【 形態 】 Applet
【 GUI  】 制限なし
【 期限 】11月 30日
【 Ver  】1.6.0_10
【 補足 】自分でほぼ作ったんですがXが勝った場合にテーマ音が3回なりません
      http://www.dotup.org/uploda/www.dotup.org401130.java.html

あと再描画させると以前に描画させたOやXが消えてしまうので
paintメソッドの中でsuper.paint(g)を使ってないんですが、
それではなぜか処理が遅くなったので、updateメソッドを使って
その中でpaint(g)を直接呼び出してます
でも授業ではupdateメソッドはまだ習ってないのでどうかなって思ってます
何か他にいい方法がありましたらお願いします。

540 :デフォルトの名無しさん:2009/11/28(土) 13:35:10
【 課題 】コンピュータと対戦できるオセロプログラムのAIを作成せよ。
http://www.dotup.org/uploda/www.dotup.org404313.zip
【 形態 】1. Javaアプリケーション(main()で開始)
【 期限 】11月29日 正午12時
【 Ver  】1.6.0_16
【 用語 】α-β法(http://www.geocities.jp/m_hiroi/light/pyalgo24.html

【 補足 】
クラスBoardのメソッドAlphaBetaにおいて再帰的に評価を返し、最後に評価に対する最善手をChooseHandのメソッドfindmoveに返そうとしているのですが、
現状ではAlphaBeta下部記述のif(level==top)の条件を満たさず
評価値を返してしまっているため手の入力ができずエラーが発生してしまいます。
とりあえず動作することが目標ですが、思考ルーチンについて何かアドバイスがありましたら
指摘していただけると嬉しいです

よろしくお願いします。

541 :デフォルトの名無しさん:2009/11/28(土) 14:27:47
【 課題 】http://rg550.hp.infoseek.co.jp/cgi-bin/joyful/img/847.txt
【 形態 】1. Javaアプリケーション(main()で開始)
【 期限 】12月3日 
【 Ver  】 1.6.0_16
【 用語 】
【 補足 】 Unifyのプログラムです。
よろしくお願いします

542 :デフォルトの名無しさん:2009/11/28(土) 23:26:53
>>541
下の様に修正すればおk

boolean var(String str1) {
    return str1.indexOf('?') != -1;
}

要は"?"を一つでも含むトークン列全体は全体として変数とみなす.
"name(?rose)"っていう変数扱いになる
なんか釈然としないけど

543 :デフォルトの名無しさん:2009/11/28(土) 23:50:26
>>542
解決できました。ありがとうございます。

544 :デフォルトの名無しさん:2009/11/29(日) 10:38:24
>>540
まだ居るんかな。
やりたい事は↓2つだと思うんだけどアルファとベータがこんがらがってる印象。(あと毎回アルファとベータ初期化しちゃだめだよ)
・プレイヤーの場合は自分の手の中で最大値の評価値(アルファ)を探し出し、返却する
・プレイヤーは現在の最小の評価値(ベータ値)を上回る評価値が出てきた場合は探索を終了する(ベータカット)
※二つ目はアルファ値がベータ値を上回ったら終了と一緒。

イメージとしてはこんな感じじゃない?動作確認してなくて悪いけど。
http://rg550.hp.infoseek.co.jp/cgi-bin/joyful/img/849.txt


545 :540:2009/11/29(日) 15:21:06
>>544
返事が遅れてすみません。回答ありがとうございます
指摘いただいた点とプログラムを参考にしてソースコードを変更したところ、プログラムの動作を確認しました
ですが盤面評価値の設定方法がおかしいのもあるかもしれませんが
コンピュータ同士で対戦を行わせた場合depth=17のときにo(白)が(2,2)に打つなど
期待した動作と異なる動作をしてしまいます(そのポイントは評価値を大幅に下げているので基本的に打たないはず)
もしよろしければ盤面評価(valueOfPlace)に対して期待できる動作を行うにはどうすればよいか指摘していただきたいです

現在のBoard.java http://rg550.hp.infoseek.co.jp/cgi-bin/joyful/img/849.txt

お手数お掛けしますがよろしくお願いします

546 :545=540:2009/11/29(日) 15:22:52
貼り付けたソースのURL間違えました・・・申し訳ない
正)http://rg550.hp.infoseek.co.jp/cgi-bin/joyful/img/850.java

改めてよろしくお願いします

547 :デフォルトの名無しさん:2009/11/29(日) 18:30:37
>>546
あーごめん
評価値算出するところちゃんと読んでなかった。手番(hand)による重み付けをしてたんだね。
というわけで、α-β法の頭のレベル0のときの三項演算は全く不要だった。
一番最初のソース通り、算出されたvalueの符号を逆転したものをリターンすればOK。

あと、ボードの大きさが10*10なのに対して評価関数の大きさが8*8だね。
ボードにアクセスする際のインデックスをそれぞれ+1してやる必要があるっぽ。

↑2つ直したら上手くいくんじゃないかなー。たぶん。
# 締め切り大幅に過ぎてるけど大丈夫なのかなー


548 :546:2009/11/29(日) 20:13:21
>>547
回答ありがとうございます
valueOfBoardでのhandを乗じた重み付けは>>540の段階では行っておらず、回答待ちの間に直していたものだったので
>>544で頂いた回答に合わせて記述を変更していないだけでこちらの不手際でした

boardの大きさは完全に配布されたソースの理解が足りてませんでした・・・外周に全て0を取ってたんですね
指摘頂いた点を修正したところ概ね期待通りの動作をしてくれました(石の位置による評価だけではあまり強くはないでしょうが)

講義の終盤に受講生が作成したAI同士を対戦させる流れになっていたので多少遅れても全く問題ないです
この度はありがとうございました

549 :名無しさん@お腹いっぱい。:2009/11/30(月) 02:47:53
【 課題 】http://oshiete1.goo.ne.jp/qa5482918.html
【 形態 】1. Javaアプリケーション(main()で開始)
【 期限 】11月30日8時半
【 Ver  】 1.6.0_16
【 用語 】
【 補足 】すぐできると言われたのですが理解が足らずできません。
      どうかよろしくお願いします。

550 :デフォルトの名無しさん:2009/11/30(月) 02:58:22
gooで教えてもらえよw

551 :名無しさん@お腹いっぱい。:2009/11/30(月) 03:44:53
gooで教えてもらえないんです;
自分でやっても全然わからないので…課題の上げ方すらわからないので…
本当すみません

552 :デフォルトの名無しさん:2009/11/30(月) 12:42:08
>>549
おっおっ(^ω^?
http://live.nicovideo.jp/watch/lv7336344

553 :デフォルトの名無しさん:2009/12/01(火) 13:19:26
>>539
すでに締め切りを過ぎているけど,ちょっと修正したのをうぷ。
音がでるようになったお。

http://rg550.hp.infoseek.co.jp/cgi-bin/joyful/img/851.java

554 :デフォルトの名無しさん:2009/12/02(水) 14:18:26
【 課題 】http://edu.net.c.dendai.ac.jp/ad1/2009/kadai.html
【 形態 】Javaアプリケーション
【 期限 】2009年12月10日ぐらい
【 補足 】課題2をお願いします

555 :デフォルトの名無しさん:2009/12/02(水) 14:49:37
>>554
http://rg550.hp.infoseek.co.jp/cgi-bin/joyful/img/853.java

課題2-5(テストプログラムは書いてない)まで。
それから、それぞれのファイルに分割してね〜。
ちなみに、課題のページに2chで聞くなゴラァって書いてあるよ〜。

556 :デフォルトの名無しさん:2009/12/02(水) 15:40:13
> この問題の解答は既に2ちゃんねるに質問され、解答が出ました。今後、同じ質問をあちこちで何度もするのはマナー違反ですので、お控え下さい。
なんだマルチポストしてたのか
質問者はちょっとググれカス

557 :デフォルトの名無しさん:2009/12/03(木) 00:03:04
この電大の問題、去年もここに投稿されてた気がする。
レポート作成上の注意点の過激さがステキだったから印象に残ってる。

558 :デフォルトの名無しさん:2009/12/03(木) 00:32:19
>>555
さすが、5流大w
チープだな・・・

その程度の課題しか与えないような、大学に金払ってまで通う必要があるのか?


559 :デフォルトの名無しさん:2009/12/03(木) 00:44:31
488ですが、どなたかお願いします。

560 :デフォルトの名無しさん:2009/12/03(木) 00:57:54
そこの先生評判いいみたいだよ(ソース楽天みんなの就職活動日記(でんだい))
発展問題の2-7なんか、ちゃんと実装させたら学生にはいい勉強になるね。

561 :デフォルトの名無しさん:2009/12/03(木) 01:08:33
燃料足りないぞ

とりあえずIDねーのに騒ぐな

562 :デフォルトの名無しさん:2009/12/03(木) 20:27:35
テキストから文章を読み込んでテキストエリアに表示させる方法教えてください
よろしくお願いします

563 :デフォルトの名無しさん:2009/12/03(木) 20:32:28
最初から難しい問題出せとか。サドいな

564 :デフォルトの名無しさん:2009/12/03(木) 21:32:08
>>562
>>1

そういう燃料は要らんから課題を投下しろw

565 :デフォルトの名無しさん:2009/12/04(金) 01:09:09
【 課題 】http://rg550.hp.infoseek.co.jp/cgi-bin/joyful/img/854.txt
【 形態 】1. Javaアプリケーション
【 期限 】12/4の16時
【 Ver  】1.6.0_16
【 補足 】テキストが長くなって見にくいかもしれませんがお願いします。

566 :デフォルトの名無しさん:2009/12/04(金) 04:36:19
>>565
http://rg550.hp.infoseek.co.jp/cgi-bin/joyful/img/855.txt

やってみた。
コメントもつけたので,わかると思う。
それから,1ファイルにまとめてあるので,自分で各ファイルに分割してください。

567 :デフォルトの名無しさん:2009/12/05(土) 05:26:10
>>566
ありがとうございました

568 :デフォルトの名無しさん:2009/12/05(土) 07:40:50
【 課題 】http://www.dotup.org/uploda/www.dotup.org424348.zip
【 形態 】Javaアプリケーション(main()で開始)
【 GUI  】制限なし
【 期限 】12/8
【 Ver  】1.6.0_16
【 補足 】お手数おかけしますが、宜しくお願いします

569 :デフォルトの名無しさん:2009/12/05(土) 11:59:21
>>568
釣りかと思ったけど、オレみたいなもんは釣られますよ。
できればテキストで上げてほしかったな。
htmlファイルは自分で用意して。

http://rg550.hp.infoseek.co.jp/cgi-bin/joyful/img/856.java

570 :名無し:2009/12/05(土) 13:27:02
10個の値の最大値を求めるプログラム
10人の身長データを順にcm単位で入力したとき、一番大きな身長は何cmかを表示するプログラムを作成しなさいというものです。
実行結果の例は以下のような感じです。
1人目の身長(cm)を入力してください:(入力待ち)
2人目の身長(cm)を入力してください:(入力待ち)

10人目の身長(cm)を入力してください:(入力待ち)
この中で一番身長が高い人は○○cmです。
(注意)
1最大値を記憶する変数を用意し、0を代入しておく。
2for文を用いて以下の処理を十回繰り返す。
2.1「?人目の身長(cm)を入力してください」と表示する
2.2キーボードから値を入力する。
2.3入力値が記憶している最大値より大きいかどうかをif文を用いて比較する。
2.3.1大きいならば、その値を最大値として代入する。
3結果を表示する
4できるだけ簡素に



571 :デフォルトの名無しさん:2009/12/05(土) 17:48:24
>>570
>>1も読めないのか
マルチポストだな

572 :デフォルトの名無しさん:2009/12/05(土) 17:50:05
>>570
http://okwave.jp/qa5499445.html
元の問題はこれ?じゃないよねww
http://akita-nct.jp/take/note/h20/info1e/pdf/info1e16-01.pdf

573 :568:2009/12/06(日) 05:16:29
>>569

>>568です。
折角書いていただいたのですが番号以外のところは変更無しで書いていただけませんでしょうか?
申し訳ありません。


574 :デフォルトの名無しさん:2009/12/07(月) 14:12:43
>>568をお願いします。

575 :568:2009/12/07(月) 16:40:04
自己解決しました。

576 :デフォルトの名無しさん:2009/12/09(水) 14:37:00
>>568
氏ね

577 :デフォルトの名無しさん:2009/12/09(水) 15:57:00
卒論とかでもいいですか?
出来なさ過ぎて泣きそうです。

578 :デフォルトの名無しさん:2009/12/09(水) 16:28:52
自己責任でどうぞ

579 :デフォルトの名無しさん:2009/12/09(水) 16:39:52
定時までなら付き合う

580 :デフォルトの名無しさん:2009/12/09(水) 17:59:49
>>577
自分の卒論を他人が1日とかでやっちゃったらショックだろうなぁ

581 :デフォルトの名無しさん:2009/12/09(水) 18:12:09
卒論レベルってどんな?
高分子解析プログラムとか5次元平面上にあるゼロ点を抽出するプログラムとか?

582 :デフォルトの名無しさん:2009/12/09(水) 18:13:53
情報系なら5台のPCに並列処理させるプログラムとか円周率を100万桁求めるとかかな?


583 :デフォルトの名無しさん:2009/12/09(水) 18:16:42
釣れる釣れるw

584 :デフォルトの名無しさん:2009/12/10(木) 12:10:36
【 課題 】 http://rg550.hp.infoseek.co.jp/cgi-bin/joyful/main.htmの857です
【 形態 】1. Javaアプリケーション(main()で開始)
【 GUI  】指定なし
【 期限 】12/11
【 Ver  】1.6.0_16

よろしくお願いします

585 :デフォルトの名無しさん:2009/12/10(木) 12:14:07
>>584
何周目だよ

586 :デフォルトの名無しさん:2009/12/10(木) 12:45:02
http://rg550.hp.infoseek.co.jp/cgi-bin/joyful/img/857.txt

587 :デフォルトの名無しさん:2009/12/10(木) 14:45:57
一連のユニフィケーションの課題は宮城大学かな
857.txtには自分が書いた物とか書いてるけど
大学のページにある資料のPDFとかJavaソースとかのままだ

588 :デフォルトの名無しさん:2009/12/10(木) 18:50:05
Javaでサイコロゲーム『ヨット』のプログラミングをつくらないといけないんですが
わかるかた教えてください。
ヨットはポーカーに似たゲームです。
よろしくお願いします。

589 :デフォルトの名無しさん:2009/12/10(木) 19:09:40
>>588
>>1
補足でゲームルールの説明も必要

590 :デフォルトの名無しさん:2009/12/10(木) 21:09:04
ヨットについて検索してたらでてきた

http://detail.chiebukuro.yahoo.co.jp/qa/question_detail/q1333937893

まぁ、どうでもいいんだけど

591 :デフォルトの名無しさん:2009/12/10(木) 22:06:16
588
ヨットのルールです。
http://www7.ocn.ne.jp/~sdc/game/help/yacht_help.html
ボーナスポイントはなくてもかまいません。
プログラミングわかるかたいたら教えてください。

592 :デフォルトの名無しさん:2009/12/10(木) 22:13:04
>>591
>>1

593 :デフォルトの名無しさん:2009/12/11(金) 01:33:06
>>857の大学は「javaによる知能プログラム入門」とか使ってるな
見たことあると思ったらうちに本があった

594 :デフォルトの名無しさん:2009/12/11(金) 01:46:22
こんな大学生ばっかで大学は大丈夫なのか?

595 :デフォルトの名無しさん:2009/12/11(金) 02:00:54
お前ら厳しいなwww

596 :デフォルトの名無しさん:2009/12/11(金) 02:05:58
日本の将来を憂う

597 :デフォルトの名無しさん:2009/12/11(金) 02:06:41
こんなだからインド人にプログラマー枠の求人を盗られるんだよ

598 :デフォルトの名無しさん:2009/12/11(金) 02:09:10
インド人はいい、チャイニーズを何とかしてくれ

599 :デフォルトの名無しさん:2009/12/11(金) 12:13:45
>>594
さすがに、ここに来ている大学生はダメな大学生だけ。
ただし、卒業できなくて当たり前のはずの学生も、卒業して「大卒でござい」となる。

600 :デフォルトの名無しさん:2009/12/11(金) 22:56:39
>>558
ttp://www.net.c.dendai.ac.jp/intro.html

ロンダなんだから

601 :デフォルトの名無しさん: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 :デフォルトの名無しさん:2009/12/12(土) 10:39:35
>>601
それは、当たり前の学生なら解けるワケで…
ここに来るのは…

604 :デフォルトの名無しさん:2009/12/12(土) 13:05:36
・自分で作れるだけの技術はあるが、忙しく、初歩レベルのプログラミング作成なんかに時間割きたくない、が単位落せばGPAに響くのでどうにかしたい
・自分で作れる技術がない、が単位落とせばGPAに響くのでどうにかしたい
・自分で作れるだけの技術はあるが、ただ面倒だから人任せにしたい、誰もやってくれなければ自分でやるわ
・宿題というのは提出すればよいもので誰が解答を作ったかは関係ない。面倒だからおまいらやってくれ

605 :デフォルトの名無しさん:2009/12/12(土) 13:39:39
>>604
質問もまともに出来ない学生が、自力で解けるとは信じられない

606 :デフォルトの名無しさん:2009/12/12(土) 13:46:25
人に頼ってばっかの奴が大学教授とかになったら最悪だな

607 :デフォルトの名無しさん:2009/12/12(土) 14:21:39
教授の椅子までなると、本人の力だけではどうにも…

608 :デフォルトの名無しさん: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 :デフォルトの名無しさん:2009/12/13(日) 21:38:40
【 課題 】http://rg550.hp.infoseek.co.jp/cgi-bin/joyful/img/859.txt
【 形態 】2 Applet
【 期限 】12/14 14時
【 補足 】黒い円周上の上を回転する赤い球の周りを、青い球に回転させなさいという課題です。
      課題文のプログラムを少し変えると出来るようです。

よろしくお願いします。

614 :デフォルトの名無しさん:2009/12/13(日) 22:25:11
>>613
こんな感じでどうでしょうか?

http://codepad.org/EoiuFPUF


615 :デフォルトの名無しさん:2009/12/14(月) 00:23:14
>>614
どうもありがとうございます。
学校に行かないと確認出来ませんが…感謝。

616 :デフォルトの名無しさん:2009/12/16(水) 18:35:22
【 課題 】コンボボックスを使って中の条件によりコンソールかアプレットで内容を表示
【 形態 】Javaアプリケーションかアプレットで
【 期限 】2,3日で
【 補足 】コンボボックスの中にP0,P1…P9を書きP0を選択したら○を表示させたりやP1を選択したら◎など表示させるプログラムです
      コンソールかアプレットに表示させたいです

617 :デフォルトの名無しさん:2009/12/17(木) 03:37:05
>>616
内容がないよう

618 :デフォルトの名無しさん: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 :デフォルトの名無しさん:2009/12/17(木) 22:29:35
【課題】ServletRequest.getRequestDispatche()とServletContext.getRequestDispatche()の違い

よろしくお願いします。

620 :デフォルトの名無しさん:2009/12/19(土) 12:15:51
同じ

621 :デフォルトの名無しさん:2009/12/19(土) 14:23:54
【 課題 】3問ありますのでアップローダに投稿させていただきました。
http://www.dotup.org/uploda/www.dotup.org473124.zip

【 形態 】Javaアプリケーション(main()で開始)
【 GUI  】4. 制限なし
【 期限 】12/23
【 Ver  】1.6.0_16
【 補足 】課題文にいくつかの指定がありますのでその通りでお願いします。
宜しくお願いします。

622 :デフォルトの名無しさん:2009/12/20(日) 01:55:24
>>621

課題1
http://codepad.org/zt92NdS8
課題2
http://codepad.org/ZszRX7DC
課題3
http://codepad.org/ntLVtxI5

問題などあったら教えて下さい。


623 :デフォルトの名無しさん: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 :デフォルトの名無しさん:2009/12/20(日) 08:25:58
>>622
回答ありがとうございます!
2、3は問題ありませんでした。
1の1行目のパッケージを使用せず乱数を発生させる方法というのはありませんでしょうか?
まだ習っていないもので…。

625 :デフォルトの名無しさん:2009/12/20(日) 12:20:54
>>624
Math.random() を使うのはオッケーであることを信じて。。。
http://codepad.org/oYdeVN92


626 :デフォルトの名無しさん:2009/12/20(日) 13:21:34
Canvas3Dをフレームの領域指定して貼り付けたいのですがどうすればいいでしょうか?
例えばフレームサイズが(500,400)として,Rect(10, 10, 390, 390)くらいの領域だけで3D描画を行わせたり等がしたいです。

627 :626:2009/12/20(日) 13:23:37
すみませんスレッド間違えました。
スルーして下さい。

628 :デフォルトの名無しさん: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 :デフォルトの名無しさん:2009/12/20(日) 18:01:47
>>629
http://codepad.org/QnzkUMQ2

631 :デフォルトの名無しさん:2009/12/20(日) 18:53:57
>>619
http://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 :デフォルトの名無しさん:2009/12/21(月) 19:37:19
>>635

vMax = (int)Math.sqrt(2.0) + 1;

637 :デフォルトの名無しさん:2009/12/21(月) 19:38:50
すまん。こっち
vMax = (int)Math.sqrt(vInt) + 1;

638 :デフォルトの名無しさん:2009/12/21(月) 19:43:48
>>637
(int)は後ろに来るんですよ。
キャストじゃないっぽいんですよね。

639 :デフォルトの名無しさん:2009/12/21(月) 20:27:25
そんな書き方はありまへん

640 :デフォルトの名無しさん:2009/12/23(水) 02:14:46
vMax = (int)Math.sqrt(vInt) + 1; //

641 :デフォルトの名無しさん:2009/12/23(水) 19:02:26
>>640
天才だな

642 :デフォルトの名無しさん:2009/12/23(水) 23:04:33


643 :デフォルトの名無しさん: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
【課題】以下のサイトのプログラムのアルゴリズムをなるべく詳しく説明せよ。
サイト↓
http://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 :デフォルトの名無しさん:2009/12/24(木) 03:00:34


648 :デフォルトの名無しさん:2009/12/24(木) 11:23:52
日本語でおk

649 :デフォルトの名無しさん:2009/12/24(木) 11:39:48
http://pc12.2ch.net/test/read.cgi/tech/1258793926/793
とのマルチだろ

650 :デフォルトの名無しさん:2009/12/24(木) 12:58:37
>>643
別にやる予定があるわけじゃないんだけど
このストップウォッチって勝手にスタートして勝手に止まるの?

651 :デフォルトの名無しさん:2009/12/24(木) 13:29:33
略の中に重い処理が書かれてるんだろう

652 :デフォルトの名無しさん:2009/12/24(木) 17:14:36
【 課題 】キーボードから文字入力し、":"で文字列分割をし、結果を表示する。
文字列分割の際にはsplitメソッドを利用すること。
【形態 】1. Javaアプリケーション(main()で開始) 
【 GUI  】 制限なし
【 期限 】12/25 15時まで。
【 Ver  】1.6.0_15
【補足  】キー入力と分割はできましたが、ひらがなを入力すると表示するとき文字化けしてしまいます・・・
色々なサイト見たのですが解決できませんでした。よろしくお願いいたします。


653 :デフォルトの名無しさん:2009/12/24(木) 19:46:04
>>652
環境書け
Eclipse使ってるなら使わない

654 :デフォルトの名無しさん:2009/12/24(木) 20:26:08
>>653
環境はEclipse version3.4.1です。
Eclipse使わずにやれば問題ないということでしょうか??

655 :デフォルトの名無しさん: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 :デフォルトの名無しさん: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 :デフォルトの名無しさん: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 :デフォルトの名無しさん:2009/12/25(金) 00:17:14
なんとなく解った
左側の添え字にX、右側の添え字にYっていう変な方法を取った結果(普通は[y][x]だよね?)
上下と左右がごちゃごちゃになってしまい
悔し紛れに最後に文字を差し替えることにしたんだろう
ただ←から↑に差し替えると
↑を差し替えるときに既に←から差し替え済みの↑まで差し替えてしまう
それを回避するために矢印から漢字に差し替えたんだろう

659 :デフォルトの名無しさん:2009/12/25(金) 07:58:15
>>658
> 普通は[y][x]だよね?
Java ではそうなんですか?


660 :デフォルトの名無しさん:2009/12/25(金) 14:18:25
>>655
遅れましたが親切にありがとうございます、本当助かりました!

661 :デフォルトの名無しさん:2009/12/26(土) 02:13:13
>>659
2次元配列を書くときの横方向にあたるのが右に来る添え字だから普通はそうじゃないだろうか
これはテキストエディタ上での問題だけじゃなくてメモリ上で隣接した方向って感覚があるのかも
メモリ上で隣接っていうのはビットマップ画像の横方向みたいなことで
説明下手で悪いけど

とはいえ関数の引数なら(x,y)が普通だし、数学とかの慣習でもそうだから
それに合わせて[x][y]という人も少なからずいるだろうとは思う

ただ[x][y]派の人と一緒に作業することになって、どっちかに統一することになるだろうけど、
これに関しては譲る気になれない
引数の(x,y)と合わせる利点は認めるが、上に書いたことを覆せるものじゃない
あるていど考える人なら[y][x]ってやり方に落ち着くだろうと思う

662 :デフォルトの名無しさん:2009/12/26(土) 02:19:31
プログラムにおけるデータの扱い方で変えてる
y方向に何度も走査するようなプログラムなら[x][y]のほうがいいし
x方向に何度も走査するようなプログラムなら[y][x]のほうがいいし
どっちも頻度に大差なかったりするなら[x][y]にしてる

663 :デフォルトの名無しさん:2009/12/26(土) 02:23:09
他人と一緒に作るなら事前に取り決めておけよ。
個人の趣味でやるなら自由でいいと思うよ。
メモリアクセスの多少の違いがどうとか気にするレベルじゃないだろ宿題なんて

664 :デフォルトの名無しさん:2009/12/26(土) 02:53:09
何のための抽象データ型だよ・・・

665 :デフォルトの名無しさん:2009/12/26(土) 11:24:37
>>661
よく意味がわからないので、仮に統一の話が出てもこちらも譲る機がないのですけど。
わざわざ y, x と逆にするのが不自然ですね。

666 :デフォルトの名無しさん:2009/12/26(土) 13:35:16
>>665
わざわざy,xとする理由が661にあるんじゃないの?
理解もせず不自然と考えるのはちょっとばか

667 :665:2009/12/26(土) 13:38:15
>>666
そんなものがあるのですか?理由とは名ばかりの思い込みではないですか?

668 :デフォルトの名無しさん:2009/12/26(土) 14:09:22
>>667
思い込んでるのはあなたじゃないですか

669 :デフォルトの名無しさん:2009/12/26(土) 15:50:29
>>665
自分で
>よく意味が分からないので
って言ってるじゃん。まず理解してから発言しようよ

670 :665:2009/12/26(土) 16:13:26
>>662 はよく理解できるのですけれども、>>661 の「横方向にあたるのは右の添え字だから」というフレーズが理解できません。
さらに「あるていど考える人なら[y][x]ってやり方に落ち着くだろうと思う」という断言にはついていけません。

671 :デフォルトの名無しさん:2009/12/26(土) 16:39:04
hoge[][] aのa[0]は行なんだよ
通念なんだよ

672 :665:2009/12/26(土) 17:48:11
>>671
それと、実際の行へのマッピングとは別の話なんですが。
付け加えれば、>>662 はよくわかります。

673 :デフォルトの名無しさん:2009/12/26(土) 18:04:49
>>661
変数の名付けが間違ってるだけじゃん。

674 :661: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:2009/12/26(土) 20:26:30
>>674
なるほど、初期化の際に、static な初期化子をそのままのイメージで記述することができる、という利点があるのですね。
よくわかりました。丁寧なご説明、ありがとうございました。


676 :デフォルトの名無しさん:2009/12/26(土) 21:08:32
なんか説明聞くだけで実際にはやっていなさそう

677 :デフォルトの名無しさん:2009/12/27(日) 13:10:17
>>676
まとめて代入・初期化するときには [y][x] 方式では利点がありますが、実際初期化するときに
char[][] data = { ... };
とする機会があるかどうかですね。なければ >>662 を加味して、最終的に決定するだけです。
もちろん >>674 の考え方に一理あるとは考えています。

678 :デフォルトの名無しさん:2009/12/27(日) 19:58:52
すげーどうでもいい話題だな

679 :デフォルトの名無しさん:2009/12/28(月) 14:21:05
>>674 みたいな考え方をする人は
二次元のデータを一次元の配列で処理されたりするのは嫌だったりするのか?

680 :デフォルトの名無しさん:2009/12/28(月) 17:53:54
一次元で表現するからこそ[y][x]になる
{"abcd"}→{"ab","cd"}→{{'a','b'},{'c','d'}}
テキストも画像もデータベースも普通[縦][横]

681 :デフォルトの名無しさん:2009/12/28(月) 18:11:02
>>680
初期化にこだわらなければ、どっちでもいいのでは?
まとめて初期化するときだけ、[縦][横] としたほうがすわりがいい、という結論だと思うのですが。

682 :デフォルトの名無しさん: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 :デフォルトの名無しさん:2009/12/29(火) 01:40:11
初期化にこだわらずとも、
「ノードが縦にたくさんある。ノードの中身が横の配列」
ってイメージが強いからじゃない?
イメージどおりにした方がやりやすいっていう。

684 :デフォルトの名無しさん:2009/12/29(火) 03:00:36
イメージとかいいだしたら
それこそ(x,y)だってただのイメージだろ

685 :デフォルトの名無しさん:2009/12/29(火) 09:29:59
省メモリだとか高速だとかならともかく、>>674みたいな理由ならコメントでちゃんと書いてあればどっちでもいいよ。
こんなので絶対に譲れない(キリッ)とか言われたら面倒くさくて合わせてしまう。

結局個人によって何がわかり易いかなんて違うんだから宗教と変わらんわ。

686 :デフォルトの名無しさん:2009/12/29(火) 13:51:31
テキストファイルのデータ(配列)を読み込む方法教えてください!!!

無知で申し訳ないです・・・

687 :デフォルトの名無しさん:2009/12/29(火) 15:46:42
【 課題 】課題は2問です。
http://www.dotup.org/uploda/www.dotup.org508261.zip
【 形態 】Javaアプリケーション(main()で開始)
【 GUI  】指定なし
【 期限 】1/4
【 Ver  】1.6.0_16
【 補足 】課題文の通りでお願いします。

宜しくお願いします。

688 :デフォルトの名無しさん: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 :デフォルトの名無しさん: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 :デフォルトの名無しさん: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 :デフォルトの名無しさん:2009/12/30(水) 07:17:25
>>689-690
動作確認できました
助かりました。有難うございます


692 :デフォルトの名無しさん:2009/12/31(木) 17:39:10
【 課題 】キーワードからクロスワードを完成させる
ttp://rg550.hp.infoseek.co.jp/cgi-bin/joyful/img/867.zip
【 形態 】Javaアプリケーション(main()で開始
【 期限 】できれば、1/3までにはお願いします。
(提出日は7日なのですがソースを理解する時間が欲しいので)
年末で忙しいとは思いますが、よろしくお願いいたします。

693 :デフォルトの名無しさん: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までにお願いいたします。
丸投げですがどなたかよろしくお願いいたします。


694 :デフォルトの名無しさん:2010/01/03(日) 10:27:45
質問本スレでも、質問したのですが、スレ違いということに気付きこっちに移動してきました。

965 デフォルトの名無しさん [sage] 2010/01/02(土) 19:05:37 ID: Be:
高校の宿題で、サーバー役とクライアント役に分けて、プログラム作って、簡易チャットを作っているのですが、分からない点があります。
client1 とclient2が接続されてるとして、server側でclient1が発言したのを、client2側の画面に反映する方法がわからない。(client2の出力ストリームに流し込む方法が・・・分かりません)

いくつかアドバイスレスは頂いたのですが、なにぶん難しくて理解出来ませんでした。マルチレスという形にはなってしまうのですが、ご助言のほど宜しくお願いします。

695 :デフォルトの名無しさん:2010/01/03(日) 12:08:34
【課題提示用テンプレ】
【 課題 】

問題文は、わかりやすいように画像でアップしておきます
http://www1.axfc.net/uploader/Img/so/69253.jpg
http://www1.axfc.net/uploader/Img/so/69254jpg

【 形態 】1. Javaアプリケーション(main()で開始)
【 GUI  】指定なし
【 期限 】1/20
【 Ver  】1.6.0_16

丸投げになってしまいますが、どうぞよろしくおねがいいたします。

696 :デフォルトの名無しさん:2010/01/03(日) 15:27:13
>>692
ttp://www.dotup.org/uploda/www.dotup.org524526.java.html
全てのワードが必ず1回だけ使われるという前提で解いたけど出題者の意図と違うかもしれない
あとsjisで作業してたからutf8がよければ変換してくれ、そのとき正しく動作するかはわからん

697 :ウォシュレットのアームめがけて排便する俺 ◆06NY4sFIG. :2010/01/03(日) 23:28:10
>>694
向こうで書かれてた方法のうち、ポーリング法というのが
古典的な掲示板システムなんかで使われてるやつですね。


クライアント側から一定期間ごとにサーバに問い合わせて、更新メッセージがあればサーバから受け取る、みたいな。
サーバ側では問い合わせに対応できるように、チャットの内容を連番や書き込み時刻などで管理しておく必要があります。


あと、「クライアント側で一定期間ごとにサーバに問い合わせ」るのではなく、
ユーザがクライアントのボタンを押すことで問い合わせを行うのも一般的かと思います。

698 :ウォシュレットのアームめがけて排便する俺 ◆06NY4sFIG. :2010/01/03(日) 23:31:42
おっと、チャットシステムで手動更新は
一般的では無いですね。


699 :デフォルトの名無しさん:2010/01/04(月) 20:09:53
>>694
ttp://codezine.jp/article/detail/193?p=1
ここ参考にすれば?

700 :デフォルトの名無しさん:2010/01/05(火) 23:35:36
>>696
アクセス制限で書き込み出来ませんでした。
動作確認できました。ありがとうございます。
コメントまで丁寧に書いて頂いて助かりました。
これで入社前研修を乗り切れそうです。

701 :デフォルトの名無しさん:2010/01/06(水) 00:53:09
>>700
できない奴は入社後研修、できた奴は即実戦投入だったりして

702 :デフォルトの名無しさん:2010/01/08(金) 13:27:07
底力を上げるのが勉強なんだが
素通りしたら気張り続けないと大変だぞい

703 :デフォルトの名無しさん:2010/01/11(月) 15:58:15
【 課題 】任意のテキストファイルを選択し、テキストファイルを表示させなさい


       (思い描いている内容)

       以下の画像を参照ください。
       ttp://imepita.jp/20100111/571090

       @の参照ボタンを押すと、ファイルを開くダイアログボックスが表示し
       任意のテキストファイルを選択

       Aに選択したテキストファイルの絶対パスが表示
       同時にBのエリアににテキストファイルの内容が表示し縦横スクロールが可能

       保存はしない

【 形態 】1. Javaアプリケーション(main()で開始)
【 GUI  】4. 制限なし
【 期限 】1/12 午前中
【 Ver  】1.6.0_17
【 補足 】申し訳ありませんが、丸投げです
よろしくお願いいたします

704 :デフォルトの名無しさん:2010/01/11(月) 16:51:05
>>703
ttp://rg550.hp.infoseek.co.jp/cgi-bin/joyful/img/870.java

705 :デフォルトの名無しさん:2010/01/11(月) 17:55:21
初めて2chに書き込みます
Javaがわかりません
お願いします
【 課題 】自然言語処理、構文解析のCYK法のプログラム
【 形態 】1. Javaアプリケーション(main()で開始)
【 期限 】2010/01/18
【 Ver  】java version "1.6.0_17"
【 用語 】CYK法  http://ja.wikipedia.org/wiki/CKY%E6%B3%95
【 補足 】お願いします

706 :デフォルトの名無しさん:2010/01/11(月) 18:18:12
>>705
卒研とかの丸投げ?
短期で解決すべき宿題ならもっと具体的な設問があるだろうからそれを示せ。

707 :デフォルトの名無しさん:2010/01/11(月) 19:13:30
>>703
ダイアログを開くたびにカレントディレクトリが戻っていたので少し修正
終了すると元に戻るけどね
ttp://rg550.hp.infoseek.co.jp/cgi-bin/joyful/img/871.java

708 :デフォルトの名無しさん:2010/01/11(月) 22:12:29
>>704
>>707

こんなに早くありがとうございました
こちらで動作の確認が行えました

いただいたファイルを確認してjavaの理解を深めたいと思います


先生の小言を聞かなくて済みそうです
本当にありがとうございました

709 :デフォルトの名無しさん:2010/01/14(木) 00:39:19
【 課題 】 ttp://rg550.hp.infoseek.co.jp/cgi-bin/joyful/main.htm
【 形態 】1. Javaアプリケーション(main()で開始)
【 期限 】1月22日 
【 補足 】Eclipseを使用しています。 
内容は前向き推論のプログラムです。 
このプログラムを実行したら、「gyouzaは作ることができる。」と表示させたい。
「nikuudouは作ることができる。」は表示させない。
またRecipe.txtの中身を修正してもよい。

710 :デフォルトの名無しさん:2010/01/14(木) 00:40:47
>>709
課題はttp://rg550.hp.infoseek.co.jp/cgi-bin/joyful/main.htm の872.javaです。

711 :デフォルトの名無しさん:2010/01/15(金) 02:56:12
【 課題 】課題は3題です。
http://rg550.hp.infoseek.co.jp/cgi-bin/joyful/img/873.zip
【 形態 】Javaアプリケーション(main()で開始)
【 GUI  】指定なし
【 期限 】2010/01/18
【 Ver  】1.6.0_17

初心者で苦しんでおります。宜しくお願いします。

712 :デフォルトの名無しさん:2010/01/16(土) 16:37:38
>>709
そのコードを修正するのが課題なのか変に手を加えた結果がそれなのか。
「与えられた課題文をそのまま」書いてそれなわけ?

あと、<<必須>>って書いてあるんだからバージョン情報くらい書いたら。
今時Vectorってjava幾つだよ。

713 :デフォルトの名無しさん:2010/01/16(土) 18:21:04
>>711
課題3の
>アドレス表を利用した並び替えを行って
アドレス表が何か分からなかったので課題3はやってない
とりあえず課題1と課題2を適当に作ったので参考に
http://rg550.hp.infoseek.co.jp/cgi-bin/joyful/img/874.zip

714 :デフォルトの名無しさん:2010/01/16(土) 21:32:13
>>709
versionは1.6.0_17です。
また、プログラムを修正するのが課題です。

715 :デフォルトの名無しさん:2010/01/17(日) 00:17:58
>>711
http://rg550.hp.infoseek.co.jp/cgi-bin/joyful/img/875.java

こんなのしかできないです申し訳ありません

716 :デフォルトの名無しさん:2010/01/17(日) 00:26:36
>>713
アドレス=住所(県名) じゃないかな

717 :デフォルトの名無しさん:2010/01/17(日) 00:53:50
>>711
課題3
http://codepad.org/WzaCifp4

ソートするメソッドを自前で用意しました。
再帰って使ってオッケーなのかな?


718 :デフォルトの名無しさん:2010/01/17(日) 11:00:54
>>716
なんか別の意味があるかと思ってしまった
単純にcsvをソートすりゃいいってことね

>>711
といわけで課題3
まぁ簡単に書いた
ttp://rg550.hp.infoseek.co.jp/cgi-bin/joyful/img/876.java

719 :デフォルトの名無しさん:2010/01/17(日) 11:06:11
>>718
ちゃんと i を利用しててわろたw

720 :デフォルトの名無しさん:2010/01/17(日) 11:22:30
課題で定義された変数は使った方がいいでしょw

721 :デフォルトの名無しさん:2010/01/17(日) 13:42:37
【 課題 】速度が上がるspeed upボタンの追加
【 形態 】 Applet
【 期限 】1月18日
【 Ver  】1.6.0_11
【 補足 】
http://rg550.hp.infoseek.co.jp/cgi-bin/joyful/img/877.java

722 :デフォルトの名無しさん:2010/01/17(日) 16:31:39
>>721
initにこれを追加(変数定義忘れないように)
speedUpB = new Button("Speed UP");
add(speedUpB);
speedUpB.addActionListener(this);
sleepTime = 500;

actionPerformedの分岐に追加
else if(e.getSource() == speedUpB){
if(sleepTime > SLEEP_CHG_TIME){
sleepTime -= SLEEP_CHG_TIME;
}
}

runで
th.sleep(500);

th.sleep(sleepTime);
に変更

SLEEP_CHG_TIMEはどれだけ早くしたいかを定義すればおk

723 :デフォルトの名無しさん:2010/01/17(日) 21:37:52
【 課題 】最小選択法を使用して作ること
【 形態 】1. Java
【 期限 】19日まで 
【 Ver  】1.6.0_17
【 補足 】exchangeかメソッド
よろしくお願いします

http://rg550.hp.infoseek.co.jp/cgi-bin/joyful/img/879.lzh


724 :デフォルトの名無しさん:2010/01/17(日) 23:53:29
>>713
>>715
>>717
>>718
動作確認できました
わかりにくい部分があり申し訳ありません

本当に有難うございました

725 :デフォルトの名無しさん:2010/01/18(月) 00:02:46
>>722
助かりました

726 :デフォルトの名無しさん:2010/01/18(月) 00:15:50
【 課題 】チョイスにより三角関数のグラフ(sin, cos, tan)のカーブを
   選択して描画領域に描画させるJavaアプリケーションを作成せよ。
   y = sin ax において、aの値をテキスト
   フィールドで入力して描画できるように拡張してみよ。(cos, tanも同様)
【 形態 】1. Javaアプリケーション(main()で開始)
【 GUI  】1. AWTのみ
【 期限 】1月25日まで
【 Ver  】1.6.0_17
【 補足 】
http://rg550.hp.infoseek.co.jp/cgi-bin/joyful/img/880.zip
こんな感じでお願いします

727 :デフォルトの名無しさん:2010/01/18(月) 03:40:21
>>709-710,714
そんだけでいいなら

1)材料を繰り返して入力している部分の重複を排除(4つの材料すべて)
×→wm.addAssertion("butaniku butaniku");
○→wm.addAssertion("butaniku");

2)Recipe.txt の中身で餃子に必要な材料の部分の ?x を削除(4つの材料すべて)
×→"x? butaniku"
○→"butaniku"

これで与えられた条件は満たせる。
新しいルールの作成っぽいことしようとして上手く行ってない感が残ってるけどしらね。

728 :デフォルトの名無しさん:2010/01/18(月) 03:52:50
【 課題 】国旗を表示するプログラム(日の丸、星条旗、ユニオンジャック等)を作れ。 指定された国旗を画面に表示する。少なくても8種類以上。 国旗の指定にはメニューとかボタンとかを表示して、選択させること。
国旗は図形として描くこと。写真を貼り付けたりしては駄目。
【 形態 】 Javaアプリケーション(main()で開始)
【 GUI 】JFrameを使えといわれました
【 期限 】1月30日まで
【 Ver 】1.6.0_18

【 補足 】できたプログラムについての説明(変数の役割、実行の流れなど)もあるとありがたいです。
よろしくお願いします。


729 :デフォルトの名無しさん:2010/01/18(月) 05:13:33
>>726
http://codepad.org/Dpeu67WY

改良の余地ありだけど、どぞ。
問題あったら教えて下さい。


730 :デフォルトの名無しさん:2010/01/18(月) 07:14:37
【 課題 】http://rg550.hp.infoseek.co.jp/cgi-bin/joyful/img/881.zip
【 形態 】1. Javaアプリケーション(main()で開始)
【 GUI  】4. 制限なし/
【 期限 】1月20日まで
【 Ver  】1.6.0_17
【 補足 】細かく4題となっています

 よろしくお願いします

731 :デフォルトの名無しさん:2010/01/18(月) 08:20:21
>>729
問題ありません
ありがとうございました

732 :デフォルトの名無しさん:2010/01/18(月) 13:47:20
>>729
参考までに聞きたいのですが
完成までにどのくらいかかりましたか?

733 :デフォルトの名無しさん:2010/01/18(月) 15:40:33
Javaの課題で、コマンドにいろいろなことを入力して、
そこから入力されたファイルを読み込みたいのですが・・・

Scanner filein = new Scanner (new BufferedReader(
new InputStreamReader(System.in)))
String line;
String p = "(\\w+)(\\W)([a-z]+)";
while((line = filein.findInLine(p))!=null){
System.out.println(line);
}

FileReader a = new FileReader(line);
BufferedReader din = new BufferedReader(a);

これだとエラーがおこります。
どうすればいいか教えていただけませんか?

734 :デフォルトの名無しさん:2010/01/18(月) 16:04:37
>>730
よかったらドゾ。
http://rg550.hp.infoseek.co.jp/cgi-bin/joyful/img/882.zip

>>732
4時間くらいだと思う。
もれのテクだとこんだけかかってしまうのが悲しい。。。
途中,自家発電して風呂入ったのは内緒。


735 :デフォルトの名無しさん:2010/01/18(月) 16:08:13
自家発電は2分くらいで終わります

736 :デフォルトの名無しさん:2010/01/18(月) 16:08:23
>>733
意図がさっぱりわからないけど、
FileReader a = new FileReader(line);
が実行されるとき、つまりwhile文の判定がfalseのとき、lineは常にnullになるよ?

737 :デフォルトの名無しさん:2010/01/18(月) 17:30:56
dbを勉強したくてJRE1.6でjavaDBたるものが梱包されているって聞いたのですが、
そのクラスを教えていただけないでしょうか?

738 :デフォルトの名無しさん:2010/01/18(月) 17:33:49
dbを勉強したいならpostgresqlをインスコしたほうがいい

739 :デフォルトの名無しさん:2010/01/18(月) 18:34:09
>>737
こんなとこで聞くよりググった方が早いと思うけど。
http://developers.sun.com/javadb/reference/index.jsp#ttt.1

740 :デフォルトの名無しさん:2010/01/18(月) 18:42:47
あークラスか。Windowsだったら
C:\Program Files\Sun\JavaDB\javadoc\jdbc4
にJavadocがある。

C:\Program Files\Sun\JavaDB\lib\derby.jar
が本体だと思うけど。

あと、JREじゃなくてJDKじゃないかな?JavaDBがついてるの。

741 :デフォルトの名無しさん:2010/01/18(月) 20:22:22
>>740
そーいうことっすか?
じゃあ運用レベルでは使わないでねって感じっすか?

742 :デフォルトの名無しさん:2010/01/18(月) 21:16:36
【 課題 】http://rg550.hp.infoseek.co.jp/cgi-bin/joyful/img/883.zip
【 形態 】eclipse
【 GUI  】制限なし      
【 期限 】1/26日 正午まで
【 Ver  】1.6.0_16 
【 補足 】よろしくお願いします。。

743 :デフォルトの名無しさん:2010/01/18(月) 21:17:09
データソースを自力で登録したいのですが、
どんな手順で登録できるでしょうか?

744 :デフォルトの名無しさん:2010/01/18(月) 21:18:00
日本語でOK

745 :デフォルトの名無しさん:2010/01/18(月) 21:35:02
ちなみに質問スレってのもあるんだよね。

★★Java質問・相談スレッド135★★
http://pc12.2ch.net/test/read.cgi/tech/1262525781/


専用スレで聞いた方が質問者にとっても有意義であることが多い。と思う。

746 :デフォルトの名無しさん:2010/01/18(月) 22:14:46
>>734
わざわざお答えいただきありがとうございました

747 :デフォルトの名無しさん:2010/01/19(火) 06:09:00
【 課題 】FrameもしくはJFrameに半径5ピクセルの円を描きなさい(y座標を30以上にすること)。
      そしてキーボードのカーソルキー(矢印キー)を押すと、この円が矢印キーの刻印の示す
      方向へ4ピクセル移動するようにしなさい。なお、移動前の円が残っていても構わない。
      (KeyEventを利用。getKeyCode,VK_UP,VK_DOWN,VK_LEFT,VK_RIGHT)
【 形態 】1. Javaアプリケーション(main()で開始)  
【 GUI  】4. 制限なし  
【 期限 】2010年1月25日
【 Ver  】1.5.0_12
【 補足 】丸投げでお願いします。
      

748 :デフォルトの名無しさん:2010/01/19(火) 07:32:41
import java.awt.*; // >>747
import java.awt.event.*;
import javax.swing.*;
public class R747 extends JComponent {
private int x = 100, y = 100;
@Override public void paintComponent(Graphics g) { g.drawOval(x, y, 5 * 2, 5 * 2); }
public static void main(String[] args) {
SwingUtilities.invokeLater(new Runnable() {
public void run() {
JFrame f = new JFrame();
f.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
final R747 c = new R747();
f.addKeyListener(new KeyAdapter() {
@Override public void keyPressed(KeyEvent e) {
switch (e.getKeyCode()) {
case KeyEvent.VK_UP: c.y -= 4; break;
case KeyEvent.VK_DOWN: c.y += 4; break;
case KeyEvent.VK_LEFT: c.x -= 4; break;
case KeyEvent.VK_RIGHT: c.x += 4; break;
}
c.repaint();
}
});
f.add(c);
f.setSize(400, 400);
f.setVisible(true);
}
});
}
}

749 :デフォルトの名無しさん:2010/01/19(火) 13:44:49
>>748
自力で解決しました。

750 :デフォルトの名無しさん:2010/01/19(火) 13:58:02
【 課題 】 http://rg550.hp.infoseek.co.jp/cgi-bin/joyful/main.htmの884です
【 形態 】1. Javaアプリケーション(main()で開始)
【 GUI  】4. 制限なし
【 期限 】1/25
【 Ver  】1.6.0_16

751 :デフォルトの名無しさん:2010/01/19(火) 15:10:33
>>748
ありがとうございました。


752 :デフォルトの名無しさん:2010/01/19(火) 18:57:40
【 課題 】http://rg550.hp.infoseek.co.jp/cgi-bin/joyful/img/885.java
【 形態 】1. Javaアプリケーション(main()で開始)
【 GUI  】4. 制限なし
【 期限 】1/25
【 Ver  】1.6.0_14

よろしくお願いします。

753 :デフォルトの名無しさん:2010/01/20(水) 02:34:53
>>752
ttp://rg550.hp.infoseek.co.jp/cgi-bin/joyful/img/888.java

754 :デフォルトの名無しさん:2010/01/20(水) 03:45:31
>>753
夜遅くにありがとうございます。

755 :デフォルトの名無しさん:2010/01/20(水) 15:38:49
【 課題 】インターネット書店を作成せよ
      <条件>
      ・画面サイズ→VGAとする
      ・書籍は5ジャンル150冊
      ・1回の注文で5種類まで書籍を注文可能
      ・書籍の値段は20円単位とし、書籍の値段は自由
      ・書籍価格の合計金額の2%のポイントが与えられる。(ただし、ポイントは第一ジャンルは2倍、第二ジャンルは3倍になる)
      ・注文終了後、注文確認画面で注文と支払い代金、獲得ポイントが確認できる。(支払い代金とは、注文図書の合計金額と消費税の和)
      ・貯まったポイントを併用して支払いが可能(ポイントの価値は、1ポイント1円)
      ・書籍の発送は電子メールの添付ファイルで行う(発送は出来なくてよい)
      ・ソフトキーボードのみ使用可能
      


【 形態 】1. Javaアプリケーション(main()で開始)
【 GUI  】2. Swing
【 期限 】1/27
【 Ver  】1.6.0
【 補足 】実用的な画面インタフェースでは取消機能が必要であるが、ここでは取消機能については
      考えなくてよい。
      また、ユーザーは正しい操作を行うものと仮定して良い。

講義内容がいきなり飛躍して、期限までに作成困難なので教えていただければ幸いです。
よろしくお願いします。

756 :デフォルトの名無しさん:2010/01/20(水) 23:19:58
String[]型の配列の要素を全てprintlnで表示しようとすると
[Ljava.lang.String:@16進数みたいな文字 になってしまうのですが
これの解決方法ってないでしょうか?
String[] list = new String[100];
list[0] = "aaa"; list[1] = "bbb"; list[2] = "ccc";
System.out.println( list );
で[Ljava.lang.String:@16900e1 みたいなのが表示されます
ArrayListで配列を作ると
ArrayList list = new ArrayList();
list.add("aaa"); list.add("bbb"); list.add("ccc");
System.out.println( list ); で
[aaa, bbb, ccc]
といった感じで出てくるのでこれをString[]配列で出せるようにしたいです。
(仕様が戻り値をString[]型にせよ のため)
自分ではfor( int i = 0; i < 100; i++ ){ System.out.println(list[i])}
の方法しか思いつきませんでした。
これだと
aaa
bbb
ccc
のように改行して表示されてしまうので
Arraylistの例のように横一覧に出力することは可能なのでしょうか?

757 :756:2010/01/20(水) 23:22:28
追記:環境は Java1.4です

758 :デフォルトの名無しさん:2010/01/20(水) 23:30:43
>>756
質問は質問スレへ
http://pc12.2ch.net/test/read.cgi/tech/1262525781/l50

759 :デフォルトの名無しさん:2010/01/20(水) 23:49:32
>>756
JDK5以上ならArrays#toString、1.4ならArrays#asListでListに変換してprintlnに渡す。
でもnullの要素を特別扱いするわけじゃないから100個の要素がある配列では100個分の要素が表示される。
結局自分で書かないと[aaa, bbb, ccc]のようにはならない。
AbstractCollection#toStringのソースが参考になると思う。
単にprintlnでなくprintメソッドを使って要素とコンマを交互に出力するでもいいかもしれない。
それとここは宿題スレだから単なる質問は質問スレ(>>745)が別にあるので今後はそこへどうぞ。

760 :デフォルトの名無しさん:2010/01/20(水) 23:58:46
【 課題 】音量に変動性を持たせる
【 形態 】1. Javaアプリケーション
【 期限 】1月22日 
【 Ver  】1.6.0
【 補足 】質問のほうに書かせていただいたのですが、回答得られなかったため、こちらに書かせていただきます。
      再生中、時間経過とともに音量が変化するようにしなくてはいけません。
      基本的には、以下のプレイヤーを基本として変更を加えていきたいです。
      自分でも色々試しましたがわからないので、すみませんがよろしくお願いします。

      ttp://yasshiemd.web.fc2.com/sub/appli/simpleplayer/simpleplayer.html
 

761 :デフォルトの名無しさん:2010/01/21(木) 05:29:35
【 課題 】ttp://www1.axfc.net/uploader/Sc/so/75122 こちらをご参照くださいませ。
@を押すとファイルを開くダイアログが表示されるので、任意のファイルを選択
すると、隣のテキストフィールドに選択したファイルの絶対パスが表示。

Aを押すとフォルダを開くダイアログが表示されるので、任意の場所を選択
上に同じく隣に絶対パスが表示されます。

Bで任意の文字列を入力。

Cを押すと、Aで選択したフォルダにBで入力した文字列を持つ新しいフォルダが作成され
そのフォルダの中に@で選択したファイルを移動するというものです。

説明が下手ですみません。

【 形態 】Javaアプリケーション(main()で開始)
【 GUI  】Swing
【 期限 】1/22早朝 
【 Ver  】1.6.0_17
【 補足 】ファイル移動のメソッドの使い方がまったく分からずここ何日も立ち往生してしまっています
丸投げですみませんがどうかよろしくお願いいたします。

762 :デフォルトの名無しさん:2010/01/21(木) 14:33:11
>>761
暇だからやってみる。トラストミー(笑

763 :デフォルトの名無しさん:2010/01/22(金) 00:17:44
>>761
期限も近づいてるようなので>>762を待たずに
ttp://rg550.hp.infoseek.co.jp/cgi-bin/joyful/img/889.java

764 :デフォルトの名無しさん:2010/01/22(金) 00:30:40
>>763
aisiteru

765 :761:2010/01/22(金) 00:54:44
>>763
相変わらずコンパイル時にエラーまみれでどうしたものかと思っていたところです
とても助かりました
本当にありがとうございます、感謝してもしきれません。

766 :761:2010/01/22(金) 00:55:38
>>763
相変わらずコンパイル時にエラーまみれでどうしたものかと思っていたところです
とても助かりました
本当にありがとうございます、感謝してもしきれません。

767 :デフォルトの名無しさん:2010/01/22(金) 00:57:30
だいじなことなので2かいいいました

768 :デフォルトの名無しさん:2010/01/22(金) 02:33:31
【 課題 】時刻を表示するプログラム
【 形態 】2. Applet
【 GUI  】4. 制限なし
【 期限 】1月26日まで
【 Ver  】1.6.0_14
【 補足 】下の890を参考にしてください。 
      http://rg550.hp.infoseek.co.jp/cgi-bin/joyful/main.htm
      すみませんが、よろしくお願いします。


769 :デフォルトの名無しさん:2010/01/22(金) 18:13:56
期限までまだありますが>>750をよろしくお願いします。

770 :デフォルトの名無しさん:2010/01/22(金) 18:45:58
>>768
ttp://rg550.hp.infoseek.co.jp/cgi-bin/joyful/img/894.java

771 :デフォルトの名無しさん:2010/01/22(金) 19:15:45
【 課題 】
サーバとクライアントでの間で文字列を送り合うプログラムをつくれ。
ただし、以下の条件を満たすようにすること。
アドレス、ポート、名前、文字列はキーボード入力し、お互いに自由に指定できるようにする。
クライアントで quit が入力された場合、クライアントは接続を切りプログラムを終了し、
サーバは接続が切られたら、次のクライアントの接続を待つ
サーバで quit が入力された場合、サーバは接続を切り、次のクライアントの接続を待ち、
クライアントは接続が切られたらプログラムを終了する
エンターキーのみが入力された場合は、文字列を送らずもう一度文字列を入力させて、
その文字列を送るようにする。
【 形態 】1. Javaアプリケーション(main()で開始)
【 GUI  】4. 制限なし
【 期限 】1/25
【 Ver  】1.6.0_14
【 補足 】
途中まで四苦八苦してファイルを作りましたので、添付いたします。
添付ファイル
サーバー側
http://rg550.hp.infoseek.co.jp/cgi-bin/joyful/img/897.java
クライアント側
http://rg550.hp.infoseek.co.jp/cgi-bin/joyful/img/898.java

これ以上どうやってもわからないので、お願いいたします。
特にコメントに名前をつけるやり方と、quitを入れたときの処理がわからないです。

772 :768:2010/01/22(金) 21:30:19
>>770
助かりました。本当にありがとうございます。

773 :デフォルトの名無しさん:2010/01/22(金) 22:04:53
>>771
動作確認してみて下さい。
「コメントに名前をつけるやり方」というのがわからなかったので,
未実装です。
サーバ
http://codepad.org/Q2GePYdr
クライアント
http://codepad.org/CovaiKv5


774 :デフォルトの名無しさん:2010/01/22(金) 22:44:59
>>771
問題文から見て>>695と同じ問題だと思われるが
クライアントとサーバの画面例が示されていないので
ユーザインタフェイスは>>771のソースを尊重
http://rg550.hp.infoseek.co.jp/cgi-bin/joyful/img/900.java

775 :774:2010/01/22(金) 23:19:22
>>771
> エンターキーのみが入力された場合は、文字列を送らずもう一度文字列を入力させて、
> その文字列を送るようにする。
を忘れてた
クライアントに
if (str.isEmpty()) continue; //+++
if (str.equals("quit")) {
break;
}
を加えてサーバを
//+++
do {
System.out.println("送信する文字列を入力してください");
str = data.readLine();
} while(str.isEmpty());
//+++
if (str.equals("quit")) {
break;
}
のように変更する

776 :771:2010/01/23(土) 21:47:55
>>773-775さん

ありがとうございます!!
名前をつけるというのはチャットのように、発言者に名前をつけるという意味です。
加藤<こんにちわ
斉藤<こんにちわ
こんな感じで・・・

>>775
それやったらchatchがありません。みたいなエラー出たのですが、どこに張れば
良いんでしょうか?


自宅のPCのポート開放のやり方がわからなく、月曜日にならないとプログラム同士の
接続が試せないので、また月曜日に分からない点などがあったら報告したいと思います。
本当に助かりました!ありがとうございました。

777 :デフォルトの名無しさん:2010/01/23(土) 23:05:17
if (str.equals("quit")) {
break;
}
がある位置はクライアントとサーバそれぞれで一ヶ所しかないんだから
付け加えたり変更したりする場所は見当付くだろ
エラーが出たらそのソースを晒さんと他人には分からんだろ
せめて出たエラーを貼れ
どんなセキュリティをかけてるか知らないがlocalhost同士で通信するのは特に難しくないんでは?

778 :デフォルトの名無しさん:2010/01/24(日) 06:45:18
【 課題 】1.任意のWEBページからhttp://で始まるハイパーリンクを抽出するプログラムの作成
http://rg550.hp.infoseek.co.jp/cgi-bin/joyful/img/901.java
2.任意のWEBページ10ページに含まれる単語のうち,上位10位の単語リストとその出現頻度
http://rg550.hp.infoseek.co.jp/cgi-bin/joyful/img/903.java
【 形態 】1. Javaアプリケーション(main()で開始)
【 GUI  】制限なし
【 期限 】1/25
【 Ver  】1.6.0_14
【 補足 】1.に関してはプログラムはあっていると思うのですがなぜか実行
      できないので、実行できたら結果をコピペで教えてもらえたら嬉しいです
      2.に関しては実行結果があるのですが、上から多い順に並んでいます
      プログラムのどの部分でその並べ替えを行っているのか、またどんな
      アルゴリズムを用いて並べ替えているのかを教えてもらえたら嬉しいです

2つあるのですがどうかご教授ください。



779 :デフォルトの名無しさん:2010/01/24(日) 07:54:18
>>778
1はちゃんと実行できたよ。

http://images.google.co.jp/imghp?hl=ja&tab=wi
http://video.google.co.jp/?hl=ja&tab=wv
http://maps.google.co.jp/maps?hl=ja&tab=wl
http://news.google.co.jp/nwshp?hl=ja&tab=wn
http://books.google.co.jp/bkshp?hl=ja&tab=wp
http://mail.google.com/mail/?hl=ja&tab=wm
http://www.google.co.jp/intl/ja/options/
http://www.google.com/ncr


2はコメントでBubbleSortとあるじゃないか。

780 :デフォルトの名無しさん:2010/01/24(日) 10:00:51
【 課題 】FrameもしくはJFrameに半径5ピクセルの円を描きなさい(y座標を30以上にすること)。
      そしてキーボードのカーソルキー(矢印キー)を押すと、この円が矢印キーの刻印の示す
      方向へ4ピクセル移動するようにしなさい。なお、移動前の円が残っていても構わない。
      (KeyEventを利用。getKeyCode,VK_UP,VK_DOWN,VK_LEFT,VK_RIGHT)
【 形態 】1. Javaアプリケーション(main()で開始)  
【 GUI  】4. 制限なし  
【 期限 】2010年1月25日
【 Ver  】1.5.0_12
【 補足 】>>747です。先生に駄目だしをくらいまして自分で組みなおしてるんですが
      どうにも丸が動きません。下のプログラムを弄って動くようにしてもらえませんでしょうか?


http://rg550.hp.infoseek.co.jp/cgi-bin/joyful/img/905.java

781 :デフォルトの名無しさん:2010/01/24(日) 10:53:04
>>780
http://rg550.hp.infoseek.co.jp/cgi-bin/joyful/img/907.java
元のコードを生かしたからきれいじゃないけど

782 :デフォルトの名無しさん:2010/01/24(日) 11:08:21
>>781
ありがとうございます。
助かりました!

783 :デフォルトの名無しさん:2010/01/24(日) 17:44:48
>>782
問題でVK_UPやVK_DOWNなどのキーコード定数を使えってあるのに
返されるStringが変更される可能性のあるgetKeyTextを使ってわざわざStringに変換してるし
そのStringの等値判定をequalsでなく==でやってるのもいいこととは思えない
e.getKeyCode()が返す値とKeyEvent.VK_UPなどとを直接比較する方が題意に沿ってると思うが
またダメ出しされないかい?

784 :デフォルトの名無しさん:2010/01/24(日) 18:15:15
【 課題 】3つのボールがレースをするプログラムを作りなさい。乱数を発生させ、毎回違った結果を出すようにしなさい。さらに以下の改良を加えなさい。
1)ボタンを押すと、レースがスタートする。
2)ゴールのラインを引いて、1着がどれかを表示する。
【 形態 】2. Applet
【 GUI  】4. 制限なし
【 期限 】1/25 23:00まで
【 Ver  】1.6.0_17
【 補足 】乱数を使ったレース部分までは以下のプログラムにあります。それを改良して、1)&2)の付け足しをお願いします。

ttp://rg550.hp.infoseek.co.jp/cgi-bin/joyful/img/909.java


785 :デフォルトの名無しさん:2010/01/24(日) 19:06:24
>>784
ttp://rg550.hp.infoseek.co.jp/cgi-bin/joyful/img/910.java

786 :デフォルトの名無しさん:2010/01/24(日) 19:39:13
>>785
迅速な回答ありがとうございました。
ゴールラインの設定仕方がわかりやすく、大変参考になりました。

787 :デフォルトの名無しさん:2010/01/24(日) 20:43:43
【 課題 】矢印キーで上下左右に加速する円を表示するアプレットプログラム。

1)円が画面からはみ出さないように、円が枠の縁にぶつかると反射します。
2)移動速度が早くなりすぎないように、上限を決めて、これを超えないようにしています。
3)キー入力に反応する部分はコメントのみ

【 形態 】2. Applet
【 GUI  】4. 制限なし
【 期限 】1/27まで
【 Ver  】1.6.0_14
【 補足 】以下のプログラムをもとにお願いします。
http://rg550.hp.infoseek.co.jp/cgi-bin/joyful/img/911.java

788 :デフォルトの名無しさん:2010/01/24(日) 22:14:00
>>742
どなたか賢い方お願い致します。

789 :デフォルトの名無しさん:2010/01/24(日) 22:31:44
>>750をお願いします

790 :デフォルトの名無しさん:2010/01/25(月) 00:40:14
>>779
本当にありがとうございました!

791 :デフォルトの名無しさん:2010/01/25(月) 01:32:22
【問題1】テキストボックスに値を入力すると解を表示するプログラミングを書きなさい
【問題2】足し算のみをする電卓をつくりなさい。

両方ともアプレットのプログラムです。
よろしくお願いします。

792 :デフォルトの名無しさん:2010/01/25(月) 02:15:38
>>791
>>1のテンプレ
それから問題1は多分だれも答えられないと思われ。
何の値を入れて何の解をどこに表示するのか?

793 :デフォルトの名無しさん:2010/01/25(月) 03:07:04
問題1は難しそうだな
Googleの検索エンジンでも実装しろっていうのか?

794 :デフォルトの名無しさん:2010/01/25(月) 03:13:45
簡単でしょ
仮言語だが
if text=="値" then text="解"

795 :デフォルトの名無しさん:2010/01/25(月) 04:37:40
>>794
それってプログラミングなの?

796 :デフォルトの名無しさん:2010/01/25(月) 07:41:24
>>794
if "値".equals(text). then text="解"

797 :デフォルトの名無しさん:2010/01/25(月) 13:09:32
>>791
問題1ですが、

□x^2+□x+□=0 【実行】

 解は〜です。

□の部分に値をいれ、実行のボタンを押したら、
解を表示するようなプログラムを作れということだと
思います。説明がたりなくてごめんなさい。

798 :デフォルトの名無しさん:2010/01/25(月) 14:41:51
>>797
>>1を読んでテンプレ埋めろ
期限が無いってことはどんなに遅くなっても構わないってとられても仕方ないし
バージョンを指定しないのならJDK7PRで追加されてる機能を使われる可能性もあるぞ

799 :デフォルトの名無しさん:2010/01/25(月) 20:50:08
「二次方程式の解の公式」なんぞ はるか昔に忘れた
などとほざく文系大卒はごまんといる

「二次方程式を解かなくても生きてこられた。」
「二次方程式などは社会へ出て何の役にも立たないので、このようなものは追放すべきだ」
「私は今まで数学が私の人生に役立ったことは無く、大多数の国民もそうだろう。」

800 :デフォルトの名無しさん:2010/01/25(月) 20:59:24
>>750
今見てみたけど、課題として中々面白いね。

ちょっと考えてみようと思ったけど期限切れ?
あと、CarShop.dataっていうファイルと、ソースコードにもそれに関連してるらしき記述があるけど
これはどうすれば?

801 :デフォルトの名無しさん:2010/01/26(火) 00:33:48
>>800
亀レスですが一応26日の午前までなら大丈夫です。
CarShop.dataと中のソースファイルはあくまで前向き推論のサンプルプログラムです。
ご協力いただければ幸いです。

802 :デフォルトの名無しさん:2010/01/26(火) 12:00:53
宿題の一部ですが(全部だと膨大な量のため)

java(当方が作成しているのはi-appli)において、
任意の座標に置かれた2点の角度を求めて
その角度の線を(任意の位置に任意の長さで)描画することは可能でしょうか?

可能ならば方法を教えていただければ幸いです。

【 GUI  】i-appliに使用出来るものは何でも可
【 期限 】1/26日 24:00
【 Ver  】1.6.0_17





803 :デフォルトの名無しさん:2010/01/26(火) 12:56:33
802ですが
質問に答えなくていいです
ゆとりな質問してしまいすみませんでした。

804 :デフォルトの名無しさん:2010/01/27(水) 03:09:45
エラーがでます。
どこが間違ってるか教えてください。

http://rg550.hp.infoseek.co.jp/cgi-bin/joyful/main.htm

912番です。

805 :デフォルトの名無しさん:2010/01/27(水) 07:37:14
>804
>どこが間違ってるか教えてください。
質問の仕方。

806 :デフォルトの名無しさん:2010/01/27(水) 16:40:01
【 課題 】ttp://rg550.hp.infoseek.co.jp/cgi-bin/joyful/img/913.txt
【 形態 】1. Javaアプリケーション(main()で開始)
【 期限 】1/29 13時まで
【 補足 】課題文の4.盛り込む要素については全部該当していなくても構いません。よろしくお願いします。

807 :デフォルトの名無しさん:2010/01/27(水) 18:38:13
いつになったらはたらけるかな

808 :デフォルトの名無しさん:2010/01/28(木) 15:11:31
慶応の丸投げって結構多いよな

809 :デフォルトの名無しさん:2010/01/29(金) 01:05:02
>>806の家を書くって何だ?何で禁止なんだ?

810 :デフォルトの名無しさん:2010/01/29(金) 01:12:07
>>809
授業で家を描くプログラムを習ったので、それは禁止という事です。
すいません、完全に説明不足でした。

811 :デフォルトの名無しさん:2010/01/29(金) 02:07:25
>>806
課題的に、単なるprint文で
「ごめんなさい。全然分かりませんでした」
などとくどくど「オリジナルな」言い訳を表示するプログラムでもいいの?

812 :デフォルトの名無しさん:2010/01/29(金) 09:32:46
>>806
「総動員」出来る「これまでに学んだJavaの知識」も分からんし。
家を書くプログラムを直して、車を書くプログラムにでもしてみたら?

813 :806:2010/01/29(金) 12:05:43
自己解決しました。ありがとうございました。

814 :デフォルトの名無しさん:2010/01/29(金) 16:40:29
>>813
補足の説明が全く意味なくてわろた
【補足】これまでに学んだJavaの知識とは…

815 :デフォルトの名無しさん:2010/01/30(土) 09:50:57
【 課題 】http://rg550.hp.infoseek.co.jp/cgi-bin/joyful/img/915.txt
      
【 形態 】1. Javaアプリケーション(main()で開始)
【 GUI  】4. 制限なし      
【 期限 】2/3日17時まで
【 Ver  】"1.6.0_12" 
【 補足 】過去ログに同じような物がありましたが、
      途中までしかかかれていなかったので投稿しました。
      手違いでShiritori.java(完成形)が貼れなかったのでここに書きます
      import java.util.Scanner;
public class Shiritori {
public static void main(String[] args) {
Scanner keyboardScanner = new Scanner(System.in);
final char initialChar = 'あ';
String newWord;
System.out.println("しりとりをしましょう");
Referee referee = new Referee(initialChar);
do {
System.out.printf("「%c」で始まる単語を入力してください:", referee.mustBeginWith());
newWord = keyboardScanner.next();
}while (referee.isOK(newWord));
System.out.println("おしまいです.");
}
}
長文失礼しました

816 :デフォルトの名無しさん:2010/01/30(土) 10:02:23
しりとりって難しそうだな
入力された単語が単語として存在するかどうかの判定ができなさそう
Googleとかの検索使って街頭するページが1ページ以上あればOKとかにするのかね

817 :デフォルトの名無しさん:2010/01/30(土) 11:19:23
>>815
http://rg550.hp.infoseek.co.jp/cgi-bin/joyful/img/916.java
こんなんでいいかな?
課題文に書かれているのは盛り込んだけど、最後が「っ」とか「ー」とかは考えてなかったりする。
既に使われた単語をチェックするところは好きな方使ってくれればおk

818 :デフォルトの名無しさん:2010/01/30(土) 12:19:52
>>817
ありがとうございます。
public boolean isOK(String newWord){
のところに「このメソッドは型booleanの結果を戻す必要があります」とエラーがでてしまいます。
booleanをvoidに戻すとreturnにエラーが出てしまいます。
後this();のところには「コンストラクターReferee()は未定義です」と出てしまいます。
こちらも少し試行錯誤してみますが、どうかよろしくお願いします。

819 :デフォルトの名無しさん:2010/01/30(土) 12:24:37
>>818
連投すいません
815ですthis();のところは打ち忘れがあったことが判明しました。
しかしpublic boolean isOK(String newWord){はまだ原因がわかりませんのでよろしくお願いします。

820 :デフォルトの名無しさん:2010/01/30(土) 12:31:48
>>817
全て僕のうち間違いのミスですか本当に申し訳ございませんでした。
817さん本当にありがとうございました。
感謝しきれないです

821 :デフォルトの名無しさん:2010/01/31(日) 18:32:49
【 課題 】Java の線分描画,点描画のメソッドをつかって,放物線を描画して下さい.
【 形態 】1. Javaアプリケーション(main()で開始)
【 GUI  】2. Swing
【 期限 】2010/2/12 12:00 
【 Ver  】1.6.0_12

よろしくお願いします。

822 :デフォルトの名無しさん:2010/01/31(日) 21:36:24
>>821
import java.awt.Graphics;
import javax.swing.*;
public class Parabola extends JComponent {
@Override public void paintComponent(Graphics g) {
int w = getWidth(), h = getHeight();
for (int x = 0; x < w; x++) g.drawLine(x, y(x, w, h), x+1, y(x+1, w, h));
}
private int y(int x, int w, int h) { // y = - (4h/w^2)(x - w/2)^2 + h
return (int)(h - 4.0 * h / w / w * (x - w / 2.0) * (x - w / 2.0));
}
public static void main(String[] args) {
SwingUtilities.invokeLater(new Runnable() {
public void run() {
JFrame f = new JFrame();
f.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
f.add(new Parabola());
f.setSize(500, 500);
f.setVisible(true);
}
});
}
}

823 :デフォルトの名無しさん:2010/02/01(月) 10:39:52
【課題】もぐらたたき
【形態】javaアプリケーション
【期限】2月3日

最低限の機能があればいいです。
課題自体は細かい指定など何もないのでとにかく動けばいいです。
制限時間20秒でヒットしたら+10点とかでお願いします。

丸投げで申し訳ありません!
よろしくお願いします!!

824 :デフォルトの名無しさん:2010/02/01(月) 17:30:25
最低限、テンプレの必須項目も埋められないようでは……

825 :デフォルトの名無しさん:2010/02/01(月) 22:05:38
【 課題 】javaを用いて時計を表示するプログラムを作成しなさい。
【 形態 】Applet      
【 GUI  】制限なし
【 期限 】2月10日
【 Ver  】1.6.0_03
【 補足 】アナログとデジタル二つを表示して、STARTとSTOPのボタンで操作できて、初めに時刻を設定してSTARTのボタンで
      動き出すもの。
      時刻を設定するところが分かんなくて自分のだとパソコンの時間を表示するだけになってます。
      よろしくお願いします。

826 :デフォルトの名無しさん:2010/02/02(火) 01:11:57
>>825
入力された時刻をパソコン自体に設定しようとしてるんじゃないか?
パソコンの時間と関係なく、初期値が0じゃないストップウォッチだと考えたらどうだ。

827 :デフォルトの名無しさん:2010/02/02(火) 15:01:12
【 課題 】 http://rg550.hp.infoseek.co.jp/cgi-bin/joyful/img/918.txt
【 GUI  】 制限なし
【 期限 】2/4

javaの講義についていけていません。コメントもすこしだけ書いてくれると助かりますが、
時間がなければ、教科書見て、調べます!
宜しくお願いします。


828 :デフォルトの名無しさん:2010/02/02(火) 15:32:25
>>827
問題作った奴と半年くらい話し合いたい
おもにオブジェクト指向について

829 :デフォルトの名無しさん:2010/02/02(火) 15:35:01
>>828
問題がわかりにくいのでしょうか?自分のできる範囲で改善するので、よろしくお願いします。

830 :デフォルトの名無しさん:2010/02/02(火) 20:29:30
>>827
課題1
問題がひどいな。

class Ramen {
  // カプセル化
  private String type;
  private Utsuwa utsuwa;
  private Soup soup;
  private Pasta pasta;
  private Topping topping;

  public Ramen(String type) {
    this.type = type;
    this.utsuwa = new Utsuwa();
    this.soup = new Soup();
    this.soup.setType(type);
    this.pasta = new Pasta();
    this.topping = new Topping();
  }
 


831 :830:2010/02/02(火) 20:30:33
// つづき

  // オーバーライド
  public String toString() {
    return type + "ラーメン";
  }
 
  // メソッド&オーバーロード
  public void cook(Pasta pasta) {
    this.pasta = pasta;
  }
 
  public void cook(Topping topping) {
    this.topping = topping;
  }
}

class Utsuwa {}

class Soup {
  // カプセル化
  private String type;
  public void setType(String type) {
    this.type = type;
  }
}

class Pasta {}
class Topping {}


832 :デフォルトの名無しさん:2010/02/02(火) 20:48:31
>>827
10000円のおつりはないのか?
1000円までしか計算してないからあとは自分で

public class TuriKeisan {

  public static void main(String[] args) {
    TuriKeisan tk = new TuriKeisan();

    // 6200円の買い物
    tk.setGoukei(6200);

    // 7000円の受け取り
    tk.setUketori(7000);
   
    // 計算する
    tk.calculate();
   
    System.out.println("5000円:" + tk.getGosenen());
    System.out.println("2000円:" + tk.getGosenen());
    System.out.println("1000円:" + tk.getGosenen());
  }

  int goukei, uketori;
  int gosenen, nisenen, senen; // 以下略


833 :832:2010/02/02(火) 20:52:28
  void setGoukei(int x) {
    goukei = x;
  }
  void setUketori(int x) {
    uketori = x;
  }
 
  void calculate() {
    int amari = uketori - goukei;
   
    gosenen = amari / 5000;
    amari = amari % 5000;
   
    nisenen = amari / 2000;
    amari = amari % 2000;
   
    senen = amari / 1000;
    amari = amari % 1000;
  }

  int getGosenen() {
    return gosenen;
  }
  int getNisenen() {
    return nisenen;
  }
  int getSenen() {
    return senen;
  }
}

834 :デフォルトの名無しさん:2010/02/02(火) 21:32:19
>>827
このラーメンの例え…なんかの本で似たのを見たな
その著者なんだろうか

昔図書館で借りただけだからよく覚えてないけど

835 :デフォルトの名無しさん:2010/02/02(火) 22:29:28
>>827
業務でまったく役に立たないオブジェクト指向の見本だな

836 :デフォルトの名無しさん:2010/02/03(水) 00:58:15
>>828
ありがとうございます。でも分かんないんでプログラム作ってもらえないでしょうか?

837 :デフォルトの名無しさん:2010/02/03(水) 00:59:13
>>834
俺もなんか見たことあるな
その本はやたら食いもんの例えが出てきてて
日本の弁当はおかずが区分けされてる→モジュール化
みたいな例があったな

838 :ウォシュレットのアームめがけて排便する俺 ◆06NY4sFIG. :2010/02/03(水) 03:07:05
>>834
これ思い出した。
ttp://d.hatena.ne.jp/bleis-tift/20081006/1223298057

839 :デフォルトの名無しさん:2010/02/08(月) 21:04:47
【 課題 】5個以上の学生番号(2桁程度の数字で良い)、
      名前、身長をプログラム中でセットし、
      学生番号または名前をもとに身長を調べるプログラム。
      学生番号と名前の入力データ、検索結果の身長データを両方表示する機能があること。
【 形態 】1. Javaアプリケーション(main()で開始)/
【 期限 】2/10(水)

たぶん二分探索使うかと思うのですが
よくわかりません!すみませんがよろしくおねがいします!!


840 :デフォルトの名無しさん:2010/02/08(月) 21:30:13
>>839
「または」って学生番号だけの検索でもいいの?

841 :デフォルトの名無しさん:2010/02/08(月) 22:03:35
>840
できれば両方で検索できるやつがいいです!



842 :デフォルトの名無しさん:2010/02/08(月) 22:04:29
javaについて。
javaで簡単な電卓を作ろうと思っています。
参考までに、
http://msyk.net/keio/JavaBook/ch12.html
このサイトのサンプルプログラムを

コンパイルしてみました。
しかしコンパイルはできるのですが、実行ができません。
何が原因なのでしょうか。

無知で申し訳ありません。解決法をよろしくおねがいします


843 :デフォルトの名無しさん:2010/02/08(月) 22:34:49
無知は罪だ視ね

844 :デフォルトの名無しさん:2010/02/09(火) 00:05:00
>>839
>たぶん二分探索使うかと思うのですが

二分探索使わなきゃいけないのか?

>プログラム中でセットし
元からあるファイルを読み込んだりしたら駄目で、
アプリケーション起動→手入力しろってことか?

845 :デフォルトの名無しさん:2010/02/09(火) 00:07:07
>>842
そんな質問の仕方でわかるわけがない。

なにがどう実行できないのか。
そのページの何章の何行目までは上手く行ったけど、
何行目が上手くいかないとか。


846 :デフォルトの名無しさん:2010/02/09(火) 00:14:46
>>842
質問なら質問スレが別にあるからそっちへ行け。

847 :デフォルトの名無しさん:2010/02/09(火) 06:18:54
【 課題 】電話番号検索を行うjavaプログラムを、探索アルゴリズムを用いて作成せよ。
【 形態 】1. Javaアプリケーション(main()で開始)
【 GUI  】必要なし
【 期限 】2/10(水)午前中
【 Ver  】1.6.0_14
【 補足 】・最初に顧客番号(2桁の数字)、顧客名(Yamadaなど姓のみ)、電話番号(09012345678の形式、ハイフンなし)という顧客データを10人以上プログラム中でセットし、顧客番号または姓をもとに電話番号を調べるアルゴリズムを作成する。
      ・顧客番号と顧客名の入力データ、電話番号データを両方表示させる機能をつけなければならない。
      ・(もし可能なら)データリストへの顧客データの追加or削除機能を盛り込みたい


3つの要素を1式にするから線形リストを使うのかな?と思うけど、いろいろ調べたけど悪戦苦闘してます><
何卒よろしくお願いします!

848 :デフォルトの名無しさん:2010/02/09(火) 12:03:10
【 課題 】クラスの継承
【 形態 】1. Javaアプリケーション(main()で開始)
【 GUI  】必要なし
【 期限 】2/10(水) 午前中
【 補足 】zipを参照してください
よろしくお願いいたします。

http://rg550.hp.infoseek.co.jp/cgi-bin/joyful/img/920.zip


849 :デフォルトの名無しさん:2010/02/09(火) 16:15:19
>>847
> 探索アルゴリズムを用いて作成せよ
>>839と本質的に同じ課題なんだけど、どういう探索アルゴリズムやデータ構造を使うか縛りはないの?
縛りがなかったりマッチするものがあるのならコレクションフレームワークを利用してもいいの?
それともこれに相当するものを地道に自分で実装しないといけないの?

> プログラム中でセットし
というのは10人以上分の最初のデータはファイルやコンソールから取り込むのではなく、
プログラムソース中に直接記述して固定的なデータを与えてやればいいってこと?
それとも>>844>>839に言ってるようにプログラム実行中に動的に与えてセットするって意味?

850 :デフォルトの名無しさん:2010/02/09(火) 16:52:10
【 課題 】−出題内容−
Testプロジェクトのsrc直下にパッケージtest5を作成し、下記のテストプログラムを作成する。そして、TripTestをパスする実装を作成しなさい。
<TripTestの説明>
日本旅行(JapanTrip)とアメリカ旅行(AmericaTrip)それぞれの旅費を算出する機能を実装する。抽象クラスTripを作成すること。
日本旅行もアメリカ旅行も食費(1万円)と宿泊費(3万円)は全く同じ金額で変わらないものとする。
それぞれの食費、宿泊費、交通費はそのまま金額が取得でき、旅費合計は食費と宿泊費と交通費を足したものである。

【 形態 】1. Javaアプリケーション(main()で開始、eclipseでやってます
【 GUI  】必要なし
【 期限 】2月12日 午前中 ですので希望は11日までです
【 補足 】↓ 以下、テストプログラム ↓
package test5;

import static org.junit.Assert.*;
import org.junit.Test;
public class TripTest {
@Test // 旅費を算出するテストプログラム
public void testCost() throws Exception {
Trip jpTrip = new JapanTrip();
assertEquals(10000, jpTrip.getFoodCost()); // 食費
assertEquals(30000, jpTrip.getRoomCost()); // 宿泊費
assertEquals(50000, jpTrip.getTravelCost()); // 交通費
assertEquals(90000, jpTrip.getTotalCost()); // 旅費合計(食費+宿泊費+交通費)
Trip americaTrip = new AmericaTrip();
assertEquals(10000, americaTrip.getFoodCost()); // 食費
assertEquals(30000, americaTrip.getRoomCost()); // 宿泊費
assertEquals(300000, americaTrip.getTravelCost()); // 交通費
assertEquals(340000, americaTrip.getTotalCost()); // 旅費合計(食費+宿泊費+交通費)
}
}

よろしくお願いします。

851 :デフォルトの名無しさん:2010/02/09(火) 16:56:26
>>848
ttp://rg550.hp.infoseek.co.jp/cgi-bin/joyful/img/921.java
課題11-3はエスパーの素質かその教科書を持っていない限り無理

852 :851:2010/02/09(火) 17:12:01
>>848
Kadai11_2クラスはKad11_2クラスの間違いなので
public class Kadai11_2 {

public class Kad11_2 {
に修正してKad11_2.javaというファイル名で保存

853 :デフォルトの名無しさん:2010/02/09(火) 17:41:34
>>850
public abstract class Trip {
public abstract int getFoodCost();
public abstract int getRoomCost();
public abstract int getTravelCost();
public int getTotalCost() {
return getFoodCost() + getRoomCost() + getTravelCost();
}
}
public class JapanTrip extends Trip {
@Override public int getFoodCost() { return 10000; }
@Override public int getRoomCost() { return 30000; }
@Override public int getTravelCost() { return 50000; }
}
public class AmericaTrip extends Trip {
@Override public int getFoodCost() { return 10000; }
@Override public int getRoomCost() { return 30000; }
@Override public int getTravelCost() { return 300000; }
}

854 :847:2010/02/09(火) 17:55:29
>>849
補足に不備があり、大変申し訳ございません。
大きな縛りはありませんが、
「サーチアルゴリズムは線形探索以外のものを採用せよ、文字列のアルゴリズムには制限はなく、データ構造も単なる配列でなくても構わない。
クラス配列・リスト・2分探索木など、対応するアルゴリズムによって適切なデータ構造を実装でしょ」とあります。

また、プログラム中にセットする部分は、仰る通りファイルからの読み込みではなくソース内にあらかじめデータを固定させておく方法を取りたいです。
もし可能であるなら、そのデータを追加・削除できる機能を盛り込めたらとも思っています。

丸投げになってしまい申し訳ないですが、よろしくお願いします!><

855 :847:2010/02/09(火) 17:57:02
>>854 修正
適切なデータ構造を実装でしょ→適切なデータ構造を実装せよ


856 :デフォルトの名無しさん:2010/02/09(火) 18:55:55
【 課題 】アクションゲームのマップを広げる

【 形態 】1. Javaアプリケーション(main()で開始)
【 期限 】2/15
【 Ver  】コンソールでjava -versionを実行し、その結果を貼ります。 《必須》
【 用語 】数学用語、専門用語の意味、説明を書きます。 《あれば必須》
【 補足 】課題について自分なりに補足する事、何か思う事があれば書きます。
       丸投げでない場合は、途中までのソースとその経過報告、
       質問点、疑問点を書きます(なるべく丸投げにしてください)。

Uncaught exception java/lang/ArrayIndexOutOfBoundsException.
ActionCanvas


857 :856:2010/02/09(火) 19:00:12
すいません、書き込み失敗しましたorz
【 課題 】アクションゲームのマップを広げる
【 形態 】1. Javaアプリケーション(main()で開始)
【 期限 】2/15
【 補足 】起動するたびに以下の表記が出てきてしまい強制終了してしまいます。
      どなたか解決法を教えてください。

Uncaught exception java/lang/ArrayIndexOutOfBoundsException.
ActionCanvas

ソース
http://rg550.hp.infoseek.co.jp/cgi-bin/joyful/img/922.zip

858 :デフォルトの名無しさん:2010/02/09(火) 19:33:39
>>856の段階でさえ残してたのにわざわざ書かないんだね
> 【 Ver  】コンソールでjava -versionを実行し、その結果を貼ります。 《必須》

859 :デフォルトの名無しさん:2010/02/09(火) 20:09:44
>>857
英語の辞書をひくとか

860 :デフォルトの名無しさん:2010/02/09(火) 20:31:52
>>847
ほらよ
http://www.42ch.net/UploaderSmall/source/1265714931.zip

>>839
も、電話番号を身長に変えればできるよ。

861 :デフォルトの名無しさん:2010/02/09(火) 21:38:14
>>851
ありがとうございます。


862 :デフォルトの名無しさん:2010/02/09(火) 21:50:31
【 課題 】メソッド
【 形態 】1. Javaアプリケーション(main()で開始)
【 GUI  】必要なし
【 期限 】2/10(水) 午前中
【 補足 】zip参照してください。 まだもうちょっとあります。  
よろしくお願いいたします。

http://rg550.hp.infoseek.co.jp/cgi-bin/joyful/img/923.zip

863 :デフォルトの名無しさん:2010/02/09(火) 21:57:48
【 課題 】コンストラクタ
【 形態 】1. Javaアプリケーション(main()で開始)
【 GUI  】必要なし
【 期限 】2/10(水) 午前中
【 補足 】zip参照してください。 (続きです。)  
レベルが低くてすいません。



http://rg550.hp.infoseek.co.jp/cgi-bin/joyful/img/924.zip


864 :デフォルトの名無しさん:2010/02/09(火) 22:12:06
【 課題 】アクセス制御
【 形態 】1. Javaアプリケーション(main()で開始)
【 GUI  】必要なし
【 期限 】2/10(水) 午前中
【 補足 】zip参照してください。 最後です。 

http://rg550.hp.infoseek.co.jp/cgi-bin/joyful/img/925.zip

865 :847:2010/02/10(水) 18:46:18
>>860
ありがとうございます! おかげで解決できました。

ただ1つだけお願いがあるのですが、
プログラムした内容について発表しなければならない場がありまして、
プログラムの各部分がそれぞれどんな処理なのかを教えていただけないでしょうか?

重ね重ねすみません。よろしくお願いします!

866 :デフォルトの名無しさん:2010/02/10(水) 20:00:27
>>865
L29-L33 山田さん10人作成
L39 コンソールからの入力の準備
L42-L49 メニュー出力
L51 コンソールからの入力を受け取る
あとはそれぞれの機能。

データを引きやすくするために、
<コード, 個人情報>
のマップと
<名前, 個人情報>
のマップを両方持ってる。

で、追加の時は
addメソッドで両方のマップに追加。
削除の時は、
removeByName,removeByCodeメソッドで両方のマップから削除。

これ以上は、わかんないところを聞いてくれ。

つか、自分でちょっとやってみないと、
発表の時にちょっとでもつっつかれたら、
何にも答えられんぞ。



867 :847:2010/02/10(水) 21:11:09
>>866
なるほど、詳しくありがとうございます!
解説して頂いたおかげでよく理解できました。
残りの分も頑張ってみます、ありがとうございました!

868 :デフォルトの名無しさん:2010/02/13(土) 04:59:13
【 課題 】GUIを使った簡易テキストエディターのプログラムです。
      ---------------------------------------------------------------------------
      テキストを入力してください: I am a student!
      フォント変換後のテキスト: I am a student!
      ---------------------------------------------------------------------------
      上のような形で、JTextField オブジェクト内に文字を入力した後、
      その下に“Helvetica”, Bold, 24のフォントで変換した文字を表示させたいのですが。
【 形態 】1. Javaアプリケーション(main()で開始)
【 GUI  】JTextFieldとJLabelオブジェクトを使用します
【 期限 】2/14(水) 夜まで
【 補足 】Java初心者でよく分かりません。よろしくお願いします。 

869 :デフォルトの名無しさん:2010/02/13(土) 13:54:51
>>868
2/14(日)なのか2/17(水)なのかどっちだ。
あと、夜っていつだ。何時だ?

870 :デフォルトの名無しさん:2010/02/13(土) 16:06:18
>>868
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
public class TextEditor extends JFrame {
public static void main(String[] args) {
JFrame frame = new TextEditor();
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.pack();
frame.setLocationRelativeTo(null);
frame.setVisible(true);
}
private final JTextField inputField = new JTextField(10);
private final JTextField outputField = new JTextField(10);
public TextEditor() {
inputField.addActionListener(new ActionListener() {
// inputField内でEnterが押された時の処理
@Override
public void actionPerformed(ActionEvent e) {
outputField.setText(inputField.getText());
}
});
outputField.setEditable(false);
outputField.setFont(new Font("Helvetica", Font.BOLD, 24));
getContentPane().setLayout(new GridLayout(2, 2));
add(new JLabel("テキストを入力してください:", JLabel.RIGHT));
add(inputField);
add(new JLabel("フォント変換後のテキスト:", JLabel.RIGHT));
add(outputField);
}
}


871 :デフォルトの名無しさん:2010/02/14(日) 01:51:43
>>869
あ、日曜日の間違いでした・・・。

>>870
本当に助かりました!ありがとうございました!

872 :デフォルトの名無しさん:2010/02/15(月) 17:08:27
【 課題 】穴埋め問題
【 形態 】1. Javaアプリケーション(main()で開始)
【 期限 】2/17(水) 
【 補足 】ZIP参照お願いします

http://rg550.hp.infoseek.co.jp/cgi-bin/joyful/img/926.zip

873 :デフォルトの名無しさん:2010/02/16(火) 00:13:59
tes

874 :デフォルトの名無しさん:2010/02/16(火) 00:29:07
>>872
問題1だけやった

1.「static String」「static」「String」「Test001.str」
2.「String str」「"HELLO "」
3.「str = "Hello " + str」「str」
4.「static String」「public static」「A.str + str」
5.「+=」「public static A」「new A(str)」
6.「String str」「str = str + this.str」「System.out.println(str)」
7.「String str」「System.out.println(str)」「abstract」
8.「super(str)」「this.str = str」
9.「public」「System.out.println(this.str)」「public」「interface」「String str」
10.「this.str」「abstract」「String str」

875 :デフォルトの名無しさん:2010/02/16(火) 01:30:47
【 課題 】穴埋め問題
【 形態 】1. Javaアプリケーション(main()で開始)
【 期限 】2/17(水) 
【 補足 】txt参照お願いします。?の所が穴です。

http://rg550.hp.infoseek.co.jp/cgi-bin/joyful/img/927.txt

876 :デフォルトの名無しさん:2010/02/16(火) 04:35:37
>>874
>3.「str = "Hello " + str」「str」
「print()」「str」じゃないか?

877 :デフォルトの名無しさん:2010/02/16(火) 05:18:43
>>876
あー、なるほど。
どうにでもなるじゃんと思ってしまったw

878 :デフォルトの名無しさん:2010/02/16(火) 09:14:10
>>874
>>876
ありがとうございます

課題2のほうもお願いします

879 :デフォルトの名無しさん:2010/02/16(火) 10:32:33
>>875
とりあえずコンパイルは通るけど、
これ問題おかしくないか?
問題4なんてどうしてもぬるぽになるし。
問題5なんてほんとになんでもいいじゃん。
他に何か前提があるとか。
せめて出力結果が決まってるとか。

1.「new A[0]」「new A("hello")」「String str」「"hello"」
2.「new A[0]」「new A()」「int」「"hello"」
3.「new A("Hello")」「a[0]」「b」「a[0]」
4.「A」「A」
5.「1」「1」
6.「a」「String a="Hello"」

880 :デフォルトの名無しさん:2010/02/16(火) 11:43:10
>>879
気になったので取り合えず問題4だけ
見てみたがくそ噴いた。
意図がさっぱりわからん。

881 :デフォルトの名無しさん:2010/02/16(火) 11:48:38
余裕でコード書き直しのレベル

882 :デフォルトの名無しさん:2010/02/16(火) 11:52:08
>>879
ありがとうございます
よくみたら用紙の裏に出力結果が書いてありました。
報告し忘れでした。すいません。

883 :875:2010/02/16(火) 13:08:41
さっきのに出力結果を付け足しました。
お願いいたします。
http://rg550.hp.infoseek.co.jp/cgi-bin/joyful/img/928.txt


884 :デフォルトの名無しさん:2010/02/16(火) 13:33:44
>>883
誰か4やってくれ。
おれには無理だった。

1.「new A[1]」「new A(0)」「int i」「"hello!?"」
2.「new A[1]」「new A()」「int」「"hello!?"」
3.「null」「b」「b」「b」
4.ムリ
5.「"helloHello"」「""」
6.「a」「String a="heLLO"」

885 :デフォルトの名無しさん:2010/02/16(火) 13:51:48
指定の出力結果を吐くように ? のところに当てはまる何かを書けばいいんだな

4.「Object(); A.setA」 「Object(); A.setA」

これでどうだw

886 :デフォルトの名無しさん:2010/02/16(火) 13:53:58
>>885
おおおお。
まいりましたw

887 :デフォルトの名無しさん:2010/02/16(火) 13:58:00
問題1: 「new A[3]」「new A(i)」「int i」「s[i]」
問題2: 「new A[1]」「new A()」「int」「"hello!?"」
問題3: 「null」「b」「null」「b」
問題4: 「String(); try { Field f = A.class.getDeclaredField("a"); f.setAccessible(true); ((A[])f.get(null))[0] = new A("hello"); } catch(Exception ex){} new A」
「String(); try { Field f = A.class.getDeclaredField("a"); f.setAccessible(true); ((A[])f.get(null))[1] = new A("HELLO"); } catch(Exception ex){} new A」
問題5: 「((C)this).s」「((B)this).s」
問題6: 「((C)this).s」「」

888 :デフォルトの名無しさん:2010/02/16(火) 15:38:46
>>884
>>885
>>887
本当にありがとうございました!

889 :デフォルトの名無しさん:2010/02/16(火) 15:46:55
おまえらゆとりを甘やかすのもたいがいにしとけよw

890 :デフォルトの名無しさん:2010/02/16(火) 15:50:31
残念ながらここはゆとり専用スレだ。

891 :875:2010/02/16(火) 16:32:07
【 課題 】穴埋め問題
【 形態 】1. Javaアプリケーション(main()で開始)
【 期限 】2/17(水) 
【 補足 】txt参照お願いします。?の所が穴です。
       これで最後になります、よろしくお願いします 

http://rg550.hp.infoseek.co.jp/cgi-bin/joyful/img/930.txt


892 :デフォルトの名無しさん:2010/02/16(火) 17:01:57
ゆ、ゆとりすぎる。最後の問題だけ答えてやる。ちなみに、多分求められてる回答とは違う。。
private class Bex extends B{
Bex(){
super();
}
}
B b = new Bex();

な。

893 :デフォルトの名無しさん:2010/02/16(火) 17:04:25
>>891
「"IT"」
「"IT"」
「A.B」
「A(); x = "IT"」
「x = "IT"」
「B b = new B() {}」「int i」

894 :デフォルトの名無しさん:2010/02/16(火) 21:01:27
>>885
「A().setA」のほうが数文字ずつ短くなるな

895 :デフォルトの名無しさん:2010/02/16(火) 21:26:55
>>872
問題2
穴埋めはやった。16以降は知らん。
出力結果なんて自分でコンパイルして実行すりゃ終わりだ。
それくらいやろう。

11.「-1」
12.「1」
13.「7; System.out.print("-3276")」
14.「2」
15.「Test015 t = new Test015()」

だれか13わかる人いる?


896 :デフォルトの名無しさん:2010/02/16(火) 23:02:13
>>872 俺もやってみた。
問題1
4.「static String」「static」「A.str + str」
5.「+=」「static A」「new A(str)」

897 :デフォルトの名無しさん:2010/02/16(火) 23:53:38
JAVA始めて間もないんですが
ジェネリクスのワイルドカードの使用で

<?>はどのクラスでも対応可能
※確か要素の追加は不可能
ってさらっと話聞いたんですが、どういう意味ですか??

list1.add(new A());のようなことが出来ないって意味ですか?
例えばlist1.add(new ?());みたいにはってことでしょうか…

くだらない質問で申し訳ないです。。

898 :デフォルトの名無しさん:2010/02/17(水) 01:22:23
お前ら出力が合えばいいってもんじゃねーぞwww

>>897
質問スレに行こうか

899 :デフォルトの名無しさん:2010/02/17(水) 01:42:24
>>895
+1してshort最小値ったら最大値の7fffじゃないか

900 :デフォルトの名無しさん:2010/02/17(水) 01:48:38
>>872
>>895

13. short a= 0x7FFF

901 :デフォルトの名無しさん:2010/02/17(水) 01:49:36
送信する前に更新すりゃえがったorz

902 :デフォルトの名無しさん:2010/02/19(金) 04:15:55
>>895
11.は問題の趣旨としては
byteでキャストじゃなかろーか

以下>>872問題2の16以下、コードだけ読んで適当に回答してみるw
16.1
17.4
18.2
19.3
20.3
21.1
22.3

903 :デフォルトの名無しさん:2010/02/19(金) 04:36:43
>>893はさすがに強引すぎないか?w
>>891ちょこっとやってみた。

new B().x
new B(){}.x
A.B
D.C()
new B(){}
B b と b = new B(){}

904 :デフォルトの名無しさん:2010/02/19(金) 04:59:43
すまん、とっくに期限切れてたねw

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 :デフォルトの名無しさん: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 :デフォルトの名無しさん:2010/02/24(水) 08:59:08
>>908
ちょっと待て。その結論はおかしい。

910 :デフォルトの名無しさん:2010/02/24(水) 10:48:16
>>908のコードをコピペして実行しても
1683なんて答えは得られないじゃねーか

sum = sum + (double) numerator / denominator;

sum = sum + (double) numerator / (double)denominator;
にしろ

911 :デフォルトの名無しさん:2010/02/24(水) 17:48:49
>>910


912 :デフォルトの名無しさん:2010/02/24(水) 22:24:29
【 課題 】アプレットで作品をつくる
【 形態 】2. Applet/
【 期限 】2月26日
【 補足 】初心者です。お手柔らかにお願いします。
javaアプレットで
画像を12枚取り込んで、
そのうちの5枚を並べて表示、
1秒ごと10%の確率で
各画像を変更したいのですが
どうしたらいいのでしょうか・・・。
画像を取り込むところまでできています。。。

913 :デフォルトの名無しさん:2010/02/25(木) 00:30:12
>>912
その画像を取り込むところまで見せてもらおうか
それとテンプレ必須項目くらいは埋めようぜ
> 1秒ごと10%の確率で
表示されている5枚それぞれについてサイコロを振って換えるかどうか決めるってことでいいの?

914 :デフォルトの名無しさん: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 :デフォルトの名無しさん:2010/02/25(木) 06:52:19
>>905
最後に5/7を引かないといけないそうです。
http://pc12.2ch.net/test/read.cgi/tech/1261443439/757

916 :デフォルトの名無しさん:2010/02/25(木) 20:09:35
>>905
通分しないと誤差が出るんじゃないかと
http://rg550.hp.infoseek.co.jp/cgi-bin/joyful/img/931.java

917 :デフォルトの名無しさん:2010/02/26(金) 02:51:14
>>916
多分そういうのも考慮しろっていう問題だよねえ。

918 :916:2010/02/26(金) 18:00:26
せっかくなんでFraction.javaをまともに実装してみた
正直まともにテストしてない
http://rg550.hp.infoseek.co.jp/cgi-bin/joyful/img/933.java

919 :デフォルトの名無しさん:2010/02/27(土) 00:27:14
>>918
普通にやった場合と、どの位の差がでるの?


920 :デフォルトの名無しさん:2010/02/27(土) 03:47:49
>>919
916ではないけれど3通りほどの方法で
ttp://rg550.hp.infoseek.co.jp/cgi-bin/joyful/img/934.java
このくらいの違い

921 :920:2010/02/27(土) 03:56:31
間違った
小さいもの順の足し算なので
while (x.size() > 1) x.add(x.pollFirst() + x.pollFirst());
System.out.println(n - x.first() * 2);
に修正^^;

922 :デフォルトの名無しさん:2010/02/27(土) 04:24:17
一番目の方法はうちの環境では
44.410164588764474
と表示されるけど小数点以下の部分だけ出すなら
System.out.println(4 - x.first() * 2);
にすると
.41016458876447004
なので
.410164588764470250...
にさらに近づくかな

923 :デフォルトの名無しさん:2010/02/27(土) 12:40:50
キーボードから5人分の点数を入力して、合計、平均、最高点、最低点を
表示するプログラムを作成してくださいというものです。
今は途中で終わっています
http://rg550.hp.infoseek.co.jp/cgi-bin/joyful/img/935.java

お願いしますm(_ _)m

924 :デフォルトの名無しさん:2010/02/27(土) 13:26:53
>>923
>>1くらいよめ

925 :デフォルトの名無しさん:2010/02/27(土) 16:38:11
>>923
http://rg550.hp.infoseek.co.jp/cgi-bin/joyful/img/936.java

926 :デフォルトの名無しさん:2010/02/28(日) 16:44:00
>>923
ttp://rg550.hp.infoseek.co.jp/cgi-bin/joyful/img/937.java

927 :デフォルトの名無しさん:2010/03/01(月) 12:48:00
【 課題 】アニメーション
【 形態 】1. Javaアプリケーション(main()で開始)
【 GUI  】制限なし
【 期限 】3/2(火) 午前中
【 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)
【 補足 】http://rg550.hp.infoseek.co.jp/cgi-bin/joyful/img/938.txt
問題はtxtに記入してあります
よろしくお願い致します

928 :デフォルトの名無しさん:2010/03/02(火) 23:33:33
【課題】リストボックスから選んだ値にヒットするレコードを表示する
【形態】3. Servlet(JSP、Bean、DB)
【期限】3/3 16時までにお願いしたします。
【Ver】 java version "1.6.0_12"
Java(TM) SE Runtime Environment (build 1.6.0_12-b04)
Java HotSpot(TM) Client VM (build 11.2-b01, mixed mode, sharing)
【補足】http://rg550.hp.infoseek.co.jp/cgi-bin/joyful/img/939.txt

よろしくお願いします。
Servletとしましたが、JSPとBeanが主です。

929 :デフォルトの名無しさん:2010/03/03(水) 00:56:33
>>928
とりあえず
enshu5Bean

public String getSql(String ss) throws Exception

public String getSql() throws Exception
にするとどうなるか

930 :デフォルトの名無しさん:2010/03/03(水) 01:42:00
>>929
コンパイルエラーになります

java:40: シンボルを見つけられません。
シンボル: 変数 ss
場所 : enshu5.enshu5Bean の クラス
ss = "SELECT * FROM 学生名簿 WHERE 性別 = " + this.value + ";";

^
java:41: シンボルを見つけられません。
シンボル: 変数 ss
場所 : enshu5.enshu5Bean の クラス
return ss;
^
エラー 2 個


試しにenshu5Beanでprivate String ssと更に記述してコンパイルしたら通りましたが、
txtのソースと同じエラーになります……

931 :デフォルトの名無しさん:2010/03/03(水) 12:57:47
>>928
とりあえず
JSPだけでも。

<%@ page contentType="text/html; charset=Windows-31J"%>
<%@ page import="java.sql.*" %>
<%@ page import="enshu5.*" %>
<jsp:useBean id="bean" scope="request" class="enshu5.enshu5Bean" />

<html>
<head>
<title> </title>
</head>

<body>
<%bean.open(); %>
<%=bean.getValue()%>と入力されました。<br><br>
<form action="/examples/Enshu5" method="POST">
<select name="cnb">
<option value="男性 and 女性">全て</option>
<option value="男性">男性</option>
<option value="女性">女性</option>
</select>
<input type="submit" value="選択">
</form>
<%String sql = bean.getSql("");%>
<%ResultSet rs = bean.executeQuery(sql);%>

932 :デフォルトの名無しさん:2010/03/03(水) 13:00:41
>>931
つづき

<table border="1">
<tr><td>学籍番号</td><td>名前</td><td>入学年度</td><td>性別</td></tr>

<%
//検索された行数分ループ
while(rs.next()){
%>
<tr>
<td><%=rs.getInt("学籍番号")%></td>
<td><%=rs.getString("名前")%></td>
<td><%=rs.getString("入学年度")%><td>
<td><%=rs.getString("性別")%></td>
</tr>
<%} //while文の終了%>
<table>
<%bean.close(); %>
</html>

933 :デフォルトの名無しさん:2010/03/03(水) 13:49:07
>>931-932
有難う御座います
提示して頂いたソースで改良してみたんですが、どうもgetSqlやResultSetで
引っかかってしまうようで、そのままだと

JSPファイル: /jsp/enshu5.jsp の中の23行目でエラーが発生しました
The method getSql() in the type enshu5Bean is not applicable for the arguments (String)
20: <input type="submit" value="選択">
21: </form>
22:
23: <%String sql = bean.getSql("");%>
24: <%ResultSet rs = bean.executeQuery(sql);%>
25:
26: <table border="1">

というエラーになり、getSql("")のダブルクォーテーションを試しに外してみたところ

org.apache.jasper.JasperException: An exception occurred processing JSP page /jsp/enshu5.jsp at line 24

21: </form>
22:
23: <%String sql = bean.getSql();%>
24: <%ResultSet rs = bean.executeQuery(sql);%>
25:
26: <table border="1">
27: <tr><td>学籍番号</td><td>名前</td><td>入学年度</td><td>性別</td></tr>

となってしまいます。importなどの抜けていた部分も埋めたのですが、
どうも此処だけ変わらずなってしまうようです……
ResultSetなどが上手く定義出来ていないということなんでしょうか・

934 :デフォルトの名無しさん:2010/03/03(水) 14:05:37
>>933
enshu5Bean

executeQueryメソッドの中をいったん
return null;
にするとどうなる?


935 :デフォルトの名無しさん:2010/03/03(水) 14:25:31
>>934
getSql("")の場合

The method getSql() in the type enshu5Bean is not applicable for the arguments (String)
20: <input type="submit" value="選択">
21: </form>
22:
23: <%String sql = bean.getSql("");%>
24: <%ResultSet rs = bean.executeQuery(sql);%>
25:
26:


getSql()の場合

org.apache.jasper.JasperException: An exception occurred processing JSP page /jsp/enshu5.jsp at line 24

21: </form>
22:
23: <%String sql = bean.getSql();%>
24: <%ResultSet rs = bean.executeQuery(sql);%>
25:
26:
27: <table border="1">

となります


936 :デフォルトの名無しさん:2010/03/03(水) 14:31:31
追記ですが、returnをnullにした場合とその前共に

原因

java.lang.NullPointerException
enshu5.enshu5Bean.executeQuery(enshu5Bean.java:46)
org.apache.jsp.jsp.enshu5_jsp._jspService(enshu5_jsp.java:94)
org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70)
javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:377)
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:313)
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:260)
javax.servlet.http.HttpServlet.service(HttpServlet.java:717)

が表示されます

937 :デフォルトの名無しさん:2010/03/03(水) 15:02:17
>>936
じゃ、
getSql()
でやろう。
で、executeQueryメソッドがうまく動いてない。

Enshu5クラスで試しに、
enshu5Bean beanS = new enshu5Bean();
beanS.setValue(prm);
の後に
beanS.open();
ResultSet rs = beanS.executeQuery(sql);
beanS.close();
するとどうなる?




938 :デフォルトの名無しさん:2010/03/03(水) 15:28:10
Enshu5.java:22: 例外 java.lang.Exception は報告されません。スローするにはキャッ
チまたは、スロー宣言をしなければなりません。
beanS.open();
^
Enshu5.java:23: 例外 java.lang.Exception は報告されません。スローするにはキャッ
チまたは、スロー宣言をしなければなりません。
ResultSet rs = beanS.executeQuery("SELECT * FROM 学生名簿;");
^
Enshu5.java:24: 例外 java.lang.Exception は報告されません。スローするにはキャッ
チまたは、スロー宣言をしなければなりません。
beanS.close();
^
エラー 3 個


となってしまいます。
setValueなどにエラーが起きないという事は、

beanS.open();
ResultSet rs = beanS.executeQuery(sql);
beanS.close();

の宣言がまず上手くいっていないということになってしまうんでしょうか?

939 :デフォルトの名無しさん:2010/03/03(水) 15:31:29
さっき追加したところを↓にしてみて。

try {
beanS.open();
ResultSet rs = beanS.executeQuery(sql);
beanS.close();
}catch(Exception e) {
e.printStackTrace();
}

940 :デフォルトの名無しさん:2010/03/03(水) 15:31:47
すいません>>938ですが、

ResultSet rs = beanS.executeQuery();

には直接SQL文を入れて実行してみました。
今、上の変数宣言で

String sql="SELECT * FROM 学生名簿;";

としてResultSet rs = beanS.executeQuery(sql);を実行しましたが、
結果は同じです。

941 :デフォルトの名無しさん:2010/03/03(水) 15:35:55
>>939

実行してみました。
Enshu5.java自体のコンパイルは通りましたが、

org.apache.jasper.JasperException: An exception occurred processing JSP page /jsp/enshu5.jsp at line 24

21: </form>
22:
23: <%String sql = bean.getSql();%>
24: <%ResultSet rs = bean.executeQuery(sql);%>
25:
26:
27: <table border="1">

となってしまいます。

942 :デフォルトの名無しさん:2010/03/03(水) 15:42:51
importしてない、とか。

943 :デフォルトの名無しさん:2010/03/03(水) 15:51:07
コンパイル通ったって、
サーバのコンソールとかにエラー出てないの?
サーブレット実行してるときに。
executeQueryメソッド内でエラーが発生してると思う。

String sql="SELECT * FROM 学生名簿;";

String sql="select current_timestamp;";
で実行するとどうなる?

944 :デフォルトの名無しさん:2010/03/03(水) 16:07:10
>>942
確かにエラーをググっている内にそれも考えたのですが、

<%@ page import="java.sql.*" %>

以外のものをimportするケースを見つけられず、

<%@ page import="java.sql.*" %>
<%@ page import="enshu5.*" %>

だけで行っています。他にimportすべき部分があったのでしょうか…?


>>943
はい、そのまま通ってしまいます。
実際JSPの方で

org.apache.jasper.JasperException: An exception occurred processing JSP page /jsp/enshu5.jsp at line 24

21: <input type="submit" value="選択">
22: </form>
23: <%String sql = "select current_timestamp;";%>
24: <%ResultSet rs = bean.executeQuery(sql);%>
25: <table border="1">
26: <tr><td>学籍番号</td><td>名前</td><td>入学年度</td><td>性別</td></tr>
27:

というエラーが出てしまいます。

String sql="select current_timestamp;";

はjspファイルとServletファイルで、該当部分を共に変更して行いました。

945 :デフォルトの名無しさん:2010/03/03(水) 16:34:16
>>944
#open()の

// ステートメントオブジェクトを生成
Statement stmt = con.createStatement();

this.stmt = con.createStatement();
としたらどうかね。途中はあんま読んでないがw


946 :デフォルトの名無しさん:2010/03/03(水) 16:35:52
なんだ?
DBとのコネクションははれてるけど、
select current_timestamp;
が失敗するってのは?
enshu5Bean
を↓に修正してみて。

public ResultSet executeQuery(String sql) throws Exception {
ResultSet rs = null;
try {
    rs = stmt.executeQuery(sql);
}catch(Exception e) {
e.printStackTrace();
}
return rs;
}

947 :デフォルトの名無しさん:2010/03/03(水) 16:37:45
>>945
それだw

948 :デフォルトの名無しさん:2010/03/03(水) 16:58:47
すいません、>>945,>>946のを両方試させて頂いたんですが、

org.apache.jasper.JasperException: An exception occurred processing JSP page /jsp/enshu5.jsp at line 24
21: <input type="submit" value="選択">
22: </form>
23: <%String sql = "select current_timestamp;";%>
24: <%ResultSet rs = bean.executeQuery(sql);%>
25: <table border="1">
26: <tr><td>学籍番号</td><td>名前</td><td>入学年度</td><td>性別</td></tr>
27:

Stacktrace:
org.apache.jasper.servlet.JspServletWrapper.handleJspException(JspServletWrapper.java:510)
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:419)
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:313)
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:260)
javax.servlet.http.HttpServlet.service(HttpServlet.java:717)


のエラーから抜け出せません。
原因に出ていたんですが、NullPointerExceptionということは、
rsか、何かががまだNullのままだということですよね?
例外処理もたくさん教えて頂いたのに、どうしてこの部分でNullが引っかかってしまうのか……。


949 :デフォルトの名無しさん:2010/03/03(水) 16:59:41
>>948
そっちの原因をはってくれ

950 :デフォルトの名無しさん:2010/03/03(水) 17:05:08
その時点ではrsがnullだろうと関係ないから、beanがnullなんじゃね?

951 :デフォルトの名無しさん:2010/03/03(水) 17:17:59
>>949
原因です

java.lang.NullPointerException
enshu5.enshu5Bean.executeQuery(enshu5Bean.java:46)
org.apache.jsp.jsp.enshu5_jsp._jspService(enshu5_jsp.java:94)
org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70)
javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:377)
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:313)
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:260)
javax.servlet.http.HttpServlet.service(HttpServlet.java:717)

>>950
beanがnullというのは、bean.executeQuery(sql)の中に値が入っていない、
という事になるんでしょうか……?

952 :デフォルトの名無しさん:2010/03/03(水) 17:24:37
色々いじったソースの現在のenshu5Bean.java:46は何書いてあるの?
どうみてもstmtっぽいけど。

953 :デフォルトの名無しさん:2010/03/03(水) 17:27:26
一度JSPの
<%bean.open(); %>
を消して、
enshu5Bean
のexcecuteQueryを↓にしてみて

  public ResultSet executeQuery(String sql) throws Exception {
      // ドライバクラスをロード
Class.forName("org.postgresql.Driver");
// データベースへ接続
Connection con = DriverManager.getConnection(
"jdbc:postgresql:hellodb", //接続文字列
"postgres", //ユーザID
"0810"); //パスワード
        // ステートメントオブジェクトを生成
stmt = con.createStatement();
    return stmt.executeQuery(sql);
}


954 :デフォルトの名無しさん:2010/03/03(水) 17:36:23
>>952

現在>>953のプログラムになってしまっていますが、
先程までの段階では、

  public ResultSet executeQuery(String sql) throws Exception {
→46   ResultSet rs = null;
  try {
   rs = stmt.executeQuery(sql);
   }catch(Exception e) {
    e.printStackTrace();
   }
   return rs;
  }

でした。

955 :デフォルトの名無しさん:2010/03/03(水) 17:41:16
>>953

変更して実行してみましたが、

例外

org.apache.jasper.JasperException: An exception occurred processing JSP page /jsp/enshu5.jsp at line 24

21: <input type="submit" value="選択">
22: </form>
23: <%String sql = "select current_timestamp;";%>
24: <%ResultSet rs = bean.executeQuery(sql);%>
25: <table border="1">
26: <tr><td>学籍番号</td><td>名前</td><td>入学年度</td><td>性別</td></tr>
27:


Stacktrace:
org.apache.jasper.servlet.JspServletWrapper.handleJspException(JspServletWrapper.java:510)
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:419)
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:313)
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:260)
javax.servlet.http.HttpServlet.service(HttpServlet.java:717)

になってしまいます。


956 :デフォルトの名無しさん:2010/03/03(水) 17:43:05
原因

java.lang.NullPointerException
enshu5.enshu5Bean.executeQuery(enshu5Bean.java:46)
org.apache.jsp.jsp.enshu5_jsp._jspService(enshu5_jsp.java:94)
org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70)
javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:377)
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:313)
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:260)
javax.servlet.http.HttpServlet.service(HttpServlet.java:717)


私が書き換えの時にミスをしている可能性がありますので、
もう一度現在のソースをアップロードして見て頂いてもいいですか?

957 :デフォルトの名無しさん:2010/03/03(水) 17:45:39
>>956
それがいいかもわからんw

958 :デフォルトの名無しさん:2010/03/03(水) 18:15:45
すいません、アップロードしました。
宜しければ再度お願いします。

http://rg550.hp.infoseek.co.jp/cgi-bin/joyful/img/940.txt

959 :デフォルトの名無しさん:2010/03/03(水) 18:30:07
>>958
直接関係ないけど、jspのwhileはいるもんだと思っていいんかね?
エラーこいてる

960 :デフォルトの名無しさん:2010/03/03(水) 18:37:35
>>959
失礼しました、whileにコメントアウトが掛かったままでした。
検索した結果を<table>で表にするためのものなので。

ResultSet rsがおかしいなら、とりあえずデータベースの開閉のみ
行ってみようと思って一度それに関するプログラムをコメントアウトしていたんですが、
それが残ったままでした。

961 :デフォルトの名無しさん:2010/03/03(水) 18:49:58
>>960
Connectionもthis.conを使わないとだめだな

962 :デフォルトの名無しさん:2010/03/03(水) 18:50:52
あぁでもclose()だけか、影響でるの

963 :デフォルトの名無しさん:2010/03/03(水) 19:07:17
>>961
stmtもthis.stmtにしているので、とりあえず統一してみました
そもそもデータベースにすら繋がってるかどうかが見えないので、
まだ結果は分かりませんが……。

964 :デフォルトの名無しさん:2010/03/03(水) 19:37:17
>>963
おれんとこだとそれっぽく動くんだよなぁ。
まだNullPointerExceptionでる?

965 :デフォルトの名無しさん:2010/03/03(水) 20:12:52
>>964
あれ?そしたらこっちの環境設定の問題なんですかね……。

ちょっと改変してみたところ、
まずenshu.jspは一度正常に起動して、表やリストボックスが普通に出るんですが、
そのあとフォームの「選択」を押してServletを起動しようとすると

Result cannot be resolved to a type
24: </form>
25: <%String sql="SELECT * FROM 学生名簿;";
26: out.println(sql);%>
27: <%Result rs = bean.executeQuery(sql);%>
28:
29: <table border="1">
30: <tr><td>学籍番号</td><td>名前</td><td>入学年度</td><td>性別</td></tr>

と出ます。
このエラーだとimportの問題になるようなんですが、ResultSetのクラスが
import出来ていないということになるんでしょうか?

966 :デフォルトの名無しさん:2010/03/03(水) 20:18:21
965です。
すいません間違えました、ResultではなくResultSetでした。
本当に申し訳ないです。

そして相変わらずNullPointerExceptionになってしまいます。
でもファイルを起動した最初からJSPにはじかれる事は無くなりました。

967 :デフォルトの名無しさん:2010/03/03(水) 20:22:39
【 課題 】
○県、市別に男女の人数を集計するプログラムを作成せよ。

千葉県 柏市 男
千葉県 松戸市 男
埼玉県 さいたま市 女
千葉県 柏市 男
埼玉県 越谷市 男
千葉県 松戸市 男
埼玉県 岩槻市 女
千葉県 柏市 女
埼玉県 さいたま市 女

[実行例]
千葉県 柏市:男2人女1人
千葉県 松戸市:男1人0人
埼玉県 さいたま市:男0人女2人
(以下略)…

【 形態 】1. Javaアプリケーション

【 期限 】3/8まで

【 Ver  】java version "1.5.0_05"


アルゴリズムに苦戦しています、よろしくお願いします。

968 :デフォルトの名無しさん:2010/03/03(水) 20:59:47
>>967
C直下にtest.txtで元データを用意して。

import java.io.BufferedReader;
import java.io.FileReader;
import java.util.HashMap;
import java.util.Map;

public class CityCounter {
  public static void main(String[] args) throws Exception {
    Map<String, City> m = new HashMap<String, City>();
    BufferedReader br = new BufferedReader(new FileReader("c:\\test.txt"));
    String str = br.readLine();
    while (str != null) {
      String city = str.substring(0, str.indexOf("市") + 1).trim();
      String sex = str.substring(str.indexOf("市") + 1, str.length()).trim();
      if (m.containsKey(city)) m.get(city).add(sex);
      else m.put(city, new City(city, sex));
      str = br.readLine();
    }
    for (String city : m.keySet()) System.out.println(m.get(city).toString());
  }
}

969 :デフォルトの名無しさん:2010/03/03(水) 21:00:09
>>968
つづき

class City {
  String city;
  long man = 0;
  long woman = 0;
  City(String city, String sex) {
    this.city = city;
    add(sex);
  }
  void add(String sex) {
    if (sex.equals("男")) man++;
    else woman++;
  }
  public String toString() {
    return city + ":男" + man + "人女" + woman + "人";
  }
}

970 :デフォルトの名無しさん:2010/03/03(水) 21:02:42
>>965
最初のjsp表示できる部分では、
DBのデータも表示されるの?
相変わらずのNullPointerExceptionが出てるところは、
まったく同じところ?

971 :デフォルトの名無しさん:2010/03/03(水) 21:09:29
>>968-969
こんなに早くありがとうございます!
HashMapの使い方が非常に勉強になりました!

972 :デフォルトの名無しさん:2010/03/03(水) 21:17:56
>>970
いや、その時点ではvalueの値がnullなので検索していない=表はそれ以上
表示されないということになります。
なので、DBとの繋がりはそこでは見えません。

全く同じです。ResultSetとexecuteQueryのところでやはり
NullPointerExceptionになってしまいます。

973 :デフォルトの名無しさん:2010/03/03(水) 21:46:25
>>972
結局、締切いつまでなん?

974 :デフォルトの名無しさん:2010/03/03(水) 22:00:00
とにかく途中でもいいから「出せ」と言われていたのが16時までだったので、
未完成なプログラムのまま提出してきました……。

でも結局分からなければ意味がないというか、後々またこれの発展問題みたいなのは
どんどん出てくるんで、出来ればとにかく理解して完成させたいと思っています。


しかし、朝からずっと教えて下さってる方々には本当申し訳ないです……。

975 :デフォルトの名無しさん:2010/03/03(水) 22:26:34
>>974
横からだが
JSP関係なく、JUnitなり普通のmain文書くなりして、
普通にJDBCでResultSet取れてくるか確認しましょう。

976 :デフォルトの名無しさん:2010/03/04(木) 00:00:13
>>975
凄く単純なJavaのソース(JSPやServlet、Beanなどではない)で、
JDBCに接続してみましたが、SQL文を

SELECT * FROM 学生名簿;

としてResultSetを使ったところ、ちゃんとした結果が返ってきました。
接続のソースは殆どここから持ってきているので、問題は無いと
思ったんですが……。

977 :デフォルトの名無しさん:2010/03/04(木) 01:10:42
サーブレットコンテナのWebアプリクラスパスを確認してください。
過去のコンパイル結果が残ったまま実行されているように見えます。

enshu5Beanに行った修正が正しく反映されるか確認しましょう。
例えばexecuteQueryメソッド内で標準出力に文字列を出してみるなど。

テスト用のシンプルな構成でJDBC接続が問題ないのであれば、
おそらく問題はサーブレット実行環境の設定(正しい.classが参照されていない)です。

978 :デフォルトの名無しさん:2010/03/04(木) 02:50:50
>>977
サーブレットコンテナのWebアプリクラスパスというのは、
単純に、set CLASSPATH…と設定したCLASSPATHとは別ということでしょうか?

enshu5Beanは、どうもやはりexecuteQuery()が上手く働いていないようなので、
もう一度修正を加えてから結果を見てみたいと思います。

Servletの正しい.classが参照されていないという事は、やはり上で指摘を頂いた
CLASSPATHなどの問題になりますよね……もう一度、CLASSPATHの設定について調べてみます。

979 :デフォルトの名無しさん:2010/03/04(木) 11:49:09
>>978
もう遅いと思うけどenshu5Beanクラスのopenメソッドの最後の部分以下
// ステートメントオブジェクトを生成
Statement stmt = con.createStatement();
このローカル変数に代入しちゃダメなんじゃない。
本当はフィールド変数のprivate Statement stmt;に代入したいんじゃないの?
executeQueryメソッドで読んでる変数はフィールド変数だからさ。
Statement stmt = con.createStatement();

stmt = con.createStatement();


980 :979:2010/03/04(木) 11:55:59
>>978
ごめん。もうやってたのね

981 :デフォルトの名無しさん:2010/03/04(木) 13:07:29
>>979
とりあえずはその部分も変更してみました。有難う御座います。
ですが接続は出来てもResultSetで取得の部分で詰まってる=DBの内容を表示できない……という事で
接続が成功したかも定かでないので、まだ結果をお知らせできないのが申し訳ないです……。

色々ソースを変えてみた結果、今度は

Type mismatch: cannot convert from String to ResultSet

と出るようになってしまったので、とりあえず一から組みなおしてみようと思います。
beanから呼び出すところで足止めされているようにも見えるので、
JSP内でDBを呼び出してみて(あまりいい方法とは言えないと聞きましたが……)、
それで成功するかどうか試してみたいと思います。

>>977で言って頂いたように、恐らく環境の方で不備もあると思いますので、
その辺りも見直してきます。

982 :デフォルトの名無しさん:2010/03/04(木) 20:34:05
久々に白熱してんね

983 :デフォルトの名無しさん:2010/03/05(金) 13:01:57
【 課題 】プログラムを理解するために十分な量のコメント文を記載する。
http://rg550.hp.infoseek.co.jp/cgi-bin/joyful/img/942.java
【 形態 】1. Javaアプリケーション(main()で開始)? 
【 期限 】 3月8日
【 Ver  】 ?
【 補足 】 できたあとプログラムソースや実行結果をもとにした質問に口頭で答えなければいけません・・・
        お手数ですが宜しくお願いします



984 :デフォルトの名無しさん:2010/03/05(金) 14:13:18
>>983
さすがにそれはおまいさんがわかんないところを聞いた方が早いぞ
何行目は何をやってるの?って
まるでわからないってのなら口頭で答えられないからあきらめろ

985 :デフォルトの名無しさん:2010/03/05(金) 15:19:23
>>984
ほっとけ、こういうカスがIT業界にこられちゃたまらん

986 :デフォルトの名無しさん:2010/03/05(金) 15:55:14
>>985
このスレはプログラミングなんて興味がなく、
IT業界に行く気もないやつが
宿題を丸投げするスレかと


987 :981:2010/03/05(金) 15:59:03
>>981です

あれから色々調べてみたのですが、他のJSPファイルも全て
java.lang.NullPointerExceptionが出るようになってしまいまして……。
web.xmlにおかしな記述でもしているんじゃないかという指摘を受けたのですが、
殆どサーブレットマッピングしかしていないようなものなので、他に消す部分もなく……。

enshu5_jsp.javaというファイルを調べたんですが、そこのjspInit()メソッドで
例外が発生しているので、どうやら其処でNullが出ているらしくて、
とにかく何処でNullになってしまってそれが何故いけないのか調べないといけなくなりました。
このメソッドが読んでいるものに支障があり、それが他のファイルでも呼ばれる所為で
悪影響が出ている、というのまでしか分かっていないのが実情です。


ずっといろんな方に手助けをして頂いたのに、こんなことになってしまい大変申し訳ありませんでした。

988 :デフォルトの名無しさん:2010/03/05(金) 16:02:38
>>987
eclipseつかっとるん?

989 :デフォルトの名無しさん:2010/03/05(金) 16:08:26
>>987
最新ソースあげてみぃ
お前さんは自分でも色々やっとるようだからの


990 :981:2010/03/05(金) 17:07:08
>>988
テキストエディタでソースを書いて、コマンドプロンプト使ってコンパイルしてます。

一応eclipseは持っていて、本来はせっかくならそれを使った方がいいとも思うんですが、
授業で使ってたときに相当それでソースを書く時に楽をしてしまった所為で、あまり身についていないかなという
感覚があるというか…一からテキストエディタでやってみようかと思って。


>>989
有難う御座います……!!

現段階ではEnshu5.java、enshu5Bean.java、enshu5.jspもあまり変わっていないですが、念の為…。
http://rg550.hp.infoseek.co.jp/cgi-bin/joyful/img/944.txt

あと、こっちがenshu5_jsp.javaとweb.xmlになります。
http://rg550.hp.infoseek.co.jp/cgi-bin/joyful/img/943.txt
このenshu5_jsp.javaのjspInit()というメソッドの行が先頭にNullPointerが出るので……。

991 :デフォルトの名無しさん:2010/03/05(金) 17:36:30
>>990
ファイルをはりつけてアップロードするのではなく、
そのプロジェクトのディレクトリを構成そのまま圧縮してアップロードしてほしい。

そっちのほうがわかりやすい。

992 :981:2010/03/05(金) 18:16:54
アップロードしてみました。こういう事で大丈夫なんでしょうか……間違ってたら申し訳ありません。
ファイルの構成だけそのままで、上記で提示しているファイル以外は殆ど入っていないんですが……。
あと、libにはpostgresql-8.3-605.jdbc3.jar、jsp-api.jar、servlet-api.jarなどが本来なら入っています。
何か不備や、これ足りないだろっていうのがあったら仰って頂けると有難いです。

http://rg550.hp.infoseek.co.jp/cgi-bin/joyful/img/945.zip

993 :デフォルトの名無しさん:2010/03/05(金) 19:17:35
web.xmlにenshu5のservlet-mappingがないのは?

994 :デフォルトの名無しさん:2010/03/05(金) 19:50:12
とりあえずJSPは表示されたぞ
http://rg550.hp.infoseek.co.jp/cgi-bin/joyful/img/946.zip

ちょっと変えたところ
・ソースファイルの場所を変えた
・DBにpostgresの環境がないからderbyを使った
・↑に伴いDBのテーブル名、カラム名を英語に


995 :デフォルトの名無しさん:2010/03/05(金) 19:51:48
>>994続き

ディレクトリ構成

├─lib
│      jsp-api.jar
│      servlet-api.jar

├─src
│  └─enshu5
│          Enshu5.java
│          enshu5Bean.java

├─webapp
│  └─examples
│      ├─jsp
│      │      enshu5.jsp
│      │
│      └─WEB-INF
│          │  web.xml
│          │
│          ├─classes
│          │  └─enshu5
│          │          Enshu5.class
│          │          enshu5Bean.class
│          │
│          └─lib
│                  derby-10.5.3.0_1.jar



996 :デフォルトの名無しさん:2010/03/05(金) 19:55:35
ヒント 全部一から作り直せ

997 :981:2010/03/05(金) 21:31:32
>>993
すいません! それはweb.xmlに不備があるかなと思ってサーブレットマッピングを
いじってた時のままになってしまっていたこちらのミスです……。


>>994
zip有難う御座います。
しかし……こっちは今までと同じエラーです……。
試しに私の作ったファイルを隔離して、頂いたファイルをディレクトリ構成含め、
同じ名前で配置して開いてみたんですが、変わらずです。
何だかもっと根本的に環境の方もおかしいんでしょうか……。

あと、WEB-INFの下のlibに(私の場合だったら)postgresql-8.3-605.jdbc3.jarを
配置した方がいいのでしょうか?


>>996
正直、本当に仰る通りというか……、それも考えたんですが。

他のファイルまで開かなくなったという事は、ソースというよりもっと
別のところで間違いをしているような気がして、そこから洗い出さないとと思っています……。

998 :デフォルトの名無しさん:2010/03/05(金) 21:42:31
>あと、WEB-INFの下のlibに(私の場合だったら)postgresql-8.3-605.jdbc3.jarを
>配置した方がいいのでしょうか?

それでやってみたら?


999 :デフォルトの名無しさん:2010/03/05(金) 21:43:50
>>997
もう怪しかったらとにかくそれっぽいところに
postgresql-8.3-605.jdbc3.jar
を配置しまくるんだ

あとそのzipで出てるエラーを全部はってくれ。

1000 :デフォルトの名無しさん:2010/03/05(金) 22:23:04
>>997
それだったらNullPointerExceptionではなく、ClassNotFoundが出るはず

1001 :1001:Over 1000 Thread
このスレッドは1000を超えました。
もう書けないので、新しいスレッドを立ててくださいです。。。

354 KB
★スマホ版★ 掲示板に戻る 全部 前100 次100 最新50

read.cgi ver 05.04.00 2017/10/04 Walang Kapalit ★
FOX ★ DSO(Dynamic Shared Object)