★★ Java の宿題ここで答えます Part 65 ★★at TECH
★★ Java の宿題ここで答えます Part 65 ★★ - 暇つぶし2ch359:デフォルトの名無しさん
08/07/03 01:12:11
【 課題 】
URLリンク(rg550.hp.infoseek.co.jp)
上記のソースの簡易webブラウザに
"戻る" というボタンを付け,ホームページの閲覧履歴を遡れるように実装する。

【 形態 】Applet
【 GUI  】制限なし
【 期限 】本日 7/3 20:00まで
【 Ver  】1.6.0
【 用語 】数学用語、専門用語の意味、説明を書きます。 《あれば必須》
【 補足 】丸投げです。よろしくお願いします。

360:デフォルトの名無しさん
08/07/03 01:17:04
>>358
(iii)の関連部分を削ってみた。
URLリンク(rg550.hp.infoseek.co.jp)

ただ、(i)の出来上がりとしては、毎回、前の図を消去しないといけないと思う。

361:デフォルトの名無しさん
08/07/03 01:37:42
>>360
横からでしたありがとうございます
(i)は補足がありそれでできましたので大丈夫です

362:デフォルトの名無しさん
08/07/03 07:10:31
>>355
sleepを使えば、こう。
int countdown = 20;
while(0<=countdown){
System.out.println(countdown--);
try{
Thread.sleep(1000);
}catch(Exception ex){
ex.printStackTrace();
}
}

363:デフォルトの名無しさん
08/07/03 08:05:35
それきもい。

364:デフォルトの名無しさん
08/07/03 08:17:53
【課題】クラスA、B、C、Dがある。クラスAはBを継承し、クラスCはBを継承し、クラスDはクラスCを継承する。

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

365:デフォルトの名無しさん
08/07/03 08:25:14
【課題】クラスA、B、C、Dがある。クラスAはBを継承し、クラスCはBを継承し、クラスDはクラスCを継承する。
クラスBにはint型の変数bが定義されており、コンストラクタB(int B)も定義されているとする。クラスA、C、Dは
すべて親のクラスを継承し、自分のクラスの中に独立した変数の定義はないものとする。すべてのクラスとコンストラクタを定義せよ。
mainを含むクラスはTestInheritanceとしクラスDの変数yをコンストラクタD(13)で生成し、y.bを印字せよ。
【形態】1. Javaアプリケーション(main()で開始)
【Ver】1.5.0
class B {
int b;
B(int b){
this.b=b;
}
}
class A extends B {
A(int b){
}
}
class C extends B {
C(int b){
}
}
class D extends C {
D(int b){
}
}
class TestInheritance {
public static void main (String args[]){
D y = new D(13);
System.out.println("y.b = " + y.b);
}
}
ここまで書いてみたのですがうまくいきません。どこか違うのでしょうか?よろしくお願いします

366:355
08/07/03 08:26:35
>>362
ありがとうございます。
先ほど実行したのですが、
カウントダウンはできているのですがアプレット(MainLoop?)の中で実行できませんでした。
説明不足ですみません。
一回スレッドを使ってやろうとしたのですがうまくいかなかったので
Dateクラスを使って作ってみたのですがよくわかりません。
どなたか良い方法あればよろしくお願いします

367:デフォルトの名無しさん
08/07/03 08:39:01
>>366
>>355では「Javaアプリケーション」と書いてるけど・・・

いずれにせよ、init()に書き込めば、コンソールに表示されるのでは?

368:デフォルトの名無しさん
08/07/03 08:58:32
>>365
super(b)とか書けってことでは?

369:365
08/07/03 09:05:59
>>368
どのように書けばいいのでしょうか??

370:365
08/07/03 09:24:22
自己解決しました
どうもお騒がせしてすみませんありがとうございました

371:デフォルトの名無しさん
08/07/03 14:10:40
どなたか>>359をお願いします。

