★★ Java の宿題ここで答えます Part 57 ★★
レス数が1000を超えています。これ以上書き込みはできません。
0001JavaScriptは板違い、Web制作板をご利用ください
2006/07/07(金) 15:24:011:問題文は自己省略せずに、直接全部貼り付けてください。
2:課題の「丸投げ」が最も好ましい提示法です。なるべく丸投げしてください。
3:数学問題は「○×法でせよ」だけでなく、その数式、前提条件も説明してください。
4:課題&宿題関連の質問はOKですが、それ以外の一般的な質問は禁止です。
5:もし回答プログラムがアップされたら、その返答と動作報告をお願いします。
【課題提示用テンプレ】
【 課題 】与えられた課題文をそのまま書きます 《必須》
【 用語 】数学用語、専門用語の意味、説明を書きます 《あれば必須》
【 期限 】提出期限、解答希望日があれば書きます
【 Ver 】希望するJavaバージョンがあれば書きます
【 補足 】課題について自分なりに補足する事、何か思う事があれば書きます。
丸投げでない場合は、途中までのソースとその経過報告、
質問点、疑問点を書きます(なるべく丸投げにしてください)
【回答プログラムの掲載場所】
Java質問スレWiki http://www.wikiroom.com/java/
ソースポストネット http://sourcepost.sytes.net/
【前スレ】
http://pc8.2ch.net/test/read.cgi/tech/1145447187/
0951デフォルトの名無しさん
2006/09/29(金) 08:56:540952933
2006/09/29(金) 11:30:23これをJavaアプレットで立ち上げるとアプレットが開いて、
フォームに英数字を入力してaddBtnを押すとファイルにそのデータを順次追加、
firstBtnで最初に追加した要素を表示、lastBtnで最後に追加した要素を表示、
displayBtnで追加した要素を全て表示・・・
といった機能を持つプログラムです。
ここにremoveBtnを追加して、問題文のとおりの機能を持つ
ボタンを作るプログラムを書けというのが出題された課題です。
よろしくお願いします
0953デフォルトの名無しさん
2006/09/29(金) 15:01:16消えとらんぞ?
0954デフォルトの名無しさん
2006/09/29(金) 15:03:08お前、丸投げしろと言われてるのがわからんのか?
0955デフォルトの名無しさん
2006/09/29(金) 15:07:09文章で書かないで、ソース一式うぷろだに上げた方が話が早いと思うよ?
丸投げしろ、ってのはそういう意味。
それが嫌なら、諦めて自分でやりなされ。
0956デフォルトの名無しさん
2006/09/29(金) 15:47:56みんなそんな事は最初からわかってるよ。ただ、情報が足りないって言ってるんだよ。
「データを並び替えるプログラム」ってのも様々なやり方があるから元のソースが無いと回答しようが無いんだよ。
「腹が痛い」ってだけ言われても食あたりなのか虫垂炎なのかわからないだろ?
自分の腹を他人に見せないと誰も助けられないよ。
ソース全部http://sourcepost.sytes.net/ に上げて、改めて頼んでみたら?
0957デフォルトの名無しさん
2006/09/29(金) 15:48:08文章が長いので2回に分けます。
まず、トランプのカードとなるTrumpCard クラスを作ります.普通トランプにはスペード,クラブ,
ハート,ダイヤのマークとジョーカーがあります.また,それぞれの数値は1 から13 までの値を持つ
ので,それらを表現できるようにTrumpCard クラスを構成します.以下にあげる仕様を充たすように
TrumpCard を定義し,サンプルソースが動作するようにプログラミングを行いなさい.
1. クラスTrumpCard は,クラス変数として,String 型の変数SPADE,CLUB,HEART,DIAMOND,
JOKER を持つ.値はそれぞれ “spade”, “club”, “heart”, “diamond”, “joker” としま
す.
2. クラスTrumpCard は,インスタンス変数として,String markOfCard、int numberOfCard
を持ちます.markOfCard はトランプのマークをnumberOfCard はトランプの数字を示します.
3. クラスTrumpCard は,コンストラクタとしてTrumpCard(String mark, int number)を持
ちます.引数として与えられるmark はトランプのマークを与えることで,markOfCard に代入さ
れることとします.number はトランプの数値を示し,number で与えた値がnumberOfCard に
代入されることとします.また,mark の値が “joker”であった場合は,number の値が何であれ,
numberOfCard の値は14 とします.
4. クラスTrumpCard は,メソッドとして,public void showCard()を持ちます.このメソッド
を使用するとそのクラスの持つmarkOfCard とnumberOfCard の値をセットで表示します。
ヒント:文字列同士を比較する場合はString クラスのメソッドcompareTo(String)を使用するこ
とで比較ができます.これは,インスタンスが持つ文字列と引数の文字列とを比較するメソッドです。
文字列が等しいならば0 を返します。詳細はJava API 表のString クラスを見てください.
0958957
2006/09/29(金) 15:51:06<<課題1-1 サンプルソース>>
public class Lesson1_1 {
public static void main(String argv[]) {
TrumpCard [] myCards =new TrumpCard[5];
myCards[0] = new TrumpCard(TrumpCard.SPADE,1);
myCards[1] = new TrumpCard(TrumpCard.CLUB,10);
myCards[2] = new TrumpCard(“heart”,5);
myCards[3] = new TrumpCard(“diamond”,12);
myCards[4] = new TrumpCard(TrumpCard.JOKER,9);
for(int i=0; i<5; i++)
myCards[i].showCard();
}
}
class TrumpCard {
//ここに実装を書く
TrumpCard(String mark, int number) {
//ここに実装を書く
}
public void showCard() {
//ここに実装を書く
}
}
提出期限は10月4日です。
宜しくお願い致します。
0959デフォルトの名無しさん
2006/09/29(金) 16:01:30public final static String SPADE = "spade";
public final static String CLUB = "club";
public final static String HEART = "heart";
public final static String DIAMOND = "diamond";
public final static String JOKER = "joker";
private String markOfCard;
private int numberOfCard;
TrumpCard(String mark, int number){
markOfCard = mark;
if(mark.compareTo(JOKER) == 0){
numberOfCard = 14;
}else{
numberOfCard = number;
}
}
public void showCard(){
System.out.println(markOfCard+numberOfCard);
}
}
0960デフォルトの名無しさん
2006/09/29(金) 16:04:230962957
2006/09/29(金) 19:16:55図々しいとは思いますが課題が全部で7つあり、全く分からない状況です。
もし、宜しければお願い致します。
1. クラスTrumpCard は,メソッドとしてpublic boolean compareStatus(String mark)を
持ちます.このメソッドが呼ばれた場合そのインスタンスが持つmarkOfCard の値とmark とを
比べ,同じ文字列であればtrue を異なればfalse を返り値として返します.
2. クラスTrumpCard は,メソッドとしてpublic int compareStatus(int number)を持ちま
す.このメソッドが呼ばれた場合そのインスタンスが持つnumberOfCard の値とnumber とを比
べ,同じ値ならば0 を,numberOfCard の方が大きければ正の整数,number の方が大きければ
負の整数を返り値として返します.数の大きさそのものは任意とします.
3. クラスTrumpCard は,メソッドとしてpublic int compareStatus(TrumpCard tc)を持ち
ます.このメソッドが呼ばれた場合そのインスタンスが持つmarkOfCard, numberOfCard の値
とtc の持つmarkOfCard, numberOfCard とをそれぞれ比べ,どちらも異なれば0 を,マーク
が同じなら1 を,数値が同じなら2 を,どちらも同じなら3 を返り値として返します.このとき返
り値として指定されている,0,1,2,3 の値をそれぞれクラス変数として,DIFFERENT,
SAME_MARK, SAME_NUMBER, EQUIVALENT として定義すること.
4. 1.2.3.のように同じ名前のメソッドでありながら,引数などの違いによって異なる実装を可
能とすることをなんと呼ぶか?ソース内のこれらのメソッド近くにコメントとして書き示しなさ
い.
0963957
2006/09/29(金) 19:19:40public static void main(String argv[]) {
TrumpCard [] myCards =new TrumpCard[6];
myCards[0] = new TrumpCard(TrumpCard.SPADE,1);
myCards[1] = new TrumpCard(TrumpCard.CLUB,1);
myCards[2] = new TrumpCard(TrumpCard.DIAMOND,12);
myCards[3] = new TrumpCard("diamond",10);
myCards[4] = new TrumpCard(TrumpCard.JOKER,9);
myCards[5] = new TrumpCard(TrumpCard.JOKER,2);
for(int i=0; i<6; i++) {
if(myCards[i].compareStatus(TrumpCard.SPADE)==true)
System.out.print(i+"枚目はスペードで,");
else System.out.print(i+"枚目はスペードでなく,");
if(myCards[i].compareStatus(7)>0)
System.out.println("7 より大きい数字です.");
else System.out.println("7 以下の数字です.");}
for(int i=0; i<6; i=i+2) {
int check = myCards[i].compareStatus(myCards[i+1]);
if(check==TrumpCard.DIFFERENT)
System.out.println(i+"枚目と"+(i+1)+"枚目は違うカードです.");
if(check==TrumpCard.SAME_MARK)
System.out.println(i+"枚目と"+(i+1)+"枚目はマークが同じです.");
if(check==TrumpCard.SAME_NUMBER)
System.out.println(i+"枚目と"+(i+1)+"枚目は数値が同じです.");
if(check==TrumpCard.EQUIVALENT)
System.out.println(i+"枚目と"+(i+1)+"枚目は同じカードです.");
}}}
class TrumpCard {
//実装を追加する.
}
上記が課題2です。提出期限も課題1と同じで10月4日です。
0964957
2006/09/29(金) 19:20:29Lesson1_2 で作成したTrumpCard を拡張します.トランプでゲームを行う場合,そのカードが表を
向いているか裏を向いているかという要素は重要なので,それを表現できるようにします.この場合の
表とはマークや数値が表示されている側,裏はその逆で絵柄が付いている側を指すこととします.サン
プルプログラムが動作するように,以下の実装を付け加えなさい.
1. クラスTrumpCard は,インスタンス変数として,boolean openStat を持ちます.そのインス
タンスが表の場合はtrue,裏の場合はfalse の値を持つものとします.
2. クラスTrumpCard は,コンストラクタTrumpCard(String mark, int number, boolean
open)を持ちます.open によって,インスタンスの初期状態での表裏の値(openStat の値)を
決めることができるものとします.また,指定されない場合の初期値はfalse(裏向き)とします.
3. クラスTrumpCard は,メソッドとしてpublic void setOpened(boolean open)を持ちます.
このメソッドが呼ばれた場合そのインスタンスが持つopenStat の値をopen の値に置き換えます.
4. クラスTrumpCard は,メソッドとしてpublic boolean getOpened()を持ちます.このメソ
ッドが呼ばれた場合そのインスタンスが持つopenStat の値を返り値として返します.
0965957
2006/09/29(金) 19:21:03public static void main(String argv[]) {
TrumpCard [] myCards =new TrumpCard[3];
myCards[0] = new TrumpCard(TrumpCard.SPADE,1);
myCards[1] = new TrumpCard(TrumpCard.CLUB,10,true);
myCards[2] = new TrumpCard(TrumpCard.DIAMOND,12,false);
for(int i=0; i<3; i++) {
if(myCards[i].getOpened())
System.out.println(i+"枚目は表です.");
else System.out.println(i+"枚目は裏です.");
}
System.out.println("0 枚目を表に1 枚目を裏にします.");
myCards[0].setOpened(true);
myCards[1].setOpened(false);
for(int i=0; i<3; i++) {
if(myCards[i].getOpened())
System.out.println(i+"枚目は表です.");
else System.out.println(i+"枚目は裏です.");
}
}
}
class TrumpCard {
//ここに実装を書く
}
0966957
2006/09/29(金) 19:21:40課題1-3 で作成したTrumpCard を拡張します.すでに生成されているインスタンスに対してのパラメ
ータの変更ができるようにします.以下の仕様を充たしサンプルプログラムが動作するように実装を行
いなさい.
1. クラスTrumpCard は,メソッドとして,public String getMark()と,public void
setMark(String mark)を持ちます.getMark はインスタンスの持つmarkOfCard の値を返り
値として返し,setMark はインスタンスの持つmarkOfCard の値をmark に置き換えます.
2. クラスTrumpCard は,メソッドとして,public int getNumber()と,public void
setNumber(int number)を持ちます.getNumber はインスタンスの持つnumberOfCard の値
を返り値として返し,setNumber はインスタンスの持つnumberOfCard の値をnumber に置き
換えます.
3. クラスTrumpCard は,メソッドとして,public void setStatus(String mark, int number)
とpublic void setStatus(String mark, int number, boolean open)を持ちます.コ
ンストラクタの時と同様にインスタンスの持つmarkOfCard, numberOfCard, openStat の値
をmark, number, open に置き換えます.ただし,open が指定されないときは,open の値は
現状の値をそのまま保持します.
4. どちらの場合もJOKER の場合は例外として先の仕様を充たし不整合が起きないようにしてくださ
い.
5. メソッドshowCard()を変更し,カードの状態をgetMark(), getNumber(), getOpened()
を使ってカードのマーク,数値,表裏の状態の表示を行いなさい.
0967デフォルトの名無しさん
2006/09/29(金) 19:25:28、| . . .・ニ、 . . . .、 ゙_、∴ー 、 . . . ._ ..〜.
.¨¨¨¨¨〕¨¨¨¨゜ ゙,、_ ソ ゙v.、’. ´ 、’ ._^- . `′ .`
i . . . .`/ 、\..` .1 .゜` . ’_ 、_、
| 、 .ソ`’ . } . . ..─‥´`
` . . .’ . . . .ソ´ ..’ ゙!`ゝ| ゙’
. | . . .° .、’ .’、.、 . . . .’
. 、! ̄``’-._ ^ ’ . . .・゜─--
. ’=‐^ .` . .’ `-、_
`〜。、_
. `′
0968957
2006/09/29(金) 19:31:00public static void main(String argv[]) {
TrumpCard [] myCards =new TrumpCard[3];
myCards[0] = new TrumpCard(TrumpCard.SPADE,0);
myCards[1] = new TrumpCard(TrumpCard.CLUB,10,true);
myCards[2] = new TrumpCard(TrumpCard.DIAMOND,12,false);
for(int i=0; i<3; i++) {
myCards[i].showCard();
}
myCards[0].setMark(TrumpCard.HEART);
myCards[1].setNumber(14);
myCards[2].setStatus(TrumpCard.JOKER, 3, true);
for(int i=0; i<3; i++) {
myCards[i].showCard();
}
}
}
class TrumpCard {
//ここに実装を書く
}
0969933
2006/09/29(金) 19:47:03最初にソース上げたと思い込んでました…
本当に申し訳ありませんでした
http://sourcepost.sytes.net/sourcepost/sourceview.aspx?source_id=28370
0970957
2006/09/29(金) 19:50:28中身はdoc形式になっております、
ttp://winplus.or.tp/uploader01/upload.php?counting=178&firen=winplus.jp178.zip
最初から気づいていればよかったのですが、スレを消費してしまい申し訳ありませんでした。
0971デフォルトの名無しさん
2006/09/29(金) 19:55:06まだまだ時間はたくさんあるのに…。
ここをうろうろしてる連中なら即日で回答できるし、10/2ぐらいまでは
自分で粘ってみてもいいんジャマイカ?
0972957
2006/09/29(金) 20:06:26確かにあなたの言う通りだと思います。
実はもうすぐ資格の試験日が近づいており、その勉強もしないといけない状況下にあるので、
時間があるようで実はないんです…。
試験が終われば時間に余裕が出来てくるのでJavaの基本から勉強しようと思っているので、
今回だけはどうかお助け下さい…。
0973デフォルトの名無しさん
2006/09/29(金) 20:08:560974デフォルトの名無しさん
2006/09/29(金) 20:27:32授業も落として、資格も落ちたほうが、奴の今後のためだろう。
0975デフォルトの名無しさん
2006/09/29(金) 20:44:33基本情報でも受けるのか
だったらこの程度の課題が出来ないとダメだろ
0976デフォルトの名無しさん
2006/09/29(金) 20:56:34まあ完全に投げてるわけじゃないんだな。
仕事から帰ってきて回答あがってなかったらやってやるよ。
0977デフォルトの名無しさん
2006/09/29(金) 22:41:310978デフォルトの名無しさん
2006/09/29(金) 22:43:110979デフォルトの名無しさん
2006/09/29(金) 23:19:500980デフォルトの名無しさん
2006/09/30(土) 04:44:32System.out.println("引いたカードは" + (v == 1 ? "A" : v) + "です");
の(v == 1 ? "A" : v)の部分の意味が良くわかりません。
よろしければ解説お願いします。
0981デフォルトの名無しさん
2006/09/30(土) 05:06:10三項演算子でぐぐれ
0982デフォルトの名無しさん
2006/09/30(土) 05:47:40>>968 は大丈夫なのか? スペードの0の存在を許容してしまっているが。
あと、与えられてる文章だけじゃナンバーが14の場合はJOKERに化けて
良いのかもよくわからん。
0983デフォルトの名無しさん
2006/09/30(土) 05:52:22「JOKERならば14」
とされてはいるものの、
「14ならばJOKER」
という指示がなされてないから、JOKERに配慮した設計をしろと言われても
どう対処すべきなのかがこちらで判断できん。
おまいもわからんようなら、「課題の文面では○○か判断できなかったため、
独断で△△のようにしました」ってぐらいのコメントを突っ込んでおくが。
0984980
2006/09/30(土) 06:13:28ググって使い方はわかった。
けどEclipseではじかれるのは仕様?
使うことは余り好ましくないみたいに書かれてたからはじかれるだけ?
コンソールならできるのかな?
0985デフォルトの名無しさん
2006/09/30(土) 06:24:56今試してみたが、別にはじかれんぞ。
んで、ここは宿題スレ。お前の投稿は ImproperThreadException
0986984
2006/09/30(土) 06:37:35>>339のをそのままコピペしたら
非互換条件オペランド型 String と int
と出る。
if〜elseに書き直せば普通に通る。
ちなみにJDKは1.5.0_08。
スレ違いなのでこれ以上はやめておく。
スレ汚しスマン。
0987デフォルトの名無しさん
2006/09/30(土) 08:34:05http://pc8.2ch.net/test/read.cgi/tech/1159572806/
0988957
2006/09/30(土) 09:13:36問題は丸投げの物を書いてあるので、Javaのことが全く分からない自分からすると
お二人の言ってることがいまいち理解出来ない状況ですので、
来週の火曜日に講義があるので、その時に聞いてみます。
0989957
2006/09/30(土) 09:48:07ttp://winplus.or.tp/uploader01/upload.php?counting=186&firen=winplus.jp186.zip
zip圧縮の中身はdoc形式でアップロードしましたので、
必要な方はご参考程度にDLお願いします。
0990デフォルトの名無しさん
2006/09/30(土) 09:52:50コードみて確信した。
>>949 がESPで答えてる。w
やるなw >949
0991デフォルトの名無しさん
2006/09/30(土) 11:39:38確信以前に、名前に書いてるだろ。
これだからアホジャヴァーは。
0992デフォルトの名無しさん
2006/09/30(土) 11:47:130993デフォルトの名無しさん
2006/09/30(土) 12:03:41答えを貰えなかった連中は次スレで訴えてくれ。
0994デフォルトの名無しさん
2006/09/30(土) 12:05:220995デフォルトの名無しさん
2006/09/30(土) 12:06:230996デフォルトの名無しさん
2006/09/30(土) 12:07:240997デフォルトの名無しさん
2006/09/30(土) 12:08:240998デフォルトの名無しさん
2006/09/30(土) 12:08:350999デフォルトの名無しさん
2006/09/30(土) 12:08:561000デフォルトの名無しさん
2006/09/30(土) 12:09:5310011001
Over 1000Threadもう書けないので、新しいスレッドを立ててくださいです。。。
レス数が1000を超えています。これ以上書き込みはできません。