★★ Java の宿題ここ ..
[2ch|▼Menu]
159:デフォルトの名無しさん
07/07/27 11:57:24
>>157
さらにいいかげん
URLリンク(sourcepost.sytes.net)

160:デフォルトの名無しさん
07/07/27 13:15:29


161:デフォルトの名無しさん
07/07/27 13:17:48
a

162:デフォルトの名無しさん
07/07/27 13:34:54
他人にプログラム組んでもらっても面白くないぞぅ┐(´ー`)┌

163:デフォルトの名無しさん
07/07/27 13:38:40
だから他人のプログラムまで組んじまおうって言うのがこのスレの主旨じゃん

164:デフォルトの名無しさん
07/07/27 13:43:20
>>156です
至急お願いします

165:デフォルトの名無しさん
07/07/27 13:45:12
そっかwプログラム組んでも面白くも何ともない人がプログラム馬鹿に
喜びを与えてやってるのか。別に宿題を片付けてやろうって趣旨でやってるんじゃないのね。

166:デフォルトの名無しさん
07/07/27 13:46:53
>>149
教えてください

167:デフォルトの名無しさん
07/07/27 13:58:39
>>164
>>122がそのまま使えるんじゃない?

168:デフォルトの名無しさん
07/07/27 15:18:20
//問1以下のプログラムを完成せよ。
//プログラムの概要:
//テストの得点をキーボードから入力し、入力した人数、合計点、平均点を表示するプログラム。
//キーボードからマイナスが入力されるまで得点を配列に代入。
//入力した人数と合計と平均点を計算。最後のマイナスのデータは計算には含めない。平均点は小数点以下も表示する。

169:デフォルトの名無しさん
07/07/27 15:20:47
import java.io.*;

class Seiseki_1 {
public static void main ( String args[] ) throws Exception {
BufferedReader in = new BufferedReader ( new InputStreamReader ( System.in ));
int dt[] = new int[100];
int goukei = 0;
double heikin;
int n = 0;

while(true){
System.out.print("入力データ:");
String tmp = (あ);
dt[n] = (い);
if( (う) ){
break;
}
goukei = goukei + dt[n];
(え);
}

heikin =(お);
System.out.println("人数:"+n);
System.out.println("合計:"+goukei);
System.out.println("平均:"+heikin);
}
}

170:デフォルトの名無しさん
07/07/27 15:58:28
>147 1枚目は山に戻さないで、2枚目引いて当たり/外れを判定したら山に戻すようにした
URLリンク(sourcepost.sytes.net)

171:デフォルトの名無しさん
07/07/27 18:02:14
>>163
(勉強目的で)くらいつけたさないと語弊があるかと。
元々の>>1は自分のお勉強用に立てたんだし。

172:デフォルトの名無しさん
07/07/27 18:51:05
ここはスパープラグラムーが日本の情報教育を妨害するスレです
もう色んなこと教えて学習者を堕落へと導きます

173:デフォルトの名無しさん
07/07/27 19:04:47
Javaが出来ないなら、数学の宿題をうpしてあげるお
URLリンク(www.nicovideo.jp)

174:デフォルトの名無しさん
07/07/27 22:38:35
javaでmidiファイルの生成中です。

import javax.sound.midi.spi.*;
import javax.sound.midi.*;

で、何とかメロディを作ったり、音色を変えたりできる様になったのですが、
ドラムの音の出し方が分かりません。

どうぞご教授お願いします。

175:デフォルトの名無しさん
07/07/27 23:13:27
>>174
>1

176:デフォルトの名無しさん
07/07/28 00:44:59
>>174 ヒント:スレタイ

177:デフォルトの名無しさん
07/07/28 01:21:51
ていうかjava sound関係あるのそれ?

178:デフォルトの名無しさん
07/07/28 11:16:09
【 課題 】1.for文を使い1〜10までの総和を求め表示
      2.for文を使い10〜75までの偶数のみの総和を求め表示
      3.全角の"■"と"□"で、5×5の市松模様を表示
     ↓3.のイメージです。
      □■□■□
      ■□■□■
      □■□■□
      ■□■□■
      □■□■□

【 形態 】Javaアプリケーション(main()で開始)
【 期限 】7/29の午後3時までに提出
【 補足 】丸投げ

3問も書いてしまい申し訳ありませんがよろしくお願いします。


179:デフォルトの名無しさん
07/07/28 11:18:39
最近レベル落ちたな

180:デフォルトの名無しさん
07/07/28 11:23:42
>>179
では、JavaでWA2の続編作ってくれ

181:デフォルトの名無しさん
07/07/28 12:51:17
>>180
>>1

182:デフォルトの名無しさん
07/07/28 13:20:59
>>118>>120>>122
まさか3件も回答貰えるとは思ってなかったです。嬉しすぎて涙でたw
お三方とも、どうもありがとうございました。
これでなんとか宿題を出せそうです。


俺も最初に自分で作ったプログラム動かしたときは鼻毛飛び出ましたorz

183:182
07/07/28 13:22:43
あ、>>182>>116です。

184:デフォルトの名無しさん
07/07/28 21:54:12
>>178
URLリンク(sourcepost.sytes.net)

185:デフォルトの名無しさん
07/07/28 22:04:03
>>178
public class Kadai {
public static void main(String[] args) {
// 1
int s1 = 0;
for (int i = 1; i <= 10; i++) s1 += i;
System.out.println(s1);
// 2
int s2 = 0;
for (int i = 10; i <= 75; i++) if (i % 2 == 0) s2 += i;
System.out.println(s2);
// 3
char[] c = {'■', '□'};
int n = 5;
int k = 0;
for (int i = 0; i < n; i++) {
int l = 1 - k;
for (int j = 0; j < n; j++) {
System.out.print(c[l]);
l = 1 - l;
}
System.out.println();
k = 1 - k;
}
}
}

186:sage
07/07/29 16:55:11
>>185
返事が遅れてしまいましたが、有難う御座いました。
無事に提出することが出来ました。

187:デフォルトの名無しさん
07/07/29 21:31:37

【 課題 】 URLリンク(www.uploda.net)
【 形態 】1. Javaアプリケーション(main()で開始)
【 期限 】8月1日
【 Ver  】java version "1.4.2_12"

188:デフォルトの名無しさん
07/07/30 13:24:24
>>187
urlねーしwせめて概要ぐらいは書けよ

189:187
07/07/30 14:46:01
すいません。
課題↓
URLリンク(www.uploda.net)

190:デフォルトの名無しさん
07/07/31 03:07:57
>>189
Setが集約クラスとしてどういう性質を持つべきか説明がないんだが…
いま気づいたがSetAのdeleteが無駄ループ回してるけどまあいいか
URLリンク(sourcepost.sytes.net)

191:59
07/08/01 00:42:02
この前はどうもお世話になりました。
因みに90は友人でして59とは別人です。
迷惑かけたようですみませんでした。

そして新しい課題を出されました。
【 課題 】先日与えられた課題のドキュメンテーション
      URLリンク(tomahawk.rakurakuhp.net) 

【与えられたプログラム】URLリンク(hey.chu.jp)
【期限】8/7

ここでドキュメンテーションの事を聞くのは板違いかも知れませんが、
もし余裕のある方がいらっしゃいましたら、どうかよろしくお願いします。

192:デフォルトの名無しさん
07/08/01 02:06:04
>>191
本当にこんなダメプログラムが与えられたの?
ネストが深すぎて読みづらい上にプログラム自体の間違い箇所が多いよ。

193:デフォルトの名無しさん
07/08/01 02:22:23
>191コメント書いたよ。tab4で見てくれ。
URLリンク(hey.chu.jp)

194:デフォルトの名無しさん
07/08/01 05:43:25
ハードタブ4とソフトタブ4じゃえらい違うわけだが・・・

195:59
07/08/01 12:07:53
>>193
コメントありがとうございます。

>>192
すみません、手打ちで打った為、重要なクラス宣言とかを忘れてました・・・。
本当に申し訳ないです。

URLリンク(tomahawk.rakurakuhp.net) の最下段に考察についての書き方
が書いてあるので理解できる方、どうかよろしくお願いします


196:デフォルトの名無しさん
07/08/01 13:44:41
下記のjavaで書かれているプログラムをc言語に書き換えてください。

public class JobShop_EDD{
static int Job=3;
static int Machine=2;
static int K=30;
static int [] duedate={0,7,9,13,14,20};
static int [] [] process={{},{0,3,3,2,},{0,2,3,2},{0,2,3,3},{0,3,2,3},{0,2,2,2}};
static int [] [] route={{},{0,1,2,3},{0,2,1,3},{0,3,1,2},{0,3,2,1},{0,2,1,3}};
static int [] weight={0,2,2,2,2,2};

public static void main(String[] args){
int [] [] Ma=new int[Machine+1][K+1];
int [] forbid=new int [Job+1];
int [] penal=new int [Job+1];
int Obj=0;

for(int i=1;i<=Job;i++){
int mindue=10000;
int assignJob=0;
for(int i2=1;i2<=Job;i2++){
if(mindue>(duedate[i2]+forbid[i2])){
mindue=duedate[i2]+forbid[i2];
assignJob=i2;
}
}
【 期限 】今日中

【 補足 】丸投げ



197:デフォルトの名無しさん
07/08/01 13:46:18
>196 続き
forbid[assignJob]=10000;

int r=0;
boolean getTime=true;
int processSum=0;


for(int m=1;m<=Machine;m++){
processSum=processSum+process[assignJob][m];
}
int limitT=1;


for(int m=1;m<=Machine;m++){
r=route[assignJob][m];

for(int t=limitT;t<(K-processSum);t++){
for(int t2=t;t2<(t+process[assignJob][r]);t2++){
getTime=true;
if(Ma[r][t2]>0){
getTime=false;
break;
}
}

198:デフォルトの名無しさん
07/08/01 13:47:56
>197続き
if(getTime==true){
for(int t2=t;t<(t+process[assignJob][r]);t2++){
Ma[r][t2]=assignJob;
}
limitT=t+process[assignJob][r];
break;}}}
if(((limitT-1)-duedate[assignJob])>0){
penal[assignJob]=weight[assignJob]*((limitT-1)-duedate[assignJob]);
Obj=Obj+penal[assignJob];}}
for(int m=1;m<=Machine;m++){
System.out.println("Machine"+m+"deno waritukejyoukyou");
for(int t=1;t<=K;t++){
System.out.print(Ma[m][t]);}
System.out.println();}
System.out.println();
System.out.println("objective function="+Obj);
System.out.println();
for(int j=1;j<=Job;j++){
System.out.println("job"+j+"no ihanryo ha"+penal[j]);}}}




199:デフォルトの名無しさん
07/08/01 14:31:40
Cスレ行け

200:デフォルトの名無しさん
07/08/01 19:59:57
なんかC++使いがjavaで書いてそれをC++に直せって宿題をだしてる感じのコードだな。


201:デフォルトの名無しさん
07/08/01 20:30:13
Javaで書かれているように思えないな
Obj = Obj + penal[assignJob];
って演算子のオーバーロードできたっけ?って思たw

202:デフォルトの名無しさん
07/08/01 20:41:54
全部読んでも何やってるコードかわからん。
メンバは非staticにしてコンストラクタで処理してmainでnewしろと何度ry

203:デフォルトの名無しさん
07/08/02 01:51:58
>>200
> for(int m=1;m<=Machine;m++){
とか配列の最初の要素を使わないところとか見ていると
C系の言語使いの書いたコードとは思えないな
配列の添え字が1から始まる言語使いじゃないか?

204:デフォルトの名無しさん
07/08/02 02:02:56

Java使わんで、日本生まれプログラミング言語「Ruby」使えや!
スレリンク(news板)

205:デフォルトの名無しさん
07/08/02 03:09:59
宿題スレで言ってもな

206:デフォルトの名無しさん
07/08/02 07:52:15
>>203
漏れはC書きだけど
わざと[0]を使わないことはあるよ


207:デフォルトの名無しさん
07/08/02 08:08:47
どっちかっつーと汎用機系に近いコーディングじゃね?
添字の使い方とかスパゲッティープログラム具合とか…
リファクタリングさせたほうが課題としてはいいような気がする

208:デフォルトの名無しさん
07/08/02 11:39:14
ソース読んで意味の読み取れないコードをどうやってリファクタリングしろと?

209:デフォルトの名無しさん
07/08/02 14:56:39
>>196
ArrayIndexOutOfBoundで落ちた。
というか、何の授業で出てきた宿題か知りたい。

210:デフォルトの名無しさん
07/08/02 14:57:23
・・・・ん?Weightとかあるから経路探索か?

211:デフォルトの名無しさん
07/08/02 21:06:06
>>209
Java入門(笑) じゃね?

212:デフォルトの名無しさん
07/08/02 23:05:06
>>211
そこのサイトって駄目なの?

213:デフォルトの名無しさん
07/08/03 13:03:03
【課題】パスカルの三角形(5段目まで)を再帰的手続きを用いて記述せよ
【形態】1. Javaアプリケーション(main()で開始)
【期限】8/10まで
【用語】表示したい三角形は以下
1
1 1
1 2 1
1 3 3 1
1 4 6 4 1

【補足】計算->配列格納を以下のように記述したら、再帰的ではないとのことで
再提出になってしまいました。他にはどんな方法が考えられるでしょうか。

for(i = 1; i <= n; i++){
p[i][1] = 1; //各段の最初の数字は1
p[i][i] = 1; //各段の最後の数字は1
}
for(i = 3; i <= n; i++){
for(j = 2; j < i; j++){
p[i][j] = p[i-1][j-1]+p[i-1][j];
}
}
// 1段目と2段目の値は計算の必要がないので 3段目から計算
// n は段数(今回は n=5)

214:デフォルトの名無しさん
07/08/03 15:00:44
>>213
URLリンク(sourcepost.sytes.net)

215:213
07/08/04 00:50:59
>>214
即レスありがとうございます!
詳細な解説まで入れていただいて、とても感謝です。
再帰的手続きについて、もう一度よく勉強しようと思います。

216:デフォルトの名無しさん
07/08/04 23:47:37
極端に宿題減ったなと思ったら、夏休みか

217:デフォルトの名無しさん
07/08/06 16:44:03
【課題】 問題1 ナップサック問題
遺伝的アルゴリズムを用いて以下の問題を解きなさい。
アイテム数が250のナップサック問題です.
上から順番に,アイテム1,2,...,250となっています.


制約値(ナップサックの容量)
6536

重さ 利得
(250アイテムもあるので、配列にしたものを後で、書き込みます)。
【形態】1. Javaアプリケーション(main()で開始)
【期限】8/11まで
【用語】遺伝的アルゴリズム(交叉、突然変異などを用いること)
【 Ver  】5.0
丸投げでよろしくお願いします。

218:デフォルトの名無しさん
07/08/06 17:37:37
↑配列書き込んでも、誰もやらないに(´ω`)ノ (1/8)