372:デフォルトの名無しさん
08/07/03 17:07:28
URLリンク(rg550.hp.infoseek.co.jp)
【 課題 】画像を読み込み、読み込んだ画像をグレースケール化した後名前をつけて保存する。
【 形態 】1. Javaアプリケーション(main()で開始
【 期限 】7月4日
【 Ver  】1.6.0 Eclipse仕様
【 補足 】
1.実行すると無限にでるウィンドウの処理を直したい。
displayPanel = new MousePaint();
をコメント文にすると無限にでなくなるのだが、その原因がわからない。

2.マウスリスナーのアクションを無くしてメニューからOpenでファイルを読み込み
ウィンドウにすぐ画像を表示させたい。

3.読み込んだ画像をグレースケール化したい。←初心者のためここが一番わからない^^;

373:デフォルトの名無しさん
08/07/03 17:32:47
>>372
1.→コンストラクタの中で無条件に同じコンストラクタを呼び出しているのだから、無限に呼び出されて当然。


374:372
08/07/03 17:41:38
>>373
どうすれば呼び出されないようにすればいいでしょうか?

375:デフォルトの名無しさん
08/07/03 18:22:08
【課題】
アルゴリズムの作成

(x,y,z,w)に代入されている数字が(1.2.4.8)→(1,2,8,4)→(1,4,2,8)→(1,4,8,2)→(1,8,2,4)→・・→(8,4,2,1)
と4!通りのパターンが順番に代入されていく様子をprintlnで表示するコードを作成すること

【形態】 Javaアプリケーション(main()で開始)
【Ver】 1.6.0
【補足】 代入アルゴリズム部分だけでも大丈夫です よろしくお願いします。

376:デフォルトの名無しさん
08/07/03 19:08:26
【課題】平面に5つの座標を考える。5つの座標(x,y)を二次元配列に入力し、すべての座標間の距離を計算せよ。
【形態】Javaアプリケーション(main()で開始)
【期限】7月4日
【ver】1.6.0
【補足】わからないのでおねがいします

377:デフォルトの名無しさん
08/07/03 19:18:38
>>374
1.displayPanel自体いらないので削除してみた。
2.主旨が分からなかったのでパス。
3.中に入っていたロジックをペーストして、ちょちょっと。

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

378:デフォルトの名無しさん
08/07/03 20:11:34
>>375
public static void main(String[] args) {
int[] alphabet = {1,2,4,8};
int[] lngTemp = new int[0];
hoge(alphabet,lngTemp);

}
public static void hoge(int[] candi,int[] patt){
if(candi.length==0){
for(int i=0;i<patt.length;i++)System.out.print(patt[i]);
System.out.println();
}else{
for(int i = 0;i<candi.length;i++){
int[] c = new int[candi.length-1];
int index = 0;
for(int j = 0;j<candi.length;j++){
if(j!=i)c[index++]=candi[j];
}
int[] p = new int[patt.length+1];
for(int j = 0;j<patt.length;j++){
p[j]=patt[j];
}
p[patt.length]=candi[i];
hoge(c,p);
}
}
}


379:デフォルトの名無しさん
08/07/03 20:13:12
>>376
二次元配列という注文が、理解しがたい。

380:デフォルトの名無しさん
08/07/03 21:10:05
>>376
とりあえずint[5][2]と判断
public static void main(String[] args) {
int[][] point = new int[5][2];
for (int i = 0; i < 5; i++) {
for (int j = 0; j < 2; j++) {
point[i][j] = (int) (Math.random() * 10);
}
}
for (int i = 0; i < point.length; i++) {
System.out.println(i + 1 + ":("+point[i][0] + "," + point[i][1]+")");
}
System.out.println();
for (int i = 0; i < point.length - 1; i++) {
for (int j = i + 1; j < point.length; j++) {
System.out.print((i+1) + "-" + (j+1) + ":");
System.out.println(distance(point[i], point[j]));
}
}
}
static double distance(int[] point1, int[] point2) {
return Math.sqrt(Math.pow((point2[0] - point1[0]),2.0) + Math.pow((point2[1] - point1[1]),2.0));
}

381:355
08/07/03 21:13:51
>>367
お返事遅くなって申し訳ありません
違う方法ですが無事解決できました。ありがとうございました。

382:372
08/07/03 22:55:12
>>377
ありがとうございます。
これを参考に自分なりにアレンジして作ってみたいと思います。

383:デフォルトの名無しさん
08/07/04 10:54:17
htmlのフォームのボタンを押す動作などをJavaで実現したいのですが、
何かそういったことのためのクラス・メソッドは無いでしょうか?
HttpURLConnectionでUserAgent入れてソース落とすのはできるのですが、
そこから先のFormの処理がわかりません・・・。

よろしくお願いします。

384:デフォルトの名無しさん
08/07/04 11:02:20
フォームについて少し勉強するといいよ

385:デフォルトの名無しさん
08/07/04 12:46:16
>>383
全然言葉が足りないが、ダウンロードした HTML に含まれる form を Java で実行しようとしているのか?
宿題なら >>1 を参照してちょ。
んで、思っているのと違うかも知れんが、
URLリンク(java.sun.com)

386:255
08/07/04 22:35:57
座標A(X1,Y1)~座標B(X2,Y2)までの直線Eと
座標B(X3,Y3)~座標C(X4,Y4)までの直線Fが
交差しているかどうか判定したいです。

どういうコードになりますか?

387:デフォルトの名無しさん
08/07/04 23:06:25
>>386
>>1テンプレを

388:デフォルトの名無しさん
08/07/05 04:54:06
>>386
質問だけならこっち行けばいい

【初心者】Java質問・相談スレッド116【歓迎】
スレリンク(tech板)

389:デフォルトの名無しさん
08/07/05 23:09:27
【 課題 】配列を用いて点数57,78,91,61,42,77点の合計点と平均点、60点以上の人数と
      平均点以下の人数を求めるプログラムを作成せよ。
【 形態 】1. Javaアプリケーション
【 期限 】7/9
【 補足 】学校で配列の所を勉強した時に課題としてでました。丸投げですが宜しくお願いします。




390:デフォルトの名無しさん
08/07/05 23:30:39
>>389
public class Test{
public static void main(String[] args){
int[] score = {57,78,91,61,42,77};
int sum, avr, u60, lavr;

sum = 0;
for(int i = 0; i < score.length; i++){
sum += score[i];
}
avr = sum / score.length;

u60 = 0;
lavr = 0;
for(int i = 0; i < score.length; i++){
if(score[i] >= 60)
u60++;
if(score[i] <= avr)
lavr++;
}

System.out.println("合計点:" + sum);
System.out.println("平均点:" + avr);
System.out.println("60点以上:" + u60);
System.out.println("平均以下:" + lavr);
}
}


391:デフォルトの名無しさん
08/07/06 13:14:18
【 課題 】
四桁の数字をコンソール上でキーボードから入力し、それを出力せよ。
同時に、その数字が素数であるかどうかを判定し、その判定結果を出力せよ。
さらに、その数字より小さい自然数で最大の素数を求め、出力するようにせよ。
上記の内容を実行するプログラムをJAVAで作成せよ。
ただし、以下のポイントを考慮すること。
ポイント:素数でない場合は、判定結果と合わせて、その最大の約数(1とその数自身を除く)も出力する。

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

【 期限 】7/8

【 補足 】丸投げです。よろしくお願いします。

392:389
08/07/06 14:37:34
>>390
すぐに回答して頂きありがとうございました。
ホント助かりましたm(__)m

393:デフォルトの名無しさん
08/07/06 15:21:59
>>391
public class ThePrime {
public static void main(String[] args) throws IOException {
System.out.println("4桁の整数を入力:");
Scanner sc = new Scanner(System.in);
int value = sc.nextInt();
if(isPrime(value)) {
System.out.println(value+"は素数");
} else {
System.out.println(value+"は素数ではない");
System.out.println("最大の約数:"+getMaxDivisor(value));
}
for(int lastPrime=value-1; lastPrime>=3; lastPrime--) {
if(isPrime(lastPrime)) {
System.out.println(value+"より小さい素数:"+lastPrime);
break;
}}}
private static boolean isPrime(int value) {
if((value%2) == 0) return false;
for(int i=3; i<value/2; i+=2) if((value%i) == 0) return false;
return true;
}
private static int getMaxDivisor(int value) {
if((value%2) == 0) return value / 2;
int divisor = value;
for(int i=3; i<value; i+=2) if((value%i) == 0) divisor = i;
return divisor;
}}
//エラー無視 & すまん、素数の求め方もあってるか分からんwwwww

394:デフォルトの名無しさん
08/07/06 15:37:44
エラトステネスのふるい涙目ww
まぁ4桁ぐらいなら余裕かw

395:デフォルトの名無しさん
08/07/06 15:59:55
【 課題 】GUI設計に基づき、簡易電卓を設計せよ。ただし以下の条件を満たすように。
      ①0から9のボタン入力式でテキストフィールドに出力する
      ②四則演算は+-×÷のボタン、小数計算は . のボタン、
      結果は=のボタンで行うようにする。
      ③数字のクリアはCで行うように。
【 形態 】1. Javaアプリケーション(main()で開始)
【 GUI  】2.Swing
【 期限 】7/9
【 補足 】このプログラムはNetBeansIDE6.1でGUI設計してからプログラム
      を書いていくという手順でやっています。
      あと0から9のボタンや+-×÷のボタンが押された時の
      ActionPerformedはそれぞれ個別にで定義するのではなく
      まとめて定義したいんですが、上手くいかないんです。
      そこら辺の定義の仕方も詳しくして頂けるとありがたいです。

396:デフォルトの名無しさん
08/07/06 16:37:58
>>395
NetBeans 使ってないので操作方法だったら分からんが、作りかけでもあるなら出したほうがいい。
>ActionPerformedはそれぞれ個別にで定義するのではなくまとめて定義したい
というのが ActionListener をボタン毎に別のインスタンスにするのでは無く
一つのインスタンスでっていうことなら、各ボタンの AddActionListener に
同じ ActionListener インスタンスを渡すだけだ。
でその ActionPerformed 内で ActionEvent#getSource なり getCommand なりで
どのボタンのイベントかを判別して処理分け。

397:デフォルトの名無しさん
08/07/06 17:09:54
>>396
返信ありがとうございます。

package dentaku;

import java.awt.event.*;
import javax.swing.*;

public class dentakuFrame extends javax.swing.JFrame {

public dentakuFrame() {
initComponents();
}

------------------------------------------------------------------------------------------
ここにボタンの位置などの設定がデフォルトで入っている。
------------------------------------------------------------------------------------------

public void appendResult(String c) {
result.setText(result.getText() + c);
}

public class NumberButton extends JButton implements ActionListener {

public NumberButton(String key) {
super(key); //JButtonクラスのコンストラクタを呼び出す
this.addActionListener(this); //このボタンにアクションイベントのリスナを設定
}



398:デフォルトの名無しさん
08/07/06 17:11:58
public void actionPerformed(ActionEvent evt) {
String keyNumber = this.getText(); //ボタンの名前を取り出す
appendResult(keyNumber); //ボタンの名前をテキストフィールドにつなげる
}
}
public static void main(String args[]) {
java.awt.EventQueue.invokeLater(new Runnable() {
public void run() {
new dentakuFrame().setVisible(true);
} }); }
private javax.swing.JButton Button0;
private javax.swing.JButton Button1;
private javax.swing.JButton Button2;
private javax.swing.JButton Button3;
private javax.swing.JButton Button4;
private javax.swing.JButton Button5;
private javax.swing.JButton Button6;
private javax.swing.JButton Button7;
private javax.swing.JButton Button8;
private javax.swing.JButton Button9;
private javax.swing.JButton divButton;
private javax.swing.JButton minusButton;
private javax.swing.JButton mulButton;
private javax.swing.JButton plusButton;
private javax.swing.JButton pointButton;
private javax.swing.JButton resetButton;
private javax.swing.JTextField result;
private javax.swing.JButton resultButton;
}
これが現在の状況です。Actionに反応して値を受け渡したり、
演算子に応じる設定がどうしたらよいのかがわかりません。
よろしくお願いします。

399:デフォルトの名無しさん
08/07/06 17:23:16
補足
0から9のボタンはButton0からButton9に
小数点はpointButtonに
四則演算はplusButton,minusButton,mulButton,divButtonに
クリアはresetButton、=はresultButtonに
数値表示テキストはresultに設定しています。

400:デフォルトの名無しさん
08/07/06 17:25:15
>>397-399
>>1
省略しないで全部ろだ2等にアップ

401:デフォルトの名無しさん
08/07/06 17:47:59
ろだ2の336.javaにupしました。お願いします。

402:デフォルトの名無しさん
08/07/06 18:15:34
NumberButton使ってないね・・

403:デフォルトの名無しさん
08/07/06 19:17:59
NumberButtonと言うことは、数字以外のActionPerformedはまとめなくて良いのだろうか、
それとも、すべてのActionPerformedを一つにしたいのだろうか。

そもそも、ActionPerformedをまとめると言うのは出された課題ではないようだけど・・・

404:デフォルトの名無しさん
08/07/06 19:36:10
>>401
URLリンク(rg550.hp.infoseek.co.jp)
全部一個のリスナ(dentakuFrame)にしてみた。
initComponents も弄ると危なそうなので弄らない方向で。
ときどき例外出ることがあるのはご愛嬌(!)

405:デフォルトの名無しさん
08/07/06 21:22:14
>>404
回答ありがとうございます。複雑なプログラムを提示してしま
って申し訳ないです。実際に動かしてみてまた何かあったら
質問します。本当にありがとうございました。

406:デフォルトの名無しさん
08/07/06 23:07:46
たびたびで恐縮なんですが、>>404 のプログラム中で
actionPerformedの定義の部分が理解できないんですが、
解説して頂けないでしょうか。プログラムの意味を
理解しようとしたんですけど初めてみるメソッドなどが多く
て困っています。
特にpushとpop、Stack、peek()、getPriorityなどの意味と
このプログラムにおける使用の仕方などを詳しく解説して
頂けるとありがたいです。
あとBigDecimalで何を行っているかなどもできればお願いします。

407:404
08/07/07 01:15:27
>>406
StackはスタックというLIFO構造で、pushで入れたモノがpopで取り出せる。
peekは取り出さすことなく最後に入れたモノを得る。
Operator#getPropertyは、掛け算割り算を足し算引き算より優先して実行するために入れてある。
1+2*3と入力しようとしたとき、1+2*と入力した場合、最後の*を押した時に1+2を実行「しない」。
1+2+と入力した場合は最後の+を押した時に1+2を「実行し」3を表示する。
BigDecimalは大きな/小さな数値を表現する場合に限界や誤差などを「あまり」気にせずに使うためのクラス。
Javaのドキュメントと「Java BigDecimal」で検索などしてみて。
ちなみにときどき例外が…というのはこのBigDecimalのdivideらしぃ^^;

408:404
08/07/07 01:21:21
よく見たらStack#pushをStack#addにしちゃってるとこばかりだな。
一応Stack#addはpushと同じだから動いてるみたいだが。

409:404
08/07/07 04:05:47
>>406
divideの例外回避とかStack#add→pushとか変数名変えたりとか動作中のスタックイメージコメントなども入れてみた。
URLリンク(rg550.hp.infoseek.co.jp)

410:デフォルトの名無しさん
08/07/07 06:24:06
なんか某アスキーの逆ポーランドの解説を思い出した。

411:デフォルトの名無しさん
08/07/07 23:17:27
>409
例外回避から詳しい説明まで感謝の限りです。実際に動かしてみて
動作も正常に行われました。説明を読んでpopやpush、getPriority
などの使い方、プログラムの動作もよくわかりました。今度使って
みようと思います。

最後に0で割った時のエラーメッセージを出力しようと
try-catch構文でArithmeticExceptionは回避させたんですけど、
java.util.EmptyStackExceptionのほうが割り算のoperatorに
try-catchで組み込んでもうまくいかないのですが、どうすれば
よいのでしょうか。たびたび質問ですみませんがお願いします。

412:409
08/07/08 00:09:02
>>411
まず、状況を説明するならその元となるモノ(409が変更した結果のソース)をアプしたり
どう「うまくいかない」のか、想像していたことと実際起きたことを明記しないと分からん。
というわけで想像だが、
values.push(a.divide(b,5,BigDecimal.ROUND_HALF_EVEN));
を丸ごと try{ }catch(ArithmeticException e) に入れてしまうと、
values への push がされず、以降の計算を進めるための values が
足りなくなってしまうだろな。
0割が発生した場合は式全体を消して初期状態に戻してしまうのが普通かもしれない。
divideOperator#operateではなく、式全体を計算してるactionPerformedで処理する。
URLリンク(rg550.hp.infoseek.co.jp)

413:409
08/07/08 00:17:22
>409が変更した結果のソース
→ 411が変更した~
スマン。
謝りついでも恐縮だが、長々サシ状態にしてしまってご免>スレ利用者各位

414:デフォルトの名無しさん
08/07/08 00:40:39
>>412
upの件はすみません。
でも無事解決しました。設定する場所が違っていたんで
すね。今回の質問で得るものが多かったです。これを活かして
精進しようと思います。>>409 さん、本当にありがとうございました。

415:デフォルトの名無しさん
08/07/08 15:59:10
【 課題 】java3Dを用いてx,y,zの三次元のパラメータを持つ20個程度のデータを三次元上にプロットし
      プロットされたデータをマウスクリックするとプロットの色が変化するようにしなさい  
【 形態 】2. Applet/
【 GUI  】4. 制限なし/
【 期限 】7月15日
【 補足 】java3Dを今回初めて触ってみてまだサンプルプログラムを使って箱が回転できる程度です
      座標やマウスリスナーの座標指定の仕方について現在調べていこうと考えています
      アドバイス宜しくお願い致します

416:デフォルトの名無しさん
08/07/08 21:58:39
【 課題 】ABC0703_111_Billiards.javaのpaint methodの繰り返し部分を
      for文を用いて書き換えよ。
      ただし、繰り返しは300回行われるようにせよ。
【 形態 】1. Javaアプリケーション(main()で開始
【 GUI  】不明
【 Ver  】java version "1.6.0"
【 期限 】8月まで
【 補足 】URLリンク(rg550.hp.infoseek.co.jp)
      ↑がABC0703_111_Billiards.javaの中身です。
      丸投げで申し訳ありませんが、よろしくお願いします。

417:デフォルトの名無しさん
08/07/08 23:02:53
>>416
すでにfor文になってるじゃん・・・?

paintメソッドの(1)~(4)にある
for(int n=0; n<100; n++)を
for(int n=0; n<300; n++)
にすればいいだけかと。

418:デフォルトの名無しさん
08/07/08 23:32:29
【 課題 】drawOval(50,50,300,300)の円と、その円が内接する正方形つまり
      drawRect(50,50,300,300)を描き、チェックボックスによりその円と
      正方形を切り替えて表示できるようにせよ。
【 形態 】2. Applet
【 GUI  】2. Swing
【 期限 】7/10
【 補足 】丸投げですが、よろしくお願いします。

419:デフォルトの名無しさん
08/07/08 23:40:30
>>415
ネット上で拾ったサンプルを切り貼りしてみた。
当方も本日初めてjava3Dを触ったので、参考までにて。

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

420:デフォルトの名無しさん
08/07/09 02:04:23
>>417
その(1)~(4)が同じっぽいから、つまり二重ループにしろってことじゃ?
繰り返し300回ってのがどっちのことか分からないが。

421:デフォルトの名無しさん
08/07/09 02:08:25
>>418
URLリンク(rg550.hp.infoseek.co.jp)

422:デフォルトの名無しさん
08/07/09 12:17:11
>>420
300回、線を引いてみることにした。
URLリンク(rg550.hp.infoseek.co.jp)

423:デフォルトの名無しさん
08/07/09 13:35:26
>>419
書き忘れていた細かい部分まで実装されていて
大変参考になりました。ありがとうございます。
余裕が出来たのでこれから自分なりに色々いじってみたいと
思います。本当にありがとうございました。

424:デフォルトの名無しさん
08/07/09 14:07:01
[1] 授業単元:オペレーティングシステム
[2] 問題文(含コード&リンク):
pipe3.cを完成させて、親子プロセス間で交互にメッセージを交換するプログラムを作成せよ。
pipe3.cはこちらになります↓
URLリンク(kansai2channeler.hp.infoseek.co.jp)
[3] 環境
[3.1] OS:Linux
[3.2] コンパイラ名とバージョン: gcc
[3.3] 言語: C言語
[4] 期限:7/9 23:59まで

どうかよろしくお願いします。

425:424
08/07/09 14:07:55
誤爆しました。申し訳ありません。

426:416
08/07/10 07:37:03
質問に答えてくださった皆さん、ありがとうございました
教授の言った限りでは>>422で良かったようです

427:418
08/07/10 11:47:16
>>421
すぐに教えて頂きありがとうございました。
無事間に合わせることができました。

428:デフォルトの名無しさん
08/07/10 16:44:26
現在、swingを利用したGUIプログラムを作成しています。
catchブロックで例外を捕らえた場合は、
そのエラー内容を表示しろとのことなのですが、
これはJOptionPane.showMessageDialogで表示したほうがよいのか、
System.out.printlnで表示したほうがよいのか、
一体どちらなのでしょうか。
System.out.printlnだと、開発環境から起動しなかった場合に、
内容を確認できないと思っています。

429:デフォルトの名無しさん
08/07/10 17:03:49
ただの質問は質問スレへ

430:デフォルトの名無しさん
08/07/13 15:40:59
【 課題 】URLリンク(issoft17.is.noda.tus.ac.jp)
線形リストにおいて、指定されたn番目をリストから省くメソッドの作成(再帰的)ただし、n番目が要素数を上回っていた場合はリストをそのまま返す。
課題ページは上記URLです。
【 形態 】1. Javaアプリケーション
【 Ver  】1.5.0_15
【 期限 】7月14日17:00
【 補足 】リストの処理においてword欄を書き換えたり、メソッドの外でグローバル変数を使用するのはNGです。
現段階で非再帰的に処理を行うメソッドは作成済みですが、再帰的な処理の方が全くアルゴリズムが思い浮かばず
丸投げ状態です。締切まで時間がありませんが、もし可能な方がいましたら宜しくお願い致します。
参考URL:URLリンク(www.ed.noda.tus.ac.jp)

431:デフォルトの名無しさん
08/07/13 16:44:47
【 課題 】 URLリンク(rg550.hp.infoseek.co.jp)
【 形態 】 Javaアプリケーション(main()で開始)
【 期限 】 2008/07/20 23:00
【 Ver  】 1.4.2_12
【 補足 】 課題の丸投げです。
       .javaファイルを1ファイルで作成して欲しいです。
       できるだけ初心者にも理解し易く、単純な形で記述して頂けると助かります。
       problem080720@yahoo.co.jpまでソースファイルをお送り下さい。
       宜しくお願いします。

432:デフォルトの名無しさん
08/07/13 17:05:01
【課題提示用テンプレ】
【 課題 】「Java言語」を用いて、フラクタルを取り入れた自由作品を作りなさい
【 形態 】2. Applet
【 期限 】7月16日(水)
【 補足 】丸投げですが、何卒よろしくお願いいたします。

433:デフォルトの名無しさん
08/07/13 17:29:33
>>430
自分でもよく分かってないけど・・・間違ってたらすまん
public static ListNode delete(ListNode head, int n) {
if(head != null) {
if(--n==0) {
head = head.next;
} else {
head.next = delete(head.next, n);
}
}
return head;
}

434:430
08/07/13 17:39:45
>>431
今書いて頂いたメソッドを組み込んで動作確認をしたところ、課題通りに正しい結果が返されました。
おかげで無事に提出期間に間に合いそうです。
迅速な回答本当に有難うございました。

435:430
08/07/13 17:41:40
レス番間違え。正しくは
>>433様宛てでした。度々失礼致しました。

436:デフォルトの名無しさん
08/07/13 17:47:44
【 課題 】3つの正の整数a、b、c ( c ≧ b ≧ a )が直角三角形になるa、b、c
の組合せを20個出力するプログラムを作れ(while 文を使うこと)
【 形態 】1. Javaアプリケーション(main()で開始)
【 期限 】7/14まで
【 Ver  】1.6.0
【 補足 】丸投げです。お願いします。

437:デフォルトの名無しさん
08/07/13 17:49:29
【 課題 】年月日を入力したい。
      存在しない年月日を入力したらエラーメッセージを出力し再入力促

       閏年の判定を行うこと。
           1. 西暦年が4で割り切れる年は閏年
           2. ただし、西暦年が100で割り切れる年は平年
           3. ただし、西暦年が400で割り切れる年は閏年
       存在する年月日であればそれを表示せよ
【 形態 】1. Javaアプリケーション(main()で開始
【 期限 】7月14日まで
【 Ver  】1.6.0
【 補足 】学校の宿題です。お願いします。

438:デフォルトの名無しさん
08/07/13 17:58:01
【 課題 】3行3列の行列Aと行列Bの各要素をキーボードから入力し、AB(行列
の掛け算)の結果を出力するプログラムを書け。行列A、Bは2次元配列で表すこと。
【 形態 】1. Javaアプリケーション(main()で開始)
【 期限 】7/14
【 Ver  】1.6.0
【 補足 】明日までなのでよろしくお願いします。

439:デフォルトの名無しさん
08/07/13 17:58:50
【 課題 】0~2の乱数(整数)を作り、キーボードから0~2を入力して、両者が
同じ数字なら「当たり!」、違う数字なら「はずれ!」と以下のように出力せよ。
【 形態 】1. Javaアプリケーション(main()で開始)
【 期限 】7月14日 《必須》
【 Ver  】1.6.0
【 補足 】丸投げです。わからないのでよろしくお願いします。

440:デフォルトの名無しさん
08/07/13 18:26:19
【課題】欧文を入力すると、そこで使われている全単語の使用回数(出現頻度)を数え、
一覧表示するプログラムを作成しなさい。 HashMap を使うこと。
欧文は、単語と単語の間が空白で区切られているものとする。
Scanner クラスのメソッド next() を使うと、 1単語ずつ読み込むことができる。
main メソッドのあるクラスのクラス名は WordCounter とする。


System.out.println("欧文を入力してください(終了: Ctrl-d)");
Scanner scanner = new Scanner(System.in);

while(scanner.hasNext()) {
String word = scanner.next();

....

}

【形態】1. Javaアプリケーション(main()で開始)
【期限】7月14日 20;00
【Ver】1.5.0.11
【補足】丸投げです。宜しくお願いします

441:デフォルトの名無しさん
08/07/13 18:30:00
なんか急に増えたな・・

>>431
1. Stack を固定長配列を使って定義しなさい。
とりあえずこれはこんな感じだと。メールは面倒だわ・・
URLリンク(rg550.hp.infoseek.co.jp)

>>432
そのへんはググればいくらでもソース見つかると思うからそうした方が・・

442:432
08/07/13 18:48:26
>>441
講師「はぁ?何お前?ググってコピペする気?言っとッけど俺マジパネェよ?ググって提出した課題全部分かっちゃうよ?」
生徒「・・・・・・」

いや、無理ならスルーしてくれても構わないんだ
アドバイスありがとう

443:デフォルトの名無しさん
08/07/13 20:28:08
>>442
人に頼んだり、まして、ネットでもらった回答がバレない理由なんて無いんじゃね?

444:デフォルトの名無しさん
08/07/13 20:36:22
>>443
うん、それを言われちゃあ返す言葉もない

445:デフォルトの名無しさん
08/07/13 21:33:52
>>440
Scanner って ctrl-d で終わるんだっけ? そんな風には動かないんだが。
ま、いいかw
import java.util.*;
public class WordCounter {
public static void main(String[] args) {
System.out.println("欧文を入力してください(終了: Ctrl-d)");
Scanner scanner = new Scanner(System.in);
HashMap<String,Integer> wordMap = new HashMap<String,Integer>();
while(scanner.hasNext()) {
String word = scanner.next();
if(wordMap.containsKey(word)) {
wordMap.put(word, wordMap.get(word).intValue() + 1);
} else {
wordMap.put(word, 1);
}
}
System.out.println("---- 単語数: "+wordMap.size());
for(Map.Entry<String,Integer> entry : wordMap.entrySet()) {
System.out.println(entry.getKey()+": "+entry.getValue());
}
}
}

446:デフォルトの名無しさん
08/07/13 21:36:44
>>439
>以下のように出力せよ。
って何

447:デフォルトの名無しさん
08/07/13 22:00:32
>>436
式知らないので参考URLとともにむりやりwhile。
// URLリンク(atsugi5761455.fc2web.com)
public class ピタゴラスの三角形 {
public static void main(String[] args) {
int n = 1;
int i = 1;
int n2 = n * n;
int k = 1;
while(i <= 20) {
int m = n + k;
int m2 = m * m;
int a = m2 + n2;
int b = m2 - n2;
int c = 2 * m * n;
System.out.println(i+": a="+a+",b="+b+",c="+c);
i ++;
k += 2;
}
}
}

448:447
08/07/13 22:04:27
ああ、
> c ≧ b ≧ a
を満たしてないし。数値入れ替えるだけじゃだめ?w

449:デフォルトの名無しさん
08/07/13 22:22:30
>>441
回答ありがとうございます。
しかし、それだと問題1しか解けていないと思うのですが・・・
問題は1~5まであります。
どうか宜しくお願いします。

450:デフォルトの名無しさん
08/07/13 22:29:26
>>437
import java.util.*;
public class Uruu {
static final int[] daysOfMonth = new int[]{31,29,31,30,31,30,31,31,30,31,30,31};
public static void main(String[] args) {
while(true) {
System.out.println("yyyy mm dd");
Scanner in = new Scanner(System.in);
int y = Integer.parseInt(in.next());
int m = Integer.parseInt(in.next());
int d = Integer.parseInt(in.next());
if(y < 1583 || m < 1 || m > 12 || d < 1 || d > daysOfMonth[m-1]) {
System.out.println("err.");
continue;
} else if(m == 2 && !isUruu(y) && d > 28) {
System.out.println("URUU-day err.");
continue;
}
System.out.println("y="+y+",m="+m+",d="+d);
break;
}
}
static boolean isUruu(int y) {
if((y % 400) == 0) return true;
if((y % 100) == 0) return false;
return ((y % 4) == 0);
}
}
自分で書いといてヒドイ書き方だと思う…

451:446
08/07/13 22:44:54
>>439
とりあえず
import java.util.*;
public class RndNum {
public static void main(String[] args) {
Random random = new Random();
int num = random.nextInt(3);
System.out.println(num);
System.out.println("input 0-2");
Scanner scanner= new Scanner(System.in);
int input = scanner.nextInt();
if(input == num) {
System.out.println("当たり!");
} else {
System.out.println("はずれ!");
}
}
}

452:デフォルトの名無しさん
08/07/13 23:29:47
>>438
URLリンク(rg550.hp.infoseek.co.jp)

453:デフォルトの名無しさん
08/07/13 23:34:28
>>441
週末向けに宿題だされたけど結局やらずに駆け込みってことかねぇ。
暇つぶしには適当にばらけてくれたほうがいいんだが。

454:デフォルトの名無しさん
08/07/14 01:18:18
>>431
3 の Cell を使うと
>スタックは大きさを持ち、格納できる要素数はその大きさまでとする。
ちゅうのをどう表現するか決めかねるんだが。

3.
>>441 のを修正して
URLリンク(rg550.hp.infoseek.co.jp)
4.
大きさチェックなし
URLリンク(rg550.hp.infoseek.co.jp)

メールでレス貰おうなんざ面倒くさ杉

455:デフォルトの名無しさん
08/07/14 07:29:10
メールの場合ノーチェックになるからな
ここにレスするかうpろだだとこのスレの他の人のチェックはいるから
変なプログラムはめちゃ叩かれるw

456:デフォルトの名無しさん
08/07/14 12:53:50
【 課題 】じゃんけんゲームを作成せよ。完成版は、反復構造により続けてゲームができるようにし、0で終了させて最後に勝ち負けの集計(勝率も計算させる)が表示できるようにせよ。
なお、プログラムは
 あなたの手の入力の処理
 コンピュータの手の生成
 勝ち負けの判定
 勝率の計算
の4つの処理を行うメソッドを定義し、これを利用して作成すること。
【 形態 】1. Javaアプリケーション(main()で開始
【 期限 】7月31日まで
【 補足 】単位かかってます。

457:デフォルトの名無しさん
08/07/14 14:14:14
>>456
こういうの見ると、
"必ず勝つ(or負ける)ようにしとけば判定とか率とか表示1行で済んで楽だ"
と思うんだが、そするとやっぱり単位とやらが貰えないのだろうか。
閑話休題。
>完成版は、
とあるが、未完成版はあるのか? もしくは未完成版でもいいのか?
>0 で終了させて
というのは、手の入力には何か規則があるのか?

458:デフォルトの名無しさん
08/07/14 14:22:55
【 課題 】コマンドライン引数から西暦を受け取り、うるう年であるかを判定するプログラム
report3.javaを作成しなさい。うるう年の条件は次のとおりである。
 ・4で割り切れる年はうるう年である
 ・100で割り切れる年はうるう年ではない
 ・400で割り切れる年はうるう年である

【 形態 】1. Javaアプリケーション(main()で開始)
【 期限 】7/15
【 補足 】どうしても結果が被ってしまいます。お願いします。
public class report3 {
public static void main(String[] args) {

int x = Integer.parseInt(args[0]);

if(0 == x%4 || 0 == x%400) {
if(0 != x%100) {
System.out.println(x + "年はうるう年です");
}
}
if(0 == x%100) {
System.out.println(x + "年はうるう年ではありません");
}
else {
System.out.println(x + "年はうるう年ではありません");
}

}
}

459:デフォルトの名無しさん
08/07/14 14:42:40
>>458
>>450 を参考にせんか?

460:デフォルトの名無しさん
08/07/14 14:52:51
>>458
public class report3 {
public static void main(String[] args) {
int x = Integer.parseInt(args[0]);
if((0 == x%4 && 0 != x%100) || 0 == x%400) {
System.out.println(x + "年はうるう年です");
} else {
System.out.println(x + "年はうるう年ではありません");
}
}
}
動かしてないからそのつもりで。
しかし = の前に 0 があるのって私には違和感あるなぁ。

461:デフォルトの名無しさん
08/07/14 15:14:32
【 課題 】キーボードから5回整数の入力を受け取り、
それらの合計値と平均値を計算して表示するプログラムを作成しなさい。

462:デフォルトの名無しさん
08/07/14 15:17:34
>>460
ありがとうございます
カッコで区切るんですね

爆発しそうな脳みそがやっと縮みました

463:デフォルトの名無しさん
08/07/14 16:04:16
>>458
x にどんな値をいれたらどの順にどの行が実行されるのかを一つ一つ追ってみるといい。
ちなみに、途中でプログラムを強制終了させるなら System.exit() というのがあってだな…。

464:デフォルトの名無しさん
08/07/14 16:07:29
【課題提示用テンプレ】
【 課題 】
整数nを入力して、1からnまでの整数を、それぞれ素因数分解した結果を返すプログラムを作る。
条件として、2つのスレッドを用いる。Thread の起動方法は、thread.start() を用いよ。
2つのスレッドは、共通のAtomicInteger のカウンタから、getAndIncrement()として得た整数に対して、素因数分解を行う。
得られた整数がnを超えたらスレッドを終了する。
素因数分解の結果は、ConcurrentHashMap<Integer>, List<Integer>>に格納する。
キーのInteger が素因数分解の対象の整数であり、値のList<Integer>が素因数分解した結果の整数群である。
全ての素因数分解が終了したのち、メインスレッドで、整数1からnまでの全ての結果を「12: 2 2 3」のように表示させよ。
【 形態 】Javaアプリケーション(main()で開始)Eclipseを用いています。
【 期限 】7/14 18:00まで
【 Ver  】3.2.2




465:デフォルトの名無しさん
08/07/14 16:09:38
【課題提示用テンプレ】
【 課題 】
整数 n を入力し、1からnまでの素数を List<Integer> にまとめて返却するメソッドを作成せよ。
また、このメソッドを利用し、整数1000に対して、求めた素数を1行にひとつずつ画面に表示するプログラムを作成し、動作確認せよ。
表示した素数は桁合わせされていること。
【 形態 】Javaアプリケーション(main()で開始)Eclipseを用いています。
【 期限 】7/14 18:00まで
【 Ver  】3.2.2


466:デフォルトの名無しさん
08/07/14 16:10:28
【 課題 】
1京(10000000000000000)、2京、3京、4京のそれぞれより大きい最初の素数を計算せよ。これを計算する上では、スレッドを利用すること。FixedThreadPool を用いて、スレッド数2にして、上記の4つのタスクを並行実行して、結果を求めよ
【 形態 】Javaアプリケーション(main()で開始)Eclipseを用いています。
【 期限 】7/14 18:00まで
【 Ver  】3.2.2

467:464-466
08/07/14 16:11:04
課題丸投げですが、よろしくお願いします。

468:デフォルトの名無しさん
08/07/14 17:04:36
>>464
URLリンク(rg550.hp.infoseek.co.jp)

469:464
08/07/14 17:14:36
>>468
ありがとうございます!

470:デフォルトの名無しさん
08/07/14 17:20:16
>>465
URLリンク(rg550.hp.infoseek.co.jp)

471:デフォルトの名無しさん
08/07/14 17:21:55
>>464 - >>466
時間無さ杉w

472:464
08/07/14 17:26:01
スマソwww急に演習課題とか始まって\(^o^)/オワタ

473:デフォルトの名無しさん
08/07/14 17:30:53
>>472
リアルタイムかい。
で、オワタ?466はもういいのか?

474:464
08/07/14 17:33:40
すみません。人生的な意味で終わってるってことですw
466もお願いします!

475:デフォルトの名無しさん
08/07/14 18:02:51
>>466
まにあわなかったか?
URLリンク(rg550.hp.infoseek.co.jp)
でかすぎてテストしきれてないぞ


476:466
08/07/14 18:09:45
>>475
ありがとうございます!
みんなできていないようなので、レポートという形になりそうです。
さらに問題が追加されましたww
近々またお世話になるかもしれません。
お忙しい中、本当にありがとうございます。

477:デフォルトの名無しさん
08/07/14 18:16:51
>>475
でかすぎですねwwww
プログラムテストできませんw

478:464
08/07/14 18:40:06
追加された問題たちです。

【 課題 】
初期化時に文字列引数を持つ Enum 型 Fruit を作成し、
APPLE, ORANGE, GRAPE, CHERRY, PEACH のそれぞれの要素を、
日本語名を引数にして初期化せよ。
そして、この Enum 型から全ての要素を取出し、英語名でアルファベット順にソートして、
「英語名: 日本語名」の形で、アルファベット順に表示せよ。
【 形態 】Javaアプリケーション(main()で開始)Eclipseを用いています。
【 期限 】7/14 24:00まで
【 Ver  】3.2.2


479:デフォルトの名無しさん
08/07/14 18:45:16
Javaにもenumってあったのか

480:475
08/07/14 18:46:10
まぁなにしろ間に合うかどうか優先で全然速さを考えてないからなw
素因数分解をBigDecimal対応にするだけで面倒くさかった。
時間できたらなんとかの篩でもなんでもやってくれぃ。

481:デフォルトの名無しさん
08/07/14 18:47:22
【 課題 】
キャプチャーしてzipでうpしました。
お手数おかけします。
URLリンク(rg550.hp.infoseek.co.jp)
【 形態 】Javaアプリケーション(main()で開始)Eclipseを用いています。
【 期限 】7/14 24:00まで
【 Ver  】3.2.2


482:デフォルトの名無しさん
08/07/14 18:49:25
>>480
ありがとうございます。
なんとかやってみます!
先生が理不尽で、困ります(><)

483:デフォルトの名無しさん
08/07/14 18:51:20
>>481
ワシそゆのダメ、素で読めんw

484:デフォルトの名無しさん
08/07/14 18:55:43
>>483
すみません。
そうですよね~。さすがにこれはわけがわからないです。
なにをどうすればいいのかさっぱりです。

485:デフォルトの名無しさん
08/07/14 19:05:49
>>479
1.5から追加になった。

486:デフォルトの名無しさん
08/07/14 19:11:48
>>481
こんな感じだろうか
int k=0;
while(true) {
if(Math.PIの小数点第8位までの値 == (1/無限小数の式)の小数点第8位までの値) break;
}
k+1回がループ数

487:478&481
08/07/14 19:26:23
すみません!
友達がやってくれました!
みなさんありがとうございました!

488:デフォルトの名無しさん
08/07/14 19:31:51
>>487
じゃあ結局467は何もやってないのかw
>>478
とりあえずやってみたのでうp
import java.util.*;
public class K478 {
public static void main(String[] args) {
Fluit[] fluits = Fluit.values();
Arrays.sort(fluits, new Comparator<Fluit>() {
public int compare(Fluit o1, Fluit o2) {
return o1.toString().compareTo(o2.toString());
}
});
for(Fluit fluit : fluits) {
System.out.println(fluit.toString()+": "+fluit.getJapanese());
}
}
static enum Fluit {
APPLE("リンゴ"),
ORANGE("オレンジ"),
GRAPE("ブドウ"),
CHERRY("サクランボ"),
PEACH("モモ");
private String japanese;
Fluit(String japanese) {
this.japanese = japanese;
}
public String getJapanese() { return japanese; }
}
}

489:デフォルトの名無しさん
08/07/14 22:31:12
/*
手持ちのお金の枚数と買い物の合計金額から,お釣りの枚数が最も少なくなる支払い方を計算するプログラム.
*/
import java.io.*;
public class MinimalChanges {
public static void main(String[] args) {
BufferedReader reader = new BufferedReader(new InputStreamReader(System.in));
try {
System.out.println("手持ちのお金の枚数を入力してください.");
System.out.print("一万円札:");
String line = reader.readLine();
int man = Integer.parseInt(line);
System.out.print("五千円札:");
line = reader.readLine();
int gosen = Integer.parseInt(line);
System.out.print("千円札:");
line = reader.readLine();
int sen = Integer.parseInt(line);
System.out.print("五百円玉:");
line = reader.readLine();
int gohyaku = Integer.parseInt(line);
System.out.print("百円玉:");
line = reader.readLine();
int hyaku = Integer.parseInt(line);
System.out.print("五十円玉:");
line = reader.readLine();
int goju = Integer.parseInt(line);
System.out.print("十円玉:");
line = reader.readLine();
int ju = Integer.parseInt(line);


490:デフォルトの名無しさん
08/07/14 22:32:40
続き
System.out.print("五円玉:");
line = reader.readLine();
int go = Integer.parseInt(line);
System.out.print("一円玉:");
line = reader.readLine();
int ichi = Integer.parseInt(line);
System.out.print("");
System.out.println("買い物の合計金額を入力して下さい.");
line = reader.readLine();
int sum = Integer.parseInt(line);
int p = sum % 10;
System.out.println("");
int pay1 = one(p, ichi);
p = p - pay1;
int pay5 = five(p, go);
if (p <= (pay5 * 5)) {
sum = sum / 10;
} else {
sum = (sum / 10) + 1;
}
p = sum % 10;
int pay10 = one(p, ju);
p = p - pay10;
int pay50 = five(p, goju);
if (p <= (pay50 * 5)) {
sum = sum / 10;
} else {
sum = (sum / 10) + 1;
}
p = sum % 10;


491:デフォルトの名無しさん
08/07/14 22:34:07
int pay100 = one(p, hyaku);
p = p - pay100;
int pay500 = five(p, gohyaku);
if (p <= (pay500 * 5)) {
sum = sum / 10;
} else {
sum = (sum / 10) + 1;
}
p = sum % 10;
int pay1000 = one(p, sen);
p = p - pay1000;
int pay5000 = five(p, gosen);
if (p <= (pay5000 * 5)) {
sum = sum / 10;
} else {
sum = (sum / 10) + 1;
}
p = sum % 10;
int pay10000;
if (man >= p) {
pay10000 = p;
System.out.println("一万円札" + pay10000 + "枚");
System.out.println("五千円札:" + pay5000 + "枚");
System.out.println("千円札:" + pay1000 + "枚");
System.out.println("五百円玉:" + pay500 + "枚");
System.out.println("百円玉:" + pay100 + "枚");
System.out.println("五十円玉:" + pay50 + "枚");
System.out.println("十円玉:" + pay10 + "枚");
System.out.println("五円玉:" + pay5 + "枚");
System.out.println("一円玉:" + pay1 + "枚");


492:デフォルトの名無しさん
08/07/14 22:34:55
System.out.println("で支払ってください.");
System.out.println("");
} else {
System.out.println("お金が足りません.");
}
} catch (IOException e) {
System.out.println(e);
} catch (NumberFormatException e) {
System.out.println(e);
}
}
public static int one(int p, int ichi) {
if (p > 5) {
if ((p - 5) <= ichi) {
return p - 5;
} else {
return 0;
}
} else if (p <= ichi) {
return p;
} else {
return 0;
}
}


493:デフォルトの名無しさん
08/07/14 22:37:12
public static int five(int p, int go) {
if (p != 0) {
if ((p <= 5) && (go != 0)) {
return 1;
} else {
return 0;
}
} else {
return 0;
}
}
}
これで終わりなのですが、手持ちのお金と,買い物の金額を入力すると,
お釣りの枚数が最も少なくなる支払い方を教えてくれるプログラムです.
例えば1000円札1枚,100円玉2枚,10円玉4枚持っていて,買い物の合計が625円の時,
プログラムを実行させると1000円札1枚,100円玉1枚,10円玉3枚で支払うように指示します.
ただしこのプログラムでは,1000円札,100円玉,10円玉,1円玉に関しては4枚以内,
5000円札,500円玉,50円玉,5円玉に関しては1枚以内しか持っていないという前提になっているため,
例えば1円玉のみ100枚持っているときに,100円の買い物をしようとしても「お金が足りません」と出力されてしまいます.
この、問題をどんな形でも良いので解消してください。

494:デフォルトの名無しさん
08/07/14 22:47:55
>>493
>>1くらい読め

495:デフォルトの名無しさん
08/07/14 23:05:01
【 課題 】手持ちのお金と,買い物の金額を入力すると,お釣りの枚数が最も少なくなる支払い方を教えてくれるプログラムです.
例えば1000円札1枚,100円玉2枚,10円玉4枚持っていて,買い物の合計が625円の時,
プログラムを実行させると1000円札1枚,100円玉1枚,10円玉3枚で支払うように指示します.
ただしこのプログラムでは,1000円札,100円玉,10円玉,1円玉に関しては4枚以内,
5000円札,500円玉,50円玉,5円玉に関しては1枚以内しか持っていないという前提になっているため,
例えば1円玉のみ100枚持っているときに,100円の買い物をしようとしても「お金が足りません」と出力されてしまいます.
この問題を直しなさい。

【 形態 】Javaアプリケーション(main()で開始)
【 GUI  】制限なし
【 期限 】明日のAM6時
【 Ver  】1.6.0_07
【 補足 】スレ汚してしまってすいません。
      URLリンク(rg550.hp.infoseek.co.jp)

496:デフォルトの名無しさん
08/07/15 00:57:36

【 課題 】キーボードから5回整数の入力を受け取り、
それらの合計値と平均値を計算して表示するプログラムを作成しなさい。
for文またはwhile文による繰り返しを使うこと。
平均値も整数とし、小数点以下が表示されなくてもよい。
キーボードから入力した文字列が制すうちに変換されないときの例外処理はしなくてよい。
【 形態 】Javaアプリケーション(main()で開始)Eclipseを用いています。
【 期限 】7/16 18:00まで
【 Ver  】3.2.2


よろしくお願いします。

497:デフォルトの名無しさん
08/07/15 01:59:57
>>496
public static void main(String args[])
{
Scanner kbd=new Scanner(System.in);
int sum=0;
for(int i=0;i<5;i++){
sum+=kbd.nextInt();
}
System.out.println("合計値:"+sum);
System.out.println("平均値:"+sum/5);
}

498:デフォルトの名無しさん
08/07/15 11:28:23
本日の課題プログラムを参考にして、じゃんけんゲームを完成させよ。完成版は、反復構造により続けてゲームができるようにし、0で終了させて最後に勝ち負けの集計(勝率も計算させる)が表示できるようにせよ。
なお、プログラムは
 あなたの手の入力の処理
 コンピュータの手の生成
 勝ち負けの判定
 勝率の計算
の4つの処理を行うメソッドを定義し、これを利用して作成すること。
実行例:
あなたの手を入力して下さい。(1:グー, 2:チョキ, 3:パー, 0:終了)?
1
あなたの手はグーです。
コンピュータの手はチョキです。
あなたの勝ちです。
あなたの手を入力して下さい。(1:グー, 2:チョキ, 3:パー, 0:終了)?
2
あなたの手はチョキです。
コンピュータの手はグーです。
コンピュータの勝ちです。
あなたの手を入力して下さい。(1:グー, 2:チョキ, 3:パー, 0:終了)?
2
あなたの手はチョキです。
コンピュータの手はグーです。
コンピュータの勝ちです。
あなたの手を入力して下さい。(1:グー, 2:チョキ, 3:パー, 0:終了)?
0
終了
あなたは3試合中、1勝2敗0分け(勝率:3割3分3厘)です。


499:デフォルトの名無しさん
08/07/15 11:59:42
>>498
>>1くらいよめ

500:デフォルトの名無しさん
08/07/15 13:26:40
>>498
>>456

501:デフォルトの名無しさん
08/07/15 13:32:39
>>498
んで、「本日の課題プログラム」とやらはどこにある?

502:デフォルトの名無しさん
08/07/15 15:02:26
>>497さんありがとうございます。

【 課題 】キーボードから2個の小数点の入力を受け取り、
それらを底辺と高さとする三角形の面積を計算して表示する
プログラムを作成しなさい。
・三角形をオブジェクトとして考え、三角形オブジェクトを作成するTriangleクラスを宣言して使うこと。
・Triangleクラスのメンバには、底辺と高さの値をあらわすインスタンス変数、面積を計算するためのインスタンスメソッドを含むこと。
・キーボードから入力された文字列が数値に変換できないときの例外処理はしなくてよい。
【 形態 】Javaアプリケーション(main()で開始)Eclipseを用いています。
【 期限 】7/17 18:00まで
【 Ver  】3.2.2

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

503:デフォルトの名無しさん
08/07/15 15:19:58
テンプレを勘違いのまま使ってるな。
【Ver】は Eclipse のバージョンじゃなくて Java のバージョンだぞ。

504:デフォルトの名無しさん
08/07/15 15:31:10
>>502
import java.util.Scanner;
public class Triangle {
private double 底辺, 高さ;
public Triangle(double 底辺, double 高さ) { this.底辺 = 底辺; this.高さ = 高さ; }
public double 面積() { return 底辺 * 高さ / 2; }
public static void main(String[] args) {
System.out.println("三角形の底辺と高さを入力(スペース区切り):");
Scanner scanner = new Scanner(System.in);
double 底辺 = scanner.nextDouble();
double 高さ = scanner.nextDouble();
Triangle 三角形 = new Triangle(底辺, 高さ);
System.out.println("面積="+三角形.面積());
}
}

505:デフォルトの名無しさん
08/07/15 15:32:14
>>502
小数点とは、『.』のことだぞ?

506:431
08/07/16 01:21:23
>>454
回答ありがとうございます。
>3 の Cell を使うと
>>スタックは大きさを持ち、格納できる要素数はその大きさまでとする。
>ちゅうのをどう表現するか決めかねるんだが。
問題文は原文のままですのでなんとも言えないのですが・・・
TestStack.classファイルが今日配布されましたので、もし修正して頂けるなら参考にして下さい。
問題1~2、3~4でどういうソースを書けば良いのか参考になると思います。
以下にzipファイルのURLと説明を書きます。

URLリンク(rg550.hp.infoseek.co.jp)
TestProgram11_1フォルダ内のTestStack.classファイルは、Stack.classと共にsrc/Problem11/Answer3に格納して実行してみて下さい。
TestProgram11_2フォルダ内のTestStack.classファイルは、Stack.class、Cell.classと共にsrc/Problem11/Answer4に格納して実行してみて下さい。
パッケージの宣言(?)をそれぞれProblem11.Answer3、Problem11.Answer4にすれば良いようです。
そもそもProblem11.Answer1、Problem11.Answer2でTestStack.classファイルを作成して配布していれば良いと思うのですが、
こういう部分に問題文の作りの甘さが表れていると思います…

507:431
08/07/16 01:21:57

問題1に関しては>>441で回答して頂いたファイルの一部分を
void push (Object anObject) {
// スタックの最後の位置を増やす
top++;
// スタックに要素追加
stack[top] = anObject;
}
に直したら正常動作しました。ありがとうございます。

問題2はまだ回答して頂いておらず、上にアップロードしたTestProgram11_1フォルダ内のTestStack.classを実行した際に動作するようなソースを書いて頂けないでしょうか。

問題4の
>import java.io.ByteArrayOutputStream;
>import java.io.PrintStream;
の記述がよくわかりません。コンパイルでもエラーが出ました。
現在コンパイルしてエラーを表示できる環境にないので、今はエラーの詳細を貼ることは出来ませんが…
後ほど貼ります。
問題3、問題4に関しても上記のファイルのTestProgram11_2フォルダ内のTestStack.classの動作に添うようにソースを書いて頂けないでしょうか。

色々文句をつけてしまいすみません。
自力では解けませんのでなんとか宜しくお願いします。

508:468
08/07/16 01:27:36
>>464
すまぬ~、さっき知ったんだが、
>AtomicInteger
って java.util.concurrent.atomic.AtomicInteger なんだな。手前勝手に作っちまった。
クラス宣言消して import 追加して生成してるとこでパラメータに 1 を指定する、のが
正解ってことで。

509:デフォルトの名無しさん
08/07/16 02:13:12
【 課題 】コンパイルせよ。エラーが出たら原因を考えて修正せよ。
【 形態 】1. Javaアプリケーション(main()で開始)
【 GUI  】1. AWTのみ(だと思います)
【 期限 】今週金曜日
【 Ver  】
java version "1.6.0_05"
Java(TM) SE Runtime Environment (build 1.6.0_05-b13)
Java HotSpot(TM) Client VM (build 10.0-b19, mixed mode, sharing)

プログラムをコンパイルすると
Ex5c.java:28: 警告:[unchecked] raw 型 java.util.ArrayList のメンバとしての add(E
) への無検査呼び出しです。
list.add(new AnalogClock());
というエラーが出るのですが、直し方がよくわかりません

AnalogClock aClock;
aClock = new AnalogClock();
ArrayList list = new ArrayList();
ググったら↑を書き換える必要があるらしいのですが、どう書き変えたらいいのかわかりません。
お願いします。

510:デフォルトの名無しさん
08/07/16 02:22:19
>>509
警告だから、別に直さなくても良いけど、

ArrayList<AnalogClock> list = new ArrayList<AnalogClock>();

とか書けば消えるんじゃね?


511:454
08/07/16 03:27:27
>>506>>507
なんだか変な話になってきそうだが、問題2/問題4の
>Stack が要求を満たしていることをテストするプログラムTestStack を定義しなさい。
というのは、その配布された TestStack.class のソースを再現しろということなのか?
そもそも、1と3で作成した Stack は指示されたインターフェースを満たすようにつくって
いるのだから、UnitTest ならともかくそのレベルのテストは同じものになるはずだが。
ちなみに
URLリンク(rg550.hp.infoseek.co.jp)
は4つのテスト全てで
>テスト結果 = true
と表示されたが、これでいいのか?

512:デフォルトの名無しさん
08/07/16 04:11:37
>>506
jad という逆コンパイルツールを探してきて TestStack.class と同じ
フォルダに展開して、
 jad -8 TestStack.class
とやると TestStack.jad というファイルが出来るから、
TestStack.java に変名してそれぞれの Stack と一緒に出したらどうだい。
それ見てたら作者がタコに思えてきて弄る気力無くなった…。

513:デフォルトの名無しさん
08/07/16 14:51:55
>>510
ありがとうございます!やっとコンパイル通りました!

514:デフォルトの名無しさん
08/07/16 15:10:42
>>513
いや、別に、警告は出てても実行は出来るよ。

515:デフォルトの名無しさん
08/07/16 15:57:41
>>514
元に戻してやってみたら通りましたorz
ファイル名を入力し間違えてたみたいですorzorz

516:デフォルトの名無しさん
08/07/17 00:36:03
いま暇だ。
残ってる宿題リストくれ

517:デフォルトの名無しさん
08/07/17 00:56:43
「1~1000までの足し算を行うプログラムを書け。」
簡単かもしれませんがお願いします。

518:デフォルトの名無しさん
08/07/17 01:27:37
>>516
期限が切れてるのばかり・・・

>>495の金種計算と
>>466も現実的な時間で算出できる方法かな


519:デフォルトの名無しさん
08/07/17 01:36:47
>>517
n=1000; として、
for(i=1,sum=0; i<=n; i++) sum+=i; または n*(n+1)/2;


520:デフォルトの名無しさん
08/07/17 01:51:31
>>466
なにこのベンチマークw

521:デフォルトの名無しさん
08/07/17 02:47:45
>>431 は一応まだ期限内なんだが。
問題1,3はともかく、問題2,4の出題者の意図がイマイチ分からん。
そのもののクラスファイルを >>506 で出題者から提供されたが、
んじゃ問題2,4では何を作るのかと。
>>512 ではjadで終わりってことにしたな。

522:デフォルトの名無しさん
08/07/17 10:10:12
>>466 を実装するには、まずBigDecimalのsqrtを実装しないといけないよね。チェックの回数を減らさないと。

523:デフォルトの名無しさん
08/07/17 11:57:56
【 課題 】
class Data{
String name;
String start_time;
String end_time;
String place;
String id;
//以下ゲッタ、セッタ;
}
で定義されているデータ型とこのデータ型のオブジェクトdata1[n]がある.
このとき、以下の条件に従って、Data data2[n]に値を挿入する関数arrange()を作成せよ.
(1)n=0の時、data2[n] = data1[n]
(2-2)n=kの時、data1[0]~data1[k-1]までに「name,start_time,end_timeすべてが一致するもの」があれば、data2[k].id=data2[k].id+","+data1[k-α].id *αはそれまでの一致した数
(2-2)n=kの時、data1[0]~data1[k-1]までに「name,start_time,end_timeすべてが一致するもの」がなければdata2[k]=data1[k-α]

【 形態 】1. Javaアプリケーション(main()で開始)
【 GUI  】なし
【 期限 】7月18日24時
【 Ver  】
$ java -version
java version "1.6.0_05"
Java(TM) SE Runtime Environment (build 1.6.0_05-b13)
Java HotSpot(TM) Client VM (build 10.0-b19, mixed mode, sharing)
【 用語 】
【 補足 】data1のデータは定義されていません。自分で何か文字列入れて動作確認せよとのことです.

524:431
08/07/17 18:19:45
>>511
度々ありがとうございます。

自宅で実行環境を整えたのですが、
Exception in thread "main" java.lang.NoClassDefFoundError
とエラーが出てしまい、動作を確認出来ない状況です。
学校で実行した時は3が実行できて、4はエラーが出て実行できない状況だったのですが・・・
作って頂いた4のファイルも、きちんとした環境でコンパイルして実行すれば動作するのでしょうか?
Ver.1.4.2_12でコンパイルして実行したらエラーが表示されたのですが・・・
4でのエラー文は明日貼りますので、もう暫くお待ち下さい。

3を実行したとき、スタックにa、b、cを積んでいって取り出すような実行結果が表示されたと思うのですが、
教師からはTestStack.classを配布したので実行してみろという指示を出されただけで特に説明はありませんでした。
恐らくTestStack.classが実行できた場合は教師が指定したスタックの条件は満たせているぞ、という意味なのだと思います。

525:431
08/07/17 18:27:35
問題2と4に関しては、作成したスタックが教師の条件に沿っていることを確認するものが作れれば良いと思います。

スタックに要素を積んでいって、満杯になったらこれ以上積めないということを表示し、
スタックの要素だけを表示するメソッドを実行して、次に要素をスタックから取り出して表示するメソッドを実行することで、
スタックの要素を表示するメソッドと、要素をスタックから取り出して表示するメソッドが正しく動作することを確認することが出来るのでそのような動作をするようにし、
スタックが空の時に要素を取り出して表示するメソッドを実行したらスタックが空で取り出せないことを表示する、
といったことが出来れば良いと思います。

問題4は「>スタックは大きさを持ち、格納できる要素数はその大きさまでとする。」という部分が問題になっているのでしょうか。
実行できていないので「>テスト結果 = true」についてよくわからないのですが、
Cellを利用して作ると無限に要素を積めるスタックを作れるとしたら、問題文の「>スタックは大きさを持ち、格納できる要素数はその大きさまでとする。」は無視して良いと思います。
問題4では
スタックに要素を積んでいって、スタックの大きさに制限がないためにいくつか積んでも満杯にならないことを確認し、
スタックの要素だけを表示するメソッドを実行して、次に要素をスタックから取り出して表示するメソッドを実行することで、
スタックの要素を表示するメソッドと、要素をスタックから取り出して表示するメソッドが正しく動作することを確認することが出来るのでそのような動作をするようにし、
スタックが空の時に要素を取り出して表示するメソッドを実行したらスタックが空で取り出せないことを表示する、
といったことが出来れば良いと思います。

そして、どちらも問題文で指定されている
>ただし、show メソッドにより、
>スタックが空の場合には
>スタックは空です!
>と表示し、
>“a”,”b”,”c”の順序にスタックにつまれている場合にはスタックの内容を
>c <-- b <-- a
>と表示するようにする。
という部分は守る必要があると思います。

526:431
08/07/17 18:28:14
私は「import~」など、少し複雑になったソースでさえ理解することが出来ませんので、
もし良かったら、上のようなプログラムで、より単純なソースで作って頂けると助かります…
問題2に関しては単純にpush(Object anObject),pop(),top()を実行するプログラムを書けば良いので自分でなんとかなりますが、
問題4に関しては問題3で作成して頂いたソースのコンパイルすら通っておらず、そのソースの構造がどうなっているのか理解することが出来ていないのでメソッドをどう実行したら良いのか分かりません。
問題4も単純に要素を何個か積んで、表示して、取りだしていって、要素が無くなったら要素がないことを表示するようなソースを、メソッドを繰り返し使うことで実現するようなプログラム(?)を書いて頂けると助かります。

恐ろしく素人なので、回答して頂いている方達が疑問に思っている点について私が理解出来ておらず、
回答になっていない気もします…

>>521
恐らく私が今書いたようなことだと思います。
配布されたTestStack.class自体を再現する必要はないと思いますが、
それを再現出来れば動作の確認自体が出来ると思うので、それを再現してもいいのかもしれません。

527:431
08/07/17 18:44:42
そして、前回の課題に合わせて追課題が出てしまいました・・・

【 課題 】 URLリンク(rg550.hp.infoseek.co.jp)
【 形態 】 Javaアプリケーション(main()で開始)
【 期限 】 2008/07/22 06:00
【 Ver  】 1.4.2_12
【 補足 】 課題の丸投げです。>>431で作成すべきソースを利用して作る課題です。

       私は動作確認できていませんが、
       もしかしたら
       URLリンク(rg550.hp.infoseek.co.jp)の一部分を
        void push (Object anObject) {
         // スタックの最後の位置を増やす
         top++;
         // スタックに要素追加
         stack[top] = anObject;
        }
       に書き換えたものと、
       URLリンク(rg550.hp.infoseek.co.jp)
       を利用して解けるかもしれません。
       
       >>431の課題も作成して頂いている途中なので作成をお願いするのが申し訳ないのですが、
       そんなことに構っていられないほど色々な課題や勉強が増えてきておりまして、
       図々しいことは承知の上で回答お願いします。
       できるだけ初心者にも理解し易く、単純な形で記述して頂けると助かります。
       コンストラクタ、メソッド、インスタンス、オーバーロード、合成、継承、オーバーライド、ポリモルフィズム、
       アップキャスト・ダウンキャスト、equalsのオーバーライド、インターフェース、
       程度しか教わっていないようなレベルです。
       宜しくお願いします。

528:デフォルトの名無しさん
08/07/17 18:55:31
>>527
>        URLリンク(rg550.hp.infoseek.co.jp)の一部分を
>         void push (Object anObject) {
>          // スタックの最後の位置を増やす
>          top++;
>          // スタックに要素追加
>          stack[top] = anObject;
>         }
>        に書き換えたものと、
それは何処が書き換わってるの?

529:431
08/07/17 19:11:16
>>528
失礼しました。
public Stack() {
// スタックの大きさ
size = 5;
// スタックサイズで配列作成
stack = new Object[size];
// 空っぽの時はマイナス1とする
top = -1;
}
       を
public Stack(int size) {
// スタックサイズで配列作成
stack = new Object[size];
// 空っぽの時はマイナス1とする
top = -1;
}
に書き換えたものと、
です。

530:デフォルトの名無しさん
08/07/17 19:45:27
>>527
この問題コンストラクタ、メソッド、インスタンス以外使ってないんだが・・

531:デフォルトの名無しさん
08/07/17 23:35:59
作成する側がって意味だろ

532:デフォルトの名無しさん
08/07/18 01:17:02
だれか 1.4.2_12 の環境ある超暇な人、
>import java.io.ByteArrayOutputStream;
>import java.io.PrintStream;
でコンパイルエラーになるか確認してくれないか。

533:デフォルトの名無しさん
08/07/18 01:26:12
ごちゃごちゃ想像してないで、課題2と課題4とTestStack.classを
どうしろというのか直に教師に確認してきなさいよ・・・

534:デフォルトの名無しさん
08/07/18 02:31:14
>>533
実行してみろとしか言われてないって書いてあるだろ
課題自体は431なんだろ

535:デフォルトの名無しさん
08/07/18 12:05:40


課題がわからなくてこまってます。にもかかわらず先延ばしにしてしまい今日の午後四時が締め切りです。
図々しいけどよろしくお願いします。
[課題]10.0、18.5、4.2、19.0、5.0、22.7、2.4、4.8、9.9、7.0
    という十個の実数について大きい順に並び替え、
    最大値、最小値、平均値を求めるプログラムを作成せよ。
[形態]1Javaアプリケーション
[GUI]1AWTのみ
[期限]今日(金曜日)の午後四時

536:デフォルトの名無しさん
08/07/18 12:39:03
>>535
足す順で若干精度が変わるけど、そのへんポイントなの?

double[]a={10.0,18.5,4.2,19.0,5.0,22.7,2.4,4.8,9.9,7.0};
double sum = 0;
java.util.Arrays.sort(a);
System.out.println("大きい順");
for(int i=a.length-1;i>=0;i--){
System.out.println(a[i]);
sum+=a[i];
}
System.out.println("最大値:"+a[a.length-1]);
System.out.println("最小値:"+a[0]);
System.out.println("平均:"+sum/a.length);

537:デフォルトの名無しさん
08/07/18 13:03:44
【 課題 】適当なフレーム(正方形が望ましい)をつくり、その中心にdrawRectで正方形を描画する。
       その後、その正方形に内接する円を描き、正方形の中だけにランダムに
       点を描画することにより円周率πの近似値を求めるプログラムを作成せよ。

【 形態 】1. Javaアプリケーション(main()で開始)
【 GUI  】1. AWTのみ
【 期限 】7/22(火) 13:00
【 Ver  】java version "1.5.0_11"
【 補足 】モンテカルロ法を再現するのだと思いますが、その部分の計算方法がよく分かりません。
       丸投げにしてすいませんがお願いします。

538:デフォルトの名無しさん
08/07/18 15:04:04
>>537
> モンテカルロ法を再現するのだと思いますが、その部分の計算方法がよく分かりません。
正方形の一辺の長さを a とすると、その面積は a × a になる。
この正方形に内接する円の面積は π × a × a ÷ 4 。
正方形内に一様にばらまいた点が内接円の内部に存在する割合は、
正方形の面積に対する内接円の面積の比、すなわち π ÷ 4 。
つまり、ばらまいた点の総数で内接円内の点の数を割ったものの4倍がπの近似値になる。
点が内接円の内部か外部かの判定は、
正方形の重心=円の中心から点までの距離と円の半径 a ÷ 2 との比較で行える。
カルテシアン座標で点の座標を発生させているのなら、
平方根計算が必要な距離そのものでなく、その2乗値と a × a ÷ 4 とを比較してもいい。

539:デフォルトの名無しさん
08/07/18 18:59:26
【課題】Music クラスのオブジェクトを要素とするリストの中から、指定された曲名を持つオブジェクトを線形探索で探すプログラムを作成する。
今回は番兵法を使って作成しなさい。main メソッドのあるクラスのクラス名は SequentialSearchSentinel とする。

URLリンク(rg550.hp.infoseek.co.jp)
【形態】1. Javaアプリケーション(main()で開始)
【期限】7月21日 23:59
【Ver】1.5.0.11
【補足】丸投げです。宜しくお願いします

540:デフォルトの名無しさん
08/07/18 22:14:05
>>537
>正方形が望ましい
uN以外で正方形以外のフレームの作り方教えてくれw

>>539
ちょっとまて、それとあるruby本で同じ問題あったぞw

541:デフォルトの名無しさん
08/07/18 22:18:55
>>540
フレームの形は一般に長方形で、正方形とは限らないのでは?

542:デフォルトの名無しさん
08/07/18 22:19:43
【 課題 】
□実行時に2つの数値を受け取るプログラムを作成しなさい。
□受け取った2つの数値の前1つを「月」、残りの1つを「日」として表示のみさせなさい。
□前出の月・日に対して、その曜日を表示するプログラムを作成しなさい。
【 形態 】1. Javaアプリケーション
【 期限 】7月23日
【 Ver 】1.6.0.06
【 補足 】丸投げです。基本的なことかもしれませんがよろしくお願いします。


543:デフォルトの名無しさん
08/07/18 22:25:39
>>542
どうやって「受け取る」のか、
曜日といっても、何年の曜日なのか・・・

544:デフォルトの名無しさん
08/07/18 22:37:03
>>542
if(args.length != 2)
return;
Calendar c =Calendar.getInstance();
c.set(Calendar.MONTH, Integer.parseInt(args[0])-1);
c.set(Calendar.DAY_OF_MONTH, Integer.parseInt(args[1]));
// c.set(Calendar.YEAR, 2008);
System.out.println("月火水木金土日".charAt(c.get(Calendar.DAY_OF_WEEK)-2));

年は2008(今年でいいのであれば設定の必要なし)、受け取り方はプログラム引数として、と仮定してます。

545:デフォルトの名無しさん
08/07/18 22:44:32
>>544さん、ありがとうございます。
いろいろ説明不足ですみません。


546:デフォルトの名無しさん
08/07/18 22:49:16
【 課題 】
□1から100までの乱数を発生させるプログラムを作成しなさい。
□上で発生させた乱数が50より大きい場合には「BIG」、50以下である場合には「SMALL」と表示させるプログラムを作成しなさい。
【 形態 】1. Javaアプリケーション
【 期限 】7月23日
【 Ver 】1.6.0.06
【 補足 】Math.random()メソッドを利用します。

さっき質問した者です。またお願いします。



547:デフォルトの名無しさん
08/07/18 22:55:49
>>546
double d = Math.random()*100+1;
System.out.println(d>50? "BIG":"SMALL");
これぐらいで躓いてたら・・・まぁいいけど。

548:デフォルトの名無しさん
08/07/18 23:15:01
>>547さん、ありがとうございます。

549:デフォルトの名無しさん
08/07/19 03:43:52
>>509で質問したものです。続きの課題でこけました。よろしくお願いします。

【 課題 】エラーが出るので、原因を考えて修正せよ
URLリンク(rg550.hp.infoseek.co.jp)
(参照?しているAbstractWorldClock.java は完成品)
【list.add(new DigitalWorldClock());】←を消すととりあえずは動くのですが、
表示されるのが全てTokyoになってしまいます。。。

【 形態 】1. Javaアプリケーション(main()で開始)
【 GUI  】1. AWTのみ(だと思います)
【 期限 】日曜日

550:デフォルトの名無しさん
08/07/19 09:51:02
>>549
引数無しのコンストラクタも作ったらいいんじゃね?

551:デフォルトの名無しさん
08/07/19 09:56:31
>>549
AbstractWorldClock.java も up してくれないと、list.add ~ を消しても
コンパイルできんじゃないかw

552:デフォルトの名無しさん
08/07/19 10:42:21
>>539
for(int i=0; result!=null; ++i) if(music[i].getTitle().equals(songName)) result = music;
if(result == sentinel) return null;
コンパイルしようとしたら手元のは 1.4.2_09 で断念w

553:デフォルトの名無しさん
08/07/19 11:05:51
>>552
シンボルを見つけられません
場所;SequentialSearchSentinelのクラス

if(music[i].getTitle().equals(songName))
  ^
とコンパイルエラーがでてしまうのですがどうすれば良いのでしょうか?

554:デフォルトの名無しさん
08/07/19 11:13:01
>>553
ああ、すまん。
if(music[i] ~
じゃなくて
if(list[i]~
か。

555:デフォルトの名無しさん
08/07/19 11:21:44
>>539
for(Music m:list){
if(m.getTitle().equals(songName)){
if(m!=sentinel){
result=m;
}
break;
}
}

556:デフォルトの名無しさん
08/07/19 11:31:24
>>554 >>555

コンパイルできました。ありがとうございます

557:デフォルトの名無しさん
08/07/19 14:12:38
>>554
うひゃあ、まだバグってるじゃん。
result = music;
じゃなくて
result = list[i];
だし・・・ダメだ俺

558:549
08/07/19 14:42:41
>>551
すいません、AbstractWorldClock.javaは↓です;
URLリンク(rg550.hp.infoseek.co.jp)

559:デフォルトの名無しさん
08/07/19 14:53:36
>>558
>>550でなにか不都合でもあるのか?

560:デフォルトの名無しさん
08/07/19 16:45:44
>>549
コンストラクタ DigitalWorldClock(String c, int o) を空実装にすると
AbstractWorldClock の引数なしのコンストラクタが呼ばれる(全部Tokyoになる原因)
AbstractWorldClock の引数ありのコンストラクタで初期化したいのなら
DigitalWorldClock(String c, int o) を空実装にせず super(c, o) を明示的に呼ぶようにする
また引数ありのコンストラクタを定義すると引数なしのコンストラクタは定義されないので
>>550の言うように引数なしのコンストラクタ DigitalWorldClock() を別に定義してやる

561:デフォルトの名無しさん
08/07/19 16:49:07
神IDキター!!

戻97/351:7分74秒[]
2008/07/19(土) 09:37:49 ID:mmPenisP
>現代作曲家が医者並みに社会に必要かどうかすごく疑問なんだが

必要だ。
--- 以下スレ情報 ---
 ¥¥¥ 現代音楽に税金を使うな ¥¥¥  (351)
スレリンク(contemporary板)

562:549
08/07/19 18:45:42
>>550>>580
回答ありがとうございます&すみませんでした;
「引数無しのコンストラクタ」の意味がわかってなかったので、
558に一緒に書きこんだつもりだったのですが書けてなかったようです;
560の説明で、意味がわかりました。


>>560
回答ありがとうございます。
ご説明いただいたことはわかりました!が、
>super(c, o) を明示的に呼ぶようにする
の方法がわかりません…

563:デフォルトの名無しさん
08/07/19 19:03:03

以下のようなコードを実行すると、((ArrayList)getList.get(2)).remove(l);の
ところで、java.lang.ArrayIndexOutOfBoundsException: -1
とコンパイラから注意されます。どうしたらいいか教えていただけませんか?

String findstring=thesaurus;
for(int k=0, l=0 ; k < ((ArrayList)getList.get(2)).size(); k++, l++){
String filename = (String) ((ArrayList)getList.get(2)).get(k);
try{
String line;
BufferedReader reader=new BufferedReader(new FileReader(filename));
while((line=reader.readLine())!=null){
int n=line.indexOf(findstring);
if(n<0){
((ArrayList)getList.get(2)).remove(l);
l--;
}
}
reader.close();
}
}




564:デフォルトの名無しさん
08/07/19 19:25:08
ArrayIndexOutOfBoundsExceptionがコンパイル時に投げられる・・・
お手上げっす(わらい)

565:デフォルトの名無しさん
08/07/19 19:31:43
>>563
質問は質問スレへ

566:デフォルトの名無しさん
08/07/19 19:33:26
【初心者】Java質問・相談スレッド117【歓迎】
スレリンク(tech板)

そもそも、部分だけ書かれても回答が付かないだろ。

567:デフォルトの名無しさん
08/07/19 20:10:22
>>563
まぁ、
最初のファイルに2行以上あって、どの行にも thesaurus の文字列が無かったらどうなるか
ってことだ。

568:デフォルトの名無しさん
08/07/19 21:49:38
562です
自己解決しました。
どうもありがとうございました。

569:431
08/07/20 01:57:41
作成して頂いたプログラムですが、コンパイルと実行に成功しました。
何か変な手順を踏んでいたのかもしれません。
回答ありがとうございます。

>>431の問題5と>>527(>>529で一部訂正)の回答お願いします。

570:デフォルトの名無しさん
08/07/20 16:08:45

【 課題 】立ち上げるとウィンドウが表示され、マウスでクリックするとウィンドウの背景の色が赤青緑でランダムに変わる(同じ色が連続で出る可能性もある)プログラムを作成しなさい。
【 形態 】Appletでもframeでもかまわない
【 期限 】明日まで><。


ごめんなさい丸投げです・・・。
私に救いの手を~><。

571:デフォルトの名無しさん
08/07/20 17:02:53
>>570
final JFrame f = new JFrame();
f.setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE);
f.setSize(300,300);
f.addMouseListener(new MouseAdapter(){
Color color[] = new Color[]{
Color.RED,
Color.GREEN,
Color.BLUE
};
public void mouseClicked(MouseEvent e){
f.getContentPane().setBackground(color[(int)(Math.random()*color.length)]);
}
});
f.setVisible(true);

572:570
08/07/20 17:32:03
は、はやい!!
ありがとうございます!!

573:デフォルトの名無しさん
08/07/20 21:08:47
【 課題 】URLリンク(rg550.hp.infoseek.co.jp)
【 形態 】1. Javaアプリケーション(main()で開始)/
【 GUI  】不明
【 期限 】7/22 午前9時
【 Ver  】java version "1.6.0_06"
【 補足 】コメントが必要とのことです、よろしくお願いします。


574:デフォルトの名無しさん
08/07/21 13:20:35
【 課題 】
csvに書いてある3択問題を管理するシステムを作る。
1,問題が記されているファイル名はmondai.csvにすること。
2,入力した答えが一致すれば『正解』不一致ならば『正解は~です。』と出力せよ。
【 形態 】1. Javaアプリケーション(main()で開始)
【 期限 】7/25まで
【 Ver  】1.6.0
【 補足 】
ようは3択クイズのjavaを組めということらしいです。
ランダムで出題する必要はなく、csvの上から下までの問題を出して終わり、
というものでいいそうです。
丸投げですが、お願いします。

575:デフォルトの名無しさん
08/07/21 17:28:07
問題csvぐらい考えろやw

576:デフォルトの名無しさん
08/07/21 18:11:21
こういう場合に教員が言うCSVって、引用符とか一切考慮していないよね。

577:デフォルトの名無しさん
08/07/21 18:22:07
【 課題 】URLリンク(rg550.hp.infoseek.co.jp)
【 形態 】1. Javaアプリケーション(main()で開始)
【 期限 】7/23 (水)
【 Ver  】jdk1.6.0_10
【 補足 】丸投げです。一応、概要を書いたんですが、これで大丈夫ですかね?
適当な場所にテキストファイルを作って、readさせる。
enumにあるコマンドを入力することで、いろいろ編集させる。
お願いします。

578:デフォルトの名無しさん
08/07/21 20:08:40
CSVはこれでいいだろ
\G(?:^,|,)(?:"((?>[^"]*+)(?>""[^"]*+)*+)"|([^",]*+))

579:デフォルトの名無しさん
08/07/21 20:36:11
つまり、こうか。>>578
\G(?:^, | ,) (?: "((?>[^"]*+) (?>""[^"]*+)*+)" | ([^",]*+))

先頭が,で始まって、又は、,から始まって、
"で始まって "で終わる文字列か、又は、"と,以外が続く文字列。
"と"の間は、"以外が続いた後、("2個連続を前に置いて、"以外が続く)の繰り返し

580:デフォルトの名無しさん
08/07/21 20:57:00
宿題なら単にカンマをSplitする程度でよくね?

581:デフォルトの名無しさん
08/07/21 21:13:36
>>580
どうせ教員の考えているCSVなんてそれのことだろうけど・・・

582:デフォルトの名無しさん
08/07/22 02:00:14
【 課題 】ラインエディタ作成
【 形態 】1. Javaアプリケーション(main()で開始) 使用しているのはEclipseです
【 期限 】提出期限 7月28日夜まで
【 Ver  】3.2.2 
【 補足 】ラインエディタを作ります
実装される命令と実行例はkadai.txtに書いてあります
穴埋め問題です
○投げでしかも長いのですがよろしくお願いします

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

583:デフォルトの名無しさん
08/07/22 02:39:37
【 課題 】次のA~Dを解き、ユーザから与えられた式の値を計算してグラフを描画するプログラムを作成せよ。
      A)中置記法で書かれた数式を後置記法(Reverse Polish Notation)に変換するプログラム
      B)後置記法で書かれた式の値を計算するプログラム
      C) 与えられた数値データのグラフを描くプログラム
      D)mainプログラム
【 形態 】1. Javaアプリケーション(main()で開始)
【 期限 】25日まで
【 Ver  】1.6.0 
【 補足 】どう工夫したか考察もいるみたいです…
丸投げで申し訳ありませんが、どうかよろしくお願いします。

584:デフォルトの名無しさん
08/07/22 04:10:04
>>574
んで結局こんな感じ?
import java.io.*;
import java.util.*;
public class 三択問題 {
public static void main(String[] args) throws FileNotFoundException {
Scanner 問題 = new Scanner(new File("mondai.csv")).useDelimiter(",|"+System.getProperty("line.separator")+"");
Scanner 回答 = new Scanner(System.in);
while(問題.hasNext()) {
System.out.println("問題: "+問題.next());
System.out.println(" 1. "+問題.next());
System.out.println(" 2. "+問題.next());
System.out.println(" 3. "+問題.next());
System.out.print("正解は?: ");
int 正解 = 問題.nextInt();
if(回答.nextInt() == 正解) {
System.out.println("正解");
} else {
System.out.println("正解は "+正解+" です。");
}
}
問題.close();
}
}
//---- mondai.csv ----
//1+1は?,1,2,3,2
//50音の3番目は?,あ,い,う,3

585:デフォルトの名無しさん
08/07/22 06:40:36
【 課題 】一枚のビットマップ画像を読み込み、任意の位置で左右に2分割し
それぞれ名前をつけて(↓画像参照)保存するプログラムを作成せよ
URLリンク(www.uploda.org)
【 形態 】javaアプレット
【 GUI  】AWTのみ
【 期限 】23日午前
【 Ver  】java version "1.6.0_05"
Java(TM) SE Runtime Environment (build 1.6.0_05-b13)
Java HotSpot(TM) Client VM (build 10.0-b19, mixed mode, sharing)
【 補足 】すいません、丸投げです 
できるところまでで良いのでお願いします

586:デフォルトの名無しさん
08/07/22 11:14:01
>>585
アプレットってことは無いだろうとおもうので、こんな。
URLリンク(rg550.hp.infoseek.co.jp)

587:デフォルトの名無しさん
08/07/22 20:50:12
TextSS


588:デフォルトの名無しさん
08/07/23 03:30:16
>>582
URLリンク(rg550.hp.infoseek.co.jp)

既に埋めてある部分も直す必要があった。
addf と insertf は仕様が分からんので適当に作った。必要なら直せ。
ついでに、read が2回以上やったときの読み込み行数表示がバグってるが
直せるけども直してない。

589:588
08/07/23 03:39:20
まちがった。
>>582 じゃなくて >>577

590:588
08/07/23 03:44:19
なんだ、>>582>>577 は同じかwww

591:585
08/07/23 07:20:01
>>586
有難うございます 実行してみたところこのようなメッセージが出てしまいました

javax.imageio.IIOException: Can't read input file!
 at javax.imageio.ImageIO.read(Unknown Source)
 at MainFrame.<init>(MainFrame.java:22)
 at MainFrame.main(MainFrame.java:15)

ファイルが見つからないのかと思いましたが同じフォルダに画像ファイルは置いています、
どこがおかしいのでしょうか

592:デフォルトの名無しさん
08/07/23 08:50:24
>>591
src.bmp

593:デフォルトの名無しさん
08/07/23 09:26:33
>>591
ソース内のファイル名の方を調整して欲しい。

594:591
08/07/23 10:12:29
画像ファイルがsrc.bmpという名でも同じエラー文が出てしまいます
画像のサイズとか場所とか・・・関係ありませんよね(場所はclassファイルと同じフォルダです)

595:デフォルトの名無しさん
08/07/23 10:33:44
>>594
src.bmpをおいている位置では?
コマンドプロンプトから起動しているなら、カレントディレクトリを見ているはず。
eclipseから起動なら、.projectがあるディレクトリ。

596:デフォルトの名無しさん
08/07/23 10:34:31
>>594
絶対パスで指定してみるのも。

597:577
08/07/23 11:54:20
>>588-590
すべての動作確認しました。
ありがとうございます。

582が全部なんですけど、さすがに多すぎてやってもらえないだろうと思って
現段階でわからないのを書きました。

598:594
08/07/23 11:56:02
>>595
>>596
m(;__)m大変もうしわけありません、お手数をおかけしました
画像データの名前を「scr.bmp」としていました(正しくはsrc.bmp)馬鹿です、ハイ。
そして実行してみたところうまくいきました、任意の位置で分割できました。
有難うございました

599:デフォルトの名無しさん
08/07/23 15:01:07
>>587
URLリンク(www.vector.co.jp)


600:デフォルトの名無しさん
08/07/23 15:01:39
bmpではなく、jpegやpngで画像分割できると、フリーソフトとして使い勝手があるかもしれない

601:デフォルトの名無しさん
08/07/23 15:05:51
>>600
よく分からんがsrc=ImageIO.read(new File("src.bmp"));のbmpをjpgやpngに変えればいいんじゃないんか
そんな単純な話じゃない? 



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