★★ Java の宿題ここ ..
[2ch|▼Menu]
607:572
07/06/28 15:23:22
604氏、ありがとうございました。
=を押す前から計算結果が出力されていますが、=を押すと出力されるように変更は可能でしょうか?
もしできるならばお願いします。

608:デフォルトの名無しさん
07/06/28 19:29:09
>>607
注文どおり自由に作ったのに注文が多いなw
他の二つのクラスは変更しなくていい
フィーリングでコード書いてテストしていないので変なキー操作には耐性ないかも
URLリンク(sourcepost.sytes.net)

609:デフォルトの名無しさん
07/06/28 21:54:26
大学で今までCをやっていたのですが、教授が入院したためにjavaのクラスに急に移動させられました。
javaを始めて一週間なのですが、明後日までに課題の提出を迫られました。
必死にやってみたのですが、さっぱり意味がわかりません。
わかる方、どうか助けて下さい。
下にわかるだけの課題の内容は書き込んでおきます。

【 課題 】

@右詰で数字を入力し、Enter キーを押した時、数字の値を10倍して表示する。
A何度も数字を入れたらそれらを10倍した数をそれぞれ足し合わせた数同じウィンドウの中に表示する。

【 形態 】Javaアプリケーション
【 期限 】土曜日の授業まで(朝の9時開始)
【 Ver  】1.5


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

610:デフォルトの名無しさん
07/06/28 22:04:49
Cをやっていたんでしょ?
ヒントを出せば出来ないはずはない。
まずSwingで画面を作れ、JFrameを継承するだけだ
入力エリアはJTextField, 表示エリアはJLabel で作る
Enterキーの判定はちょっと難しいが、addActionLisnerがヒント


611:デフォルトの名無しさん
07/06/28 22:19:11
Cをやっていたということは、基本(計算・条件式・関数)は大丈夫だろうけど
SwingはJava特有の物だか学習が必要(基本はよく使う関数覚えるだけだが)

結論

誰かやってください(=ω=.)<レバ剣拾ってくるからよろしくね

612:デフォルトの名無しさん
07/06/28 22:24:21
>>609
マルチは有効回答率を下げる。
もしあっちが誤爆だったのなら間違いだった旨をあっちにレスしておいた方がいいかもしれない。
それと課題があやふやなので与えられた問題文をフィルタにかけず全文出した方がいい。
もし問題の意味が分からないのなら問題の意図、意味を講師に質問した上で自分でやるか再度依頼するか決めたほうがいい。

613:デフォルトの名無しさん
07/06/28 22:38:10
c言語で書かれたネトゲをやっていたんだよ(=ω=.)

614:デフォルトの名無しさん
07/06/28 22:49:57
>>609
「ウィンドウの中に表示する」とかだからGUIプログラムだとは思うけど、
最低限GUIライブラリとしてAWTのみを使うのかswingも使っていいのかははっきりさせないと。

レイアウトとしては数字を入力する箱と、
それを10倍した数を表示する部分と、
それまでに入力された数の合計の10倍を表示する部分が、
ひとつのウィンドウにおさまっていれば、どういう配置でもokてことかな?

615:デフォルトの名無しさん
07/06/28 22:50:14
>>609
教授が退院するまで待つ。

616:デフォルトの名無しさん
07/06/28 22:56:33
>>609
教授と一緒に入院する。

617:デフォルトの名無しさん
07/06/28 23:07:57
>>616
鬼才現る!!

618:デフォルトの名無しさん
07/06/28 23:42:39
>>614
たぶんSwing
AWTのTextFieldやTextAreaで右詰めをやるのは面倒すぎる
課題から見てそんなことまでは求められていそうにない

619:デフォルトの名無しさん
07/06/29 00:12:30
>>609
URLリンク(sourcepost.sytes.net)
とりあえず@まで作ったから後は適当に弄くってみればできるはず。

620:デフォルトの名無しさん
07/06/29 00:19:38
一日見なかった間になんでこんなに荒れてんだよ!

らきすた厨とはいうがネタっぽくするためにこなたAA使ってるんだろ?
この流れみてると、どうもマジレスしても通じるようには見えん。

621:デフォルトの名無しさん
07/06/29 00:35:26
>>620
テンプレ使え

622:デフォルトの名無しさん
07/06/29 00:48:22

【 課題 】このスレの流れについて
【 形態 】スレッドフロー型
【 GUI  】 web borowser
【 期限 】次スレまで
【 Ver  】61
【 補足 】ふられたネタはおいしく頂きました(=ω=.)


623:デフォルトの名無しさん
07/06/29 00:48:32
すいません、教えてください。

「java.util.Dateとjava.util.Calendarの使用による危険性の違いを述べよ。
また、java.util.Dateに潜む既知のバグコードを示せ。」

っていう宿題がでたんですが、なんのことだかわかりません><
一応、事前研修ってことなのですが、ググっても意味が分からないです。

おしえてください

624:デフォルトの名無しさん
07/06/29 00:53:23
>>623
研修ってことは社会人だよな
どう調べてどうわからなかったのかちゃんと述べてくれ

625:デフォルトの名無しさん
07/06/29 00:54:02
>>623
テンプレを使ってな

626:デフォルトの名無しさん
07/06/29 00:55:55
スレ違いを強制的に削除してくれる機能実装キボヌ
ニコニコ動画RCのお金で実装してくれってどこに頼めばいいの?←これもスレ違い

627:デフォルトの名無しさん
07/06/29 01:04:06
>>624 返事どうも。
一応自分で調べてみた結果なんだけど

・Dateは古くから互換のために残されているコードが大いが、使用すべきでは無いメソッドが多いらしい
・Dateは国際化対応されていないため、正しい日付を返すとは限らないらしい
・Dateは閏年対応が未完全らしい(?)
・new DateよりもCalendar.getInstance() date = cal.setTimeInMillis(long);の方が正しい値を返すらしい。
・Dateはシステムに依存するらしい

