★★ Java の宿題ここ ..
[2ch|▼Menu]
298:デフォルトの名無しさん
09/10/05 08:27:20
>>297
その方法だとコピーとは言えないな
文字のコピーであって、ファイルのコピーじゃない

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

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

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

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

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

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

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

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

Wikipedia項目リンク

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

URLリンク(rg550.hp.infoseek.co.jp)

お願いします

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

307:デフォルトの名無しさん
09/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:デフォルトの名無しさん
09/10/07 02:29:05
>>307
人の話は聞け。

309:デフォルトの名無しさん
09/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:デフォルトの名無しさん
09/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:デフォルトの名無しさん
09/10/07 15:28:57
>>308
聞いたつもりだったのですが・・・すみません

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

312:デフォルトの名無しさん
09/10/09 00:16:13
【 課題 】URLリンク(www.dotup.org)
【 形態 】Applet
【 GUI  】制限なし
【 期限 】10/10
【 Ver  】1.6.0-11

お願いします

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


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

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

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

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

320:デフォルトの名無しさん
09/10/12 02:11:18
これ、読んだひと居ますか?
URLリンク(page19.auctions.yahoo.co.jp)
URLリンク(page18.auctions.yahoo.co.jp)

321:デフォルトの名無しさん
09/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:デフォルトの名無しさん
09/10/12 04:34:56
teikadeってどうなったの?

323:デフォルトの名無しさん
09/10/12 05:57:40
>>314
なんか見たなと思えば
C/C++の宿題片付けます 130代目
スレリンク(tech板: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:デフォルトの名無しさん
09/10/12 20:56:48
どなたか教えてください。例えば、
hoge[]={300,400,500,200,100} をソートしたときに元の配列番号の並びかえで
{4,3,0,1,2}として別の配列に格納したいんですがどうしたらいいでしょうか。
テンプレ使うまでもない質問だと思ったので、こんな形ですいません。
よろしくお願いします。

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

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

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

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


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

330:デフォルトの名無しさん
09/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を
求めるプログラムはこれです
URLリンク(rg550.hp.infoseek.co.jp)


お願いします

331:デフォルトの名無しさん
09/10/13 18:16:53
>>330
URLリンク(rg550.hp.infoseek.co.jp)

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

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

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

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

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

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

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


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

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

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

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


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

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

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

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

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

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

347:デフォルトの名無しさん
09/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:デフォルトの名無しさん
09/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:デフォルトの名無しさん
09/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:デフォルトの名無しさん
09/10/15 22:26:57
>>345ありがとうございます!

351:デフォルトの名無しさん
09/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:デフォルトの名無しさん
09/10/15 22:59:45
>>351
表示部分の指定がひどすぎるwwwww

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

354:デフォルトの名無しさん
09/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:デフォルトの名無しさん
09/10/15 23:27:05
>>349
ありがとうございます!!!
無事起動できました。

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

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

357:デフォルトの名無しさん
09/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:デフォルトの名無しさん
09/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:デフォルトの名無しさん
09/10/16 01:24:37
>>358ありがとうございました

360:デフォルトの名無しさん
09/10/16 02:25:56
>>351
URLリンク(kansai2channeler.hp.infoseek.co.jp)

361:デフォルトの名無しさん
09/10/16 11:53:30
【 課題 】URLリンク(www.dotup.org)
【 形態 】Applet
【 期限 】10/20
【 Ver  】1.6.0-11

よろしくお願いします

362:デフォルトの名無しさん
09/10/16 13:09:32
>>361
URLリンク(rg550.hp.infoseek.co.jp)

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

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


365:デフォルトの名無しさん
09/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:デフォルトの名無しさん
09/10/17 07:41:30
>>365
すみません。
参考プログラムの穴に埋めるような形でお願いします。

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

368:デフォルトの名無しさん
09/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:デフォルトの名無しさん
09/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:デフォルトの名無しさん
09/10/17 12:18:58
あ,13じゃなくて16になってます。スミマセン
それでも無理です

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

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

373:デフォルトの名無しさん
09/10/17 13:07:04

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

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

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

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

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

途中までのソースとベクトルファイルです
URLリンク(rg550.hp.infoseek.co.jp)
URLリンク(kissho.xii.jp)


お願いします

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

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

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

385:デフォルトの名無しさん
09/10/18 21:47:16
URLリンク(rg550.hp.infoseek.co.jp)

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

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


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

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

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

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

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

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

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

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

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

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

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

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


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

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

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

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

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

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

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

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

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

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

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


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

404:デフォルトの名無しさん
09/10/20 20:28:11
>>397の畳み込みのpdfです
URLリンク(www1.axfc.net)
課題については勘違いしてたみたいです。1問だけです

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

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

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

407:デフォルトの名無しさん
09/10/20 21:14:22
>>397
URLリンク(codepad.org)

408:おねがいします
09/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:たのみます
09/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
09/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
09/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:デフォルトの名無しさん
09/10/20 22:45:32
ここまで穴だらけだと一から作り直したい
中途半端に識別子が決められてるとこうぇぇ

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

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

>>409
URLリンク(detail.chiebukuro.yahoo.co.jp)

>>410
URLリンク(detail.chiebukuro.yahoo.co.jp)

>>411
みつからね

なんとかなるんでね?

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

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

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

418:デフォルトの名無しさん
09/10/21 14:17:33
>>416
URLリンク(codepad.org)

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

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

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

【 GUI  】1. AWTのみ

【 期限 】11月1日まで

よろしくお願いします。

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

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

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

423:デフォルトの名無しさん
09/10/22 22:33:39
>>419
URLリンク(rg550.hp.infoseek.co.jp)
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:デフォルトの名無しさん
09/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) URLリンク(rg550.hp.infoseek.co.jp)
[2]Qfact.java(sample)+Qintegerの補足説明 URLリンク(rg550.hp.infoseek.co.jp)
[3] [1]を[2]の説明に基づいて自身で作成したQinteger.java URLリンク(rg550.hp.infoseek.co.jp)

よろしくお願いします

425:デフォルトの名無しさん
09/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:デフォルトの名無しさん
09/10/23 00:43:53
/*上の行に修正*/
で始まってる行消してコンパイルしてくれ。

427:デフォルトの名無しさん
09/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
09/10/23 01:10:53
>>425
おかげ様で無事にコンパイルでき動かすことができました
わざわざこちらのコードを訂正していただく形で素早い回答ありがとうございました


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

5041日前に更新/316 KB
担当:undef