★★ Java の宿題ここ ..
[2ch|▼Menu]
116:デフォルトの名無しさん
08/06/10 18:15:30
>>112
横長の表にして出力せよ
ってどういうこと?
普通にInteger.toBinaryString(int)じゃだめなん?

117:デフォルトの名無しさん
08/06/10 19:05:11
>>112
アルゴリズムを見出して書き下せってことなんだろうけど、
その出力形式の指定は確かに謎w

118:95
08/06/10 20:34:47
(1)のみでも結構ですので >>95 お願いできませんでしょうか。

119:デフォルトの名無しさん
08/06/10 21:28:06
>>95
要はスレッドに引数を与えて処理完了を待てばいい(結果は戻さず、垂れ流しでいい)ってことでしょ。
import java.util.ArrayList;
...
  final int[][] a = new int[3][3];
  final int[][] b = new int[3][3];
  ... (行列a、bの要素に値を入力) ...
  ArrayList threads = new ArrayList(3 * 3);
  for (int i = 0; i < 3; i++) {
    final int r = i;
    for (int j = 0; j < 3; j++) {
      final int c = j;
      Thread th = new Thread(new Runnable() { // final指定されたa, b, r, cが渡される(参照できる)
        public void run() {
          int ab_rc = 0;
          for (int k = 0; k < 3; k++) ab_rc += a[r][k] * b[k][c]; // こんなんだっけw
          System.out.println("("+ r +","+ c +") : "+ ab_rc); // とか、なんか適当に表示?
        }
      });
      threads.add(th);
    }
  }
  for (Thread thread : threads) thread.join();
...
動作未確認。古くさい部分とかあったらむしろ教えて

120:デフォルトの名無しさん
08/06/10 21:35:42
やべ例外が、、まあいっかw

121:デフォルトの名無しさん
08/06/10 21:36:28
型はdoubleの方がいいかなーと思った。

122:デフォルトの名無しさん
08/06/10 21:36:42
あとstart()してねえww

正直スマンカッタ

123:デフォルトの名無しさん
08/06/10 21:37:54
>>121
ごもっとも

124:76
08/06/10 22:31:07
>>107さん
ご回答ありがとうございました。無事できました!
他にも色々な人も回答して頂きほんと助かりました!ありがとうございました。

125:デフォルトの名無しさん
08/06/10 22:41:38
/* >>112
スレリンク(tech板:112番)
10進数483220077を2進数に変換するプログラムを書いて、横長の表にして出力せよ。
*/
class binary {
public static void main(String[] args) {
  int i = 483220077;
  int k;
  int[] j = new int[32];
  String a = new String(Integer.toBinaryString(i));
  System.out.println(a);

  for(k=0; k<32; k++) {
    j[k] = i & 1;
    i >>= 1;
  }
  for(k=31; k>=0; k--) {
    System.out.print(Integer.toBinaryString(j[k]));
    if(k==16)
      System.out.print("-");
    else if(k%4 == 0)
      System.out.print(" ");
  }
}
}

126:デフォルトの名無しさん
08/06/10 23:27:57
# java CommandExecuterMain.java
Exception in thread "main" java.lang.NoClassDefFoundError: CommandExecuterMain
というエラーがでます.


CommandExecuterMain.java
は,以下のように記述しています.

class test {

public static void main(String[] args){
try{
Runtime.getRuntime().exec("rm aaa");
System.exit(0);
}catch(Exception e){
System.exit(1);
}
}
}

URLリンク(javafaq.jp)
の(1)を参考に直そうとしても、うまくいきません。

おしえてください。

127:デフォルトの名無しさん
08/06/10 23:30:47
クラス名をCommandExecuterMainにしてごらん。
それからおそらくスレ違い。さようなら。

128:デフォルトの名無しさん
08/06/10 23:55:37
>>95
URLリンク(rg550.hp.infoseek.co.jp)

【注意】
・課題2の
 > 全てのスレッドが終了後に行列の各要素の値を出力する。
 の部分が未実装なので、Kadai1.java を参考にして Kadai2.java を修正すべし。
・そっちのJavaのバージョンが1.6なので、
 ArrayListを使用している箇所では「ジェネリクス」に対応した書き方をしないといけない かもしれない
 ArrayList<リストに格納するオブジェクトの型> みたいなの。
・添付してるInput.txtとOutput.txtは実行例。

129:デフォルトの名無しさん
08/06/11 00:21:30
>>95
>>128 への追記。
「Kadai2.javaを修正」とは…
 「core.getResultMatrix()」を使って計算結果の正方行列(を表現する二次元配列)を取得して、
 その表示方法は Kadai1.java を参考にしなさい
という意味です。
情報小出しになって申し訳ない。


130:95
08/06/11 01:54:22
>>119
>>128
手間が掛かる問題を本当にありがとうございました。

131:59
08/06/11 08:01:46
>>60 問いAは出来たよ。 問い@はやるつもり無いので、だれか先にやって。
URLリンク(bal4u.dip.jp)
URLリンク(www.bohyoh.com)

1 □□□□□□E □□□□□□
□□□□□□/□\□□□□□
2 □□□□AS□□□Y □□□□
□□□□□□□□/□\□□□
3 □□□□□□Q □□□□□□
□□□□□□/□\□□□□□
4 □□□I □□□□□U □□□
□□□/□\□□□/□\□□
5 □□□□□O □□T □□□□
□□□□□/□\□□□□□□
6 □□□N □□□□□□□□□
□□□□□□□□□□□□□□
>・木構造を記述する入力ファイルの形式を定義(説明)する。
Lは左の枝 Rは右の枝 +は下る -は上る。(数字)は再帰レベル。
L+ AS (2)
L- E (1)
R+L+L+ I (4)
R+L+ N (6)
L- O (5)
R-L- Q (3)
R+L+ T (5)
L- U (4)
R-L- Y (2)
R-