これくらいしか調べてみてもわからなかった。。。
しかもこれらがバグかどうかって、わからない。。。
他のスレッドを見てみてもDateがバグの温床とか書かれてるけど、わからない。なぜsql.Dateの方がいいのか。とか

628:609
07/06/29 01:06:26
皆さんありがとうございます
とくに619さんは本当にありがとうございます

あと一日あるので教授に質問して何とか完成させたいとおもいます
ありがとうございました

629:デフォルトの名無しさん
07/06/29 01:07:05
ごめん、>>627 に追記
なんで、Calenderを使うことを推奨してるのかもわからなかった。
どっちもSystem.currentTimeMillis()を使ってlongを使ったらいっしょなんじゃないの?みたいな。
Calendar.getDateで取得したら結果は一緒なんじゃないかと。

630:デフォルトの名無しさん
07/06/29 01:32:53
>>629
うるう年対応はもう修正が出てた気がするけど、とりあえず>>627の問題が
あるから、そのへんちゃんと対応してるCalendarを使ってねってことなんじゃね?
そんでSystem.currentTimeMillis()もDateと関係してる(APIドキュメントより)ため
システム依存みたいです

あとはこのへんかな
URLリンク(java-house.jp)
URLリンク(www.nep.chubu.ac.jp)
後者のは古いから有効かわからんけど

631:627
07/06/29 01:58:22
>>629 ありがとう
詳しく見てなかった。
URLリンク(java-house.jp)

でバグの疑いがあるコードが載ってた。
でも、今やってみたら結局>>629に書いたとおりDateで取ってしまったらいみないのかも。
システム依存だからCalendarかぁ。
うーん、バグの疑いのあるコードがシステム依存って説明が難しいな。。。

632:627
07/06/29 02:00:03
>> 630 だし...orz

DateとCalendarって
もう少し調べてみないとわからないことだらけだなー
出社までに調べれるかな。。。

633:デフォルトの名無しさん
07/06/29 02:31:38
【 課題 】複数の学生について一人最大3回のテストを行った(未受験のテストもある)。
各学生の成績評価を行うプログラムを作成しなさい。入力は学生番号(下3桁)、受験回数、各テストの得点(100点満点)とし、全ての学生の入力終了は、学生番号に-1を入力することによって行う。
各学生についての評価は受験したテストの得点の合計によって以下のように評価する。
・240点以上→評価A
・210点以上→評価B
・180点以上→評価C
・180点未満→評価Dに表示するプログラムを作成せよ。
プログラム作成ヒント:外側がwhile文による入力の繰り返し。その内側に受験回数入力、
           for文の繰り返しによる入力と集計、if-else if文による評価が入る。
           for文の繰り返し回数は受験回数の入力値で決まる。
実行例 
学生番号入力:101
受験回数入力:2
点数入力:90
点数入力:92
評価はCです。
学生番号入力:102
受験回数入力:3
点数入力:70
点数入力:85
点数入力:65
評価はBです。
学生番号入力:-1
評価終了
【 形態 】1. Javaアプリケーション
【 期限 】今日の16:00まで
【 Ver  】java version "1.6.0
【 補足 】丸投げです。お願いします。

634:デフォルトの名無しさん
07/06/29 05:03:58
くだらんな

635:デフォルトの名無しさん
07/06/29 05:31:29
 _,,..,∩,,