219:デフォルトの名無しさん
07/08/06 17:43:37
愛媛乙

220:デフォルトの名無しさん
07/08/06 17:48:30
↓面白そうな研究室だね(`・ω・´)<でも、かき氷器は要らないと思うだ・・・
遺伝的アルゴリズムに、AI、画像処理
URLリンク(ipr20.cs.ehime-u.ac.jp)

さて、寝よ

221:217
07/08/06 20:03:15
int[] omosa = { 100, 49, 54, 12, 78, 30, 65, 31, 90, 50, 80, 84, 53,
72, 94, 60, 74, 58, 17, 24, 45, 19, 33, 39, 91, 69, 48, 56, 84,
66, 60, 95, 49, 63, 22, 71, 83, 36, 15, 64, 28, 49, 41, 14, 17,
28, 65, 27, 65, 28, 21, 17, 33, 68, 51, 91, 97, 28, 91, 82, 54,
12, 47, 33, 30, 65, 56, 57, 91, 88, 77, 99, 29, 23, 39, 86, 12,
85, 22, 64, 33, 95, 32, 10, 44, 56, 86, 38, 72, 10, 57, 30, 28,
92, 68, 54, 34, 93, 35, 41, 46, 82, 66, 15, 89, 70, 46, 43, 60,
36, 63, 18, 67, 13, 12, 94, 19, 65, 59, 28, 91,

37, 24, 86, 23, 100, 38, 21, 42, 58, 91, 26, 69, 72, 89, 34,
84, 30, 24, 62, 20, 45, 11, 24, 54, 61, 14, 97, 79, 65, 68, 93,
54, 36, 41, 62, 90, 10, 58, 57, 46, 85, 19, 15, 15, 44, 70, 17,
25, 24, 37, 45, 97, 85, 64, 46, 74, 86, 89, 12, 83, 24, 40, 99,
27, 28,

65, 57, 66, 75, 50, 42, 34, 12, 59, 100, 12, 61, 98, 14, 68,
64, 46, 87, 68, 33, 43, 28, 24, 25, 29, 13, 59, 20, 66, 84, 16,
40, 69, 55, 73, 85, 25, 17, 81, 32, 74, 90, 88, 11, 98, 59, 12,
93, 16, 97, 37, 59, 57, 16, 73, 74, 65, 12, 33, 28, 66, 17, 88,
86

};



222:217
07/08/06 20:04:14

int[] ritoku = { 79, 25, 99, 41, 94, 75, 40, 59, 95, 99, 95, 93, 74,
83, 14, 89, 41, 53, 75, 70, 49, 19, 84, 16, 25, 66, 68, 79, 16,
93, 14, 20, 99, 93, 100, 56, 62, 69, 91, 52, 86, 43, 76, 45,
21, 57, 45, 41, 58, 33, 68, 22, 66, 83, 50, 64, 35, 42, 33, 66,
38, 57, 69, 90, 79, 89, 28, 70, 38, 71, 46, 41, 49, 43, 36, 68,
92, 33, 84, 90, 22, 93, 92, 89, 47, 23, 13, 11, 34, 11, 60, 82,
10, 16, 81, 20, 85, 52, 92, 31, 24, 83, 76, 15, 38, 63, 32, 99,
39, 97, 28, 42, 80, 21, 99, 11, 91, 24, 45, 28, 89,

31, 81, 78, 48, 72, 36, 77, 84, 40, 65, 43, 49, 23, 82, 41, 22,
67, 96, 58, 56, 81, 42, 55, 31, 38, 33, 10, 43, 84, 52, 96, 92,
51, 50, 63, 70, 46, 30, 45, 41, 15, 82, 52, 25, 69, 62, 26, 64,
93, 78, 82, 71, 65, 40, 25, 20, 24, 19, 10, 12, 31, 22, 96, 79,
31, 98, 80, 10, 31, 42, 99, 26, 21, 83, 78, 66, 54, 100, 22,
48, 16, 25, 97, 95, 70, 22, 20, 16, 17, 19, 49, 90, 44, 53, 18,
42, 26, 87, 55, 58, 32, 61, 32, 10, 11, 12, 61, 96, 59, 94, 25,
30, 70, 53, 35, 54, 91, 51, 20, 87, 70, 50, 52, 31, 43, 32, 25,
40, 78

};

223:デフォルトの名無しさん
07/08/06 22:01:15
>>220
ありがとうございます。取りあえず、アルゴリズムの方は大体つかめました。
プログラミングの能力不足は否めませんが。

224:デフォルトの名無しさん
07/08/07 11:07:26
>>217
面白いな、この問題
問題2とかもあるのか?

225:デフォルトの名無しさん
07/08/07 13:47:44
問題2は巡回セールスマン問題を遺伝的アルゴリズムで解け、です。

226:デフォルトの名無しさん
07/08/07 13:59:35
興味本位の素人の考えだけど、この問題って(価値/重さ)を計算して重さあたりの価値の高い物から順に袋がいっぱいになるまで詰めるのじゃだめなの?
それとも単に例題としてあえて回りくどい方法使ってるの?

227:デフォルトの名無しさん
07/08/07 14:03:14
>>226
ダイアモンドは分割できませんよw

228:デフォルトの名無しさん
07/08/07 14:21:48
>巡回セールスマン問題を遺伝的アルゴリズム
専門にしては難しいことやってるな。
NP完全問題一通りやらせる気か?

229:デフォルトの名無しさん
07/08/07 14:46:50
>>226
A 価値 9 重さ 8 価値/重さ 1.125
B 価値 10 重さ 9 価値/重さ 1.111...
最大重量 20
のとき、そのアルゴリズムによれば
A 2個 価値 18 重さ 16
だけど
A 1個 B 1個 価値 19 重さ 17
B 2個 価値 20 重さ 18
で、価値/重さの大きいものを全く含まない組み合わせの方が総価値が高くなる

230:224
07/08/07 16:00:35
>>217
やはり巡回マン問題に繋げているのか。

解くには解いたが、まったく解らん状態でこんなもんコピって提出して大丈夫か?
ゼミとかで発表されても困るぞw

231:217
07/08/07 16:52:52
自己解決しました!

232:デフォルトの名無しさん
07/08/08 01:46:33
正直、このレベルの問題は自分で解けないと将来困るの本人だろ?
まさか論文ココで書いてもらうつもりか?

233:デフォルトの名無しさん
07/08/08 03:39:48
ぬゑぽ

234:デフォルトの名無しさん
07/08/08 04:38:05
try{
>>223
} catch (NullPointerException e) {
System.out.println("ガッ");
}

235:ぱん
07/08/08 13:56:39
【 課題 】 コマンドライン引数に入力された年と月から、
       その月が何日まであるかを表示しなさい。
(日付その他のチェックも行う事)  
【 形態 】 Javaアプリケーション(main()で開始)
【 期限 】 2008/08/08 18:30まででお願い致します。
【 Ver  】java version "1.4.1_05"
【 補足 】お願い致します。



236:デフォルトの名無しさん
07/08/08 18:21:51
>>235
public class Nannichi {
public static void main(String[] args) {
if (args.length == 2) {
int year = Integer.parseInt(args[0]);
int month = Integer.parseInt(args[1]);
if (month >=1 && month <=12) {
System.out.println(new int[][]{{31,29,31,30,31,30,31,31,30,31,30,31},{31,28,31,30,31,30,31,31,30,31,30,31}}
[year % 4 == 0 && (year % 100 != 0 || year % 400 == 0) ? 0 : 1][month - 1]);
}
} else {
System.err.println("java Nannichi year month");
}
}
}

237:デフォルトの名無しさん
07/08/08 18:31:03
べた書きキタコレ

238:デフォルトの名無しさん
07/08/08 18:39:11
配列べた書きが気に入らんのかい
System.out.println(month >=8 && month % 2 == 0 ? 31 : month >= 8 ? 30 : month % 2 != 0 ? 31 : month != 2 ? 30 : year % 4 == 0 && (year % 100 != 0 || year % 400 == 0) ? 29 : 28);

239:デフォルトの名無しさん
07/08/08 19:20:18
>>235
個人的には、>>122の汎用的なロジックが好きだから
y,m を引数するとして

m==12?getDayID( y+1,1,1):getDayID( y,m+1,1) - getDayID( y,m,1 )
を提示

240:デフォルトの名無しさん
07/08/08 19:22:00
>>239
こんな場合分けは、122に失礼だった。
getDayID( y+m/12, (m+1)%12,1)- getDayID( y,m,1 )
こっちで。

241:デフォルトの名無しさん
07/08/08 19:24:05
>>240
もうなんだか訳分からなくなった
getDayID( y+m/12, m%12+1,1)- getDayID( y,m,1 )
括弧間違ってた。

242:デフォルトの名無しさん
07/08/08 19:33:36
Calendarクラス使って動的にとればいいだろ

Calendar cal = Calendar.getInstance();
cal.set(Calendar.YEAR, year);
cal.set(Calendar.MONTH, month - 1);
cal.set(Calendar.DATE, 1);
cal.add(Calendar.DATE, -1);
return cal.get(Calendar.DATE);

243:デフォルトの名無しさん
07/08/08 19:37:39
>>242
Calendar使うなら、getActualMaximumで終了じゃねえか

244:デフォルトの名無しさん
07/08/08 19:51:29
getActualMaximumなんてメソッドあるんだ

245:デフォルトの名無しさん
07/08/08 21:20:43
>>244
うっかりgetMaxmumを使って常に、31日というオチもありだ。

246:217
07/08/09 00:18:58
>>230
提出はプログラムに関する考察なので、大丈夫です。それに、取りあえず、
参考程度にエラーの出ないやり方を見たいので、アップしてくれるとうれしいです。
>>232
確かに、もうちょっと自分で考えた方がいい気もしますね。
3回の専門科目のレポート問題ですが、やはり相当手ごわい問題のようですね。


247:217
07/08/09 00:26:28
ココってちなみにどこの大学晒すのかはまずいですよね。
とりあえず、考えてもらったお礼に、問題2と問題3も後で書き込むことにします。

248:デフォルトの名無しさん
07/08/09 01:27:05
お礼がさらなる自分の課題の提示w

249:デフォルトの名無しさん
07/08/09 05:37:52
本当に楽しみを与えているとでも思っているのか>>217はw

しかしその気概が気に入ったので例示、ただしかなり嫌がらせ気味に書いた
URLリンク(sourcepost.sytes.net)
単なる一点交叉+奇々怪々な変異法のため非常に解が安定しない
2000世代で価値がAve7300程度かね、多分最高で8000ぐらいは行くんじゃなかろうか
解を安定させたいならTwoOptMutationとか選択法勉強するヨロシ

卒論でGAは使ったことがあるが丸々写したりしてもさっぱりだと思うぞ
正直その手の論文でも見て動き方を覚えた方が良いと思う

…微妙に正しいのかどうか分からなくなってきた

250:デフォルトの名無しさん
07/08/09 07:35:30
>>249
8200ちょい
リファクタリングしたら貼り付けようと思っていたけど不要になりそだ

251:初心者
07/08/09 10:57:17
235の課題をCalendarクラスで動的に取ったら
どんな感じになるんですか?

252:文字列動的配列クラスの作成
07/08/09 11:13:29
【 課題 】 ABC.java
       //最下行に要素を追加
       public void add(String data){}
//指定インデックスの要素を上書き(指定インデックスが無い場合エラー)
       public void set(int index,String data){}
//指定インデックスの要素を取得(指定インデックスが無い場合エラー)
       public String get(int index){}
//全ての要素をクリア
       public void clear(){}
//実行サンプルクラス
//以下の処理をABCを使用して実行
       ABC_excec.java
"aaa"を追加
         "bbb"を追加
         "ccc"を追加
         "dd"を追加
       4個の要素を取得して表示
       すべてクリア
       "ee001"〜"ee100"の100個追加
       76番目の要素を取得して表示
  
【 形態 】 Javaアプリケーション(main()で開始)
【 期限 】 2008/08/09 今日中まででお願い致します。
【 Ver  】java version "1.4.1_05"
【 補足 】概念図は
      public void add(String data){}
     public String set(int index,String data){}
     public String get(int index){}
      public void clear(){}
      とありました。丸投げお願いいたします。

253:ぱん
07/08/09 11:19:54
public class Nannichi {
public static void main(String[] args) {
if (args.length == 2) {
int year = Integer.parseInt(args[0]);
int month = Integer.parseInt(args[1]);
if (month >=1 && month <=12) {
System.out.println(new int[][]{{31,29,31,30,31,30,31,31,30,31,30,31},{31,28,31,30,31,30,31,31,30,31,30,31}}
[year % 4 == 0 && (year % 100 != 0 || year % 400 == 0) ? 0 : 1][month - 1]);
}
} else {
System.err.println("java Nannichi year month");
}
}
}
Calendarクラスを使うとどう変わりますか?

254:デフォルトの名無しさん
07/08/09 12:05:07
>>251
>>253
>>242-243

255:デフォルトの名無しさん
07/08/09 12:12:33
【 課題 】
フォームから入力を受け取って、簡単な家計簿を生成するServlet を作成せよ。
入力した項目に加えて、その日の支出の計とそれまでの支出の累計の両方を計算してテーブルの形に整形し、
ゲストブックとおなじようにファイルにテーブルを追加していくようにせよ。
フォームURLリンク(sourcepost.sytes.net)
【 形態 】1. Javaservlet
【 GUI  】4. 制限なし
【 期限 】8月9日まで
【 Ver  】1.6.0_01
【 補足 】
よろしくお願いします。

256:デフォルトの名無しさん
07/08/09 12:34:02
【 課題 】
オプションと値段の情報をテキストファイルではなく、データベースから獲得し、動作をするサーブレットを作成せよ。
なお、データベースへのクエリの回数はできるだけ少ないこと(1つのセッションで1回)が望ましい

【 形態 】1. Javaservlet
【 GUI  】4. 制限なし
【 期限 】8月9日まで
【 Ver  】1.6.0_01
【 補足 】
一応テキストから獲得したサーブレット
URLリンク(sourcepost.sytes.net)
オプションは常に3択と仮定して良い
DBのテーブルの作成には以下のSQLスクリプトを使用してよい
URLリンク(sourcepost.sytes.net)
よろしくお願いします

257:デフォルトの名無しさん
07/08/09 12:47:15
>>252
public class ABC {
//private java.util.ArrayList list = new java.util.ArrayList();
//public void add(String data) { list.add(data); }
//public void set(int index, String data) { list.set(index, data); }
//public String get(int index) { return (String)list.get(index); }
//public void clear() { list.clear(); }
private String[] list = new String[1];
private int size = 0;
public void add(String data) { if (size >= list.length) { String[] t = new String[list.length * 2]; System.arraycopy(list, 0, t, 0, list.length); list = t; } list[size++] = data; }
public void set(int index, String data) { if (index < 0 || index >= size) throw new IndexOutOfBoundsException(); list[index] = data; }
public String get(int index) { if (index < 0 || index >= size) throw new IndexOutOfBoundsException(); return list[index]; }
public void clear() { for (int i = 0; i < size; i++) list[i] = null; size = 0; }
}
public class ABC_exec {
public static void main(String[] args) {
ABC abc = new ABC();
abc.add("aaa");
abc.add("bbb");
abc.add("ccc");
abc.add("dd");
for (int i = 0; i < 4; i++) System.out.println(abc.get(i));
abc.clear();
java.text.DecimalFormat format = new java.text.DecimalFormat("ee000");
for (int i = 1; i <= 100; i++) abc.add(format.format(i));
System.out.println(abc.get(76 - 1));
}
}

258:デフォルトの名無しさん
07/08/09 13:14:46
>>257
コンパイルするとエラーになるよ

259:デフォルトの名無しさん
07/08/09 13:23:30
>258
お前のやり方が間違ってるだけ

260:デフォルトの名無しさん
07/08/09 13:58:04
>>253
import java.util.*;

public class Main {
public static void main(String[] args) {
int year = Integer.parseInt(args[0]);
int month = Integer.parseInt(args[1]);
GregorianCalendar cal = new GregorianCalendar();
System.out.println(
new int[][]{{31,29,31,30,31,30,31,31,30,31,30,31},{31,28,31,30,31,30,31,31,30,31,30,31}}
[cal.isLeapYear(year) ? 0 : 1][month - 1]);
}
}
じゃねーの?

261:デフォルトの名無しさん
07/08/09 16:16:42
String の変数に入れられた文字列が全角か半角かを判別させるにはどうすればいいですか?

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

262:デフォルトの名無しさん
07/08/09 17:16:33
>>260
吹いたw 正しい正しいw

263:デフォルトの名無しさん
07/08/09 17:22:49
>>261
全角半角の定義だが、Windows-31Jで1バイトかどうかで判定して良いのか?

だとすれば
String str ; // これに入ってるとする

for( int i=0;i<chrs.length;i++ ){
String s = str.substring(i,i+1);
if ( s.getBytes("Windows-31J") .length == 1 ){
System.out.println("半角:"+s);
}else{
System.out.println("全角:"+s);
}
}
で判定できないかね。

264:217
07/08/09 17:57:37
>>249-250
>>ただしかなり嫌がらせ気味に書いた
なるほど、横に長い実行結果ですね
ありがとうございます。ちなみに最適解は10000ちょいでしたが、
エラーの出ない配列の使い方が分かって非常に参考になりました。

265:デフォルトの名無しさん
07/08/09 18:07:30
>260
getActualMaximum使ったらもっとかんたんなのでは?
俺は知らんけどな〜

266:217
07/08/09 18:14:47

【 課題 】2目的ナップサック問題
URLリンク(sourcepost.sytes.net)
巡回セールスマン問題
URLリンク(sourcepost.sytes.net)
【 形態 】1. Javaアプリケーション(main()で開始)/
【 期限 】解答しなくて良いです。
【 Ver  】java5.0
【 補足 】この問題は、答える必要はありません。興味のある方は、
やってみてください。

267:デフォルトの名無しさん
07/08/09 18:55:09
(*‘ω‘ *)<ランボー

期限      レス番号  種別          
----------------------------------------------
8/9       >255     Servlet
8/9       >256     Servlet+DB(MySQLぽっぽ)

268:デフォルトの名無しさん
07/08/09 19:14:51
みんな期限短すぎだろ

269:デフォルトの名無しさん
07/08/09 19:53:59
>>217
これは面白かった
細かいテストしてないから正確な動作は保証しない
URLリンク(uproda11.2ch-library.com)
dlキーはga

270:デフォルトの名無しさん
07/08/09 20:50:57
>>269
軽く見たけど無駄な処理多いと思うが?

271:217
07/08/09 20:53:30
>>269
ありがとうございます。266にも問題2,3があるので気が向いたらやってみてください。


272:デフォルトの名無しさん
07/08/09 23:54:19
なんだか最近おかしくないか?
問題を提供してやってるんだぜ、俺スゲー、敬え!
って感じがするんだが。
こんな問題も解けなくて生まれてきてスマン。でも単位は欲しいので助けてください。
みたいな素直さがないよ。

273:デフォルトの名無しさん
07/08/10 00:03:23
>>272
さすがに、そんな馬鹿いないでしょ
まあ、目立たせるように不躾な書き方をしてる人はいるかも

274:デフォルトの名無しさん
07/08/10 06:32:09
夏で普通の宿題がないからひまつぶしにネタ出してるんでそ。
夏休み終わりぐらいに大量に出題あるかもねw

275:デフォルトの名無しさん
07/08/10 08:18:18
暇つぶしならネタ出しせずに自分で解けばいいのにと思う今日この頃

276:継承
07/08/10 10:30:46
【 課題 】  >257さんの回答を継承して A_strArray.java
        // 全ての要素を配列で取得
        public String[] getAll(){}
        // 要素数を取得
        public int getIndex(){}
        // 昇順
        public static final int ASC_SORT = 0;
        // 降順
        public static final int DESC_SORT = 1;
        // ソートする
        //引数 mode ASC_SORT:昇順/DESC_SORT:降順
        public void sort(int mode){}
        //実行サンプルクラス A_exec.java
        "bbb" を追加"aaa" を追加"ddd" を追加
"ccc" を追加"123" を追加
要素数を表示
昇順ソート
全ての要素を取得して表示
降順ソート
全ての要素を取得して表示
A_exec2.java
以下を10回繰り返すプログラムを作成する
項目を、10000個追加
5000番目の内容を表示
降順ソート
全てクリア

【 形態 】 Javaアプリケーション(main()で開始)
【 期限 】 2008/08/10 今日中でお願い致します。
【 Ver  】java version "1.4.1_05"
【 補足 】丸投げですがお願い致します。

277:デフォルトの名無しさん
07/08/10 14:00:22
>項目を、10000個追加
どうやって要素を生成するかわからん。sortするならrandomかな。
しかし、意味の無い仕様だな。


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

5377日前に更新/93 KB
担当:undef