132:59
08/06/12 06:56:07
>>60 もとい、前レスの修正、且つソース有り。以上
- I (1)+ V (2)
|   |   - P (3)+ Q (4)+ R (5)+ S (6)
|   |   |   - N (4)+ O (5)
|   |   |   |   - L (5)+ M (6)
|   - H (2)
|   |   - A (3)+ E (4)
|   |   |   |   - C (5)

int depth = 1;
//--- nodeを根とする部分木のノードをTREE表示 ---//
private void printSubTree(Node node) {
  if (node == null) return;
  if (depth == 1) System.out.print("-");
  System.out.print( " " + node.key + " " + "(" + depth + ")" );
  if (node.right != null) {
    System.out.print("+");
    depth++;
    printSubTree(node.right);
    depth--;
  } else
    System.out.println();

  if (node.left != null) {
    for(byte a=0; a<depth; a++) System.out.print("|   ");
    System.out.print("-");
    depth++;
    printSubTree(node.left);
    depth--;
  }
}

133:デフォルトの名無しさん
08/06/12 09:08:41
[課題]// 数列を逆順に書く
class Reverse2 {
public static void main(String [] args){
int data[] = new int[10];
int i,x,kosuu;
i=0;
System.out.println("0以上の数を高々10個打ち込め。終りは -1で表わす。");
System.out.print("> ");
x=IO.in.readInt();
while(x >= 0){
if(i>=10) System.out.println("10個を越えたので無視する。");
else { data[i]=x; i++; }
System.out.print("> ");
x=IO.in.readInt();
}
kosuu=i;
//これで読み込み完了

//逆順に書き出し
System.out.println("数列を逆順に書くと以下の通り。");
for(i=kosuu-1; i>=0 ;i--){System.out.println(data[i]);}
}
}








134:デフォルトの名無しさん
08/06/12 09:09:10

上のプログラムReverse2 を書き直して、 配列の中で入れ換えをして逆順にして から、配列の中を最初から順に書き出すことによって、読み込んだデータを逆順に書き出すプログラム Reverse3 を作れ。
つまり、Reverse2の「//これで読み込み完了」まではそのままで、その後に、「配列の中身を逆転する部分」を書き、プログラムの最後のところは、
System.out.println("数列を逆順に書くと以下の通り。");
for(i=0;i<kosuu;i++){System.out.println(data[i]);}
[形態]1,javaアプリケーション
[期限]六月十二日(今日までです、すみません。)
[補足]丸投げですがよろしくおねがいします。


135:デフォルトの名無しさん
08/06/12 10:06:23
>>133-134
>>18と同じ人?
IO.in.readInt() はJavaの標準APIに無いメソッドなので
何処のライブラリか、何をするメソッドかそちらが説明してくれないと
他の人にはわからない

136:デフォルトの名無しさん
08/06/12 10:14:56
【 課題 】URLリンク(rg550.hp.infoseek.co.jp)
「課題.txt」に問題文が入ってます
【 形態 】2. Applet?
【 GUI  】制限なし
【 期限 】2008/06/12 朝まで 《必須》
【 Ver  】1.5.0 《必須》
【 補足 】ボタンの処理の内容だけで大丈夫です。よろしくお願いします。


137:デフォルトの名無しさん
08/06/12 13:19:01
>>136 問題テキストの中にあるコメントは何? できたって最初からできてた?
コメント外して、最初のコメント入れる前のを、できればおいて欲しい、一応ルールだから。

138:デフォルトの名無しさん
08/06/12 14:18:34
136です
携帯から失礼します

※マークがついているコメント以外は問題文そのままです
考え方は問題文に書いてあることをそのまま写しました



分かりづらくてすみません

139:デフォルトの名無しさん
08/06/12 14:33:50
139です
あと、書き忘れましたが「できた」というのは
そのプログラムは一回授業ごとに改良していくプログラムなので
「できた」という表現になっています

すみませんでした

140:デフォルトの名無しさん
08/06/12 14:37:23
↑139ではなく136でした

たびたびすみません

141:デフォルトの名無しさん
08/06/12 16:15:36
圧縮せずに載せてください。
怖くて開けません。

142:デフォルトの名無しさん
08/06/12 16:59:55
怖くない人に回答してもらえばええやん

143:デフォルトの名無しさん
08/06/12 17:09:56
>>141
複数のファイルをばらばらにうpされるのも面倒だし、
自分の好みでない問題や依頼のやり方のものに対しては
無理して解答しようとせずに無視してもいいんじゃない?
解くのは義務じゃないんだから。

144:デフォルトの名無しさん
08/06/12 20:56:25
>>136
輝度反転:{
pixel = pixel_b[w * y + x];
alpha = pixel & 0xff000000;
rgb = ~pixel & 0x00ffffff;
pixel_a[w * y + x] = alpha | rgb ;

}
左回転: pixel_a[h * (w-x-1) + y] = pixel_b[w * y + x];

右回転: pixel_a[h * x + (h-y-1)] = pixel_b[w * y + x];


145:デフォルトの名無しさん
08/06/12 22:53:12
>>144さん
ありがとうございます!

助かりました

146:デフォルトの名無しさん
08/06/13 09:32:13
【 課題 】
300円の商品aと160円の商品bを買えるだけ買うことにする。
金額kを入力したとき、それぞれいくつずつ買えばお釣りが最も少なくなるかを計算し、a,bの個数とお釣りを表示せよ。