/ ,' 3∩`ヽーっ
l     ⌒_つ
`'ー---‐'''''"

636:デフォルトの名無しさん
07/06/29 13:03:16
>>633
指定がなかったから不正規入力には例外を投げて終了するだけ

public class Eval {
public static void main(String[] args) throws java.io.IOException {
java.io.BufferedReader br = new java.io.BufferedReader(new java.io.InputStreamReader(System.in));
while (true) {
System.out.print("学生番号入力:");
if (Integer.parseInt(br.readLine()) == -1) break;
System.out.print("受験回数入力:");
int n = Integer.parseInt(br.readLine());
int m = 0;
for (int i = 0; i < n; i++) {
System.out.print("点数入力:");
m += Integer.parseInt(br.readLine());
}
if (m >= 240) System.out.println("評価はAです。");
else if (m >= 210) System.out.println("評価はBです。");
else if (m >= 180) System.out.println("評価はCです。");
else System.out.println("評価はDです。");
}
System.out.println("評価終了");
}
}

637:デフォルトの名無しさん
07/06/29 15:59:43
>>636
無事出来ました。
ありがとうございました!

638:へぼPG
07/06/29 23:30:20
【課題提示用テンプレ】
丸一日費やしましたが、わかりません。
どうぞよろしくお願い致します。
同じ体験をした方、いっらしゃいませんか?
【 課題 】SQLServer2005を使用し、JAVAで排他処理とエラー処理を実装せよ。
【 形態 】/5. その他(明記のこと) 《必ず選択》
いわゆるビジネスロジック部分です。
【 GUI  】?
【 期限 】7月1日 21:00 《必須》
【 Ver  】5.0 レビジョンは今はわかりません。 《必須》
【 用語 】数学用語、専門用語の意味、説明を書きます。 《あれば必須》
一部日本語にしました。
【 補足 】課題について自分なりに補足する事、何か思う事があれば書きます。
・コネクション周りは独自に実装
・オートコミット無効
・/*コメントの二箇所がわかりません
・疑問1 なぜPreparedStatementでおちるのか?
・疑問2 排他ロックエラーをどうやって受ければよいか

639:へぼPG
07/06/29 23:32:11
続き(ソース)
Connection con = DBアクセス.getConnection();
ResultSet rs;
PreparedStatement ps;
//クエリー
//前処理略
String queSql = "SELCCT カラム1 FROM ユーザ1.テーブル1 ";
queSql = queSql + " WITH (UPDLOCK) WHERE カラム1 = 1";
try{
ps = con.prepareStatement(sql,
ResultSet.TYPE_SCROLL_INSENSITIVE, ResultSet.CONCUR_READ_ONLY);
/*ここで例外発生*/
rs = ps.executeQuery();

if(rs.next()){
//取得
}else{
//重複エラー
]
}catch(Exception e){
throw e;
}finally{
//いろいろ切断
}



640:へぼPG
07/06/29 23:34:41
続き(ソース2)
//更新
String upSql = " UPDATE ユーザ1.TABLE1 テーブル1 カラム2 = 1";
upSql = upSql + " WHERE カラム1 = 1";
try{
ps.executeUpdate (upSql):
}catch(Exception e){
if (e instanceof SQLException) {
if(){
/*排他エラーの場合 判定が判らない*/

}else{
//その他のDBエラー
}
}
throw e;
}finally{
//いろいろ切断
}

641:デフォルトの名無しさん
07/06/30 03:35:05
【課題】xの多項式の掛算をするプログラム
プログラムの中で(x^2+1)*(x^3+2x+1)のように値を指定して結果を出力する。
この例だとx^5+3x^3+x^2+2x+1を出力
【形態】Javaアプリケーション(main()で開始)
【期間】7/2
【ver】1.5.0_11
【補足】よろしくお願いします。



642:デフォルトの名無しさん
07/06/30 06:41:47
>>638-640
同じ体験したよ


643:デフォルトの名無しさん
07/06/30 06:54:16
>>641
1)多項式を構文解析する

2)次数毎に係数を調べて値をベクトル化する
例題の場合: (0, 1, 0, 1), (1, 0, 2, 1)

3)ベクトルの積をとって行列化
6 5 4 3 - 0 1 0 1
5 4 3 2 - 0 0 0 0
4 3 2 1 - 0 2 0 2
3 2 1 0 - 0 1 0 1

4)左の次数に相当する部分の
右側の値の各和を計算
6 0
5 1
4 0
3 3
2 1
1 2
0 1

5)係数0の次数を省略して出力
x^5+3x^3+x^2+2x+1

644:デフォルトの名無しさん
07/06/30 07:47:53
>>639
オートコミットの無効は、getConnectionのドキュメントを参照すべし
オーバーロードされたメソッドで引数にboolean を与えるものがある

排他関連というかSQLの例外に関して処理を行う場合は、SQLエラーコードを参照する。
エラーコード表はSQLServerのドキュメントを参照、エラーコードの取得方法はSQLExceptionのドキュメントを参照すべし

疑問1に関して、ResultSet.TYPE_SCROLL_INSENSITIVE, ResultSet.CONCUR_READ_ONLYでね?

645:デフォルトの名無しさん
07/06/30 09:10:11
$ java PolynomialMultiplier2
(x^2+1)*(x^3+2x+1) = x^5+3x^3+x^2+2x+1
x^3 + x - 1 = x^3+x-1
(2 + 3x^2) * (1 + x) = 3x^3+3x^2+2x+2
(x+1)*(x+1)*(x+1) = x^3+3x^2+3x+1
2*(x^4+x-1) = 2x^4+2x-2
(1 + x^4 - 3 x ^ 2) * (x - 1) = x^5-x^4-3x^3+3x^2+x-1
(1+2+x)*(x+x+1) = 2x^2+7x+3
-x*x = -x^2
(2x^2-1)*(2x^2+1)*(4x^4+1)*(16x^8+1) = 256x^16-1
(2x^2+1)*(4x^4+1)*(16x^8+1)*(2x^2-1) = 256x^16-1
(2x^2+1)*(4x^4+1)*(16x^8+1) = 128x^14+64x^12+32x^10+16x^8+8x^6+4x^4+2x^2+1
(2x-1)*(x^3+1) = 2x^4-x^3+2x-1
0 = 0
0*(x^5+2x^3+x-3) = 0
x^2+0x+0 = x^2
-0x = 0
2x^0-3x = -3x+2

646:デフォルトの名無しさん
07/06/30 10:16:16
すみません>>581誰かお願いします

647:へぼPG
07/06/30 12:06:54
>>644
レスありがとう

>>オートコミットの無効は、getConnectionのドキュメントを参照すべし
>>オーバーロードされたメソッドで引数にboolean を与えるものがある
これは、わかります。

>排他関連というかSQLの例外に関して処理を行う場合は、SQLエラーコードを参照する。
>エラーコード表はSQLServerのドキュメントを参照、エラーコードの取得方法はSQLExceptionのドキュメントを参照すべし
SQLException.getErrorCode()ですね。

>疑問1に関して、ResultSet.TYPE_SCROLL_INSENSITIVE, ResultSet.CONCUR_READ_ONLYでね?
これがわかりません。自分のソースと何が違うんですか?
排他のために無理やりPreparedStatementつかっったけど。
「実行と同時に。。。」って、エラー出てたけど、
sqlを引数で渡すなってことですか?

648:デフォルトの名無しさん
07/06/30 13:23:21
>>646
課題文本当にそれだけか?
そんなのでソースだけ提示されたって答えられないだろ。

>>1
『・問題文は、出題されたまま全文を書いてください。』

649:デフォルトの名無しさん
07/06/30 16:49:26
>>648
課題は口頭でしか言われませんでした
特に細かい指定はありません
自分で好きなだけ摩擦をつけて球を止めて逆走させるそうです

650:デフォルトの名無しさん
07/06/30 17:02:48
>>605

お願いします。

651:デフォルトの名無しさん
07/06/30 17:30:39
>>650
ライブラリは使って良いのかい?って話じゃない?
しかも何でスクロールバー、前にもあったなわざわざスクロールバーでプリミティブ回転させる課題。

652:デフォルトの名無しさん
07/06/30 17:38:13
>>650
>>606

653:デフォルトの名無しさん
07/06/30 18:07:15
見る度に思うけどjavax.vecmath.*パッケージだけほしくならない?

654:デフォルトの名無しさん
07/06/30 18:16:58
行列計算はcommonsにあるね、確か

655:デフォルトの名無しさん
07/06/30 18:23:46
欲しいも何もあるんだから使えばいいんじゃないかと書こうとしたけど、標準APIに入れてほしいってことかね?
使いたい機能は標準にあってほしいとは思うけど、どんどん標準ライブラリが膨らむのはちょっといやだな。

656:デフォルトの名無しさん
07/06/30 18:40:56
>>605
URLリンク(sourcepost.sytes.net)


657:デフォルトの名無しさん
07/06/30 18:52:51
>>646 ちょっと手抜きだが
URLリンク(sourcepost.sytes.net)

658:デフォルトの名無しさん
07/06/30 18:58:53
【 課題 】
URLリンク(kansai2channeler.hp.infoseek.co.jp)
【 形態 】1. Javaアプリケーション(main()で開始)
【 GUI  】4. 制限なし
【 期限 】7/2 13:00
【 Ver  】java version "1.5.0_11"
【 補足 】丸投げです。よろしくお願いします。

659:デフォルトの名無しさん
07/06/30 18:59:53
URLリンク(sourcepost.sytes.net)

660:デフォルトの名無しさん
07/06/30 19:02:40
3Dグラフィクスの問題とか微分方程式解いて力学シミュレーションとか
以前の問題からの流れを見てると一旦ここに依頼してしまうと
次のステップも自力解決はできなくなるんだな

661:デフォルトの名無しさん
07/06/30 19:04:56
このCircleの問題もw

662:デフォルトの名無しさん
07/06/30 19:21:55
自分の仕事を他人にやらせてるだけだろ


663:デフォルトの名無しさん
07/06/30 19:23:19
講師が自分の作った問題の難易度をテストするために利用しているという噂


664:デフォルトの名無しさん
07/06/30 19:31:11
>>658

>>495と違うの?
show()をtoString()に名前変えて、
ちょっと中身書き換えるだけじゃね?

665:デフォルトの名無しさん
07/06/30 19:58:08
>>664
そのちょっといじる所が分からなくて質問しましたorz
何処を書き換えたらいいんでしょうか?

666:デフォルトの名無しさん
07/06/30 20:55:35
666

667:デフォルトの名無しさん
07/06/30 21:00:54
頭使う気ないな

668:デフォルトの名無しさん
07/06/30 21:06:18
>>665
CircleクラスのtoString()が出力例と違うから
出力例に合わせて書き換えた。
URLリンク(kansai2channeler.hp.infoseek.co.jp)

669:デフォルトの名無しさん
07/06/30 22:06:30
>>668
どうもありがとうございます!

670:デフォルトの名無しさん
07/07/01 01:01:06
【 課題 】
1.開始時刻(X1時Y1分)と終了時刻(X2時Y2分)を読み、差の時間を求めるプログラムを作れ。
2.時刻のX時Y分のクラスに開始と終了時刻の2つのインスタンスを作成して1と同様の問題のプログラムを作れ。
3.開始年月日(W1年X1月X1日)と終了年月日(W2年X2月X2日)を読み、差の日数を求めるプログラムを作れ。
【 形態 】2. Applet
【 期限 】7/4 17:00
【 Ver  】Version 2.316 
【 補足 】○投げです。どうかよろしくお願いします。

671:デフォルトの名無しさん
07/07/01 03:14:41
【 課題 】1から20までの二乗した数を足して、その結果を表示せよ。
      ただし、二乗をする時、n^2 としてはいけない
【 形態 】1. Javaアプリケーション(main()で開始)
【 期限 】7月2日
【 Ver  】java version "1.5.0_11"

よろしくお願いします。

672:671
07/07/01 03:18:40
補足です。

(1)^2+(2)^2+(3)^2、、、、+(20)^2 の答え・結果を表示するプログラムです。
ただn^2を使ってはいけないのでちんぷんかんぷんです…。

673:デフォルトの名無しさん
07/07/01 04:12:44
>>671
1*1+2*2+3*3+...+20*20でいいじゃん
言っておくが^はjavaではべき乗の演算子ではないよ
だからn^2と書いてもそれはnの2乗を表さない
「二乗をする時、n^2 としてはいけない」っていうのはそういう意味じゃないの?

674:デフォルトの名無しさん
07/07/01 04:22:03
public static void main(String[] args) {
int n = 20, s;
s = 0; for (int i = 1; i <= n; i++) s += i ^ 2; System.out.println(s); // 間違い
s = 0; for (int i = 1; i <= n; i++) s += i * i; System.out.println(s); // 2乗和
}

675:デフォルトの名無しさん
07/07/01 05:03:34
iのn乗の時はどう書けばよいですか?


676:デフォルトの名無しさん
07/07/01 05:18:23
javaではっていうより最近の言語はXORじゃない?

>675
ビットシフト使うとかMath.powとか普通に計算するとか。

677:デフォルトの名無しさん
07/07/01 05:57:55
そもそも何で n^2 なんて書くのがまかり通ってるの?

678:デフォルトの名無しさん
07/07/01 05:59:03
>>675
i**n

679:デフォルトの名無しさん
07/07/01 06:45:28
URLリンク(www.atmarkit.co.jp)

680:デフォルトの名無しさん
07/07/01 14:33:16
>>670
1.開始時刻(X1時Y1分)と終了時刻(X2時Y2分)を読み、差の時間を求めるプログラムを作れ。

どこから読むの?

2.時刻のX時Y分のクラスに開始と終了時刻の2つのインスタンスを作成して1と同様の問題のプログラムを作れ。

>時刻のX時Y分のクラスに開始と終了時刻の2つのインスタンスを作成

意味が分からん。
クラスにフィールドとして持たせるって意味?


681:デフォルトの名無しさん
07/07/01 14:43:10
丸投げです、よろしくお願いいたします。

【 課題 】サンプルに手を加えてテーブルで選択した箇所を
      他の箇所を選択した時も選択された(反転した状態)
      ままになるようにしなさい。      
【 形態 】2. Applet
【 GUI  】Swing
【 期限 】7/3 23:00 まで
【 Ver  】java version "1.6.0_01"
【 補足 】サンプルプログラムはこちらになります。
      URLリンク(www.uploda.net)

682:デフォルトの名無しさん
07/07/01 15:21:32
Javaで参照剥がしをする方法を教えてください。


683:デフォルトの名無しさん
07/07/01 16:25:24
Javaでの参照剥がしってなにさ?
単純にnullを代入することかい?

684:デフォルトの名無しさん
07/07/01 16:35:41
>>657
ありがとうございます!

685:デフォルトの名無しさん
07/07/01 18:01:48
>>675
2乗で2回掛けてんだからn乗ならn回掛けりゃいいって思いもよらないのか
お前のような応用力のかけらもないやつがプログラミングするのは電気代の無駄

686:大学の宿題です。お願いします/(_ _)\
07/07/01 19:41:43
[課題2]
チェビシェフの定理を調べるプログラムを改良し高速化を目指しなさい.改良前の見本プログラムは第9回の講義終了後にe-classに掲載する.なお,講義中に見本プログラムの解説を行う.
さらに,以下の数学未解決問題についてもコンピュータを用いて,可能な限り大きいnまで調べること.

[テェビシェフの定理]
1より大きい自然数nに対して,nと2nの間には必ず素数が存在する.
(ベルトランの仮説とも言うが,1850年にテェビシェフによって証明されたので定理となった.)

[数学未解決問題]
1より大きい自然数nに対して,nの2乗と(n+1)の2乗の間には必ず素数が存在する.
(こちらはまだ証明されていないので,仮説である.)


687:大学の宿題です。お願いします/(_ _)\
07/07/01 19:45:11
チェビシェフはここまでは分かっていますが、より速くするにはどうすればいいでしょう?

public class KIMOTI {

static int prime(int number){
int count=0;
for(int i=1; i<=number; i++){
if(number%i==0) count++;
}
return count;
}
public static void main(String[] args){
int n,p;
long start = System.currentTimeMillis();

for(n=2; n<=50000; n++){
for(p=n+1; p<2*n; p++){

if(prime(p)==2){
//System.out.println("自然数n=" + n + "の時、素数は存在する。");
break;
}
}

if(n%500==0){
long stop = System.currentTimeMillis();
System.out.println(n+" "+(stop-start));
}
}
}
}


688:デフォルトの名無しさん
07/07/01 19:55:24
テンプレ

689:デフォルトの名無しさん
07/07/01 19:55:58
ちょっと上に答えがある

690:デフォルトの名無しさん
07/07/01 20:17:09
ていうか高速化する意味はなんだろう・・・

691:デフォルトの名無しさん
07/07/01 20:30:15
PC9821で計算したあと、現在の最新モデルPCで計算すれば高速化(=ω=.)b

692:大学の宿題です。お願いします/(_ _)\
07/07/01 20:52:09
上に出てたやつでやったら、↓の文章がコンソールのところに出てきたんですが・・・
どこが間違ってるってことなんでしょう?


Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException: 0
at Shukudai453.main(Shukudai453.java:26)

二行目の()の中をクリックすると、ソースコードのこの部分↓が青くなるんですが・・・
int n = Integer.parseInt(args[0]);

693:デフォルトの名無しさん
07/07/01 20:58:10
死んだ方がよい

694:大学の宿題です。お願いします/(_ _)\
07/07/01 21:02:44
明日の15時が期限っす・・・

695:デフォルトの名無しさん
07/07/01 21:04:38
大学の選択か講義の選択から間違っているんだと思う

696:デフォルトの名無しさん
07/07/01 21:06:14
パターン青!使徒です!!

697:デフォルトの名無しさん
07/07/01 21:07:20
>>675
Math.pow(i,n);

698:デフォルトの名無しさん
07/07/01 21:13:48
>>692
引数指定しる

699:デフォルトの名無しさん
07/07/01 21:21:52
すいません・・・引数指定ってなんですか?

700:デフォルトの名無しさん
07/07/01 21:24:24
>>699
退学届け提出すること

701:デフォルトの名無しさん
07/07/01 21:33:42
java appliclass args

702:デフォルトの名無しさん
07/07/01 21:36:08
これ以上はスレ違いだからこちらへどうぞ
スレリンク(tech板)


703:デフォルトの名無しさん
07/07/01 21:40:03
ありがとうございました

704:デフォルトの名無しさん
07/07/01 22:22:49
丸投げです。お願いします。具体的なアルゴリズムを次レスの補足に載せてあります。

【 課題 】文字列 x の中に文字列 z がいくつ含まれるか求める。
(例)
xがaaba
zがab
なら、
a_b_ と _ab_ の二つとなる。
__ba は順序がzと違うので含まない。

さらに、最初に整数nを読み込み,n回これを繰り返すようにする。
(実行例)
入力:
2 //繰り返し回数n
babgbag //1回目のx
bag   //1回目のz
rabbbit //2回目のx
rabbit  //2回目のz

出力:
5 //1回目の答え
3 //2回目の答え

入力はファイルからで、出力は標準出力でお願いします。

【 形態 】1. Javaアプリケーション
【 GUI  】4. 制限なし
【 期限 】明日7月2日午前10時
【 Ver  】1.6.0_01
【 用語 】なし


705:続き
07/07/01 22:23:35
【 補足 】アルゴリズムは以下の通りです。
xとzの表を作り、
同じ文字のところを1、違う文字のところを0とします。
さらに、全部0の列と、全部1の行を付け足します。
一番右下は1とします。
(表の例)
 b a b g b a g
b 1 0 1 0 1 0 0 0
a 0 1 0 0 0 1 0 0
g 0 0 0 1 0 0 1 0
 1 1 1 1 1 1 1 1

次に以下のルールで、付け足した行と列以外を書き換えていきます。
・下の行から順に書き換える。
・行の中では右のマスから順に書き換える。
・1のマスは右のマスと右下のマスを足した数に書き換える。
・0のマスは右のマスと同じ数に書き換える。

このルールで全部書き換えると以下のようになります。

 b a b g b a g
b 5 1 1 0 1 0 0 0
a 4 4 1 1 1 1 0 0
g 3 3 3 3 2 2 1 0
 1 1 1 1 1 1 1 1

答えは一番左上の数字(この場合5)です。

ややこしいかもしれませんがお願いします。


706:デフォルトの名無しさん
07/07/01 22:25:09
誘導するな。実行時引数も分からん奴はjavaの開発ツールドキュメントだ。

707:705
07/07/01 22:46:04
すみません、書き換え後の表が間違っていました。
正しくは以下の通りです。

 b a b g b a g
b 5 2 2 1 1 0 0 0
a 3 3 1 1 1 1 0 0
g 2 2 2 2 1 1 1 0
 1 1 1 1 1 1 1 1

あと、xは10000文字まで、zは100文字までです。
java.mathのbiginteger使うと言われました。


708:705
07/07/02 02:12:22
すみません、自己解決しました。
失礼しました。


709:デフォルトの名無しさん
07/07/02 05:02:24
public class Shukudai{
boolean[] bb;
Shukudai(int index){
bb=new boolean[999999999];
}

public static void main(String[] args){
System.out.println("\nstart");
int n = 999999999;
Shukudai453 jp=new Shukudai(n+1);
jp.setPrime();
jp.keisan();
}




nをlong型に変更したらエラーになるんですがどうすればいいでしょう?


710:デフォルトの名無しさん
07/07/02 05:04:08
>>709
テンプレ >>1

711:全文
07/07/02 05:10:20
public class Shukudai453{
boolean[] bb;
Shukudai453(int index){
bb=new boolean[999999999];
}

public static void main(String[] args){
System.out.println("\nstart");
int n = 999999999;
Shukudai453 jp=new Shukudai453(n+1);
jp.setPrime();
jp.checkChebychev();
}


712:全文
07/07/02 05:17:51

public void setPrime(){
int index=0;
for(int i=2;i<bb.length;i++){
if(!bb[i]){
index=i;
while((index+i)<bb.length)bb[index+=i]=true;
}
}
}

public void checkChebychev(){
//素数pの次の素数は2pより小さい
int n1=1;

for(int i=2;i<bb.length;i++){
if((!bb[i]) && (i<=(n1*2))){
System.out.println(i+"においてチェビシェフの定理は成り立つ");
n1=i;
}
}
}
}

713:デフォルトの名無しさん
07/07/02 06:29:56
Shukudai453(int index){
bb=new boolean[index];
}

714:デフォルトの名無しさん
07/07/02 07:08:09
ここ嫁屑。
URLリンク(www.y-adagio.com)

マルチにつき以下スルー汁!

715:デフォルトの名無しさん
07/07/02 07:14:44
【 課題 】
n回サイコロを振りその出た目によって1→x+1、2→x−1、3→y+1…と移動させる。
1.最終的な、x、y、zの値とその移動距離をテキストファイルで出力する
2.一度通った座標には移動できないものとして問題1を考える。
【 形態 】1. Javaアプリケーション(main()で開始)
【 GUI  】 制限なし
【 期限 】07/07 10:00までに
【 Ver  】1.6.0_01
【 補足 】課題1は何とかできましたが、2のほうがさっぱりです。宜しくお願いします。

716:デフォルトの名無しさん
07/07/02 07:54:23
>>715
通った座標をMapにでも記憶させておいて、試行した結果合致しなければよし、
合致したら再抽出でいんじゃないかな。袋小路に注意だけど。

717:デフォルトの名無しさん
07/07/02 07:55:26
い、意味が分からん・・・なんで3次元なの?
原点は?

>1→x+1、2→x−1、3→y+1…
条件省略すんなよ・・・。

ダイスはそもそも何面なのさ?

ほかにも資料があるだろ・・・。

718:デフォルトの名無しさん
07/07/02 07:57:42
サイコロは普通6面だから
1-->x+1
2-->x-1
3-->y+1
4-->y-1
5-->z+1
6-->z-1
なんじゃね

719:デフォルトの名無しさん
07/07/02 08:08:34
>サイコロは普通6面だから
俺はwizとかrogue likeのやりすぎですか?

にしてもどう出力して良いのか謎が・・・
数パターン予測できるぞ。

720:デフォルトの名無しさん
07/07/02 08:10:22
>>717
すいません。
原点は(x,y,z) = (0,0,0)で、ダイスは6面体です。

移動の条件は>>718さんが指摘下さったとおりです。


721:715
07/07/02 08:19:06
内容不足で申し訳ありません.

最終的には複数(m)回その試行を繰り返し、グラフに(x、y)=(試行回数(n)、平均移動距離)としゅつりょくするものするというものです。

JAVA初心者で、出来るところは自分でやっていこうと考えてしまったために、問題の説明も中途半端になってしまいました。
すいません

722:デフォルトの名無しさん
07/07/02 11:58:41
>>605ですが、解決できませんと出てきます。
java versionが違っていたのでしょうか・・・?

723:デフォルトの名無しさん
07/07/02 13:01:08
1-->x+1
2-->x-1
3-->y+1
4-->z-1
5-->z+1
6-->y-1
かもしれない

724:デフォルトの名無しさん
07/07/02 13:09:03
等確率なんだから、場合漏れがなければ順番なんかどうでも良い

725:デフォルトの名無しさん
07/07/02 17:02:53
【 課題 】
ヒープソートを実現するプログラムを書け。
ただし、データは全て整数で重複は無いものとする。また、データの最大数は10,000個までとして良い。

B木を実現するプログラムを書け。
ただし、プログラムの最初で各節点が持つ最大の子の数(m)を入力して、プログラムを開始せよ。

【 形態 】1. Javaアプリケーション
【 期限 】7/17
【 Ver  】1.5.0_08
【 用語 】よく分かりません…知ってる方お願いします…
【 補足 】こんな完全丸投げ状態ですがどうかよろしくお願いします。

726:デフォルトの名無しさん
07/07/02 17:05:18
qwewe

727:デフォルトの名無しさん
07/07/02 17:10:39
【 課題 】 専門学校の課題で商品管理です
URLリンク(www2.shixi2.net) pass:java

【 形態 】1. Javaアプリケーション
【 期限 】7/3 5:00
【 GUI  】4. 制限なし
【 Ver  】1.5.0_08
【 補足 】課題のプログラムは下記を修正と書いてある2箇所の辺りにそれぞれ
      1箇所目では商品のID、名前、価格をファイルに出力
      2箇所目では逆にそれぞれをファイルから読み込む様に(読み込み前に既存のデータをクリア)
      修正・追加をお願いします

728:デフォルトの名無しさん
07/07/02 18:28:11
>>727
ヒント : www2.shixi2.net のうpローダーは正常に機能していない(=ω=.)

729:デフォルトの名無しさん
07/07/02 18:48:34
>>722
これでどう?
URLリンク(sourcepost.sytes.net)


730:デフォルトの名無しさん
07/07/02 20:56:23
ダイスは等確率ではない
1の彫りの深さと6の彫りの深さは計算されているが
2・3・6の彫りの合流部分は5・4・1の彫りの合流部分より
どうしても重くなってしまっているのが普通


731:デフォルトの名無しさん
07/07/02 21:41:33
理論と現実を取り違えてどうすんだ?

732:デフォルトの名無しさん
07/07/02 22:13:14
>>730は壮大な物理シミュレートによりH/W乱数生成器(サイコロ)を再現しようと提言しているのだよ。

国民よ立て!ハードウェアをソフトウェアに変えて、立てよ!国民よ!

我ら宿題スレ住民こそ選ばれた民であることを忘れないでほしいのだ。
乱数種であるサイの目こそ>>715を救い得るのである。ジーク・ダイス!


733:デフォルトの名無しさん
07/07/02 22:41:31
ここで一息

どっこいしょういち

734:デフォルトの名無しさん
07/07/03 00:58:11
>>715
1の方はできているということで2のヒントだけ。
一度通った座標を記録して、
さいころを振って次の座標を決めたときに、記録にその座標があったら振りなおす。
座標の記録の仕方としては、
1.単純なのはn回さいころを振るのなら(2n+1)*(2n+1)*(2n+1)の3次元配列を用意して、
-n〜nの座標を0〜2n+1のインデックスにマッピングして、通るたびにチェックを入れていく。
記録を検索するには、座標に対応する配列要素にチェックが入っているかどうか見るだけ。
でもこの方法はnが大きいとメモリを馬鹿食いする。
2.もしくは、座標を要素とするListコレクションを用意して、
動くたびにこのListにその座標を追加(add)していく。
記録の検索は、containsで座標がListに含まれているかどうかで判断する。

あと、注意点としては、周囲を既に通った座標に囲まれるような動きをしてしまっているのに、
n回には達していないときに、別の座標を探そうと無限に振り直す可能性があるので、
周囲全てが既に通っているかをチェックして、そこで打ち切りにするようにした方がいい。

735:デフォルトの名無しさん
07/07/03 01:02:03
>>716がちゃんと言ってたね。見落としてたorz
MapじゃなくてListでいいと思うけど、言いたいことは同じだ。

736:727
07/07/03 03:09:50
【 課題 】 専門学校の課題で商品管理です
URLリンク(www.uploda.net)  pass:java
【 形態 】1. Javaアプリケーション
【 期限 】7/3 5:00
【 GUI  】swing
【 Ver  】1.5.0_08
【 補足 】課題のプログラムは下記を修正と書いてある2箇所の辺りにそれぞれ
      1箇所目では商品のID、名前、価格をファイルに出力
      (ID改行名前改行価格改行 2番目のID以下略というように
      2箇所目では逆にそれぞれをファイルから読み込む様に(読み込み前に既存のデータをクリア)
      コードの追加・修正をお願いします

すみません
upローダの調子が悪かった様なのでupロードしなおしました;

737:デフォルトの名無しさん
07/07/03 08:48:00
******************
******************
******************
まじめに始めなさいよ

738:デフォルトの名無しさん
07/07/03 16:35:21
【 課題 】別途与える文書に関するThorndike Tableを作成せよ。文書はtxtモードで書かれたファイルである。(約300,000語)
【 形態 】Javaアプリケーション
【 GUI  】制限なし
【 期限 】7/3 17:30
【 Ver  】1.5.0_08
【 用語 】特になし
【 補足 】丸投げです。三人称単数、過去形、過去分詞形、所有形、複数・単数等の形は無視して数える。所有格の'sも無視してその前の語を処理する。出現頻度を求め、出現頻度順にテーブルで表示。


できればお願いします。

739:デフォルトの名無しさん
07/07/03 16:40:29
>>738
Thorndike Table
についてkwsk

何するプログラム書けばいいかわからん

740:デフォルトの名無しさん
07/07/03 16:40:42
【 課題 】
別途提示する文書に関するソーンダイクテーブル(Thorndike Table)を作成する。条件は以下のとおり:
1.入力データ:
       (a)txtモードで書かれたファイルを入力データとして使う。コンピュータ科学に関する論文であるとする。
       (b)英語で書かれたドキュメントがある。ファイルの最後は<TextEnd>で終わっている。
       (c)ファイル全体の文字数は、高々300,000語である。
2.出力データ:
       (a)入力ファイルからソーンダイクテーブルを作成する。
              1.3人称単数現在形、過去形、過去分詞形、所有形、複数・単数形等々、
                出現場所によって異なる単語の形式を無視して、そのままの形で、語の出現頻度を数える。
              2.ただし、's(所有格)の形の語については所有格を無視して、つまり、'の前の語を処理する。
              3.数字を含む各単語ごとの出現頻度を求め、それらを出現頻度順にテーブルで表示する。
              4.ソーンダイクテーブルは最低、Table-1は実現すること。
       (b)その他の仕様:
              1.処理時間も求める。
              2.本番用のデータは終了者の要求に応じて開示する。
              3.でたらめな作り方はしないこと。リンクつきリスト、ハッシュテーブル等を使えば、造作ない。
              4.いままでに自分でデバッグ完了したソースは活用して可。
3.アルゴリズム:
       (a)そのままの形で配列に読み込む。
       (b)その後の処理は、この配列から取り出して使う。

以上



入りきらないので形態以下のテンプレは分けて書きます

741:デフォルトの名無しさん
07/07/03 16:41:14
>>736
ちょっと待ってて、書いてみる

742:デフォルトの名無しさん
07/07/03 16:42:02
明らかに上と同じ問題ですが問題省略しすぎなのでそのまま書きます


【 形態 】1. Javaアプリケーション(main()で開始)
【 GUI  】4. 制限なし
【 期限 】7/10(火)
【 Ver  】1.5.0_06
【 補足 】
与えられた結果のサンプルが
No.     Word          Occurrence
1        1             10,999
:
100    Tokyo             5,000
100    Osaka             5,000
:
981    quality              800
:
となっています。

問題は丸投げです。
よろしくお願いします。

743:デフォルトの名無しさん
07/07/03 16:43:00
>>742
同じ学校なのww?
馬鹿しかいねーなww

744:デフォルトの名無しさん
07/07/03 16:46:25
>>736
間に合わないけどいいか?

745:デフォルトの名無しさん
07/07/03 16:47:02
>>738
出た! Thorndike Table!
ほぼ1年ぶりだね。前回の1年後輩ってことか。
前回も結局少しヒントが示されただけで終っちゃったから今回もそうなるだろう。
っていうか、しめきり1時間前かw
この問題は手間がかかる面倒な問題なんで、さすがにその期限は無茶じゃないかな。

746:デフォルトの名無しさん
07/07/03 16:51:21
ああ、変化は無視していいから、stemmingとかしなくていいのか。
なら随分楽になるね。がんばれ>>744

747:デフォルトの名無しさん
07/07/03 16:54:27
>>744がやる気なのは商品管理の方だったorz

748:デフォルトの名無しさん
07/07/03 17:42:27
>>738
あんまチェックしてないけど。つーかもっと早く言えよ。
URLリンク(sourcepost.sytes.net)

749:デフォルトの名無しさん
07/07/03 20:01:49
>>736
GoodsRecord g = (GoodsRecord)data.get(i);
//ID
fileout.write(g.getIdAsObject().toString(),0,g.getIdAsObject().toString().length());
System.out.println(g.getIdAsObject().toString());
fileout.newLine();
//NAME
fileout.write(g.getName(),0,g.getName().length());
fileout.newLine();
//PRICE
fileout.write(g.getPriceAsObject().toString(),0,g.getPriceAsObject().toString().length());
fileout.newLine();


これが読み込む方。


750:デフォルトの名無しさん
07/07/03 20:17:00
>>736
遅れてすまん。ちょっと用事あった。
これが読み込む方

int size = Integer.parseInt(numString);
//データの初期化

goodsTable.getData().clear();


for(int i=0;i<size;i++){
int id;
String name;
int price;
String idString = filein.readLine();
id = Integer.parseInt(idString);
name = filein.readLine();
String priceString = filein.readLine();
price = Integer.parseInt(priceString);
System.out.println(id);
System.out.println(name);
System.out.println(price);
goodsTable.addGoods(name,price);
}



GoodsTableModelクラスのコンストラクタ
this.makesample();をコメントアウト

751:デフォルトの名無しさん
07/07/03 20:19:16
>>749
>>750
System.out.println()の行はデバッグ用だ。。消してくれ

752:デフォルトの名無しさん
07/07/03 20:25:26
【即会い!!】

管理人が使用してみて、即出会えた出会い系サイトのみを紹介するブログ始めました。
2chと併用して使える良質な即日系サイトを厳選して薦めております。
↓↓↓
【ブログ】URLリンク(deaiload.blog109.fc2.com)

753:デフォルトの名無しさん
07/07/03 20:30:05
>>725
次はこれをやる。


754:デフォルトの名無しさん
07/07/03 20:32:24
>>725
URLリンク(www.ics.kagoshima-u.ac.jp)

755:725
07/07/03 23:43:04
>>754
まさかググったら見つけられるとは思いませんでした。こっちのミスです、すいませんでした。
B木の方をよろしくお願いします。

756:デフォルトの名無しさん
07/07/03 23:43:30
【 課題 】
有理数クラスの例を元に以下の機能を加えよ
* 四則演算
* 内部的には約分され、既約分数となった形式でデータを保持する事とする。外部からの明示的な約分は行わない
・実数表現で与えた有理数を分数表現に変換して生成:次の様なコンストラクタの実現(public Rational(float f))
つぎのクラスから呼ばれるクラスとして実現せよ。

public class RationalTest {
public static void main(String args[]){
Rational r = new Rational(1, 5);
Rational s = new Rational(3, 10);
Rational t = new Rational(4.3);

r.print();
s.print();
t.print();
t = r.add(s);
t.print();
t = r.divide(s);
t.print();
}
}
【 形態 】eclipse
【 GUI  】
【 期限 】金曜までにおねがいします。
【 Ver  】java version "1.4.2_12"

757:デフォルトの名無しさん
07/07/03 23:45:16
有理数クラスの例

class Rational {
private int denominator;
private int numerator;
public Rational(int d, int n){
denominator = d;
numerator = n;
}
public Rational(){
denominator = 1;
numerator = 0;
}
public int denominator(){
return denominator;
}
public int numerator(){
return numerator;
}


758:デフォルトの名無しさん
07/07/03 23:46:19
public Rational add(Rational r){
return new Rational(denominator*r.denominator, numerator * r.denominator+denominator * r.numerator);
}
public void print(){
System.out.println(numerator + " / " + denominator);
}
}
public class RationalTest {
public static void main(String args[]){
Rational r = new Rational(3, 4);
Rational s = new Rational(5, 6);
Rational t = new Rational();
r.print();
s.print();
t = r.add(s);
t.print();
}
}


次ページ
最新レス表示
スレッドの検索
類似スレ一覧
話題のニュース
おまかせリスト
▼オプションを表示
暇つぶし2ch

4157日前に更新/337 KB
担当:undef