【 形態 】1. Javaアプリケーション(main()で開始
【 GUI  】4. 制限なし
【 期限 】期限:6/14
【 Ver  】1.6.0_05
【 補足 】丸投げです。どうぞよろしくお願いします。

147:デフォルトの名無しさん
08/06/13 12:01:22
>>146
import java.util.*;
public class A {
public static void main(String[] args) {
int ka = 300, kb = 160;
int k = 3000;
Set<Integer> s = new TreeSet<Integer>();
int change = k;
for (int na = k / ka; na >= 0; na--) {
int c = (k - na * ka) % kb;
if (c > change) continue;
if (c < change) {
change = c;
s.clear();
}
s.add(na);
}
for (int na : s) {
System.out.printf("a: %d, b: %d, change: %d%n", na, (k - na * ka) / kb, (k - na * ka) % kb);
}
}
}

148:146
08/06/13 13:33:03
>>147
動作OKでした。
回答ありがとうございました。

149:デフォルトの名無しさん
08/06/13 19:08:59
【課題】txtに記載
【形態】1.Javaアプリケーション
【期限】6/15
【補足】
課題
URLリンク(rg550.hp.infoseek.co.jp)

ほぼ丸投げです。
自由度の高い課題ですが、レベルの高いものは求めていないので
簡素な改良でもいいのでよろしくお願いします。

プログラムが長くなってスレ汚しになるといけないので一応捨てアド載せておきます。
よければ回答をそちらに送ってもらえればと思います。

mixijava@gmail.com

150:149
08/06/13 19:12:53
>>149
すいません。形態はappletでした。

151:デフォルトの名無しさん
08/06/14 00:28:23
>>149
具体的にどういう改良がいいか希望を書いたほうがやる人間にとって楽かも
希望に沿うか全然違う部分をいじられるかは回答者次第だとしても
あとテンプレの必須項目を埋めるという意味でjavaのバージョンも

152:デフォルトの名無しさん
08/06/14 01:22:03
【 課題 】
○AWTやSwingなどのGUIを扱うクラスライブラリを用いて、
 以下のどちらかのアプレットを作成しなさい。

@脳を鍛えるゲーム
簡単な計算(足し算、引き算、掛け算)が画面に表示され、その答えを入力し、
正誤を判断して得点などを表示する。

A簡単な計算機
ボタンがGUIで実装され、四則演算やルートなどが計算でき、出力できる。

【 形態 】Applet
【 GUI  】AWT/Swing
【 期限 】6月18日中
【 Ver  】java version "1.6.0_05"
【 補足 】授業ではAWTとSwingについて勉強しました。

宜しければ、作成したアプリケーションの機能、
使用方法なども記載して頂けると嬉しいです。
よろしくお願い致します。

153:149
08/06/14 05:12:32
>>151
バージョンはJ2SE ver1.4 です。
改良はとりあえずまともにブロック崩しが動けばいいです(ボールがブロックに当たればブロックが消えて全部ブロックが無くなれば終わるプログラム)
スコアを導入できてたり、少しずつ速度が上がる機能があればなおよしです。


154:デフォルトの名無しさん
08/06/14 18:14:08
【 課題 】URLリンク(rg550.hp.infoseek.co.jp)
【 形態 】1. Javaアプリケーション(main()で開始)
【 期限 】6/16日深夜5時
【 Ver  】1.5.0
【 補足 】
Javaの授業で概念しか習っていないのに突然記述せよと言われても記法がさっぱりでした。
箱を作るところしか出来ず、その程度なら丸投げの方が良いと思い丸投げします。
捨てアドまで回答宜しくお願いします。
捨てアド snagkh.oアットマークgmail.com

155:デフォルトの名無しさん
08/06/14 18:39:14
>>149
>プログラムが長くなってスレ汚しになるといけないので一応
これはちょっと余計だと思う。いや、悪気はないかもしれないけど。

156:デフォルトの名無しさん
08/06/14 21:09:29
>>60は解決したのか、と心配してみるテスト。
#自分でやらないとダメだよ〜。by N@CB

157:デフォルトの名無しさん
08/06/15 01:32:55
>>154
メールしといたぜ

158:デフォルトの名無しさん
08/06/15 01:36:52
>>154
メモステ値切んなよ

159:デフォルトの名無しさん
08/06/15 02:57:43
>>157
今実行できる環境にないので動作確認出来ませんがありがとうございました。
捨てアドなもので

160:149
08/06/15 03:19:01
>>155
すいません。悪気は無かったんですが…


あと改良できなくてもいいんで
普通にブロック崩しができるようにするだけでもいいんですが
どなたかお願いします

161:デフォルトの名無しさん
08/06/15 12:39:44
【 課題 】自動販売機を表すVendingMachineクラスとそれを実行するmainメソッドを作成せよ
・機能
 ・お金を投入する
 ・金額が十分投入してればジュースを買える。
 ・お金の払い戻しができる
作成したVendingMachineに対しカプセル化を施し意図しない状態に変更されないようにせよ
【 形態 】 Javaアプリケーション(main()で開始)
【 GUI  】 制限なし
【 期限 】提出期限6月16日


162:デフォルトの名無しさん
08/06/15 12:49:31
>>161
マルチ乙

163:デフォルトの名無しさん
08/06/15 13:58:04
【 課題 】JAVAアプレットで動画を再生せよ
・機能
コメントを入力し、テキストファイルへ保存、テキストファイル内コメントを動画の上で流す(某ニコニコ動画仕様)

【 形態 】 Javaアプレット
【 GUI  】 Web
【 期限 】今日の夜12時まで

たすけてくれぇぇぇ

文字コメント流すのはg.drawString(str[0], this.x[0], this.y[0]);でできたが、動画を流す方法がわからない!

お助け願います。

164:デフォルトの名無しさん
08/06/15 14:21:49
>>149
URLリンク(sourcepost.sytes.net)

165:164
08/06/15 14:33:00
今気がついたけど全消しで終る条件を入れてなかった。
面倒なのでわざと失敗して終らせることにするか、
ブロック数をカウントするインスタンス変数を最初に用意しておいて、
ブロックに当たった時の処理の中でカウントを増やすなり減らすなりして、
全部消えたらゲーム終了にする、にすればいいかな。

166:デフォルトの名無しさん
08/06/15 18:57:56
おkです。
本当にありがとうございました。助かります。

167:ume
08/06/16 03:25:38
>>46 - 1
public class suuretsu {
public static void main(String[] args) {
int n;
float a[]=new float[100];

a[0]=1.5f; n=0;
System.out.println( "a[" + n + "]=" + a[n] );
a[1]=2.0f; n=1;
System.out.println( "a[" + n + "]=" + a[n] );
a[2]=3.0f; n=2;
System.out.println( "a[" + n + "]=" + a[n] );
for(n=3;n<100;n++){
a[n]= - a[n-1] + a[n-2] + a[n-3];
System.out.println( "a[" + n + "]=" + a[n] );
}
}
}

168:デフォルトの名無しさん
08/06/16 08:41:42
【 課題 】(1)下記のプログラムを、valueOfを利用しJAN,・・・,NOV,1,・・・12が入力されたらその月を返すように改変する
(2)同様にJAN,・・・,NOV,1,・・・12が入力されたらJanuary,・・・,Novemberを返すように改変する
【 形態 】1. Javaアプリケーション(main()で開始)
【 期限 】今日中
【 Ver  】1.6.0_01

public class enums{

public enum MONTH{JAN(31),FEB(28),MAR(31),APR(30),MAY(31),JUN(30),JLY(31),AUG(31),SEP(30),OCT(31),NOV(30),DEC(31);
private final int days;
MONTH(int d){this.days = d;}

public int getDays(){return days;}
}
public static void main(String[] args){
MONTH month = MONTH.FEB;
System.out.println(month.getDays());
for(MONTH m : MONTH.values()){
System.out.println(m + ":" + m.getDays());
}
month = MONTH.valueOf("APR");
System.out.println(month.getDays());
}
}

お願いします

169:デフォルトの名無しさん
08/06/16 20:22:30
>>168
それは課題そのまんまか?
いろいろ解釈できるんだけど・・
しかもクラスenumsってw

170:デフォルトの名無しさん
08/06/16 20:56:48

【 課題 】swingを使って(スレッドを使わないで)3つのボールがウィンドウ内
      を枠に反射しながら動くモノを作れ
【 形態 】すいません。わかりません。
【 GUI  】2. Swing
【 期限 】今日の24時
【 Ver  】すいません。わかりません。
【 用語 】すいません。わかりません。
【 補足 】

自分なりに頑張ったのですが、肝心のボールが表示されません。
html上以外で動かすのが初めてなので、フレームのところなどがかなり怪しいです。
よろしくおねがいします。

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

171:デフォルトの名無しさん
08/06/16 21:58:10
すいません、170ですができました

172:デフォルトの名無しさん
08/06/16 22:44:05
>>169
そのまんまです

クラス名変なんでしょうか?
enumを使ったものだから〜、って意味だと思ってたんですが

173:デフォルトの名無しさん
08/06/16 23:17:01
>>170
MainPanelのstart()を呼んでいないように見えるよ。
(どのタイミングがいいかは不明)

174:ume
08/06/16 23:34:47
>>168 286.java 月が、月の日数とか?>>169

175:デフォルトの名無しさん
08/06/17 11:16:27
>>152
どなたかお願い致します…

176:デフォルトの名無しさん
08/06/17 17:28:45
URLリンク(rg550.hp.infoseek.co.jp)
適当です。
MEMBER_COUNTで項数を変更、PROBLEM_COUNTで問題数変更です。
逆ポーランドの実装まで書きたくなかったので、かなり邪道にいきました。

177:デフォルトの名無しさん
08/06/17 17:29:06
しまったー。>>152の課題です。

178:デフォルトの名無しさん
08/06/17 18:47:01
>>176 289.java だよ、と。これは、135 lineあたりの表示がミリ秒なので秒にした。横槍です。
sb.append(String.format("第%d問 : %s (%.1f 秒)\n"
,i+1,r.correct? "正解":"不正解",r.time/1000f));
// sb.append(String.format("第%d問 : %s (%d ms)\n"
// ,i+1,r.correct? "正解":"不正解",r.time));
---
sb.append(String.format("経過時間 %.1f 秒", time/1000f));
// sb.append(String.format("経過時間 %dms", time));

179:152
08/06/17 21:00:34
ご回答ありがとうございます。
頂いたプログラムをそのままコンパイルしてみたのですが、以下のようなエラーが出てしまい、
上手くいきませんでした。

289.java:23: クラス CalcGame は public であり、ファイル CalcGame.java で宣言
しなければなりません。
public class CalcGame extends JApplet{
^
エラー 1 個

Appletをよく理解できておりませんので、私の方のエラーかもしれませんが、
これは本プログラムとは別にCalcGame.java を準備しなさい。ということでしょうか?

180:>>176
08/06/17 21:07:33
>>178
ご指摘ありがとうございます。
>>179
ファイル名を変えてないのではないでしょうか?
CalcGame.javaに変更してください。
それでコンパイルしたあとで、HTML用意するなり、CalcGame.java内にコメントで書いてappletviewerで実行するなりしてください。

181:152
08/06/17 21:19:48
>>180
実行できました!
度々のご回答本当にありがとうございました。

182:デフォルトの名無しさん
08/06/18 08:33:28
【 課題 】y=x^3-2x^2+3x+1=0をニュートンラフソン法で解を求めよ
【 形態 】Javaアプリケーション(main()で開始)
【 期限 】今日の0時まで
【 Ver 】1.5.0
【 補足 】丸投げです、よろしくお願いします。

183:デフォルトの名無しさん
08/06/18 13:47:00
>>182
URLリンク(sourcepost.sytes.net)

184:デフォルトの名無しさん
08/06/18 14:53:32
183の収束条件は近似解そのものの差分を指標にしているから
他の関数を試すなら解の大きさに合わせてeも変えないといけない
面倒なら解が0に近づく場合を気をつけながら比率を指標にしてもいいかも

185:デフォルトの名無しさん
08/06/18 15:49:06
【 課題 】(1)textモードで作成されている入力ファイルがある。これに対する英単語の出現リスト表を作り、結果を印字せよ。
印字形式は2段組とする。\コードで始まるLaTeXコードは処理の対象外とする。
印刷形式:
title
word_1 頻度数xx98 wrod_n 頻度数xx46
word_2 頻度数xx97 word_o 頻度数xx45
word_3 頻度数xx96 word_p 頻度数xx44
word_4 頻度数xx95 word_q 頻度数xx43
   ・              ・
   ・              ・
 word_m 頻度数xx47 word_z 頻度数xx01
(2)処理時間測定ができるようにせよ。
注意
1.問題のファイルは、デバッグでは使用できない。
2.処理の条件は以下のとおり:
 あ.複数系、単数形や過去形、過去分詞、現在形などは、異なる用語として集計する。
 い.文頭による大文字表示された文字は、小文字表示に直して処理すること。
 う.\ミ田で始まる語はLaTex用の暗号として無視してよい。
 え.数字だけの語は集計しない。
【 形態 】1. Javaアプリケーション(main()で開始)Eclipseを用いています。
【 期限 】6月24日
【 Ver  】3.2.2
○投げですが、よろしくお願いします。

186:デフォルトの名無しさん
08/06/18 15:56:55
185です。
訂正部分があったので、修正します。スレ汚して申し訳ありません。
【 課題 】(1)textモードで作成されている入力ファイルがある。これに対する英単語の出現リスト表を作り、結果を印字せよ。
印字形式は2段組とする。\コードで始まるLaTeXコードは処理の対象外とする。
印刷形式:
title
word_1 頻度数xx98 wrod_n 頻度数xx46
word_2 頻度数xx97 word_o 頻度数xx45
word_3 頻度数xx96 word_p 頻度数xx44
word_4 頻度数xx95 word_q 頻度数xx43
   ・              ・
   ・              ・
word_m 頻度数xx47 word_z 頻度数xx01
(2)処理時間測定ができるようにせよ。
注意
1.問題のファイルは、デバッグでは使用できない。
2.処理の条件は以下のとおり:
 あ.複数系、単数形や過去形、過去分詞、現在形などは、異なる用語として集計する。
 い.文頭による大文字表示された文字は、小文字表示に直して処理すること。
 う.\コードで始まる語はLaTex用の暗号として無視してよい。
 え.数字だけの語は集計しない。
 お.カッコ内の単語も集計する。なお、カッコは含まない。
【 形態 】1. Javaアプリケーション(main()で開始)Eclipseを用いています。
【 期限 】6月24日
【 Ver  】3.2.2
【 補足 】処理時間はなるべく短くしてください。
よろしくお願いします。

187:デフォルトの名無しさん
08/06/18 16:11:28
185です。たびたび申し訳ありません。
【 補足 】読み込むテキストファイルはこちらになります。
URLリンク(rg550.hp.infoseek.co.jp)


188:>>176
08/06/18 16:45:30
なんか条件多いけど、用は英単語の出現回数をリスト化すればいいんだよね?
URLリンク(rg550.hp.infoseek.co.jp)
これでだめ?

189:デフォルトの名無しさん
08/06/18 16:57:24
以下のものがコンパイルできないのですがどこがおかしいのか指摘してもらえないでしょうか

import java.io.*;


class IDname {
public static void main (String args[]) throws IOException{
int ID[] = {23,45,78,51,9};
String name[] = {"荒川","神田","吉田","渡辺","木村"};
int Key,index;

BufferedReader br=new BufferedReader(new
InputStreamReader(System.in));
System.out.println("IDを入力してください");
for (index=0; index<ID.length; index++) {
if(ID[index] == Key) break;
}
if(index<ID.length){
System.out.println("IDが"+Key+"の人は"+name[index]+"さんです");
}
else{
System.out.println("IDが"+Key+"の人はいませんでした");
}
}
}


190:デフォルトの名無しさん
08/06/18 17:03:02
>>188
ありがとうございます。
これでおkです。
大変助かりました。

191:187
08/06/18 17:06:39
>>188
すみません。
ちょっと仕様追加いたします。
申し訳ありません。

使用頻度で高い順から並び替えます。

印刷形式は、2段にします。
印刷形式:

title
word_1 頻度数xx98  wrod_n 頻度数xx46
word_2 頻度数xx97  word_o 頻度数xx45
word_3 頻度数xx96  word_p 頻度数xx44
word_4 頻度数xx95  word_q 頻度数xx43
   ・              ・
   ・              ・
word_m 頻度数xx47  word_z 頻度数xx01

このようになります。

192:デフォルトの名無しさん
08/06/18 17:08:51
出力してませんでした。
URLリンク(rg550.hp.infoseek.co.jp)
たぶん出力用に真っ二つにするのが簡単でいいかと・・

>>189
Keyが初期化されてません。
そしてスレが違います。

193:デフォルトの名無しさん
08/06/18 17:11:38
>>192
すみません
ID[ ]をint型の、name[ ]をString型の配列として、キーボードで入力したIDの値から名前を検索するプログラムを作れ。
という宿題だったんでここで聞いてしまいました
やっぱりうまくいきません・・・

194:187
08/06/18 17:12:44
データとして保存しておくのは、辞書形式の並び順に、
表示するときだけ並び替えて、頻度が高い順にお願いします。

たびたびのスレ汚し、申し訳ありません。

195:デフォルトの名無しさん
08/06/18 17:17:54
>>193
宿題としてここで解いてもらいたいなら>>1のテンプレに従ってください
単なる質問なら別に質問スレがあります

196:デフォルトの名無しさん
08/06/18 17:25:39
【 課題 】学生のIDと名前の組のデータを下記のように2つの配列で与える。
ID[ ]をint型の、name[ ]をString型の配列として、キーボードで入力したIDの値から名前を検索するプログラムを作れ。
【 形態 】1. Javaアプリケーション(main()で開始)
【 期限 】明日の14時
【 Ver  】1.5.0
【 補足 】途中まではできました、修正をお願いします
import java.io.*;
class IDname {
public static void main (String args[]) throws IOException{
int ID[] = {23,45,78,51,9};
String name[] = {"荒川","神田","吉田","渡辺","木村"};

int Key,index;
BufferedReader br=new BufferedReader(new
InputStreamReader(System.in));
System.out.println("IDを入力してください");

for (index=0; index<ID.length; index++) {
if(ID[index]==Key) break;
}
if(index<ID.length){
System.out.println("IDが"+Key+"の人は"+name[index]+"さんです");
}
else{
System.out.println("IDが"+Key+"の人はいませんでした");
}
}
}

197:デフォルトの名無しさん
08/06/18 17:29:57
>>194
申し訳ない!こんな感じでいっかってノリで軽くやってしまった。
URLリンク(rg550.hp.infoseek.co.jp)
もっと責任もってやるようにするわ・・

198:デフォルトの名無しさん
08/06/18 17:30:33
>>184 24lineあたりの、この変更を御指摘のよう。
  } while (Math.abs(x2 / x1 - 1) > e);
// } while (Math.abs(x2 - x1) > e);


199:デフォルトの名無しさん
08/06/18 17:30:49
>>196
>>192がせっかく正解を言ってくれてるのに無視するとは…
System.out.println("IDを入力してください");
のうしろに
Key = Integer.parseInt(br.readLine());
を入れる

200:デフォルトの名無しさん
08/06/18 17:33:19
>>199
すみません理解しきれていませんでした・・・・
ありがとうございました

201:デフォルトの名無しさん
08/06/18 17:41:57
【 課題 】プロ野球セ.リーグの現在の勝敗表を2次元配列の初期値として与えよ。
コマンドライン引数から2つのチームの順位を入力し、その2チ-ム間のゲーム差を表示させよ。(両チームの貯金(勝ち数−負け数)の差÷2

【 形態 】Javaアプリケーション(main()で開始)
【 期限 】6/20(金)
【 Ver  】1.5.0
【 補足 】実際のゲーム差は、例えば以下のサイトで確認:
URLリンク(www.sanspo.com)
とのことでした、暇がなくて丸投げですみません、お願いします

202:187
08/06/18 17:47:15
>>192
2段目表示なりました。
こちらのほうで、ちょっと手を加えさせていただきました。

あと、高頻度順に並び替えるのですが、

データとして辞書形式の並び順に保存させて、
表示するときだけ高頻度順に並び替える仕様です。


203:デフォルトの名無しさん
08/06/18 17:51:15
>>202
>>197に張りました。

204:187
08/06/18 17:59:36
>>203
ありがとうございます!気づきませんでした・・・。
試してみたのですが・・・。
オーバーライドしてないとeclipseに起こられます・・・・。

205:デフォルトの名無しさん
08/06/18 18:02:09
>>204
一旦@Overrideけして、そのあと気になるなら追加してみて。
verの違いかよくわからんけど、別のeclipseで開くとなるんだよなー

206:デフォルトの名無しさん
08/06/18 18:11:03
>>205
ありがとうございます!!
大変助かりました!!

207:デフォルトの名無しさん
08/06/18 18:19:48
>>201
public class GameResult {
public static void main(String[] args) {
// {{一位の勝ち数,負け数}, ... ,{六位の勝ち数,負け数}}
int[][] winlose = {{34, 17}, {28, 22}, {23, 25}, {25, 28}, {22, 28}, {15, 35}};
if (args.length == 2) {
try {
int teamA = Integer.parseInt(args[0]);
int teamB = Integer.parseInt(args[1]);
if (teamA < 1 || teamA > 6 || teamB < 1 || teamB > 6) throw new NumberFormatException();
if (teamA > teamB) { int tmp = teamA; teamA = teamB; teamB = tmp; }
System.out.println(teamA + "位と" + teamB + "位のゲーム差は" +
((winlose[teamA-1][0] - winlose[teamA-1][1]) - (winlose[teamB-1][0] - winlose[teamB-1][1])) / 2.);
} catch (NumberFormatException e) {
System.err.println("1から6までの整数を指定してください");
return;
}
} else {
System.err.println("usage: java GameResult 順位 順位");
}
}
}

208:デフォルトの名無しさん
08/06/18 22:13:18
>>207
間に合いました、大変ありがとうございました!

209:デフォルトの名無しさん
08/06/18 22:43:28
>>185
mixiの課題丸投げは消したの?

210:デフォルトの名無しさん
08/06/19 11:40:53
【 課題 】
2次元配列を用いて、模様を作成してみよ。□や■は文字(char型)
■□ ■□ ■□ ■□ ■□
□■ □■ □■ □■ □■
■□ ■□ ■□ ■□ ■□
□■ □■ □■ □■ □■
■□ ■□ ■□ ■□ ■□
□■ □■ □■ □■ □■
■□ ■□ ■□ ■□ ■□
□■ □■ □■ □■ □■
【 形態 】Javaアプリケーション(main()で開始)
【 期限 】6月25日
【 Ver  】1.5.0
【 補足 】コマンドライン引数から入力した行数分だけ表示させよ(列は図のとおり固定)
      どうにも珍妙な宿題ですがお願いします・・・

211:デフォルトの名無しさん
08/06/19 12:01:52
ほんとに珍妙だ。
二次元配列なんて使う必要性が見当たらない。

212:デフォルトの名無しさん
08/06/19 12:26:29
2次元配列をつかう課題なら全く珍妙じゃないし、
後々画像変換(写像)への基礎演習にもなるじゃん

213:デフォルトの名無しさん
08/06/19 12:57:39
>>210
public class Cloth {
public static void main(String[] args) {
char[][] c = new char[Integer.parseInt(args[0])][14];
for (int i = 0; i < c.length; i++) {
for (int j = 0; j < c[i].length; j++) {
switch (j % 3) {
case 0: c[i][j] = i % 2 == 0 ? '■' : '□'; break;
case 1: c[i][j] = i % 2 == 0 ? '□' : '■'; break;
case 2: c[i][j] = ' '; break;
}
}
}
for (int i = 0; i < c.length; i++) {
for (int j = 0; j < c[i].length; j++) {
System.out.print(c[i][j]);
}
System.out.println();
}
}
}

214:デフォルトの名無しさん
08/06/19 17:34:44
ちょっと手を加えさせていただきます。市松模様。>>213 オス
char[][] c = new char[Integer.parseInt(args[0])][15];
---
case 1: c[i][j] = i % 2 == 0 ? '■' : '□'; break;
case 2: c[i][j] = i % 2 == 0 ? '□' : '■'; break;
case 0: c[i][j] = ' '; break;


215:デフォルトの名無しさん
08/06/19 17:53:03
>>214
うちのビューワだと行頭のスペースは見えなくて行末に1個のスペースが見えるな
そしてread.cgiが吐くhtmlでは行頭に1個、行末に1個か2個のスペースが入ってる
正確な模様の仕様は言葉で説明してもらうかファイルにしてうpしてもらうべきか

216:デフォルトの名無しさん
08/06/19 18:31:02
>>210
final char[][] pattern = {{'■', '□'}, {'□', '■'}};
...
... pattern[i % pattern.length][j % pattern[i].length] ...
こういうのじゃダメなの

217:デフォルトの名無しさん
08/06/19 18:34:29
細かいw
俺はぱっとみて単に白黒の四角を並べればいいだけだと思った。
>>213ですきまにも意味があると解釈すべきだったのかと感心したくらいだ。

218:デフォルトの名無しさん
08/06/19 18:36:29
■□ ■□ ■□ ■□ ■□
□■ □■ □■ □■ □■
ここまで文字列で作って、交互にprintlnするとか

219:214
08/06/19 19:05:26
>>215 多分設問の模様は、これではないだろうか? 進行上私はソースを略す。
.□.■□.■□.■□.■□.■
□■.□■.□■.□■.□■.□
.□.■□.■□.■□.■□.■
□■.□■.□■.□■.□■.□
.□.■□.■□.■□.■□.■
□■.□■.□■.□■.□■.□

220:210
08/06/19 19:32:44
えっと、ありがとうございます皆さん。すいませんなんか混乱させてるようでorz
聞いてきましたところ、スペースは無視してもいいとのことでした

221:210
08/06/19 19:47:32
でもキレイですので>>213>>214さんのを組み合わせて見ようと思います。
連投すいません、ありがとうございました

222:デフォルトの名無しさん
08/06/20 00:04:07
swingを使ってボタンをつくりましたそのボタンを押したとき新しいフレームを作ることができたのですが、
そのボタンのあるフレームを閉じるメッソッドわかりません、教えてください。
ボタンが押されたことは認識できるようになっています。

223:デフォルトの名無しさん
08/06/20 03:28:35
>>222
質問は質問スレへどうぞ

224:214
08/06/20 17:00:19
.■□.■□.■□.■□.■□ int lines = Integer.parseInt(args[0]);
□■.□■.□■.□■.□■. int width = 15;
.■□.■□.■□.■□.■□ char[][] a = new char[][] {{' ' ,'■','□'},
□■.□■.□■.□■.□■. {'□','■',' ' }};
.■□.■□.■□.■□.■□ for (int i = 0; i < lines; i++ ) {
□■.□■.□■.□■.□■. for (int j = 0; j < width; j++)
.■□.■□.■□.■□.■□ System.out.print(a[i&1][j%3]);
□■.□■.□■.□■.□■. System.out.println();
.■□.■□.■□.■□.■□ }

225:デフォルトの名無しさん
08/06/21 06:46:09
【 課題 】
複数の図形を表示するプログラムを作成せよ。
尚、複数のボタンを配置し、ボタンによってそれぞれ異なる図形を表示すること。
また、パネルの左上に製作年月日を表示すること。

【 形態 】1. Javaアプリケーション(main()で開始)
【 GUI  】1. AWTのみ
【 期限 】6月30日
【 Ver  】1.6.0

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

226:デフォルトの名無しさん
08/06/21 19:40:26
>>225
URLリンク(rg550.hp.infoseek.co.jp)
あとは適当に追加してください。

227:デフォルトの名無しさん
08/06/21 22:59:05
配列aと同じ長さの配列bを生成する.
配列aの要素を逆順にして配列bに格納する.
配列bの要素を先頭から順に表示する.
という問題なのですが、

public class Exam1_1 {
public static void main(String[] args) {
int[] a = { 1, 2, 3, 4, 5, 6, 7 };
int[] b;
b = new int[a.length];

for(int i=0;i < a.length;i++) {

for(int j=a.length - 1;j >=0;j--) {

b[i] = a[j];

System.out.println("b[" + i + "]: " + b[i]);
}
}
}
}

という結果をb[0]=7,b[1]=6,b[2]=5,b[3]=4,b[2]=3,b[1]=2,b[0]=1と
したいのですが、どのように変更すればよいのでしょうか?


228:デフォルトの名無しさん
08/06/21 23:33:28
気持ちは分からんでもないけど、ループの中にループがあるってことをよく考えてごらん。

for(int i=0;i < a.length;i++) {
 b[i] = a[a.length - j - 1];
}
またはjを使って簡潔に書くなら
for(int i=0,j=a.length-1;i < a.length;i++,j--) {
 b[i] = a[j];
}
こうなるだろうね。

それと、テンプレは守ろうね。

229:デフォルトの名無しさん
08/06/22 00:59:56
この課題は、テンプレが必要ないと思われるので省略しました。
(指定されていません)
何かご不明な点がありましたら、言って下さい。
月曜日に提出したいので、日曜(明日)の夜23:00までにお願いします。

問題
Javaにおいて、ある参照型変数x,y(ただし、String型は除く)を考える。
このxに、yを代入する場合、一般的には次の2通りの方法がある。
1.x=y
2.x=y.clone();
ここで、1は参照値を渡す等と呼ばれ、実際にコピーが行われる事はない。
2は実際にコピーを行う。
(ただし、多くの学生が誤解していたが、これは
ディープコピーではなく、シャローコピーである。)

問T なぜシャローコピーを行うのか、ディープコピーで問題が発生する
   ような例をあげて説明せよ

問U String型において、clone()メソッドは必要ないものとされ、オーバー
   ライドされていない。なぜ、必要ないのか。簡潔に理由を述べよ。

230:225
08/06/22 06:35:30
>>226

ありがとうございました

231:デフォルトの名無しさん
08/06/22 08:36:34
>>229
T パフォーマンスを向上させるため。
ディープコピーの場合、for文で大量にインスタンスを作ったりすると、
OutOfMemoryエラーになったりするかもしれない。
しかし、ディープコピーのほうがコーディングや保守が容易であるので、
一概にどちらが良いとは言えない。
シャローコピーは、内部で保持しているものが共有されるので、
ディープコピーよりも問題視されることが多い。

そもそも問題のx=y.clone();だけではシャローコピーかディープコピーか分からない。

U String型はimmutableなクラスであるから。
Finalクラスとか、不変オブジェクトとも呼ばれる。

232:デフォルトの名無しさん
08/06/22 09:48:48
テンプレを埋めることもできない馬鹿は市ね

233:デフォルトの名無しさん
08/06/22 13:37:44
なあ、動画を再生するPlayerのサイズを変更するときにはどうしたらいんだ?

234:デフォルトの名無しさん
08/06/22 15:44:17
>>233
エスパー回答者希望で、尚且つスレ違いですね わかります

235:デフォルトの名無しさん
08/06/22 17:47:39
【 課題 】じゃんけんプログラムの拡張
       URLリンク(rg550.hp.infoseek.co.jp)
zipの中にある課題説明のところにもファイルのURLがありますが
       無視してください<(_ _)>
【 形態 】1. Javaアプリケーション(main()で開始) Eclipseを使用しています
【 期限 】明日 6月23日の朝6時(期限が短くてすみません;)
【 Ver  】1.5.0
【 補足 】期限が短いですがよろしくお願いします。

236:デフォルトの名無しさん
08/06/22 20:17:21
>>235
とりあえず元のソースコードに書き加える形でやった
Eclipseは使ってないし1.6.0でコンパイルしてるけどたぶん大丈夫かと
ダメなら言って
URLリンク(rg550.hp.infoseek.co.jp)

237:デフォルトの名無しさん
08/06/22 20:44:14
>>236
今動作確認してみたところ正常に動作しました。
お早い回答に感謝しています<(_ _)>
ありがとうございました!

238:デフォルトの名無しさん
08/06/22 22:45:27
【 課題 】次のプログラムの致命的な問題点は?
import java.io.*;
public class FileArrayReader {
public static void main(String[] args) {
String filename = args[0];
String msg[];
try {
FileInputStream fis = new FileInputStream(filename);
InputStreamReader isr = new InputStreamReader(fis);
BufferedReader br = new BufferedReader(isr);

String tmp[] = new String[100];
int num = 0;
while((tmp[num] = br.readLine())!=null) {
num++;
}
msg = new String[num];
for(int i = 0;i <num;i++) {
msg[i] = tmp[i];
System.out.println(msg[i]);
}
br.close();
isr.close();
fis.close();
} catch(Exception e) {
e.printStackTrace(); 
} }   }

【 形態 】1. Javaアプリケーション(main()で開始
【 GUI  】4. 制限なし/
【 期限 】月曜日
【 補足 】文字列の配列変数tmpを用意し、使用しているところがヒントらしいのですが

239:デフォルトの名無しさん
08/06/22 23:01:23
>>238
 while(num<100 && (tmp[num] = br.readLine())!=null) {
// while((tmp[num] = br.readLine())!=null) {


240:dango
08/06/23 00:29:56
【課題提示用テンプレ】
【 課題 】縦スクロールのシューティングです
【 形態 】 4. 携帯(Doja5.1)
【 GUI  】わからないです
【 期限 】23時までにお願いします。
【 Ver  】java.lang.ArrayIndexOutOfBoundsException
at pac.KeyCanvas.paint(+1013)
at com.nttdocomo.ui.Display$1.run(+186)
pac.KeyCanvas
【 用語 】とくにないです
【 補足 】アップローダの299にUPしてます。実行するとすぐ落ちます。キー操作がうまくいってないみたいなので、キー操作のところの関数を書いたクラスのソースを載せてます。
      よろしくお願いします。


241:デフォルトの名無しさん
08/06/23 10:23:07
Versionにエラー貼るなよw
いつの23時だよw
ローダーって、どこのだよwリンク付けろw

ちゃんとしたレスほしければテンプレぐらいまともに書けw

242:デフォルトの名無しさん
08/06/23 11:44:58
>Versionにエラー貼るなよw
URLリンク(rg550.hp.infoseek.co.jp)

243:デフォルトの名無しさん
08/06/23 12:26:53
>>241
うpろだについてツッコミいれる前に>>1くらい嫁
>>1に示された場所以外で推測できない時にこそ文句言えばいい

>>240
paintメソッド中で配列を使用しているところを洗い出して
インデックスが全部正常な範囲に収まっているかチェックしろ
ArrayIndexOutOfBoundsExceptionの後に範囲外のインデックスの値も表示されなかった?
もし表示されていたのならそれも場所を特定する手がかりになる
とてもじゃないが触りたくないソースだからきちんと見てないが
ローカル変数で十分そうなループのカウンタ変数をフィールドにするとかバグ誘発率高そうだ

244:デフォルトの名無しさん
08/06/23 14:37:00
>>243
をいをい、>>1は参考としてロダのurlを出してるだけだろw
課題が長い場合にロダ使うのは良いが、そのurlを提示するのが当たり前
なんで推測しなきゃなんねーんだよ、さすがゆとり思考だなw


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

5383日前に更新/381 KB
担当:undef