★★ Java の宿題ここで答えます Part 56 ★★

このエントリーをはてなブックマークに追加
1デフォルトの名無しさん
【Java宿題スレッド基本ルール・五箇条の御誓文】
1:問題文は自己省略せずに、直接全部貼り付けてください。
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/1138281809/
2デフォルトの名無しさん:2006/04/19(水) 20:49:03
やった!ウンコ様が2げっとだ!!お前等ウンコ様にひれ伏せ!クソ共が!
 ̄ ̄ ̄ ̄ ̄∨ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
       人
      (_)
      (___)
     (,,・∀・)
      ( O┬O
  ≡ ◎-ヽJ┴◎  キコキコ

>>1糞スレにも満たない下痢スレたてんな!
>>3氏ねビチグソ野郎!
>>4おせーよ便秘!
>>5糞レスつけんな!
3デフォルトの名無しさん:2006/04/19(水) 21:26:55
[課題]
●サイズは640x400
●格子の間隔は20ピクセル
●円の直径は20ピクセル

の条件で長方形のアプレットの中で縦、横に直線を引いてその交点を中心
とした円を横に16個、縦に10個の円を描くJAVAプログラム
[その他]JAVAなら何でも良いです。
4デフォルトの名無しさん:2006/04/19(水) 21:50:41
■丸投げが好ましい理由

何故「丸投げ」が好ましいのかと言うと、人のソースを読んで
それに修正を加えるのは、一から書くのより数倍大変になるのですね。
だから、少しでも自分でプログラムを書いてそれから出そうとするのは
余計なお節介どころか、絶対やって欲しくないお節介になってしまうのです。
5デフォルトの名無しさん:2006/04/19(水) 22:44:42
6デフォルトの名無しさん:2006/04/19(水) 22:48:26
課題:コマンドライン引数に負の値が含まれている場合に、独自の例外を生成するプログラムを作れ。

途中まで作ったのがありますので、それを元にお願いできますでしょうか?

import java.util.*;
class Kadai{
publicstatic voidmain(String args[]){a();}
static void a(){try{b();}
catch(Exception e){e.printStackTrace();}
}
static void b() throws ExceptionA{
try{c();}
catch(ExceptionB e){e.printStackTrace();}
}
static void c() throws ExceptionA,ExceptionB{
int a = Integer.ParseInt(args[0]);
if(a < 0){throw new ExceptionA("We have a -");}
else{throw new ExceptionB("We have a +");}
}}
class ExceptionA extends Exception{
public ExceptionA(String message){super(message);}
}
class ExceptionB extends Exception{
public ExceptionB(String message){super(message);}
}


前スレからですが、よろしくお願いいたします。
7デフォルトの名無しさん:2006/04/19(水) 22:50:14
>>1のテンプレぐらい見てから質問してもらえるかな?
8デフォルトの名無しさん:2006/04/19(水) 22:57:50
>5
本当感謝です、有難う御座います。
9デフォルトの名無しさん:2006/04/19(水) 23:00:52
>>6
ここまで滅茶苦茶なプログラムもどきみると新入生の季節だと実感するな
10デフォルトの名無しさん:2006/04/20(木) 00:04:02
【 課題 】文末の全角スペースと半角スペースを除去する
      [ 123456  ] → [ 123456]
【 期限 】できれば明日一杯
【 補足 】ループ回して後ろから判定して削除してくとコストかかり過ぎなので
      極力負荷をかけずに処理したいです。正規表現?
11デフォルトの名無しさん:2006/04/20(木) 00:25:19
正規表現の方が遥かにコストかかってる
バックから削除するのが最もコストが低い
12デフォルトの名無しさん:2006/04/20(木) 00:31:51
コストって何のコストだって話だけど
13デフォルトの名無しさん:2006/04/20(木) 00:35:18
JVMの中の人の人件費
14デフォルトの名無しさん:2006/04/20(木) 00:35:29
単位
15デフォルトの名無しさん:2006/04/20(木) 00:37:05
前スレの936,953です。返信遅くなって申し訳ありません。

>InputIFの戻り値がdoubleである意味
についてですが、私もよく分かってません。
時があれば講師に聞きにいきたいと思ってますが、
今はとりあえずインターフェースのクラスも気にせずに作っていただいても、
InputIFの内容を変えてやっていただいても構いません。

よろしくお願いします。
166:2006/04/20(木) 04:45:45
すいません。
それでは丸投げしますのでお願いできますでしょうか。

課題:コマンドライン引数に負の値が含まれている場合に、独自の例外を生成するプログラムを作れ。
17デフォルトの名無しさん:2006/04/20(木) 05:31:04
>>16

public class T56_6 {
public static void main(String[] args) {
for(int i=0; i<args.length; i++) {
try {
if (Integer.parseInt(args[i]) < 0)
throw new TestException("args["+i+"]("+args[i]+") が 負の数値です");
} catch (NumberFormatException nfe) {
throw new TestException("args["+i+"]("+args[i]+") が 数値ではありません");
}
}
}
}

class TestException extends IllegalArgumentException {
TestException(String msg) { super(msg); }
}
18デフォルトの名無しさん:2006/04/20(木) 12:18:57
もしかして>10は正規表現を知りたかったのかな?
19デフォルトの名無しさん:2006/04/20(木) 12:58:59
正規表現ってこんな感じか
"[ | ]+$"
いや詳しくは知らないけど
20デフォルトの名無しさん:2006/04/20(木) 15:16:48
[課題]
●サイズは640x400
●格子の間隔は20ピクセル
●円の直径は20ピクセル
の条件で縦、横に640x400の範囲内に引きうる限りの直線を縦横に描きそれぞれの格子内に
円の直径は20ピクセル の円を描写するアプレットプログラムお願いします。JAVAなら何でもオッケイです。
21デフォルトの名無しさん:2006/04/20(木) 15:34:54
22デフォルトの名無しさん:2006/04/20(木) 15:51:36
>>20
>>5は?
23デフォルトの名無しさん:2006/04/20(木) 15:57:15
東北大学て馬鹿ばっかりなのかね
24デフォルトの名無しさん:2006/04/20(木) 16:16:39
前スレ959です。937さん、ありがとうございました。
256:2006/04/20(木) 17:33:38
>>17
ありがとうございます。
朝早くからすみませんでした。
26デフォルトの名無しさん:2006/04/20(木) 19:11:25
>>20
トンペーとして恥ずかしくないの?
一部の奴がこういうことして評判が下がり、周りに迷惑かけてるのわかってんのか?
お前学校辞めたほうがいいよ。
くたばれ。その程度の問題もできないやつは。
27デフォルトの名無しさん:2006/04/20(木) 19:15:41
28デフォルトの名無しさん:2006/04/20(木) 19:16:24
29デフォルトの名無しさん:2006/04/20(木) 20:48:36
>>22

今日実行したのですが"width"が原因で実行出来ませんでした。
30デフォルトの名無しさん:2006/04/20(木) 21:06:43
>>29
//<applet code="AppTest2.class" width640 height=400></applet>
width640のwidthと640の間に = を入れても動かないのか?
オレは実行してないから知らんが
31デフォルトの名無しさん:2006/04/20(木) 21:14:06
一度答えたら毎回ここで答えねだる奴が来そうな予感
32デフォルトの名無しさん:2006/04/20(木) 21:57:12
>>30
やってみます。
33デフォルトの名無しさん:2006/04/20(木) 23:32:32
>>30
動く動く、それで動く
俺は、まだアプレット触れるレベルではない
JAVA初心者だけど、昨日このページ見てリンク見て
「どういう物が映し出されるのだろうと」思って試してみた
そんで、width640の間に=が足りないから表示しないって
事は、一回試しただけですぐわかった。
もう、例外やらマルチスレッドやら入出力すっとばして
アプレットで、ウィンドウ表示とかボタンとか作って
わーいわーいって楽しもっかな・・・・・

楽しもっかなじゃねぇよ、死ね俺。
5回くらい死ね。
34デフォルトの名無しさん:2006/04/20(木) 23:44:28
3回ぐらいにしとけ
35デフォルトの名無しさん:2006/04/20(木) 23:46:51
(´д`)?
365=30:2006/04/21(金) 00:10:38
>>33
よく分からんがオレ自体初心者。あれ(>>5)が初めて書いたアプレットだ。
37デフォルトの名無しさん:2006/04/21(金) 01:14:02
おい皆さん。
対象文字列がShift_JISなのかEUC_JPなのかUTF-8なのかを
判別したいんですが、文字コードって難しくてどう書いたらいいか解りません。
バイト配列にして範囲比較で判別?どうすればいいんだ?
38デフォルトの名無しさん:2006/04/21(金) 01:23:59
Java質問スレで聞け
39デフォルトの名無しさん:2006/04/21(金) 09:19:18
補足するとJAVAの質問ではないよ
ただの文字コード判定方法の問題
40デフォルトの名無しさん:2006/04/21(金) 10:54:01
時間が02時02分02秒と表示されるプログラムを作れって問題なんだけど時間や分、秒のところを10以下なら1のくらいに0を表示するプログラムはどう作ればいい?始めから分からんからできれば始めから頼む…〇| ̄|_
41デフォルトの名無しさん:2006/04/21(金) 11:20:18

テンプレ通りじゃない質問はスルー
42デフォルトの名無しさん:2006/04/21(金) 13:31:42
>>40
これで文句があるならテンプレに従え
import java.util.Date;
public class ShowDate {
 public static void main(String[] args) {
  System.out.println(
    new SimpleDateFormat("hh時mm分ss秒").format(
     new Date()));
 }
}
43デフォルトの名無しさん:2006/04/21(金) 14:25:46
課題 指定されたデータから降雨データを読み込み配列に格納するコンストラクタと、
下記の統計量をメソットを持つRainFall クラスを作成しなさい。例外処理も追加で作りなさい。
授業の課題で困っています。誰か教えて下さい。
public class RainFallTest{ //動作確認用プログラム
public static void main(String[]arg){
RainFall rf = new RainFall("rain.dat");
System.out.println(rf.size());
System.out.println(rf.valueAt(3));
System.out.println(rf.sum());
System.out.println(rf.ave());
System.out.println(rf.var());
System.out.println(rf.rf.sd());
}
}

/*rain.dat 最大でも366個まで

21
41
24
35
51
54
4443:2006/04/21(金) 14:28:02
追加

import java.io.*;
public class RainFall{
private int sz;
public RainFall(String fileName)
throws IOException,NumberFormatException{
FileInputStream fis = new FileInputStream(fileName);
InputStreamReader isr = new InputStreamReader(fis);
BufferedReader br = new BufferedReader(isr);
//配列の実体を作成して変数に代入する
int i=0;
String s;
while((s=br.readLine())!=null){
//配列へのデータの格納を入れる
}
sz=i;
}
public int size(){//データ数を int で返す
}
public double valseAt(int index){ //先頭からの位置を index で指定されたデータの値を double で返す
}
public double sum(){ //データの総和
}
public double ave(){ //データの平均
}
public double var(){ //データの分散
}
public double sd(){ //データの標準偏差
}
}
45デフォルトの名無しさん:2006/04/21(金) 17:09:55
>>43
import java.io.*;

public class RainFallTest{
public static void main(String[] args){
try{
RainFall rf = new RainFall("rain.dat");

System.out.println(rf.size());
System.out.println(rf.valueAt(3));
System.out.println(rf.sum());
System.out.println(rf.ave());
System.out.println(rf.var());
System.out.println(rf.sd());

}catch (IOException ex){
System.out.println("入出力例外");
}catch (NumberFormatException ex){
System.out.println("フォーマットが違います");
}catch (Exception ex){
ex.printStackTrace();
}
}
}
46デフォルトの名無しさん:2006/04/21(金) 17:11:56
>>44
class RainFall{
private int sz;
private double[] data;
private static final int DATA_MAX = 366;

public RainFall(String fileName) throws IOException, NumberFormatException{
FileInputStream fis = new FileInputStream(fileName);
InputStreamReader isr = new InputStreamReader(fis);
BufferedReader br = new BufferedReader(isr);
int i = 0;
String s;
data = new double[DATA_MAX];
while ((s = br.readLine()) != null){
data[i++] = Double.parseDouble(s);
}
sz = i;
}
public int size(){
return sz;
}
public double valueAt(int index){
return data[index];
}
public double sum(){
double sum = 0;
for (int i = 0; i < sz; i++)
sum += data[i];
return sum;
}
47デフォルトの名無しさん:2006/04/21(金) 17:12:35
>>44
public double ave(){
double sum = 0;
for (int i = 0; i< sz; i++)
sum += data[i];
return sum/sz;
}
public double var(){
double sum = 0;
double ave = 0;
for (int i = 0; i < sz; i++)
ave += data[i];
ave /= sz;
for (int i = 0; i < sz; i++)
sum += (Math.abs(data[i] - ave) * Math.abs(data[i] - ave));
sum /= sz;
return sum;
}
public double sd(){
double sum = 0;
double ave = 0;
for (int i = 0; i < sz; i++)
ave += data[i];
ave /= sz;
for (int i = 0; i < sz; i++)
sum += (Math.abs(data[i] - ave) * Math.abs(data[i] - ave));
sum /= sz;
return Math.sqrt(sum);
}
}
48デフォルトの名無しさん:2006/04/21(金) 20:14:44
BASICで書かれた以下のプログラム(凝集体です)をJAVAで書かなければならないのですが、
BASIC自体やったことがないので、どこをどう置き換えればいいのかも全くわかりません。
JAVAでこれと似たようなものができればいいと思うのですが・・・
どうぞよろしくお願いします。

---


CLS 3
SCREEN 2
P=320 : Q=200
R0=5
PSET(P,Q)

*MAIN
R=R0*2
RMAX=R0*3
RX=INT((2*R+1)*RND)-R
RV=R-ABS(RX)
RY=RV*SGN(RND-.5)
X=RX+P : Y=RY+Q

*LOOP
XB=X : YB=Y
DISTR=ABS(X-P)+ABS(Y-Q)
IF POINT(X,Y-1)=1 OR POINT(X,Y+1)=1 OR
POINT(X-1,Y)=1 OR POINT(X+1,Y)=1 THEN *AGGR
4948:2006/04/21(金) 20:15:25
続きです

IF DISTR > RMAX THEN PRESET(X,Y) : GOTO *MAIN
TWD(1)=0 : TWD(2)=0
TWD( INT(2:RND)+1 ) = SGN(RND-.5)
X=X+TWD(1) : Y=Y+TWD(2)
PRESET(XB,YB) : PSET(X,Y)
GOTO *LOOP

*AGGR
PSET(X,Y)
IF DISTR > R0 THEN R0=DISTR
GOTO *MAIN


---

50デフォルトの名無しさん:2006/04/21(金) 23:34:50
宿題出した奴にそのこと伝えたか?
知らないことはできないだろ
調べて解く宿題ならここで聞くな
51デフォルトの名無しさん:2006/04/21(金) 23:42:44
自分で少しも調べようとしない奴はスルーすればいいんだよ
5248:2006/04/22(土) 01:09:48
48です。
>>50
伝えはしましたが、BASICの本を一冊渡されただけでした。
その本で色々と調べてはみましたが、具体的にどうすればいいか、という感覚が掴めないままです。

具体的な数値は、一例としてBASICで書かれたプログラムを参考にしてみましたが、
根本的なことがまずわかっていないということと、課題の締め切りがすぐなので焦ってしまい、
すがる思いで書き込みしてしまいました。軽率だったと反省しています。
お目汚し、大変失礼しました。
53デフォルトの名無しさん:2006/04/22(土) 01:46:18
BASIC分かんないからイライラしてるだけだろ
54デフォルトの名無しさん:2006/04/22(土) 05:27:24
>>48-49
ttp://sourcepost.sytes.net/sourcepost/sourceview.aspx?source_id=27561
ttp://sourcepost.sytes.net/sourcepost/sourceview.aspx?source_id=27562

翻訳してみた。BASIC は知らないので、合ってるかどうかは不明。
・・・ほんとにこんなにイライラするプログラムなのか??
55デフォルトの名無しさん:2006/04/22(土) 15:19:18
>>40,42
import java.text.SimpleDateFormat;
56デフォルトの名無しさん:2006/04/23(日) 18:22:14
土日なのに宿題聞くやつ居ないな
57デフォルトの名無しさん:2006/04/23(日) 20:17:15
月曜の朝に「期限:今日の13時」って来るんじゃね?
58デフォルトの名無しさん:2006/04/23(日) 21:30:43
今期からJAVAを勉強し始めて最初の課題なのですが未だによく理解できないので
助けていただけると幸いです。

@public class list2

 public static void main(Stringarg[])
  System.out.println(“Welcometo Programming 2 course!”);
}
}

上記のプログラムに ● 名前の付け方を工夫する
 ● プログラムの途中に、気の利いたコメントをつける

        コメントの付け方: //  

 ● 文の先頭を処理の単位で「字下げ」(インデント)をつける

ソースコード min.java に、後からこのプログラムの要点がわかるようコメントを付けよ
という処理をするのだそうなのですが理解が足りないので分かる方
よろしくお願いします。。
59デフォルトの名無しさん:2006/04/23(日) 21:41:30
>>58
教科書嫁
プログラム以前の問題だ
60デフォルトの名無しさん:2006/04/23(日) 21:43:32
課題:
● Comparable による順序付けに従って,配列の中
から最大の要素の位置を見つけるクラス Chooser
を書きなさい.必要なメソッドは次のとおり.
● また,下記のMainクラスと一緒にコンパイル
して,正しく動くことを確認しなさい.
class Chooser {
public static int maxpos(Comparable[] x) {
// 配列x の中で最大の要素の位置(最大の要素が複数
// あった場合は最初の位置)を返す
}
}
● Mainクラスの内容
class Main {
public static void main(String args[]) {
Integer[] x = {12,34,21,56,32,7};
String[] y = {"this","is","an","aardvark","in","the","zoo"};
int xm = Chooser.maxpos(x);
System.out.println("xの最大値は"+x[xm]+",位置は"+xm);
int ym = Chooser.maxpos(y);
System.out.println("yの最大値は"+y[ym]+",位置は"+ym);
}
}


61デフォルトの名無しさん:2006/04/23(日) 21:50:22
>>60
文字列の最大の要素って何?
62デフォルトの名無しさん:2006/04/23(日) 21:59:26
>>59
申し訳ないです、教科書は5月に販売になっているので
まだ手に入らない状況です・・
提出が明日なのでどうにかお願いできないでしょうか?
63デフォルトの名無しさん:2006/04/23(日) 22:01:02
>>60
public static int maxpos(Comparable[] x) {
int max = 0;
Comparable c = x[0];

for (int i = 0; i < x.length; i++){
if (c.compareTo(x[i]) < 0){
c = x[i];
max = i;
}
}

return max;
}
64デフォルトの名無しさん:2006/04/23(日) 22:03:11
>>62
ネットでJava入門のサイトなんていくらでもある
65デフォルトの名無しさん:2006/04/23(日) 22:13:31
【初心者】Java質問・相談スレッド84【大歓迎】
http://pc8.2ch.net/test/read.cgi/tech/1144627899/397
↑21時50分

>>60は21時43分
宿題スレに先に書いておきながらその後で質問スレにマルチ
66デフォルトの名無しさん:2006/04/23(日) 22:17:22
下衆野郎に答えて損したわ
67デフォルトの名無しさん:2006/04/23(日) 22:21:23
>>66
だいぶ切羽詰ってたからスレ精神に反する事してしまって済まん、本当に感謝です。
68デフォルトの名無しさん:2006/04/23(日) 22:28:00
>>67
罰として1年後に回答者になること。
6958:2006/04/23(日) 22:32:03
入門サイト等見てみましたがある程度わかってないとわからないような
内容ばかりでした・・本当にお願いできないでしょうか;
70デフォルトの名無しさん:2006/04/23(日) 22:38:06
>>69
お前の足りない理解を補完できる人間など居ない

● 名前の付け方を工夫する
相応しいクラス名を付けれ

● プログラムの途中に、気の利いたコメントをつける
        コメントの付け方: //  
コメントでプログラムで何の処理をしているのかを書け

● 文の先頭を処理の単位で「字下げ」(インデント)をつける
見やすいようにタブでもうっとけ
71デフォルトの名無しさん:2006/04/23(日) 22:42:30
それにしてもこんな糞課題出すヤツの顔が見てみたいわ
72デフォルトの名無しさん:2006/04/23(日) 22:49:35
>>68
おっおおう!
73デフォルトの名無しさん:2006/04/23(日) 22:50:51
>>58
どうしても分からなかったら

//(昨日聞いたコント)

その場が和むか一年間針の筵に座ることになるかは分からん
7458:2006/04/23(日) 22:53:14
ありがとうございます。
あと1時間くらいあるので
>>70さんのアドバイスで少し考えて見ます。
7548:2006/04/23(日) 23:14:57
>>54
>>48-49のBASICのプログラムは書籍に載っていたものです。
お手数をおかけしてすみませんでした。
翻訳して頂けてすごく助かりました。本当にありがとうございました。


76デフォルトの名無しさん:2006/04/24(月) 01:03:12
>>60
伊藤さんにメールで通報しといたからな。
プログラミングBだけじゃなく今セメスターの単位全部落とすかもな。
あーあやっちまったな。
77デフォルトの名無しさん:2006/04/24(月) 02:16:06
誰だか特定できるん?
78デフォルトの名無しさん:2006/04/24(月) 02:23:52
ここの解答のまま提出したんなら、教授がこのスレのと比較して特定できるだろう
79デフォルトの名無しさん:2006/04/24(月) 02:27:36
>>78
すでに課題1で2chと同じ回答をそのまま提出したアフォがいる模様。
80デフォルトの名無しさん:2006/04/24(月) 03:10:49
テストをカンニングしたんなら当該セメスターの単位全落ちだろうけど
宿題写したからって全落ちはないだろ
81デフォルトの名無しさん:2006/04/24(月) 03:16:02
カンニングって普通退学じゃないの?
単位全落ちで済むんだ
82デフォルトの名無しさん:2006/04/24(月) 03:18:44
まあ、まだこの時期だし、数ある小テストのうちの一つみたいなもんだろ?
学校の程度や、教授の性格、生徒の態度次第だと思うが・・・
83デフォルトの名無しさん:2006/04/24(月) 03:21:24
>>80
バーロー。
プログラミングBは形式的なテストがねーんだから、
課題がテストと同義ってとらえるのが普通だろ。
全単位落とさなくてもプログラミングBは落ちて当然だよな?
もしかしたら・・・ってこと。
>>81
俺もそれが普通と思うんだがなぜかそうじゃないみたいだな。
84デフォルトの名無しさん:2006/04/24(月) 04:16:04
結局退学かどうかは学長の裁量だろ
万引きですら初犯ならということで警察呼ばないときも多いらしいし
85デフォルトの名無しさん:2006/04/24(月) 09:22:09
そんなにびびらしたら、もう誰も質問にこなくなっちゃうじゃないかw
86デフォルトの名無しさん:2006/04/24(月) 09:34:36
いいんじゃない?
87デフォルトの名無しさん:2006/04/24(月) 14:57:43
・課題1
二分探索の実行過程・実行ステップ数を調べるプログラムを作りたい。

ひな形プログラム中の次の各メソッドを完成させよ。完成すると、二分探索の様
子を表示しながら探索を実行してくれるようになる。


1-1:配列の内容を表示するメソッドを完成させよ。

1-2:配列にランダムな値を大小順に代入して初期化するメソッドを完成させよ。

1-3:二分探索を実行するメソッドを完成させよ。

1-4:mainメソッドを完成させ、ソート過程を表示しながら選択ソートを実行するよう
にせよ。

1-5:作成したプログラムが正しく選択ソートを実行していることが分かる
  実行結果を示し、正しく動作していることを説明せよ。
全然分かりません。
どうかお願いします。
88デフォルトの名無しさん:2006/04/24(月) 14:58:45
雛形プログラムです。↓

class BinarySearch {
static intcompare = 0;
static void showArray(int a[], int N)
{
}
static void initArray(int a[], int N)
{
int i;
a[0] = 1;
}
static int find(int a[], int N, int d)
{
inti;
intl = 0;
intr = N-1;
intc;
}
public static void main(String args[])
{
intN;
}
}
89デフォルトの名無しさん:2006/04/24(月) 15:23:44
また鳥取環境大学か
90デフォルトの名無しさん:2006/04/24(月) 18:55:47
>>88
Nってなんだよ
91デフォルトの名無しさん:2006/04/24(月) 19:01:35
a.lengthのことでしょ
92デフォルトの名無しさん:2006/04/24(月) 19:04:44
だから何でNなんて使うのかと問いたい
93デフォルトの名無しさん:2006/04/24(月) 19:06:25
教授がC厨だからじゃねーの?
94デフォルトの名無しさん:2006/04/24(月) 19:08:22
こんなうんこプログラムを雛形で出す教授に教わる事は無いって叩きつけて来い
95デフォルトの名無しさん:2006/04/24(月) 20:48:59
>>79
何でお前がそんな事知ってるんだ、俺は投稿したやつ知ってるけどそいつに話したら
すげー怒って早速事務に行ったらしいぞ。理由は個人情報を見たとかで事務が至急突き止めるらしいぞ。そいつは
参考までに投稿を利用したらしい。とにかく普通知りえない事を知ってるって事が
問題だって言ってた。たぶん捕まるね。
96デフォルトの名無しさん:2006/04/24(月) 20:53:35
本人乙
97デフォルトの名無しさん:2006/04/24(月) 20:53:46
>>95
留年乙
98デフォルトの名無しさん:2006/04/24(月) 20:54:35
>>95
上のほうで単位全落ちとか退学とかの話が出て怖くなりましたか?wwwww
99デフォルトの名無しさん:2006/04/24(月) 20:55:19
本当にこんなバカが居るんだな
100デフォルトの名無しさん:2006/04/24(月) 21:05:04
うちの大学のコマンドプロンプト見ただけで、
ファビョるやつよりはマシかな。
101デフォルトの名無しさん:2006/04/24(月) 21:05:39
院生だなあ
102デフォルトの名無しさん:2006/04/24(月) 21:07:51
和訳してみた。

誰がどんな提出をしたかなんて個人情報だろ。
何でお前がそんな事知ってるんだ。
宿題を提出した奴にこの事を話したらすげー怒って早速事務に行ったらしいぞ。
普通知りえない事を知ってるって事を事務も問題視していて、至急突き止めると回答したらしい。
警察も動くと思うからたぶん捕まるだろうね。
ちなみに提出した奴は投稿をそのまま答えたんじゃ無く、参考までに利用したらしい。
103デフォルトの名無しさん:2006/04/24(月) 21:09:16
かなり分かりやすい。
104デフォルトの名無しさん:2006/04/24(月) 21:10:32
参考までに利用したなら
>すでに課題1で2chと同じ回答をそのまま提出したアフォがいる模様。
そのまま提出したって話が嘘になるのになバカだな>>95
105デフォルトの名無しさん:2006/04/24(月) 21:53:17
笑い話じゃないぞ、2chで成績ばらした奴本当に捕まったから
>>79も相手の出方次第では・・
106デフォルトの名無しさん:2006/04/24(月) 21:56:20
別スレ立ててやれば?
107デフォルトの名無しさん:2006/04/24(月) 23:52:48
>>102
お前すげー
おれ>>95の言ってることさっぱりわからなかったよ
108デフォルトの名無しさん:2006/04/25(火) 00:01:47
個人情報だから他人が知りえないなら、
なぜ>>95は投稿したやつ知っている?

そいつが
> 参考までに投稿を利用した
なら、
> 課題1で2chと同じ回答をそのまま提出したアフォ
と別人なのに な ぜ 怒 る ?
109デフォルトの名無しさん:2006/04/25(火) 00:12:21
他でやれ
110デフォルトの名無しさん:2006/04/25(火) 00:21:05
お前ら必死になりすぎてバロスwwwwwwww
>>95はそのまま提出した奴だな。

> 課題1で2chと同じ回答をそのまま提出したアフォ
これは計算機室で話してた奴がいたから知った事実。
だから生徒全員の端末調べても証拠は出てこないんじゃない?
111デフォルトの名無しさん:2006/04/25(火) 00:22:41
チョット頭が働く奴ならそのまま提出するなんて事しないわな
バカは留年してろ
112デフォルトの名無しさん:2006/04/25(火) 00:24:28
>>111
同意でちゅ。
113デフォルトの名無しさん:2006/04/25(火) 00:49:05
チョット頭が働く奴ならそもそもこんなスレに投げたりしないだろ
114デフォルトの名無しさん:2006/04/25(火) 00:57:10
そういえば成人式どうした?
新潟は成人式は夏だっけか?
115デフォルトの名無しさん:2006/04/25(火) 01:02:05
>87
とりあえず作ってはみたが、問題文おかしくないか?
ttp://sourcepost.sytes.net/sourcepost/sourceview.aspx?source_id=27578
11615:2006/04/25(火) 01:12:00
前スレの953ですが、どなたか出来てませんでしょうか。
自分でもやってみていたところ、
どうにも上手くいかないので参考にしたいのですが。
117デフォルトの名無しさん:2006/04/25(火) 01:18:42
953ってなんだっけか
11815:2006/04/25(火) 01:22:38
>>117
クラス構成とかで迷惑かけたものです。
とりあえずこちらにも貼らせて頂きます。

【 課題 】
問題文
ttp://2sen.dip.jp:6740/cgi-bin/upgun/up1/source/up0806.txt
問題文欠落部分
ttp://2sen.dip.jp:6740/cgi-bin/upgun/up1/source/up0817.gif
拡張要求分
ttp://2sen.dip.jp:6740/cgi-bin/upgun/up1/source/up0866.txt

【 用語 】ないと思いますが、ありましたら聞いてください。
【 期限 】来週月曜終日までにお願いします。
【 Ver  】何でも大丈夫です。
【 補足 】懲りずに丸投げです。

クラス構成の条件については
今は作成者の方々に自由にお任せしますのでぜひお願いします。
119デフォルトの名無しさん:2006/04/25(火) 01:28:55
掲示板に呼び出しw
120デフォルトの名無しさん:2006/04/25(火) 09:53:44
>>115
ありがとうございます。
自分には問題文のおかしいところが分からないのですが・・・?
教えていただけたら調べます。
121デフォルトの名無しさん:2006/04/25(火) 16:10:14
【 課題 】
1)プログラムhighArray.javaのHighArrayクラスに配列の中で
 一番大きなキーを持った値、あるいは配列が空の場合は-1を返すgetMax()を追加せよ。
 キーはすべて正であると仮定する。
2)上のプロジェクト1)を、一番大きなキーを持ったアイテムがこのメソッドで返されると同時に
 配列から削除されるように変更せよ。そのメソッドはremoveMax()とする。
【 期限 】なるべく早いうちにお願いします
【 補足 】以下がhighArray.javaのソースです
http://sourcepost.sytes.net/sourcepost/sourceview.aspx?source_id=27584
122デフォルトの名無しさん:2006/04/25(火) 16:42:27
>>121
1)
public long getMax(){
long max = -1;
if (nElems == 0)
return max;
for (int i = 0; i < nElems; i++)
if (max < a[i])
max = a[i];
return max;
}

2)
public long removeMax(){
int index;
long max = -1;

if (nElems == 0)
return max;

for (int i = 0; i < nElems; i++){
if (max < a[i]){
max = a[i];
index = i;
}
}
for (int i = index; i < nElems -1; i++){
a[i] = a[i+1];
}
nElems--;
return max;
}
123115:2006/04/25(火) 18:21:30
>120
何をさせたいのかわからん。
探索をするなら1-4、1-5は要らない。
ソートをするなら1-2は大小順では無くランダムに代入させ、1-3は不要だろう。
ソート後探索をするなら1-2は同様にランダムで、1-3は1-4より後にくるべき。

>完成すると、二分探索の様子を表示しながら探索を実行してくれるようになる。
実行されるのはソート。
124デフォルトの名無しさん:2006/04/25(火) 21:19:12
目的はソート、サーチそのものではなく、
その過程を表示させることだろ?
125デフォルトの名無しさん:2006/04/25(火) 22:05:56
>>118
http://sourcepost.sytes.net/sourcepost/sourceview.aspx?source_id=27585

あんま考えずにやった
柔軟性に欠けるので勝手に改造してくれ
126125:2006/04/25(火) 22:17:59
>>118
悪い、早まった
色々バグがあるわ
ちょっと修正する
127デフォルトの名無しさん:2006/04/25(火) 22:51:13
こちらに問題を掲載しましたので、解いていただけませんか?
よろしくお願い致します。

ttp://blogs.yahoo.co.jp/a_a_a_a_a_a_a_a_a_a_a_b_a_a_a_a/folder/585044.html
128デフォルトの名無しさん:2006/04/25(火) 22:54:19
パソコンがぶっこw(ry
129118:2006/04/25(火) 23:09:13
>>126
お世話かけます。
ぜひともお願いします。
130デフォルトの名無しさん:2006/04/25(火) 23:23:45
【 課題 】三角形を描きその外部のみを塗りつぶすプログラムを作れ
【 期限 】できるだけ早めでお願いします
131125:2006/04/25(火) 23:41:40
132118:2006/04/25(火) 23:53:41
>>125
ありがとうございます。
明日試させていただきます。
133デフォルトの名無しさん:2006/04/26(水) 00:22:24
134127:2006/04/26(水) 00:28:38
これは無理でしょうか?
135115:2006/04/26(水) 01:18:37
>124
ソート過程を表示するには、未ソートの配列が必要なわけだが、1-4の時点では作られ無い。
1-2で作られる配列はソート済みなので、1-2とは別に、未ソートの配列を作成する手順を書く必要がある。
ソート済な配列作成(1-2)→サーチ(1-3)、未ソートな配列作成(1-2とは別に作る)→ソート(1-4)という順番になるわけだ。
だが、ここで1-2の問題を「未ソートな配列作成」と変更し、1-3と1-4を逆にしてみたらどうか。
未ソートな配列作成(新1-2)→ソート(新1-3)→サーチ(新1-4)という順番になり、
配列作成をわざわざ2種類(ソート済と未ソート)書かなくともいい。
という主張だ。

他にもいろいろ変な事はあるが、全体的にちゃんと練られていない印象を受ける。
まるで、サーチとソートの2つの問題を合体させただけのような。
まあ、本当はどうかわからんが。
136127:2006/04/26(水) 01:23:42
すいません。
127ですが、どこか問題点がありますか?
この問題は、無理なのでしょうか?
返信していただければありがたいのですが・・・。
よろしくお願い致します。


http://blogs.yahoo.co.jp/a_a_a_a_a_a_a_a_a_a_a_b_a_a_a_a/folder/585044.html
137デフォルトの名無しさん:2006/04/26(水) 02:42:46
>>127
1-1のみ。
続きは明日の夜に気が向いたらやるし、向かなかったらやらない。
ってか、これ、いつまで?
ってか、テンプレ使え。
ttp://sourcepost.sytes.net/sourcepost/sourceview.aspx?source_id=27588
138デフォルトの名無しさん:2006/04/26(水) 11:09:18
>>133
ありがとうございます、試してみます
139デフォルトの名無しさん:2006/04/26(水) 15:58:10
>>127
記事が無いらしいが
140127:2006/04/26(水) 18:50:14
申し訳ありませんでした。
アップしましたのでよろしくお願い致します。
141118:2006/04/26(水) 23:38:41
>>131
今日試してみたところ、無事動きました。
参考にさせていただきます。
ありがとうございました。
142デフォルトの名無しさん:2006/04/27(木) 08:23:33
ここで大学に通報とか書いてるのは、このスレのせっかくの
お客さんを潰してどうするんだよ。どうりで最近は盛り上がりに欠けるワケだ。
1年前までは、かなり長大な課題でも回答きてたってのに。
こんな過疎スレは、誰も知らないから質問者の人は遠慮なく、
書き込んでくれ。
143デフォルトの名無しさん:2006/04/27(木) 09:44:49
4月に長大な課題は出ないと思うけどな・・
144デフォルトの名無しさん:2006/04/27(木) 10:35:09
バカにはそれが分らんとです
145デフォルトの名無しさん:2006/04/27(木) 12:58:19
【 課題 】
【 用語 】
【 期限 】
【 Ver  】
【 補足 】

テンプレのこれらを形だけでも全部必須にするべき
課題だけが必須だから本当に課題だけ書くアホが出てくる
146デフォルトの名無しさん:2006/04/27(木) 17:21:30

このJavaの宿題スレはかなり寛容だなw
147デフォルトの名無しさん:2006/04/27(木) 17:23:57
さすがにこの時期からカンニング始めてたら既に終わってる
148デフォルトの名無しさん:2006/04/27(木) 17:29:19
基本ルールにこの項目を加えるべきだろう

6、大学側への通報及びその脅しは厳禁であり、違反者はこのスレへ立ち入りを禁止します。
149デフォルトの名無しさん:2006/04/27(木) 17:43:09
>>148
禁止って……。
誰が何の権利で禁止するんだ?
禁止して止められるのか?
150デフォルトの名無しさん:2006/04/27(木) 17:43:45
(゚Д゚)ハァ?
151デフォルトの名無しさん:2006/04/27(木) 18:00:48
>148
大学への通報だめ?高校へならいいわけだ。
152デフォルトの名無しさん:2006/04/27(木) 18:05:40
自分の大学のURLそのまま使うバカがいるというのが驚き
153デフォルトの名無しさん:2006/04/27(木) 18:30:24
>>148
所属大学がばれた奴の発言としか思えんのだが
154デフォルトの名無しさん:2006/04/27(木) 18:33:32
ばれて困るようなら最初からするなよ
155デフォルトの名無しさん:2006/04/27(木) 21:23:00
チクられて困るなら丸投げするな
156デフォルトの名無しさん:2006/04/27(木) 22:11:56
チクるもなにも教授が見てるだろ
157デフォルトの名無しさん:2006/04/27(木) 22:51:27
そうなのか・・?
158デフォルトの名無しさん:2006/04/27(木) 23:10:25
くそ忙しい教授がいちいち2chなんか見てるか?
159デフォルトの名無しさん:2006/04/27(木) 23:17:10
で、お前ら(職業)プログラマなの?
160デフォルトの名無しさん:2006/04/27(木) 23:29:11
>158
うちの教授は見てたよ
161デフォルトの名無しさん:2006/04/27(木) 23:33:49
東北大と鳥取環境大学の教授は見てるらしい
162デフォルトの名無しさん:2006/04/27(木) 23:37:50
下のプログラム(一部抜粋)で、myMain()の中身5行をそのままrun()の中に移すと、
getGraphics()にアクセスできなくなります。
入れ子のクラスからなので、thisキーワードがFrame54クラスを表さなくなるからと思います。
うまい記述を教えてください。プログラムは new Frame54(); で始まります。

class Frame54 extends JFrame{
   MyCircle54 circle0;
   Graphics g;
   Frame54(){
      circle0=new MyCircle54(60,60,60,60);

      Timer timer0=new Timer();
      timer0.schedule(new MyTimerTask54(),0,30);
   }
   class MyTimerTask54 extends TimerTask{
      public void run() {
         myMain();
      }
   }
   void myMain(){
      g=this.getGraphics();
      Graphics2D g2=(Graphics2D)g;
      circle0.move();
      circle0.draw(g2);
      g2.dispose();
   }
}
163デフォルトの名無しさん:2006/04/27(木) 23:38:55
164デフォルトの名無しさん:2006/04/27(木) 23:45:38
Frame54.this
165デフォルトの名無しさん:2006/04/27(木) 23:59:26
>>164
ありがとうございます。
全てわかりました。
今後とも精進してまいります。
166デフォルトの名無しさん:2006/04/28(金) 00:12:47
精進するのは良いがテンプレは守ってくれよ
167137:2006/04/28(金) 01:26:58
>>127
ttp://sourcepost.sytes.net/sourcepost/sourceview.aspx?source_id=27592
ttp://sourcepost.sytes.net/sourcepost/sourceview.aspx?source_id=27593
ttp://sourcepost.sytes.net/sourcepost/sourceview.aspx?source_id=27594
ttp://sourcepost.sytes.net/sourcepost/sourceview.aspx?source_id=27595
ttp://sourcepost.sytes.net/sourcepost/sourceview.aspx?source_id=27596

2-1, 2-2。
2-3は、回転の計算式を書いてくれたらやってみる。

# 2-2
# ファイルを開くためjava.io.*を使う必要があると思う
↑これは、.java.policy ファイルで穴を開けなければ無理(なはず)。
168デフォルトの名無しさん:2006/04/28(金) 20:42:38
【課題提示用テンプレ】
【 課題 】
問題1:Venderクラスに代金支払、キャンセルのメソッドを実装せよ。
問題2:複数の商品を扱えるように拡張せよ。
【 用語 】特に無いです。
【 期限 】提出期限2006年5月1日、できれば前日の4月30日の夜頃までだととても嬉しいです。
【 Ver  】Verとかわからないので特に無いです。
【 補足 】ぶっちゃけ丸投げです。
途中までのソースファイルと問題文をtxt形式にしたものを
ttp://enjoyoutofmybed.mpage.jp/Java.zipにzip形式でULしました
よろしくおねがいします。
169デフォルトの名無しさん:2006/04/28(金) 22:30:29
何か見てて率直に思ったんだが高校の課題にはみんな寛大なのに大学の課題と分かると
非難しまくりじゃない?特に一流大の奴が課題頼むとすげー非難、攻撃してる気がするのは
俺だけ?
170デフォルトの名無しさん:2006/04/28(金) 22:36:47
東大の奴質問したっけか?一流はここだけだけだと思うが。
171デフォルトの名無しさん:2006/04/28(金) 22:51:32
すぐに東大とか出すなよ頭悪く見えるぞ
172デフォルトの名無しさん:2006/04/28(金) 22:52:46
一流ってどこのことよ
173デフォルトの名無しさん:2006/04/28(金) 22:56:59
>>169が思う一流大学が一流
174デフォルトの名無しさん:2006/04/28(金) 22:57:52
東淀川大学
175デフォルトの名無しさん:2006/04/28(金) 23:10:52
>>171
コンプ乙!
176デフォルトの名無しさん:2006/04/28(金) 23:13:29
人の不幸はおもしろいからな
2ちゃんに書き込んで、チクられて退学・停学
なんてふざけた人生見ていて最高だよ
177デフォルトの名無しさん:2006/04/28(金) 23:34:11
ここにいるヤツがメンドいと思った課題で大学名が分かれば苛めるだけ
178デフォルトの名無しさん:2006/04/29(土) 16:42:14
>>148
このスレに攻性防壁を組み込めばいいじゃない。
で、卑怯な通報者を自滅させると。
179デフォルトの名無しさん:2006/04/29(土) 16:56:58
>>168
作ってみた。
ちなみに所々メソッドの修正や追加をした。
汚いソースでスマソ

ttp://kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/1808.zip
180デフォルトの名無しさん:2006/04/29(土) 17:28:25
変に自分で噛み砕いて省略されたり、途中までやったソース晒されるよりは丸投げのほうがいいんだが
宿題が載ってる学校のサイトをそのまま晒すヤツはイカれてるな

あと【補足】に丸投げですって書くの流行ってるの?
181デフォルトの名無しさん:2006/04/29(土) 17:59:42
>>180
多分、誰かにcatchして欲しいんだろ
182デフォルトの名無しさん:2006/04/29(土) 18:49:04
うまいこと言ったつもr(ry
183デフォルトの名無しさん:2006/04/29(土) 19:50:42
import java.io.File;
import javax.sound.sampled.*;

public class SoundPlay {
private static final int EXTERNAL_BUFFER_SIZE = 128000;
public static void main(String[] args) {
try
{File soundFile = new File("test.wav");
AudioInputStream audioInputStream =
AudioSystem.getAudioInputStream(soundFile);
AudioFormat audioFormat = audioInputStream.getFormat();
DataLine.Info info =
new DataLine.Info(SourceDataLine.class,audioFormat);
SourceDataLine line =
(SourceDataLine) AudioSystem.getLine(info);
line.open(audioFormat);
line.start();
つづく
184デフォルトの名無しさん:2006/04/29(土) 19:51:51
続くな
185デフォルトの名無しさん:2006/04/29(土) 19:54:19
【 課題 】test2.wavを追加してtest.wavと同時に再生するプログラムを作る
【 補足 】183の間違えて投稿してしまいました。すみません。丸投げです。お願いします。

import java.io.File;
import javax.sound.sampled.*;

public class SoundPlay {
private static final int EXTERNAL_BUFFER_SIZE = 128000;
public static void main(String[] args) {
try
{File soundFile = new File("test.wav");
つづく
186185:2006/04/29(土) 19:54:57
AudioInputStream audioInputStream =
AudioSystem.getAudioInputStream(soundFile);
AudioFormat audioFormat = audioInputStream.getFormat();
DataLine.Info info =
new DataLine.Info(SourceDataLine.class,audioFormat);
SourceDataLine line =
(SourceDataLine) AudioSystem.getLine(info);
line.open(audioFormat);
line.start();
int nBytesRead = 0;
byte[] abData = new byte[EXTERNAL_BUFFER_SIZE];
while (nBytesRead != -1) {
nBytesRead =
audioInputStream.read(abData, 0, abData.length);
if (nBytesRead >= 0) {
int nBytesWritten =
line.write(abData, 0, nBytesRead);
}line.drain();
line.close();
System.exit(0);}
catch (Exception e)
{System.out.println(e);
System.exit(1);
}}}
187デフォルトの名無しさん:2006/04/30(日) 00:53:22
そのソースは何?括弧足りてないだろ
188デフォルトの名無しさん:2006/04/30(日) 02:38:24
スレッド2本で同期でも取れ
189デフォルトの名無しさん:2006/04/30(日) 10:49:06
>>185
流れを無視してスマソ
多分これで出来るかと。

ttp://sourcepost.sytes.net/sourcepost/sourceview.aspx?source_id=27610
190デフォルトの名無しさん:2006/04/30(日) 21:29:14
すみません、わからない問題があったので教えてくださると助かります。


public class list3{
public static void main(Stringarg[]){
intshiire_ne1, teika1, kosuu1, goukei;
intshiire_ne2=200, teika2, kosuu2=3;
shiire_ne1=100; kosuu1=2;
teika1=shiire_ne1 + 10;
teika2=shiire_ne2 + 15;
goukei=teika1*kosuu1 + teika2*kosuu2;
System.out.println(goukei);
double zeikomi1, zeikomi2;
zeikomi1=houhou1(teika1);
zeikomi2=houhou1(teika2);
System.out.println("1:\t"+zeikomi1);
System.out.println("2:\t"+zeikomi2);
/* ここから2行は、特殊文字の説明です*/
System.out.println("1234" + "5678901234567890" + "\n");
System.out.println("1234\t123\t12.");

/* ここからがメソッドhouhou1 の定義です*/
public static inthouhou1(int teika){
double waribiki, uri_ne, zei;
waribiki=0.2; zei=0.05;
uri_ne=teika*(1-waribiki);
return (int) (uri_ne*(1+zei));
}
}

これのhouhou1のreturn文の式の値をdouble型に変更したいのですが
どのようにしたらいいのでしょうか?
191デフォルトの名無しさん:2006/04/30(日) 21:46:51
>>190
>>1読んで出直してこい
192デフォルトの名無しさん:2006/04/30(日) 21:47:48
ホントに宿題なのかと問いたい、せめてテンプレ埋めろ
193190:2006/04/30(日) 21:57:46
テンプレを埋めずに質問し、申し訳ありませんでした。

【 課題 】list3.java の メソッド houhou1 の return 文の式の値を double型 に変更しなさい。
【 用語 】ありmせん。
【 期限 】5月1日午前8時まで。
【 Ver  】特にありません。
【 補足 】list3.javaは190の書き込みの文章です。

また何か不手際がありましたら、ご指摘ください。
194デフォルトの名無しさん:2006/04/30(日) 22:35:12
public static double houhou1(int teika)
{
 double waribiki, uri_ne, zei;
 waribiki = 0.2;
 zei = 0.05;
 uri_ne = teika * (1 - waribiki);
 return uri_ne * (1 + zei);
}

単にintの文字をdoubleに書き換えればいいだけじゃね?
195デフォルトの名無しさん:2006/04/30(日) 22:42:35
ぼそっ。お金の計算。
196196:2006/05/01(月) 00:46:31
内容:
【 課題 】画像ファイルを各自で用意し、画像のヒストグラムをテキストファイルに出力する
      プログラムを作りなさい。
      また、上記で作成したヒストグラムを参照して、モード法を用いて画像を2値化する
      プログラムを作りなさい。
【 用語 】ありません。
【 期限 】提出期限は5月6日の午前0時までです。
【 Ver  】特にありません。
【 補足 】以下の2つのソースが与えられています。
      このプログラムを用いて作成してもらえるとありがたいですが、
      もっといい方法がある場合、教えていただけると幸いです。

以下に与えられた2つのソースを示します。
//1つ目
public class SampleImg {
/**
* @param args
*/
private static short img_out[][][];
public static void main(String[] args) {
int i, j, k;
ImageIOEx img = new ImageIOEx();// ImageIOExクラスのインスタンスを作る
img.LoadImg("test.jpg");
img_out = new short[img.getHeight()][img.getWidth()][3];
for(i=0;i<img.getHeight();i++){
for(j=0;j<img.getWidth();j++){
for(k=0;k<3;k++){
img_out[i][j][k] = img.image[i][j][k];}}}
img.SaveBMP(img_out, "output.bmp");}}
197196:2006/05/01(月) 00:52:43
//2つ目
import javax.imageio.ImageIO;
import java.awt.image.BufferedImage;
import java.io.File;

public class ImageIOEx {
/**
* @param args
*/
public static final int Y_SIZE = 1024;
public static final int X_SIZE = 1024;
private int width;
private int height;
public BufferedImage image_in, image_out;
public short image[][][];
public ImageIOEx(){ width = 0;
height = 0;
image_in = null;}
public short[][][] LoadImg(String f_name){
try{image_in = ImageIO.read(new File(f_name));
}catch(Exception e){ e.printStackTrace();
image_in = null;}
width = image_in.getWidth();
height = image_in.getHeight();
int rgb;
image = new short[height][width][3];
198196:2006/05/01(月) 00:55:10
//上記の続きです
for(int h=0;h<height;h++){
for(int w=0;w<width;w++){ rgb = image_in.getRGB(w, h);
image[h][w][0] = (short)((rgb >> 16) & 0xFF);
image[h][w][1] = (short)((rgb >> 8) & 0xFF);
image[h][w][2] = (short)(rgb & 0xFF); }}return image;}
public void SaveBMP(short img[][][], String f_name){
image_out = new BufferedImage(width, height, 1);
int rgb;
for(int h=0;h<height;h++){
for(int w=0;w<width;w++){
rgb = ((img[h][w][0] << 16) | (img[h][w][1] << 8) | (img[h][w][2] & 0xFF));
image_out.setRGB(w, h, rgb);}}
boolean output = false;
try{ output = ImageIO.write(image_out,"bmp", new File(f_name));
}catch(Exception e){ e.printStackTrace();
output = false;}}
public int getWidth() {return width;}
public int getHeight() {return height;}
public void setWidth(int w) {width = w;}
public void setHeight(int h) {height = h;}}
199デフォルトの名無しさん:2006/05/01(月) 16:23:42
【 課題 】
アプレットに関する課題です。課題は以下に示す通りです。
GraphicsオブジェクトのメソッドdrawLine()を遣って複数の線を秒図せよ。
drawLine()は、線の起点を示すxとy座標、終点を示すxとy座標をint型の4つの引数とする。

【 用語 】
特にないかと…。

【 期限 】
できれば今日中にお願いします。 無理言ってすみません。

【 Ver  】
これも特にありません。

【 補足 】
わからない箇所は、聞いてくだされば極力答えるようにします。
何卒よろしくお願いします。
200199:2006/05/01(月) 16:26:18
課題文の一行目は「秒図」ではなくて、「描図」ですね。
みなさんわかっていると思いますが、無駄に混乱させたくないので訂正しておきます。
あとは誤字脱字ないと思うので、よろしくお願いします。
201デフォルトの名無しさん:2006/05/01(月) 16:42:44
import java.awt.*;
import java.applet.Applet;

public class TestApplet extends Applet {
  public void paint(Graphics g) {
    g.drawLine(100, 0, 200, 150);
    g.drawLine(200, 150, 0, 150);
    g.drawLine(0, 150, 100, 0);
  }
}
202デフォルトの名無しさん:2006/05/01(月) 19:00:42
最近、丸投げといっても投げっぱなしで
依頼者の反応が無いな。
丸投げというよりも投げ捨てになってるな。

質問するからには最低限マナーは守れよ
203196:2006/05/01(月) 20:05:04
すいません。提出期限が間違っていました。
正しくは、5月5日の午前0時までです。
よろしくお願いします。
204デフォルトの名無しさん:2006/05/01(月) 20:35:35
>>203
かなり面倒くさいな、これ。
ヒストグラムは「明るさ」を横軸でいいのか?
2コブあるかどうかの検出も面倒だな、これ。
205デフォルトの名無しさん:2006/05/01(月) 21:09:01
銀行の普通預金口座を考えて,Accountという名前で呼ぶことにします.以下の機能を持つクラスAccountを作りなさい.

1つの銀行口座には,1つの預金者名と,1つの預金金額がある.
預金者名と初期預金金額を指定できるコンストラクタがある.
預金するメソッドdepositがある.返り値はなし(返り値:void).
引出すメソッドwithdrawがある.返り値はなし(返り値:void).
指定したインスタンスから預金者名を調べるメソッドgetNameがある(返り値:String).
指定したインスタンスから預金の残高を調べるメソッドgetBalanceがある(返り値:int).
表示するためのメソッドtoStringがある(返り値:String

ヒントを下さい。お願いします。
206デフォルトの名無しさん:2006/05/01(月) 21:19:36
>>205
ヒント:クラスを1個つくれば良い。mainメソッドは不要。
207デフォルトの名無しさん:2006/05/01(月) 21:25:54
>>206
どうも、ありがとうございます。
208デフォルトの名無しさん:2006/05/01(月) 21:30:35
>>207
こんなんで良かったか(汗
209デフォルトの名無しさん:2006/05/01(月) 21:42:59
本当はもっと知りたいです。
全然さっぱり解けません
210デフォルトの名無しさん:2006/05/01(月) 21:55:09
>>205
クラスAccountはString nameとint balanceというメンバ変数を持つ
211デフォルトの名無しさん:2006/05/01(月) 22:08:11
>>209
出血大サービス

public class Account {
  private String name;
  private int balance;
  public Account (String name, int money) {
  
 
  }
  public synchronized void deposit(int money){
 
  }
  public synchronized void withdraw(int money){
 
  }
  public String getName(){
 
  }
  public int getBalance(){
 
  }
  public String toString(){
 
  }
} 
212196:2006/05/01(月) 23:53:31
>>204
ヒストグラムはグラフを描くのではなく、テキストファイルに「*」を使って出力すれば
いいそうです。
例えば、
***
*********
***
という感じです。説明が足りませんでした。すいません。
もし、グラフを描くのなら、横軸は明るさでいいと思います。
面倒かと思いますが、なにとぞよろしくお願いします。
213204:2006/05/02(火) 00:23:02
>>212
まぁやってみるけど。
新規で入れた xyzzy を試しながら書くからできなくても恨みっこ無しね。
214デフォルトの名無しさん:2006/05/02(火) 01:14:05
>>211
横槍だが synchronized の使い方が中途半端
215196:2006/05/02(火) 01:17:09
>>213
ありがとうございます!やってみてもらえるだけでありがたいです。
よろしくお願いします。
216199:2006/05/02(火) 02:32:19
>>201
ありがとうございます。
参考にさせていただきます。
お礼が遅くなって申し訳ありませんでした。
217211:2006/05/02(火) 09:39:55
>>214
参考までにどのへんが?
218デフォルトの名無しさん:2006/05/02(火) 13:07:13
>>217
> public int getBalance(){

同期には、排他性の他に、原子性と可視性に関する側面がある。
平たく言えば、synchronized で書いたら、synchronized で読むのじゃ
219デフォルトの名無しさん:2006/05/02(火) 13:42:20
なんだ、ただの厨だった
220デフォルトの名無しさん:2006/05/02(火) 14:17:43
>>218
で、getBalance()を同期しないと何が駄目なの?
221デフォルトの名無しさん:2006/05/02(火) 14:40:24
もう詰んでるね。
222204:2006/05/02(火) 15:53:02
>>215
できる見込み立ったのであと1日待ってくらさい。
223204:2006/05/02(火) 18:11:08
>>212
でけた。ソース3本。

ImageIOEx.java
------------------------ ここから
import java.awt.image.BufferedImage;
import java.io.File;
import javax.imageio.ImageIO;

public class ImageIOEx {
  /**
   * @param args
   */
  private int width, height;

  public ImageIOEx() {
    this.width = 0;
    this.height = 0;
  }

  public short[][][] LoadImg(String fileName) {
    BufferedImage inBufImg;

    try {
      inBufImg = ImageIO.read(new File(fileName));
    } catch(Exception ex) {
      ex.printStackTrace();
      return null;
    }
    this.width = inBufImg.getWidth();
    this.height = inBufImg.getHeight();
224204:2006/05/02(火) 18:11:40
    short[][][] img = new short[this.width][this.height][3];
    int rgb;
    for (int y = 0; y < this.height; y++) {
      for (int x = 0; x < this.width; x++) {
        rgb = inBufImg.getRGB(x, y);
        img[x][y][0] = (short)((rgb >>> 16) & 0xff);
        img[x][y][1] = (short)((rgb >>> 8) & 0xff);
        img[x][y][2] = (short)(rgb & 0xff);
      }
    }
    return img;
  }
225204:2006/05/02(火) 18:12:26
  public void SaveBMP(short img[][][], String fileName) {
    BufferedImage outBufImg = new BufferedImage(this.width, this.height, 1);

    int rgb;
    for (int y = 0; y < this.height; y++) {
      for (int x = 0; x < this.width; x++) {
        rgb = (img[x][y][0] << 16) | (img[x][y][1] << 8) | img[x][y][2];
        outBufImg.setRGB(x, y, rgb);
      }
    }

    try {
      ImageIO.write(outBufImg, "bmp", new File(fileName));
    } catch(Exception ex) {
      ex.printStackTrace();
    }
  }

  public int getWidth() { return this.width; }
  public int getHeight() { return this.height; }
}
------------------------ ここまで
226204:2006/05/02(火) 18:13:50
Histogram.java
------------------------ ここから
public class Histogram {
  /**
   * @param args
   */
  public static void main(String[] args) {
    ImageIOEx imgIO = new ImageIOEx();
    short[][][] img = imgIO.LoadImg("test.jpg");
    int width = imgIO.getWidth();
    int height = imgIO.getHeight();

    int[] cnt = new int[256];
    for (int y = 0; y < height; y++) {
      for (int x = 0; x < width; x++) {
        // UCrCb変換
        short brightness = (short)((77 * img[x][y][0] +
          150 * img[x][y][1] + 29 * img[x][y][2]) >> 8);
        // 明度カウント
        cnt[brightness]++;
      }
    }
227204:2006/05/02(火) 18:14:35
    int max = 0;
    for (int i = 0; i < 256; i++) {
      if (max < cnt[i]) {
        max = cnt[i];
      }
    }
    for (int i = 0; i < 256; i++) {
      cnt[i] = cnt[i] * 75 / max;
      String st = " " + i + ":";
      st = st.substring(st.length() - 4);
      System.out.print(st);
      for (int j = 0; j < cnt[i]; j++) {
        System.out.print("*");
      }
      System.out.println();
    }
  }
}
------------------------ ここまで
228204:2006/05/02(火) 18:17:49
連投禁止回避
229204:2006/05/02(火) 18:19:24
あれ?解除しない?
230204:2006/05/02(火) 18:19:39
SampleImg.java
------------------------ ここから
public class SampleImg {
  /**
   * @param args
   */
  // true にすると gray scale を出力
  public static final boolean graySwitch = false;

  public static void main(String[] args) {
    int threshold = 0;

    try {
      threshold = Integer.parseInt(args[0]);
    } catch (Exception ex) {
      ex.printStackTrace();
      System.exit(0);
    }

    ImageIOEx imgIO = new ImageIOEx();
    short[][][] img = imgIO.LoadImg("test.jpg");
    int width = imgIO.getWidth();
    int height = imgIO.getHeight();
231204:2006/05/02(火) 18:21:33
    short[][][] outImg = new short[width][height][3];
    int[] cnt = new int[256];
    for (int y = 0; y < height; y++) {
      for (int x = 0; x < width; x++) {
        // UCrCb変換
        short brightness = (short)((77 * img[x][y][0] +
          150 * img[x][y][1] + 29 * img[x][y][2]) >> 8);
        for (int c = 0; c < 3; c++) {
          if (graySwitch) {
            outImg[x][y][c] = brightness;
          } else {
            if (brightness > threshold) {
              outImg[x][y][c] = 0xff;
            } else {
              outImg[x][y][c] = 0x00;
            }
          }
        }
      }
    }
    if (graySwitch) {
      imgIO.SaveBMP(outImg, "grayscale.bmp");
    } else {
      imgIO.SaveBMP(outImg, "output.bmp");
    }
  }
}
------------------------ ここまで
232204:2006/05/02(火) 18:29:01
解説

使い方
「java Histogram」で test.jpg のヒストグラム出力。
標準出力に出すのでリダイレクトするなりファイルに書き出すように改造するなりしてくれ。

調べたところ、モード法はヒストグラムを参考に人間が閾値を調整する手法のようなので(問題文をよく読んでもそう受け取れる)、
「java SampleImg xxx」(xxx は 0〜255)と、引数で閾値を与え、output.bmp に出力するようにした。

SampleImg.java の graySwitch を true にして再コンパイルすると、グレースケールの画像を grayscale.bmp に出力するのはオマケ。

引数解析や例外処理はいい加減です。これ以降は自力でどうぞ。
233デフォルトの名無しさん:2006/05/02(火) 20:27:47
素直に>>1の炉だに波浪よ。
234196:2006/05/02(火) 20:29:12
>>204
ありがとうございます。さっそく「Histigram.java」を実行してみたのですが、
「short brightness = (short)((77 * img[x][y][0] +
150 * img[x][y][1] + 29 * img[x][y][2]) >> 8);」
のところでエラーが出て、実行できません。普通に実行するだけではだめなのでしょうか?
すいみませんが、教えていただけるとありがたいです。
235204:2006/05/02(火) 20:41:23
>>233
あいすみませぬ。言われて初めて気が付いた。

>>234
コンパイルエラー?実行時エラー?
エラーログ貼っておくれい
236196:2006/05/02(火) 23:10:20
>>204
実行時エラーだと思います。実行したらエラーが出るので。エラー内容は、
java.lang.ArrayIndexOutOfBoundsException: 238
at Histogram.main(Histogram.java:15)
Exception in thread "main"
です。よろしくお願いします。
237204:2006/05/03(水) 00:22:12
>>236
タブの代わりに入れた全角空白をソースをコピペした時に置換してなかったのかと思ったら、そうでもないのか。

使った JPEG ファイルが壊れてるとしか思えない。
こっちの手元ではちゃんと動きます。
ちゃんとしたファイルを食わせてください。
238196:2006/05/03(水) 00:51:38
>>237
JPEGファイルを何回か変えてやってみても、やっぱり動きません。
でも、204さんの手元ではできるということなので、こちらに原因があると思います。
あとは自力で解決してみます。

プログラムを作っていただいて、本当にありがとうございました。
239デフォルトの名無しさん:2006/05/03(水) 00:51:58
すみません!
Eclipseプラグインの「Call Hierarchy」みたいにJavaのソースコードで使われている任意のメソッドをパッケージ名からフルパスで抽出したいのですが、なにかヒントになる情報やサイトを教えていただけませんか?
LexとかYACC的なものを応用してもいいんですが、できればJavaで自作したいです。
よろしくお願いします。
240204:2006/05/03(水) 00:54:18
>>238
画像ファイルの幅と高さを正しく取得できていないと思われる。
もしくは、帰ってきた short 配列の大きさが実際より足りない。
そこら辺を調べると良いでしょう。

後はがんばって。
241デフォルトの名無しさん:2006/05/03(水) 00:54:41
>>239
そのプラグインってオープンソースじゃないの?
オープンソースならソースみればいいし、
jadで逆コンパイルでもいいんじゃないの?
242196:2006/05/03(水) 01:31:42
>>240
ということは、画像のファイルの大きさを小さくすればよいのでしょうか?
一つ疑問なのですが、課題で与えられたソースを実行した時は画像がちゃんと
読み取れたのに、作成していただいたソースを実行した時は画像が読み取れないのは
なぜなんでしょうか?ソース自体は関係がないのでしょうか?

問題を解決したいので、もしよければアドバイス下さい。
あつかましくて、すいません。
243デフォルトの名無しさん:2006/05/03(水) 01:39:32
>>241
オープンソースであるという情報を得ることができませんでしたが、jadにトライしてみます。
Eclipseのバージョン3.では動かないみたいなので2を探してますが、まだ見つからない・・・。
244デフォルトの名無しさん:2006/05/03(水) 01:48:09
つか、eclipse使う必要ないんだね。
245デフォルトの名無しさん:2006/05/03(水) 02:03:46
宿題スレだっつーの
246デフォルトの名無しさん:2006/05/03(水) 02:07:11
出された宿題のスレじゃなくて宿題を出すスレなの?
スンマソ。
247デフォルトの名無しさん:2006/05/03(水) 03:26:58
>>243
そのプラグインって、Eclipse に元からある機能と何が違うん?
248247:2006/05/03(水) 03:29:26
標準として付いたのは Eclipse 3 からだったのか、スレ汚しスマソ
249204:2006/05/03(水) 07:58:44
>>242
寝てたよ。

あ、そうなん?
ImageIOExに関しては、元のソースの書き方が変だと思ったから好きに書き換えたけど、まあ動作的にはおかしくはなi.
元の ImageIOEx に戻して一度試してみそ。
250デフォルトの名無しさん:2006/05/03(水) 12:55:57
【 課題 】継承とポリモフィズムのプログラムを以下の仕様通りに作りなさい。

      ・ttp://deaikei.biz/up/up/0409.jpg.html 仕様jpg pass:java
      ・仕様jpgを元に、異なった最低8人の従業員をArrayを使い保有させなさい。
      ・メインメソッドに、従業員オブジェクトを扱うArrayを作りなさい。
      ・配列のそれぞれの従業員オブジェクトの情報、週間支払い給料の総額を出力しなさい。
      ・ヒント(もし、クラスがきちんとセットアップされているなら、ループを設定するだけで簡単に出力される)
      ・すべてのデータメンバーは、privateで修飾するようにしなさい。

【 期限 】5/5
【 Ver  】1.4

よろしくお願いします。
251196:2006/05/03(水) 17:25:36
>>249
ImageIOExを元のプログラムに戻し、Histogramを実行しましたが、やはりできなかったので、
「st = st.substring(st.length() - 4); 」を削除したところ、実行できました。
「st = st.substring(st.length() - 4); 」の部分の意味がよく分からないのですが、
いつもここにエラーが出ていました。
よければこの部分の意味を教えていただけないでしょうか?
252デフォルトの名無しさん:2006/05/03(水) 18:20:17
【 課題 】2つの3次元3角形を描画し、それぞれがz軸上で交差する配置とし、隠面消去を行うこと。
【 期限 】5/8
【 Ver  】Eclipse3.0

お願いします
253デフォルトの名無しさん:2006/05/03(水) 18:21:32
>250
某是身の方ですか?
254デフォルトの名無しさん:2006/05/03(水) 18:34:11
しょうもないこと言ってんなよ
255デフォルトの名無しさん:2006/05/03(水) 18:41:29
zuboshidesuka
256204:2006/05/03(水) 20:29:03
>>251
とりあえず上手く動くとこまで行ったのね。

st = … の部分は、ヒストグラム出力の際に明度を3桁右寄せで出すためのもの。手抜きだけど。
SampleImg に渡す明度の参考にするため、ね。
他にもやりかたはあるから自分で試してみてちょ。

でも変だなぁ。こっちじゃ 1.4 の環境で何事もなく動いたけど。
257204:2006/05/03(水) 20:33:20
>>251
というか、直前の行の
String st = " " + i + ":";
の " " の間に入ってる半角空白は2個だぞ。1個にするとエラー出る。
258252:2006/05/03(水) 20:39:01
すいません、補足の追加です
【 補足 】JavaライブラリFill Polygonを用いるのではなく、内挿補間で塗りつぶす

よろしくお願いします
259250:2006/05/03(水) 22:44:20
>>253
是身って何ですか?
260デフォルトの名無しさん:2006/05/03(水) 23:52:16
>>259
ゼミの意味も分からんの?
wa ro ta
261デフォルトの名無しさん:2006/05/03(水) 23:53:58
>>252
テンプレに専門用語の説明をつけろとあるだろ
262252:2006/05/04(木) 00:37:08
隠面消去:裏側にある、目に見えない部分を描画しない
片方の三角形上の各点(x1,y1,z1)ともう一方の三角形の各点(x2,y2,z2)
を比べてzの値の大きいほうを描写する

内挿補間:z軸の値固定で、y軸に垂直(x軸に水平)に図形を切断し、
範囲内で最大(xmax)と最小(xmin)の値を取得する
xmaxからxminまで直線を引く

双方の三角形の頂点は任意に指定できる
263196:2006/05/04(木) 01:15:15
>>257
空欄を増やしたら、ちゃんと動作しました!すいません。ありがとうございます!
しかし、まだSampleImgの方はうまく動作しません。
gray scale をtrueにして実行すると、img_out[i][j][k] = brightness;
の所で、エラーが出ます。

ちなみに環境は、2.1です。
264204:2006/05/04(木) 02:17:40
>>263
元ソースが img_out[Y軸][X軸][色] になってて気持ち悪かったから X軸と Y軸入れ替えた。
よく考えたら仕様変更しちゃってたな。

その辺を間違って打ってると思うけど。
総チェックすべし。
System.out.print を使うなりして動きをつかまえなさい。
265252:2006/05/04(木) 04:50:22
ちょっと訂正します

隠面消去:裏側にある、目に見えない部分を描画しない
片方の三角形上の各点(x,y,z1)ともう一方の三角形の各点(x,y,z2)
を比べてzの値の大きいほうを描写する

内挿補間:z軸の値固定で、y軸に垂直(x軸に水平)に図形を切断し、
範囲内で最大(xmax)と最小(xmin)の値を取得する
xmaxからxminまで直線を引く

双方の三角形の頂点は任意に指定できる
何度もすいませんが、よろしくお願いします
266デフォルトの名無しさん:2006/05/04(木) 12:13:19
GWの課題でjava系?がでた・・。よろしくお願いします


【 課題 】画面で振り子が左→右→左・・・と動くプログラム
【 用語 】普段はC使ってるけどjavaでどう書くか?が課題
【 期限 】 来週[5月8日(月)]まで
【 Ver  】 javaのバージョン知りません
【 補足 】 javaやったこと無い素人なので突っ込みには答えれないです

267250:2006/05/04(木) 12:28:34
>>260
是身=ゼミって事ですか。

そうです。
これが、ゼミでやる基礎Javaの最終課題になるのですが、
僕にはこのゼミは難しすぎたみたいで、この課題が終わったら辞めようと思っています。
先生の指導方針は素晴らしいと思うのですが、僕にはコンピュータ初心者でもじっくり分かる授業の方が
合っているような気がするので、きちんと基礎から教えてもらえる初心者向けのゼミに入ろうと思います。
268250:2006/05/04(木) 13:59:01
>>250の仕様書を日本語に訳しました。
ttp://w5.abcoroti.com/~classical_java/
269初心者ですが:2006/05/04(木) 14:32:52
今日からjavaをはじめたんですが、
コンパイル?した後に、実行しようとすると
Exception in thread"main"java.lang.Noclass DefFound Error
となってしまうんですが、どうすればいいか、わからないんです。
何方か教えてもらえないですか?
お願いします
270デフォルトの名無しさん:2006/05/04(木) 15:09:11
271デフォルトの名無しさん:2006/05/04(木) 15:45:12
>>266
C やってるなら、まずはゴリゴリの手続き指向でいいから書いてみること。話はそれからだ。
いきなり Java らしく書ける人なんてそうそういない。

>>268
気分転換に一部だけ書いた。
ttp://sourcepost.sytes.net/sourcepost/sourceview.aspx?source_id=27642 (コメントが化けとるが)
SalariedEmployee 以外の具象クラスは自分で書いてくれ。
272271:2006/05/04(木) 15:52:23
追伸。

Employee クラスの printDescription メソッドは削ってくれ。
273デフォルトの名無しさん:2006/05/04(木) 17:12:58
>>266
guiでってことか?
274250:2006/05/04(木) 17:20:02
>>271
ありがとうございます。
271さんのソースを元に、自分のソースに全部組み込んでみました。
社員クラス: ttp://sourcepost.sytes.net/sourcepost/sourceview.aspx?source_id=27646
メインクラス: ttp://sourcepost.sytes.net/sourcepost/sourceview.aspx?source_id=27647

課題の端っこにあったのを見落としていたのですが、8人の社員の一週間の給料合計も求めないといけないらしく
上記ソースのメインクラスの方に、

for (int i = 0; i < myEmployee.length; i++) {
double totalWSalary += myEmployee[i].calcSalary();
myEmployee[i].printInfo();
}
System.our.println("Total Weekly Salary: "+totalWSalary);

と、全体の給料の合計を求めるソースを追加してみたのですが、エラーを吐いてしまいます。
275デフォルトの名無しさん:2006/05/04(木) 17:21:47
で?
276デフォルトの名無しさん:2006/05/04(木) 17:23:06
エラーが出たんならどんなエラーか書くのが常識だろ
まあそれ見ただけでわかるけどな
277デフォルトの名無しさん:2006/05/04(木) 17:29:44
>double totalWSalary += myEmployee[i].calcSalary();

これはまずいんじゃない?
278250:2006/05/04(木) 17:35:29
>>275
どうすれば良いのでしょうか?  …orz

>>276
エラーは、calcSalary()の下に赤い波線が入り、「シンボルを見つけられません。」と出ています。

>>277
どうまずいのでしょうか?
279271:2006/05/04(木) 17:39:46
>>274
Michael Jackson とか、Bill Gates とかの楽しい社員を削りやがったな!

まあいい、徹夜で勉強してもう寝るから教えとく。

double totalWSalary = 0;
for (int i = 0; i < myEmployee.length; i++) {
totalWSalary += myEmployee[i].calcSalary();
myEmployee[i].printInfo();
}
System.out.println("Total Weekly Salary: "+totalWSalary);

3箇所間違っておったわい。System.out のスペルとスコープ外の変数の使用とローカル変数の未初期化。








何でわざわざ Person クラスを作ったのかとか、何で Person クラスに set メソッドを書いてないのかとか… Employee クラスが何で abstract なのかとか…
説明できなくて教授に起こられてくるが良い…実はちょっち意地悪な書き方なのだよ…ごにょごにょ。
280デフォルトの名無しさん:2006/05/04(木) 17:44:55
>>278

初期化してないからかな?
281250:2006/05/04(木) 17:45:47
>>279
ありがとうございます。
それでも、

totalWSalary += myEmployee[i].calcSalary();

の、calcSalary();が「シンボルを見つけられません。」と言ってきますorz
282250:2006/05/04(木) 17:48:45
myEmployee[i]を打った後に、. を打つと、自動的に
JBuilderが参照出来る型?を表示してくれるのですが、
そこにget(set)FirstName、get(set)LastName、get(set)Ssn、printInfo
しか表示されません。
283271:2006/05/04(木) 17:53:04
>>281
親クラスから calcSalary メソッドを取っちゃってるんだから当然。
ていうか、親クラスで定義したメソッドを子クラスがオーバーライドするのがポリモフィズムなんでしょ。

課題に答えたコードをわざわざ壊してどうする。
分からないのに構造を変えるものではない。

最終ヒント。
ttp://sourcepost.sytes.net/sourcepost/sourceview.aspx?source_id=27648

寝る。
284250:2006/05/04(木) 18:20:44
>>283
ありがとうございました。完成しました。
完成したソースを置いておきます。
本当にありがとうございました。

ttp://sourcepost.sytes.net/sourcepost/sourceview.aspx?source_id=27649
ttp://sourcepost.sytes.net/sourcepost/sourceview.aspx?source_id=27650
285271:2006/05/04(木) 18:34:56
>>284
本当に寝る前に覗くと…お、できたですか。
あとはサブクラスに get メソッドと set メソッドつけたってくれ。
仕様書(課題)にはそう作れとかいてるぞ。
286デフォルトの名無しさん:2006/05/04(木) 19:07:11
ふと>>271の健康状態が気になった
>>250の宿題進捗状況よりも

ちゃんと寝とけよ
287デフォルトの名無しさん:2006/05/04(木) 19:20:07
>>271
お疲れ様
288デフォルトの名無しさん:2006/05/04(木) 19:26:36
289196:2006/05/04(木) 23:56:55
>>264
分かりました。ありがとうございました。がんばります。
290250:2006/05/05(金) 04:25:00
>>285
最後まで本当にありがとうございます。
get、setを加えたソースです。

ttp://sourcepost.sytes.net/sourcepost/sourceview.aspx?source_id=27651
ttp://sourcepost.sytes.net/sourcepost/sourceview.aspx?source_id=27652
291デフォルトの名無しさん:2006/05/05(金) 12:38:28
【 課題 】cunstomer_ID, NAME, Phone_number のデータをもったデータベースがある。
     HTMLで、SQL文を送信し、その結果のテーブルを表示する
     Java Servletをつくれ。
【 用語 】数学用語、専門用語の意味、説明を書きます 《あれば必須》
【 期限 】なるだけ早く。
【 Ver  】Java Servlet
【 補足 】JDBCを使用

よろしくお願いします。
292デフォルトの名無しさん:2006/05/05(金) 12:42:01
【 課題 】cunstomer_ID, NAME, Phone_number のデータをもったデータベースがある。
     HTMLで、SQL文を送信し、その結果のテーブルを表示する
     Java Servletをつくれ。
【 用語 】数学用語、専門用語の意味、説明を書きます 《あれば必須》
【 期限 】なるだけ早く。
【 Ver  】Java Servlet
【 補足 】JDBCを使用

よろしくお願いします。
293デフォルトの名無しさん:2006/05/05(金) 12:45:30
【 課題 】cunstomer_ID, NAME, Phone_number のデータをもったデータベースがある。
     HTMLで、SQL文を送信し、その結果のテーブルを表示する
     Java Servletをつくれ。
【 用語 】数学用語、専門用語の意味、説明を書きます 《あれば必須》
【 期限 】なるだけ早く。
【 Ver  】Java Servlet
【 補足 】JDBCを使用

よろしくお願いします。
294デフォルトの名無しさん:2006/05/05(金) 14:02:43
【 課題 】cunstomer_ID, NAME, Phone_number のデータをもったデータベースがある。
     HTMLで、SQL文を送信し、その結果のテーブルを表示する
     Java Servletをつくれ。
【 用語 】数学用語、専門用語の意味、説明を書きます 《あれば必須》
【 期限 】なるだけ早く。
【 Ver  】Java Servlet
【 補足 】JDBCを使用

よろしくお願いします。
295デフォルトの名無しさん:2006/05/05(金) 15:17:51
その前にイカレたPC直せ。
なるだけ早く。
296デフォルトの名無しさん:2006/05/05(金) 15:26:25
イカれてるのは頭だな
297デフォルトの名無しさん:2006/05/05(金) 15:38:27
環境構築するのめんどくせ
298デフォルトの名無しさん:2006/05/05(金) 15:49:35
息をするのもめんどくせ
2991:2006/05/05(金) 17:35:13
【 課題 】n段のピラミッドを表示する関数を作成せよ
【 用語 】なし
【 期限 】明日の夕方
【 Ver  】なし
【 補足 】static void spira(int n)
第i行目には(i-1)*2+1の*記号を表示して、最終行である
      第n行目には(i-1)*2+1の*記号を表示すること


300デフォルトの名無しさん:2006/05/05(金) 17:37:23
301デフォルトの名無しさん:2006/05/05(金) 17:40:25
日本語さえも不自由な奴がいるな
302デフォルトの名無しさん:2006/05/05(金) 17:46:13
行と段の違いは?
303299:2006/05/05(金) 17:59:44
昨日から寝てないんで、ミスタイプ…orz
【 補足 】static void spira(int n)
第i行目には(i-1)*2+1の*記号を表示して
最終行である第n行目には(n-1)*2+1の*記号を表示すること
>>302
行と段の違いはただの表現の違いだけだと思われ。
段→視覚的に見たピラミッド
行→プログラム内のforの動き?
304デフォルトの名無しさん:2006/05/05(金) 18:16:04
こういうことか
class Pyramid {
static void repeat(char c, int n) {
for (int i = 0; i < n; ++i)
System.out.print(c);
}
static void spira(int n) {
for ( int i = 1; i <= n; ++i ) {
repeat(' ', n-i);
repeat('*', (i-1)*2+1);
System.out.println("");
}
}
public static void main(String args[]) {
spira(5);
}
}
305299:2006/05/05(金) 20:59:56
>>304
import java.util.Scannerを使ってKeyから入力した
任意の段数のピラミッドを表示するプログラムですたorz
306デフォルトの名無しさん:2006/05/05(金) 21:08:13
よし、今すぐ氏ね
307デフォルトの名無しさん:2006/05/05(金) 21:19:52
他に隠し仕様はない?
308299:2006/05/05(金) 21:41:51
>>307
他には無いはず。あとは挿絵に奇数ずつ増えていく*のピラミッドのみ
309304:2006/05/05(金) 22:42:07
>>299
最初から言え

>>304 のプログラムの一行目に
import java.util.Scanner;
を追加して、main() を
public static void main(String args[]) {
System.out.print("Input an integer > ");
spira(new Scanner(System.in).nextInt());
}
にしなさい
310初心者ですが:2006/05/05(金) 23:22:32
>>270
ありがとうございました
311299:2006/05/06(土) 00:24:13
>>309
dクス。repeatははじめてみたよorz
勉強になるなぁ
312デフォルトの名無しさん:2006/05/06(土) 00:30:33
そりゃ初めて見るよな
だって>>304が初めて実装したんだから
それもとあんな実装方法初めて見たってこと?
313299:2006/05/06(土) 00:38:49
>>312
実装方法そのものでつ。
基礎を固めようと思って勉強中なんだけどまだまだ知らないことありますわ。
repeatって意味そのものの役割を果たしたりするわけ?
314デフォルトの名無しさん:2006/05/06(土) 00:56:59
for文を書いているだけなのが何か目新しいのかな?
多分それはあなた自身に問題があるのではなく、講師の方に問題があるな
関数を作成せよとか、補足のstaticメソッド指定ってのをみると
講師の程度がよくわかる


メソッド名ってそのメソッドが何をするか表すように命名するんだよ
だからrepeatは何を繰り返すかはわからんが、何かを繰り返すメソッド
ってのが想像つく

あと、メソッドはなるべく分割することを心がけること
ピラミッドの例でいうならば、spiraメソッドに二重for文を直接
書くのではなく、repeatのように内側の処理を他のメソッドで
書くようにするとかね
315デフォルトの名無しさん:2006/05/06(土) 01:21:02
>>314 = >>304
316デフォルトの名無しさん:2006/05/06(土) 01:41:58
別人です
317304:2006/05/06(土) 01:50:27
うん、別人。なんか >>314 みたいなこと書こうかな、
でも今酔っぱらってるし面倒いなぁ、とか思ってたら
>>314 が書いてくれた。ありがと。
>>299 はお勉強頑張ってください。
318315:2006/05/06(土) 02:11:44
そうなのか。

でも >>314 の説明の半分はおかしいな。
319304:2006/05/06(土) 02:17:40
そうなの?ぶっちゃけちゃんと読んでない w
ちなみに >>304 のプログラム書いた時点では酔ってないので >>299 は安心してね
320デフォルトの名無しさん:2006/05/06(土) 07:26:50
質問なんですけど、Java Servletで、
obj.toStringには、空白込みの文が入っていて、
out.println("<a href ='test?obj="+ obj.toString() + "'>" + obj.toString()+"</a>");
とすると、URLに空白がそのまま入って今います。
空白を+に変えるときには、どうしたらいいのか、教えてください。
お願いします。
321デフォルトの名無しさん:2006/05/06(土) 12:25:54
Servletって何か関係あるの?
文字列を置換する方法すら知らないの?
322デフォルトの名無しさん:2006/05/06(土) 12:26:55
>>318
どのへんがおかしいか参考までに教えてくれ
323デフォルトの名無しさん:2006/05/06(土) 13:13:29
>>320
replaceAll(" ", "+")
324デフォルトの名無しさん:2006/05/06(土) 13:16:32
replace(' ', '+')
325318:2006/05/06(土) 14:14:10
>>322
では僭越ながら >>314 にツッコミを。

> 補足のstaticメソッド指定ってのをみると講師の程度がよくわかる
この場合、spira は main の単なる下請けメソッド。
おまけにインスタンスフィールドもインスタンスメソッドも使う必要が無い。
こういうのは static で全然構わない。突っ込むなら private static にした方が良い、と言うべき。

外部に公開するとしても static で構わない。だって、外部に公開するメソッドの仕様は将来に渡って変えてはならないのだから。
static メソッドはクラスが提供するサービスとなる。インスタンスが提供するサービスと区別して認識すべし。

加えて、初心者に教えるなら、手続き指向的な書き方から入るのが好ましいと思う。
自分なら最初は全てのメソッドを static で書かせる。

> だからrepeatは何を繰り返すかはわからんが、何かを繰り返すメソッドってのが想像つく
単語1つの「一等地」な名前を使っても良いのは、private な下請けメソッドの時くらい。
外部に公開するなら「printRepeatedChar」くらい明確につけるべし。

> あと、メソッドはなるべく分割することを心がけること
機械的に分割しても意味が無い。
コードの長さ、意味の分かりやすさ、メンテのしやすさを考えて適時考えるべし。
ここら辺は経験がものを言う。
この場合の repeat は良いと思う。
2次元配列の各要素を順に処理するような、ごく単純な2重ループなら切り分ける必要はない。
326デフォルトの名無しさん:2006/05/06(土) 17:27:15
関係ない俺が書くのはどうかとも思うが

spiraがstaticである指定があるから今回はそうなんだろうけど
メンバ変数にピラミッドを構成する文字を持たせたりする方法も考えられる

メソッドの仕様というのはインターフェースについてなら同意
内部仕様は変える事も

staticで書かせるのは良くないと思う
折角手続き指向の変な癖が入って無いんだから
最初からオブジェクト指向に慣れさせるべき
327318:2006/05/06(土) 18:39:14
>>326
> メンバ変数にピラミッドを構成する文字を持たせたりする方法も考えられる
確かにそういう場合も考えられる。
しかし static void spira(Char c, int n) のようにしてしまう手もある。

どっちがいいのか?ケースバイケースだと思う。
Pramyd クラスの使われ方の位置づけと、どの程度の拡張を想定するかに依存する。
さしあたって必要なさそうなことは考えないのが現実的ではないのか。

この場合の問題領域は、宿題の扱う範囲内で書くこと。
さしあたって拡張のことは考えなくていい(というより、想定不可能)局面=だから static で良い、と考える。

> メソッドの仕様というのはインターフェースについてなら同意
> 内部仕様は変える事も
??
仕様=外から見た振る舞い 実装=実際の中の作り。中は当然変えても良い。

> 折角手続き指向の変な癖が入って無いんだから
> 最初からオブジェクト指向に慣れさせるべき
趣味の違いだろうけど、自分はそうしないと教える自信がない。
低レベルなことから入らないと伸びないと思う。
経験上、C でヒープに構造体を放り込んだり、関数へのポインタを使ってコマンドパターンを実装できるくらいの人は Java に入ってもすいすい分かる。
変な癖を持ってるのは C もよく分かってなかった人たちだった。
328318:2006/05/06(土) 18:48:10
追記
この場合に関しては…。
そもそも Pyramid という名前のクラスが文字出力のサービスを外部に公開するのは筋が違うだろう、という気持ちもある。
329デフォルトの名無しさん:2006/05/06(土) 19:41:16
>>327
結局ケースバイケースだよね

ピラミッドの印字を属性として持たせたほうがしっくり来るのと
staticに違和感もあるけどこれは捉え方の違いだしね


内部仕様と外部仕様(=インターフェイス)って使わないのかな
何かの方言だったらスマソ


教え方の方針は人それぞれだしね
ただCもよく分って無い人が居る現実の元で
手続き指向で教えてstatic全開の癖を持つ悪魔が生まれないかが心配


いや,仰るとおり変な癖を持つ人はどんな教え方しても鬼のようなプログラムを作って来るんだけれども
330デフォルトの名無しさん:2006/05/06(土) 19:46:11
あー関係ない俺が長々と書いてスレ汚しスマソ
331304:2006/05/06(土) 21:07:21
めっちゃ盛り上がってるな。
repeat() 書いたのは、「半角じゃなくて全角で」とかいう後付けがありそうな気がしたので、
対応できるようにするためです。spica() が static であるべきかどうかはしらん。
てゆかまだ static じゃないメソッドとかクラス作成とかは習ってないんじゃん?
なんかおもしろい課題来ないかな。
332デフォルトの名無しさん:2006/05/07(日) 11:49:37
【 課題 】自由課題で下(i=200)から上(i=0)に"a"という文字を徐々に移動させるアニメーションがあります。
      そこでiの値(Y座標)が0〜50の時にYESを表示。それ以外のときはNOと表示させたいのですがうまくいきません。》
【 期限 】なし
【 補足 】色々ためしてるのですがどうしてもできません。どうもiのwhile文がkeyEventのif文のiに影響してません。
      よろしくお願いします。
import java.applet.Applet;
import java.awt.*;
import java.awt.event.*;

public class Original extends Applet
{
double random;
int number=65;
int i;
String word="a";

public void paint(Graphics g)
{
requestFocus();
addKeyListener(
new KeyAdapter(){
public void keyPressed(KeyEvent e){
if(e.getKeyCode()==65&&0<=200-i&&200-i<=50){
System.out.println("YESで"+i);
}
else {
System.out.println("NO"+i);
}
}});


333332:2006/05/07(日) 11:50:23
g.setColor(Color.BLACK);
g.drawLine(0,50,500,50);
i=0;
while( i<200){
try{
g.drawString("a",250,200-i);
g.setColor(Color.WHITE);
Thread.sleep(15);
g.fillRect(0,0,1000,1000);
g.setColor(Color.BLACK);
g.drawLine(0,50,500,50);
}
catch(Exception e)
{System.out.println(e);}
i++;}}}
334デフォルトの名無しさん:2006/05/07(日) 12:30:31
>>332
http://sourcepost.sytes.net/sourcepost/sourceview.aspx?source_id=27664
お前のやりたいことってこういうことか?
っていうかKeyEventって意味わかってる?
キーボードからのイベントを感知するから、使いたいならキーボードのaを連打することになるぞ
ああ、それともaを入力したときだけ現在位置を知りたいとかか?

全体的に意味不明・・
335332:2006/05/07(日) 12:52:53
>>334
キーボードでaが入力されたときのy座標が知りたいのですが。。
それでそのy座標が0〜50の値であればYES。それ以外ならNOと。
>>334のですと常にiの値(つまりy座標)が200になっていまいます
このプログラムではy座標を知るのは無理ですか?
336デフォルトの名無しさん:2006/05/07(日) 13:07:18
>>332
そういうことね
可能
337332:2006/05/07(日) 13:14:34
>>336
すみません。それが色々ためしたんですけど作れないです
時間があればでいいので作ってくれませんか?
338デフォルトの名無しさん:2006/05/07(日) 13:34:19
すみませんが、どなたかオブジェクトの取得とオブジェクトの参照がどういった
ものか、また その違いについて御教授お願いします…orz
構文なんかあればその説明もお願いしまつorz
339デフォルトの名無しさん:2006/05/07(日) 13:45:33
340デフォルトの名無しさん:2006/05/07(日) 14:02:29
341338:2006/05/07(日) 14:13:08
>>339
ドモ いってきまつorz
342デフォルトの名無しさん:2006/05/07(日) 16:07:15
【課題提示用テンプレ】
【 課題 】7つのgif画像を、座標を変えながらスクリーン上に順次描画して簡単な動画を実現せよ。
【 用語 】
【 期限 】今日中にお願いします!
【 Ver  】5.0でも実行できるものでお願いします。
【 補足 】gif画像は同じ感じの動物が1.gif,2.gif・・・のように7つ与えられています。それが滑らかに動く様を実現するものです。
343デフォルトの名無しさん:2006/05/07(日) 16:48:29
>>342
その7つのgif画像とやらをどっかにあげろ
344デフォルトの名無しさん:2006/05/07(日) 17:16:52
>>343
動物が歩く一連の動きを7コマで表現するものです。
一枚の画像は縦横200ピクセルです。
座標はこちらで調整するのでプログラムを教えてもらえませんか。
画像をあげるといろいろとよろしくないので。
345デフォルトの名無しさん:2006/05/07(日) 17:27:23
>344
課題の本質と関係ないところで回答者の手を煩わせても回答率が落ちるだけだぜ。
課題で与えられた画像でなくてもいいから、質問者が画像を用意した方がいいんでないの?
346デフォルトの名無しさん:2006/05/07(日) 18:09:02
>>342
てか同じ学校、学部、学科だな
俺出来たからやろうか?
んでそんくらい変えたくらいじゃばればれ
つまらん小細工スナ
347342:2006/05/07(日) 20:50:08
>>346
小細工したのは悪かったから教えて。
348デフォルトの名無しさん:2006/05/07(日) 21:06:36
直接会えばいいんでないの?
349デフォルトの名無しさん:2006/05/08(月) 00:53:25
そうね。後で連絡するから電話番号書いておいてよ。
350デフォルトの名無しさん:2006/05/08(月) 01:37:58
ありがとう。でももういいよ。
351デフォルトの名無しさん:2006/05/08(月) 01:54:09
そんな!非道いわ!
352デフォルトの名無しさん:2006/05/09(火) 16:37:30
【 課題 】
1)以下のプログラムのQueueクラスのメソッドを書き換えて、
待ち行列の内容を表示できるようにせよ。
待ち行列の内容は、最初に挿入された項目から
順に最後に挿入された項目までを表示すること。
ttp://sourcepost.sytes.net/sourcepost/sourceview.aspx?source_id=27678

2)両頭待ち行列(deque,double-headed queue)にもとづいてDequeクラスのメソッドを作れ。
insertLeft(), insertRight(),removeLeft(),removeRight(),isFull()のメソッドを作ること。

3)上のプロジェクト(2)のDequeにもとづいてStackクラスを作れ。
以下のプログラムのstackクラスと同じメソッド機能がなければならない。
ttp://sourcepost.sytes.net/sourcepost/sourceview.aspx?source_id=27679
【 期限 】なるべく早めに
【 補足 】丸投げです。よろしくお願いします
353デフォルトの名無しさん:2006/05/09(火) 21:38:00
>>352

「にもとづいて」の意味がよく分からないが・・・

2)両頭待ち行列(...)にもとづいてDequeクラスのメソッドを作れ。
→...を実装して...
3)上のプロジェクト(2)のDequeにもとづいてStackクラスを作れ。
→...を利用して...

だと解釈して、

1)
ttp://sourcepost.sytes.net/sourcepost/sourceview.aspx?source_id=27680
2)
ttp://sourcepost.sytes.net/sourcepost/sourceview.aspx?source_id=27681
3)
ttp://sourcepost.sytes.net/sourcepost/sourceview.aspx?source_id=27682
354デフォルトの名無しさん:2006/05/09(火) 22:57:22
>>353
あってます、ややこしい文章ですみません
ありがとうございました
355リリー:2006/05/10(水) 00:37:36
言語はJAVAで、jspを使った課題なのですが、
課題:テーブルを使った九九表の作成
条件:jsp部分とhtml部分は完全に分けて、
二次元配列を使用して、for文で各列を作る
html部分には<%= 変数名 %>のみ・・・
です。どなたかわかりませんか?
356デフォルトの名無しさん:2006/05/10(水) 07:37:51
【 課題 】
1つのボタンを含むアプレットを作成せよ。
ボタン上のラベルは”start”に初期設定する。
ボタンを押すと、ラベルは”stop”に変化する。
ボタンを押すたびに、ボタンラベルはこれらの2つの値の間で切り替わる。

【 期限 】
5月12日まで

【 補足 】
中途半端に行き詰ったのがありますが、やってくださる方にお任せして丸投げします。
よろしくお願いします。
357デフォルトの名無しさん:2006/05/10(水) 07:58:41
>>356

import java.applet.*;
import java.awt.*;
import java.awt.event.*;

public class A359 extends Applet implements ActionListener {
private Button bu;
public void init() {
bu = new Button("START");
bu.addActionListener(this);
add(bu);
}
public void actionPerformed(ActionEvent e) {
if ("START".equals(bu.getLabel())) {
bu.setLabel("STOP");
} else {
bu.setLabel("START");
}
}
}
358デフォルトの名無しさん:2006/05/10(水) 10:34:32
卒論で「携帯アプリ(iアプリ)で「hello world」を表示しろ」ってな宿題が出たんですが
サポートされていないエンコーディングですと表示されて先に進めません。
誰か教えてください><; 期限は今日の3時までです。
import java.io.*;
import java.util.*;
import com.nttdocomo.ui.*;
import com.nttdocomo.device.*;
import com.nttdocomo.io.*;
import com.nttdocomo.net.*;
import com.nttdocomo.util.*;
import javax.microedition.io.*;

class C extends Canvas {
 Graphics g; 
 C() {
  Display.setCurrent(this);
  g = getGraphics();
 }
 
 void main() {
  g.drawString("Hello World", 20, 20);
 }
 public void paint(Graphics g) {
 }
}
public class I extends IApplication {
 C c;
 public void start() {
  c = new C();
  c.main();
 }
}
359デフォルトの名無しさん:2006/05/10(水) 11:00:54
「先に進めません」 がコンパイルエラーなのか例外なのか書きやがれ。
iアプリはやったこと無いが、ソース見る限り特別なことはやってないから
端末かコンパイラのエンコーディングがShift_JIS固定とかなんじゃねーの?
360356:2006/05/10(水) 11:58:09
>>357
素早い回答ありがとうございます。
参考にさせていただきますね。
361デフォルトの名無しさん:2006/05/10(水) 12:06:21
エラーが出るとかいってエラーの内容を書かないクズが多すぎるな
362デフォルトの名無しさん:2006/05/10(水) 14:11:38
みなさま方には簡単すぎる、というか初歩だとおもうのですが
初心者でさっぱりわかりません。お手伝いよろしくおねがいします。

変数を二つ以上宣言してそれぞれに自分の好きな値(ゼロではない)を代入し
ふたつの変数のビット演算子による結果を表示するプログラムを作る

int a;
int b;

a=?
b=?

実行できるようにするにはどうすればいいでしょうか?
よろしくおねがいします。
363デフォルトの名無しさん:2006/05/10(水) 14:35:54
>>362

public class Bit{
public static void main(String args[]){
int a=3;
int b=5;

System.out.println(a|b);
}
}




「System.out.println(a|b);」の | は論理和をあらわす。
3は2進で11、5は2進で101。これらの論理和は111なので実行すると10進で7と表示される。

その他のビット演算子は教科書でも参考に汁
364デフォルトの名無しさん:2006/05/10(水) 14:43:16
>>363
素早い返信ありがとうございました
365デフォルトの名無しさん:2006/05/10(水) 17:40:43
そもそも2進数をわかっているのか・・
366デフォルトの名無しさん:2006/05/10(水) 21:16:53
【 課題 】
以下のヒントを参考にし、2つの自然数a,bの最大公約数を求めるアルゴリズムを完成させよ。

・アルゴリズム1(単純な方法):
1) a,bの小さい方の数をcとする。
2) a,bをcで割る。どちらも割り切れたなら、cが最大公約数。
3) 割り切れなかったら、cをひとつ減じ、2)に戻る。

・アルゴリズム2(ユーグリッドの互助法)
1) a ≧ bとする。
2) bでaを割る。また、余りをrとする。
3) もし、rが0なら5)へ。
4) bを新たなa、rを新たなbとして2)に戻る。
5) 一つ前のrが最大公約数。
367366続き:2006/05/10(水) 21:17:31
(ヒント)

//GDC.java
import java.io.*;

public class GDC{
static int gbc1(int a, int b){
[ここにアルゴリズム1を記述する]
}
static int gbc2(int a, int b){
[ここにアルゴリズム2を記述する]
}
public static void main(String args[]) throws IOExeption{
BufferedReader key = new BufferedReader(new InputStreamReader(System.in));
int a = Integer.parseInt(key.readLine());
int b = Integer.parseInt(key.readLine());
System.out.println("入力された文字:" + a + "," + b);
System.out.println("最大公約数(方法1):" + gbc1(a, b));
System.out.println("最大公約数(方法2):" + gbc2(a, b));
}
}

【 期限 】 5/14 15:00
よろしくお願いします。
368デフォルトの名無しさん:2006/05/10(水) 22:24:26
>>366
static int gbc1(int a, int b){
int c = (a < b)? a: b;

while (!((a % c == 0) && (b % c == 0)))
c--;

return c;
}

static int gbc2(int a, int b){
int temp;
int r;

if (a < b){
temp = a;
a = b;
b = temp;
}

while ((r = a % b) != 0){
a = b;
b = r;
}

return b;
}

検証はして無い
369366:2006/05/10(水) 22:37:40
>>368
早速の回答ありがとうございました、大丈夫そうです。
370リリー:2006/05/10(水) 22:46:35
【 課題 】
言語はJAVAで、jspってのを使い、
テーブルを使った九九表の作成
【 条件 】
jsp部分とhtml部分は完全に分けて、
二次元配列を使用して、for文で各列を作る
html部分には<%= 変数名 %>のみ・・・
【 期限 】
5月12日まで・・・
期限が早いのですが、わかる方お願いします。
371デフォルトの名無しさん:2006/05/10(水) 23:18:24
>>370
テンプレを使うべきことに気付いたのは良いとして、
> 1:問題文は自己省略せずに、直接全部貼り付けてください。
372デフォルトの名無しさん:2006/05/11(木) 00:47:58
むしろ名前が
373デフォルトの名無しさん:2006/05/11(木) 02:20:37
【 課題 】階乗10!を求めるプログラムを再帰を用いて作成せよ
【 期限 】できれば今日中に
【 補足 】自分で考えたものですがjavacでは文句言われなかったのに実行すると
       at DisplayKaijo.Kaijo(DisplayKaijo.java:12)
      というエラーがいっぱいでます。


class DisplayKaijo{
public static void main(String[] args) {
int n=10;
System.out.println(n + " の階乗 = " + Kaijo(10));
}

static int Kaijo(int n){
if(n==0){
return 1;
}
else{
return Kaijo(n*(n-1));
}
}
}
374デフォルトの名無しさん:2006/05/11(木) 02:50:57
>return Kaijo(n*(n-1));
return n*Kaijo(n-1);
じゃないのか
375デフォルトの名無しさん:2006/05/11(木) 03:10:10
>>374ありがとうございます。全然気づきませんでした・・・
376おねがいします:2006/05/11(木) 13:23:26
課題 1
 コマンドライン引数として渡されたものを
 (そのままの順で スペースで区切って)順に印字するプログラム
課題 2
 コマンドライン引数として渡されたものを
 (そのままの順で スペースで区切って)逆順に印字するプログラム
 実行例
  D:\class\CS>java Echo1 ab d e f eijao afea oaefoawef anfeia
   ab d e f eijao afea oaefoawef anfeia
  D:\class\CS>java Echo2 ab d e f eijao afea oaefoawef anfeia
  anfeia oaefoawef afea eijao f e d ab
宿題:
 上記の課題1と2を完成させる。
377デフォルトの名無しさん:2006/05/11(木) 13:55:36
>>378
2つクラス書くの面倒なんで、適当に読み替えろ
両方の違いはループをまわす方向だけだ

public static void main(String[] args) {
 echo1 (args);
 echo2 (args);
}

public void echo1(String[] args) {
 for (int i=0;i < args.length; i++) { // 正順ループ
  System.out.print( args[i] + " ");
 }
}
public void echo2(String[] args) {
 for (int i=args.length-1; i>=0; i--) { // 逆順ループ
  System.out.print( args[i] + " ");
 }
}
378377:2006/05/11(木) 13:57:37
x >>378
o >>376
379デフォルトの名無しさん:2006/05/11(木) 14:09:14
>>377
ありがとうございます。
380デフォルトの名無しさん:2006/05/11(木) 15:24:22
【 課題 】eat(double in_eat),run(double in_km)メソッドをtestクラスに作成する。
eatは食べた分の10分の1体重増加。
runは走った分の100分の1体重減少。

全くわかりません・・・
お願いします
381デフォルトの名無しさん:2006/05/11(木) 15:28:19
テンプレ使えって何度言わせれば・・
382デフォルトの名無しさん:2006/05/11(木) 21:19:17
class Test {

double weight;

Test(double weight){
this.weight = weight;
}
double eat(double in_eat){
return this.weight += in_eat * 0.1;
}
double run(double in_km){
return this.weight -= in_km * 0.01;
}

public static void main(String[] args) {
Test wh = new Test(65.8);
System.out.println(wh.eat(0.75));
System.out.println(wh.run(2.0));
}
}
383デフォルトの名無しさん:2006/05/11(木) 21:20:59
う、アンカー忘れた
>>380
384380:2006/05/12(金) 12:13:31
【課題】メソッド作成
private String name<名前用>
private double taijyu<体重用>
private double sincho<身長用>
private double nenrei<年齢用>
private ArrayList eatlist<食べた分蓄積用>
private ArrayList runlist<走った分蓄積用>

メソッド
各プロパティの値を入出力するためのメソッド

getXXXX,putXXX

コンストラクタHito(String name,double taijyu,double sincho,double nenrei)を定義する。


正しい解答を記述したファイルを指定してください。
まず、上記の内容で[Hito]クラスを作成する。eat,runメソッドで設定された値をArrayListに蓄積していく。
eatは食べた分の10分の1体重増加。
runは走った分の100分の1体重減少。
蓄積されたデータを取得するメソッドgetEat,getRunをHitoクラスに作成してそれぞれのArrayListを取得する。

>>383
有難うございます。380のは自己解決できました。
385383:2006/05/12(金) 12:24:46
>>384
では、これも自己解決してください
386383:2006/05/12(金) 13:03:51
また自己解決しました。お騒がせして申し訳ありませんでした。
387デフォルトの名無しさん:2006/05/12(金) 13:13:30
次はもっと上手くやろうな。
388デフォルトの名無しさん:2006/05/12(金) 20:20:47
【 課題 】テストの点数を複数入力し、平均点を計算するJAVAプログラミングを作りなさい。入力の終わりは空行入力で示すことにしなさい。
また、100より大きい値やマイナスとなる入力は無視するようにしなさい。
【 期限 】5/18

どうか、よろしくお願いします。
389デフォルトの名無しさん:2006/05/12(金) 23:40:58
課題)課題3.Ex04_3.java(ループのネスト)
double x=???;
double y=Math.sin(x);
によって,x ラジアンに対する正弦値を計算してy に
記録することが出来る.
キーボードから角度(単位は度で)の最大値を入力し,
0〜最大値まで*でサインカーブを描画
するプログラムを作成せよ.π はMath.PI と言う定
数が用意されているので,それにより度からラジアン
に変換すること.1 行が10 度に対応するとする.振
幅や0 の位置は適当に設定せよ.
期限)5/14お願いしますm__m
390デフォルトの名無しさん:2006/05/13(土) 00:15:45
>> 1 行が10 度に対応するとする.

これ、どういうこと?
10度ごとに点を表示して作図するってこと?
全体的に舌足らずで分かりにくい
391デフォルトの名無しさん:2006/05/13(土) 00:21:02
振幅を適当に設定するって書いてるからよくワカンネ
392デフォルトの名無しさん:2006/05/13(土) 00:50:17
>>388
import java.io.*;
public class Ave {
public static void main(String[] args) {
BufferedReader in = new BufferedReader(new InputStreamReader(System.in));
int sum = 0;
int tmp = -1;
int num = 1;
while(true){
System.out.print(num + "番目のテスト点数を入力してください:");
try {
tmp = Integer.parseInt(in.readLine());
} catch (Exception e) {
break;
}
if(tmp > 100 || tmp < 0){
continue;
}else{
sum += tmp;
num++;
}
}
System.out.println("平均点は" + sum/(num-1) + "点です");
}
}
393392:2006/05/13(土) 01:00:36
注1)インデントは自分でつける
注2)”入力の終わりは空行入力で示すことにしなさい。”とあるが、このプログラムは
   入力した文字を読み込めなかったり数字に変換できなかったりした場合に終了するプログラムである
注3)一番目のテスト点数の入力に失敗すると0除算エラーが起きる
注4)tmpの初期値は特に意味が無い
注5)これを提出して起こられても私は責任を取らない
394389:2006/05/13(土) 01:28:47
>390
10度ごとに点を表示して作図するということです。
参照画像は二点あります
ttp://evolution-next.sakura.ne.jp/snup/src/upfile2605.bmp.html
ttp://www.file-bank.net:8080/up/src/up0313.jpg
説明不足で申し訳ございませんm__m
395デフォルトの名無しさん:2006/05/13(土) 02:58:07
396デフォルトの名無しさん:2006/05/13(土) 21:48:53
【 課題 】1.入力した文字数の合計をカウントして表示するプログラムを作りなさい。
      2.整数を入力し、その値の2進数表現(32ビット)と、含まれる1の数をカウントして
        出力するプログラムを作りなさい。
【 期限 】5/14

よろしくお願いします。
397デフォルトの名無しさん:2006/05/13(土) 21:49:27
398デフォルトの名無しさん:2006/05/13(土) 22:47:26
jpgでソースだされたら嫌がらせ以外のなにものでもないなw
399デフォルトの名無しさん :2006/05/13(土) 23:08:02
(課題) 整数a、b、を入力して商と余りを求めて表示するアルゴリズムをループ処理で作成せよ。
a>bとする。
よろしくお願いします。
400デフォルトの名無しさん:2006/05/14(日) 00:56:48
>>399 動作未確認

import java.io.*;
public class test399
{
public static void main(String[] args){
int a = getConsole("a=");
int b = getConsole("b=");
int i = 0;
for(i = 0;a > 0;i++){
a -= b;
}
System.out.println("商:" + i);
System.out.println("余り:" + (a + b));
}

private static int getConsole(String msg){
System.out.printl(msg);
BufferedReader buf = new BufferedReader(new InputStreamReader(System.in));
String inputValue = buf.readLine();
return Integer.parseInt(inputValue);
}
}
401デフォルトの名無しさん:2006/05/14(日) 03:48:24
【課題】1.会員カードを発行したサービスを行いたいと考えている。会員ごとに定める情報として、
     会員番号、氏名、累積ポイント
    を考えている。以下のフィールドを持つクラスMemberを作成せよ。
     ・会員番号を格納するint型の変数num
     ・氏名を格納するString 型の変数name
     ・累積ポイントを格納するdouble 型の変数points
    また、クラスMemberの機能を確認するためのmain()関数を持つクラスPointTestを作成し、
    以下の作業を実行せよ。
     ・新しいMember型のオブジェクトmember1を作成する
     ・会員番号に自分の学籍番号下4桁を指定する
     ・累計ポイントを1000点とする
     ・3つの情報を画面に表示して確認する

    2.課題1で作成したクラスMemberに次の機能を追加せよ。全てのメソッドには、表示さ
    れているデータが何なのかを示すプロンプトを入れること。
     ・会員番号、氏名、累計ポイントを全て表示するメソッドvoid show()
     ・会員番号を指定するメソッドvoid setNum(int n)
     ・氏名を指定するメソッドvoid setName(String s)
     ・累計ポイントを指定するメソッドvoid setPoint(double p)
    また、main()の内容を、上記のメソッドを一通り使ったものとせよ。

    3.課題2までで作成したクラスMemberに次の機能を追加せよ。戻り値は適切なものを
    指定する事。
     ・会員番号を調べるメソッドgetNum()
     ・氏名を調べるメソッドgetName()
     ・累計ポイントを調べるメソッドgetPoint()
    また、main()中で上記のメソッドを全て試し、正しい結果が得られているかどうか確認
    せよ。

【期限】2005/05/15(月)
    以上です。家のPCがなぜかJAVAが動かない上、月曜日にすぐ提出なので切羽詰まっています。
    是非よろしくお願いします。
402デフォルトの名無しさん:2006/05/14(日) 09:12:23
say;家にPCがないのでできませんでした
403デフォルトの名無しさん:2006/05/14(日) 10:24:15
どうせパスが通ってないとかじゃねーの
404デフォルトの名無しさん:2006/05/14(日) 10:41:05
>>403
うちの大学のパソコンでもあるまいしw
405デフォルトの名無しさん:2006/05/14(日) 11:07:31
大学で用意するPCにパスが通ってないのかよ・・
406デフォルトの名無しさん:2006/05/14(日) 11:26:03
コンパイル時のエラーについて教えてください。

public class list4{
public static void main(String[]args){
TurtleFramef;
f = new TurtleFrame();
Turtle m = new Turtle();
Turtle ml = new Turtle();
f.add(m);
f.add(ml);
m.fd(100);
m.rt(90);
m.fd(150);
ml.rt(90);
ml.fd(100);
}
}
と作ってみたのですがコンパイルすると
3行目のTurtleFramef;
で文字ではありません。というエラーがでてしまいます。
調べたところ、不要な文字があるとこのエラーがでるという事だったのですが
何か間違いがあればご指摘おねがいします。
407デフォルトの名無しさん:2006/05/14(日) 11:30:19
>>406
まず、TurtleFramef;→TurtleFrame f;
408デフォルトの名無しさん:2006/05/14(日) 11:55:14
>>401
課題1
class Member {
int num;
String name;
double points;
}
class PointTest {
public static void main(String[] args) {
Member member1 = new Member();
member1.num = 1234; //←適当に入れたので変えてほしい
member1.name = "漏れ"; //←氏名は入れなくていいのか?
member1.points = 1000.;
System.out.println("会員番号:" + member1.num);
System.out.println("氏名:" + member1.name);
System.out.println("累積ポイント:" + member1.points);
}
}
409デフォルトの名無しさん:2006/05/14(日) 11:56:33
課題2
class Member {
int num;
String name;
double points;
void setNum(int num) {
this.num = num;
}
void setName(String name) {
this.name = name;
}
void setPoint(double points) {
this.points = points;
}
void show() {
System.out.println("会員番号:" + num);
System.out.println("氏名:" + name);
System.out.println("累積ポイント:" + points);
}
}
class PointTest {
public static void main(String[] args) {
Member member1 = new Member();
member1.setNum(1234); //←適当に入れたので変えてほしい
member1.setName("漏れ"); //←氏名は入れなくていいのか?
member1.setPoint(1000.);
member1.show();
}
}
410デフォルトの名無しさん:2006/05/14(日) 12:00:09
課題3
class Member {
int num;
String name;
double points;
int getNum() { return num; }
void setNum(int num) { this.num = num; }
String getName() { return name; }
void setName(String name) { this.name = name; }
double getPoint() { return points; }
void setPoint(double points) { this.points = points; }
void show() {
System.out.println("会員番号:" + num);
System.out.println("氏名:" + name);
System.out.println("累積ポイント:" + points);
}

}
class PointTest3 {
public static void main(String[] args) {
Member member1 = new Member();
member1.setNum(1234); //←適当に入れたので変えてほしい
member1.setName("漏れ"); //←氏名は入れなくていいのか?
member1.setPoint(1000.);
System.out.println("メソッドshow()");
member1.show();
System.out.println("メソッドgetNum() = " + member1.getNum());
System.out.println("メソッドgetName() = " + member1.getName());
System.out.println("メソッドgetPoint() = " + member1.getPoint());
}
}
411デフォルトの名無しさん:2006/05/14(日) 12:01:20
>>407さん
ご指摘ありがとうございます。
407さんのをやってみると
3,4,5,6行目で
シンボルを見つけられません。
と出るのですが他にも間違っている箇所があるのでしょうか?
412デフォルトの名無しさん:2006/05/14(日) 12:01:48
>>406
ここは宿題スレだよバカ
413デフォルトの名無しさん:2006/05/14(日) 12:02:42
414デフォルトの名無しさん:2006/05/14(日) 12:06:57
スレ違いでしたか、申し訳ありませんでした;
415デフォルトの名無しさん:2006/05/14(日) 12:45:46
     
     _, ,_
   ( ^ё^) タイトルに書いてあるやん。ヤダァ、見ないで!恥ずかしい…
     (つ/ )
      |`(..イ 彡サッ
     しし'
416デフォルトの名無しさん:2006/05/14(日) 14:10:40
>>400
どうコンパイルしてもエラーがでます。
原因をおしえてください。
417デフォルトの名無しさん:2006/05/14(日) 15:15:21
>>416
16行目:System.out.printlになってる。System.out.printlnが正しい。
その他:
BufferedReader buf = new BufferedReader(new InputStreamReader(System.in));
String inputValue = buf.readLine();
の部分が例外処理されていない。
418デフォルトの名無しさん:2006/05/14(日) 15:32:50
     _, ,_
   ( ^ё^) そんな間違い指摘せんといてよ。ヤダァ、見ないで!恥ずかしい…
     (つ/ )
      |`(..イ 彡サッ
     しし'
419デフォルトの名無しさん:2006/05/14(日) 15:34:47
sun java のサイト今、DLできないの?sdkをDLしようとおもったけど、
できない。メンテナンスなのかな?だれか試してみてくれる?
オレのパソコンだけの問題ではないとおもうんだけど。
420デフォルトの名無しさん:2006/05/14(日) 15:40:47
>>419
俺もできんかった。
The Sun Download Center is temporarily unavailable. We will restore the site as soon as possible.
Please try again later. We apologize for any inconvenience.
421デフォルトの名無しさん:2006/05/14(日) 15:42:28
いつじゃヴぁーDLできるんだろ。。
早くサイトを復活してほしゅ。
422デフォルトの名無しさん:2006/05/14(日) 15:44:10
>>419
こっちでもDLできないよ。
15:00ぐらいからできないからメンテ中なんじゃない?
423デフォルトの名無しさん:2006/05/14(日) 15:47:23
>>422
漏れは14:00ぐらいからDLしようと行ったが、だめだった。
他のじゃヴぁDLミラーサイトは無いものか?!。。
424デフォルトの名無しさん:2006/05/14(日) 15:48:26
まぁ、日曜日だから気長にまつか。。
425422:2006/05/14(日) 15:54:34
>>423
JREだけならこっちでDL可能
http://www.java.com/ja/download/index.jsp
EclipseとかNetBeansには開発環境がついてるからそっちでDLするのもあり。
http://eclipsewiki.net/eclipse/
426デフォルトの名無しさん:2006/05/14(日) 16:08:14
>>408 有難う御座います!!大変助かりました。
427デフォルトの名無しさん:2006/05/14(日) 18:28:21
「課題」Turtleを使い星型を書きなさい。
public class list44{
public static void main(String[]args){
TurtleFrame f;
f = new TurtleFrame();
Turtle m = new Turtle();
Turtle ml = new Turtle();
f.add(m);
f.add(ml);
m.fd(150);
m.lt();
m.fd(150);
m.lt();
m.fd(150);
m.lt();
m.fd(150);
m.lt();
m.fd(150);
}
}
一筆書きを描きたいのですが・・・
ここまではできて()に色々な数字を入れてみているのですが
どうしてもうまく星型になってくれません。
よろしくお願いします。
428デフォルトの名無しさん:2006/05/14(日) 19:11:31
タートルクラスってなんだよ
429デフォルトの名無しさん:2006/05/14(日) 19:52:50
テンプレも使わないしもう

     _, ,_
   ( ^ё^) ヤダァ、見ないで!恥ずかしい…
     (つ/ )
      |`(..イ 彡サッ
     しし'
430デフォルトの名無しさん:2006/05/14(日) 21:55:54
>>427

TurtleクラスとTurtleFrameクラスのソースを出せ
話はそれからだ
431デフォルトの名無しさん:2006/05/14(日) 22:45:21
脳ミソまで亀野郎だな。
宿題難しくって手も足も出ないってか?
432デフォルトの名無しさん:2006/05/14(日) 23:18:44
【課題】Testクラスにファイル名を指定できるファイル出力用のメソッドを作成し、
長さ、重さをファイルに出力する。
出力フォーマットは[長さ],[重さ],[改行]となるようにする。
【補足】
import java.util.*;

public class Test {
private double nagasa;
private double omosa;

public void putNagasa(double name)
{
this.name = name;
}
public double getNagasa()
{
return this.nagasa;
}
public void putOmosa(double omosa)
{
this.omosa = omosa;
}
public double getOmosa()
{
return this.omosa;
}
433デフォルトの名無しさん:2006/05/15(月) 01:34:38
public void putNagasa(double name)
{
this.name = name;
}
public double getNagasa()
{
return this.nagasa;
}
434デフォルトの名無しさん:2006/05/15(月) 06:24:23
【課題】Testクラスにファイル名を指定できるファイル出力用のメソッドを作成し、
長さ、重さをファイルに出力する。
出力フォーマットは[長さ],[重さ],[改行]となるようにする。
【補足】
import java.util.*;

public class Test {
private double nagasa;
private double omosa;

public void putNagasa(double nagasa)
{
this.name = nagasa
}
public double getNagasa()
{
return this.nagasa;
}
public void putOmosa(double omosa)
{
this.omosa = omosa;
}
public double getOmosa()
{
return this.omosa;
}
ですorz
435デフォルトの名無しさん:2006/05/15(月) 08:18:57
>>434
メソッド名は適当に直してくれ

public void hoge(String fileName) throws IOException {
PrintWriter out = new PrintWriter(fileName);
out.println(nagasa + "," + omosa + ",");
out.flush();
out.close();
}
436デフォルトの名無しさん:2006/05/15(月) 15:27:44
分からないの教えてください。19日までにお願いします。ひな形は後で載せます。
選択ソートの実行過程・実行ステップ数を調べるプログラムを作りたい。
ひな形プログラム中の次の各メソッドを完成させよ。完成すると、選択ソートの
実行過程を表示しながらソートを実行してくれるようになる。
1-1:配列の要素を入れ替えるメソッドを完成させよ。
1-2:最小値のある場所を見つけるメソッドを完成させよ。
1-3:配列の内容を表示するメソッドを完成させよ。
1-4:配列にランダムな値を代入して初期化するメソッドを完成させよ。
1-5:選択ソートを実行するメソッドを完成させよ。
1-6:mainメソッドを完成させ、ソート過程を表示しながら選択ソートを実行するよう
にせよ。
1-7:作成したプログラムが正しく選択ソートを実行していることが分かる
  実行結果を示し、正しく動作していることを説明せよ。
1-8:考察・感想・デバッグ履歴を述べよ。
437デフォルトの名無しさん:2006/05/15(月) 15:30:27
class SelectionSort{

//比較回数を覚えておくための変数
intcompare = 0;

//コピー回数を覚えておくための変数
int copy = 0;

static void swap(int a[], int i, int j)
{
//1-1:配列の要素を入れ替えるメソッド

//動作:配列aの要素a[i]とa[j]の値を入れ替える

//例: a[0]=10, a[1]=30, a[2]=20の場合
// swap(a,1,0)を実行するとa[0]=30, a[1]=10, a[2]=20となる。
// swap(a,1,2)を実行するとa[0]=10, a[1]=20, a[2]=30となる。

//★以降を適切に埋めよ

int tmp;

}
438デフォルトの名無しさん:2006/05/15(月) 15:31:31
static int findMin(int a[], int N, int from)
{
//1-2:最小値のある場所を見つけるメソッド

//動作:N個の要素を持つ配列aに対し、a[from]からa[N-1]の間にある
//最小値を見つけ、最小値のある場所の添え字を返す
//最小値を見つけるまでに行った比較回数を変数compareに加算

//例: a[0]=10, a[1]=30, a[2]=20の場合
// findMin(a,3,0)は0を返す(a[0]からa[2]の範囲ではa[0]が最小値だから)
//compareの値は2増える。
// findMin(a,3,1)は2を返す(a[1]からa[2]の範囲ではa[2]が最小値だから)
//compareの値は1増える。

//★以降を適切に埋めよ
int min = 0;
int i;

return min;
}

static void showArray(int a[], int N)
{
439デフォルトの名無しさん:2006/05/15(月) 15:32:49
//1-3:配列の内容を表示するメソッド

//動作:N個の要素を持つ配列aの要素を全て画面に表示する

//例: a[0]=10, a[1]=30, a[2]=20の場合
// showArray(a,3)を実行すると画面に
// 10 30 20
// と表示される。

//★以降を適切に埋めよ
}


static void initArray(int a[], int N)
{
440デフォルトの名無しさん:2006/05/15(月) 15:33:28
//1-4:配列にランダムな値を代入するメソッド

//動作:N個の要素を持つ配列aに対し、1〜Nまでの範囲の数をランダムに入れる
//ただし、a[0]には常に0を入れること。

//ヒント:次のようにして乱数を使えば1〜Nまでの範囲の数をランダムに1つ作れる
//double n;
//n = (int)(java.lang.Math.random()*(N-1)) + 1;
//
//配列に入れる値に重複が無ければ望ましい

//★以降を適切に埋めよ
}

static void selection(int a[], int N)
{
inti;
441デフォルトの名無しさん:2006/05/15(月) 15:39:45
//1-5:選択ソートを実行するメソッド

//動作:選択ソートの過程を表示しながら、N個の要素を持つ配列aをソートする
//もう少し詳しく書くとこうなる。

/*
選択ソートの手順:
iの値を1からN-1まで増やしながら次のことを行う。

1.findMinメソッドを使って、a[i]からa[N-1]の間にある最小値の場所min
を探す

2.swapメソッドを使って、a[i]とa[min]の値を入れ替える

3.showArrayメソッドを使ってソート途中の配列aの内容を表示する
*/

//★以降を適切に埋めよ
}

public static void main(String args[])
{
442デフォルトの名無しさん:2006/05/15(月) 15:40:59
//1-6:上で作ったメソッドを用いて、ソート過程を表示しながら
//選択ソートを実行

//手順は次のようになる。

/*
1.要素を(20個もつ)整数型配列aを宣言

2.整数型変数Nに配列aの要素数を保存

3.initArrayメソッドを用いて配列aを初期化

4.showArrayメソッドを用いてソート前の配列aの内容を表示

5.変数compareの値を0に初期化

6.selectionメソッドを用いて配列aを選択ソート

7.showArrayメソッドを用いてソート後の配列aの内容を表示

8.ソートにかかった比較の回数を表示

*/

//★以降を適切に埋めよ
}
}
以上がひな形です。長くてすみませんがどうかお願いします。
443デフォルトの名無しさん:2006/05/15(月) 16:26:21
気利かせて雛形あきこの乳も貼れ!!
444デフォルトの名無しさん:2006/05/15(月) 17:18:48
ここだけ

1-8:考察・感想・デバッグ履歴を述べよ。

2ちゃんねるの宿題スレで教えてもらいました。
全角スペースのインデントに気付かず、何度もデバッグしてしまいました。
宿題の出題は >>1 のテンプレを使ったものになるといいと思います。
445デフォルトの名無しさん:2006/05/15(月) 22:00:37
http://kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/1910.txt

一応できたのだがcopyってのはどう使うのかわからない。。。。
それと
static int findMin(int a[], int N, int from)
{
int min = 0;
int i;
/*
省略
*/
return min;
}
ってなってるけど

int min = from;
int i;
/*
省略
*/
return min;
}
にしました。min = 0じゃ和気ワカラネ・・・・・
446デフォルトの名無しさん:2006/05/16(火) 15:51:03
【 課題 】以下のプログラムを、insertもしくはremoveしたときに
数の小さい順にソートするようにプログラムを改良せよ。
例)実行結果で20 40 15 60 80となっているところが15 20 40 60 80、
ttp://sourcepost.sytes.net/sourcepost/sourceview.aspx?source_id=27735
【 期限 】本日18:00まで、なるべく早くお願いします
【 補足 】丸投げです
447446:2006/05/16(火) 16:00:32
すみません追加です

remove()で、削除できる要素を指定できるようにプログラムを改良せよ。
例)theQueue.remove(60)と実行すると60を配列から削除できるようにする
448デフォルトの名無しさん:2006/05/16(火) 17:09:00
449446:2006/05/16(火) 19:05:32
>>448
ありがとうございます!

あともう一問お願いします

【 課題 】
以下のプログラムを改良して、実行結果が例のように出力されるように改良せよ。
例)(+はinsertした要素、-はdeleteした要素、→の右側に配列のリストを表示する)
+20 → 20
+40 → 20 40
+15 → 20 40 15
-20 → 40 15
-40 → 15

ttp://sourcepost.sytes.net/sourcepost/sourceview.aspx?source_id=27737

【 期限 】なるべく早いうちに
【 補足 】丸投げです
450デフォルトの名無しさん:2006/05/16(火) 19:24:13
>>449
なんだこれ、446の続きか?
451446:2006/05/16(火) 19:27:01
>>450
続きというか、ソートはしてもしなくても良いが結果の表示が>>449のようになるように、という問題です
452デフォルトの名無しさん:2006/05/16(火) 19:31:23
453446:2006/05/16(火) 19:55:59
>>452
あ、「+20 → 」や「-40 → 」等も実行結果の表示に入ってないといけないんです…
ややこしい書き方ですみません
454448:2006/05/16(火) 20:45:08
>>446
はーん、なるほどね・・だからremoveとかで対象が返ってきてるのか
http://sourcepost.sytes.net/sourcepost/sourceview.aspx?source_id=27739

これでいいのか?
455452:2006/05/16(火) 21:12:05
456446:2006/05/16(火) 21:17:42
>>454
できました、本当にありがとうございます
助かりました
457446:2006/05/16(火) 21:19:16
>>455もありがとうございます
色々やり方あるんですね…
458デフォルトの名無しさん:2006/05/17(水) 19:27:45
【 課題 】
ハッシュ表を使って個人情報を保存する次のアプリケーションを作成せよ。
学籍番号をキーとして使用し、Personオブジェクトで値を表わす。
Personオブジェクトには、氏名、電話番号、Fax番号、電子メール番号を保存する。
ハッシュ表のすべてのキー/値ペアを表示せよ。

【 期限 】
5月19日まで

丸投げで恐縮ですが、まったくわかりません。
どなたかお願いできますでしょうか?
459デフォルトの名無しさん:2006/05/17(水) 19:58:31
HashMap使ったらいいんじゃねーか?
460458:2006/05/17(水) 20:18:11
ハッシュマップとはなんですか?
とりあえずこれを満たすプログラムを組めと言われたんですが、わからなすぎて涙も出ません。
461デフォルトの名無しさん:2006/05/17(水) 20:18:44
ハッシュとかオブジェクトの意味すら分からんとか。
462デフォルトの名無しさん:2006/05/17(水) 20:33:53
4桁の西暦年をキーボードから入力し入力された西暦が閏年か閏年でないか
判別するプログラム。
誰かお願いします。
463458:2006/05/17(水) 21:04:51
>>461
それすらよくわかりません。
なんで理系行ったのかと後悔の毎日です。
464デフォルトの名無しさん:2006/05/17(水) 21:10:10
>>462
>>1
> 【Java宿題スレッド基本ルール・五箇条の御誓文】
> 1:問題文は自己省略せずに、直接全部貼り付けてください。
> 2:課題の「丸投げ」が最も好ましい提示法です。なるべく丸投げしてください。
> 3:数学問題は「○×法でせよ」だけでなく、その数式、前提条件も説明してください。
> 4:課題&宿題関連の質問はOKですが、それ以外の一般的な質問は禁止です。
> 5:もし回答プログラムがアップされたら、その返答と動作報告をお願いします。
> 【課題提示用テンプレ】
> 【 課題 】与えられた課題文をそのまま書きます 《必須》
> 【 用語 】数学用語、専門用語の意味、説明を書きます 《あれば必須》
> 【 期限 】提出期限、解答希望日があれば書きます
> 【 Ver  】希望するJavaバージョンがあれば書きます
> 【 補足 】課題について自分なりに補足する事、何か思う事があれば書きます。
>        丸投げでない場合は、途中までのソースとその経過報告、
>        質問点、疑問点を書きます(なるべく丸投げにしてください)

とりあえず閏年である条件を述べよ
465デフォルトの名無しさん:2006/05/17(水) 21:12:15
>>462
class Y4 {
public static void main(String[] args) {
int y = Integer.parseInt(args[0]);
if (y%4 == 0) {
System.out.println("うるう年です。オメデd");
} else {
System.out.println("どう見てもうるう年ではありません。本当にありがとうございました。");
}
}
466デフォルトの名無しさん:2006/05/17(水) 21:16:59
>>465
君はDだね
467デフォルトの名無しさん:2006/05/17(水) 21:23:10
閏年?
・4で割れて100で割れない
・4で割れて100で割れて400で割れる
468デフォルトの名無しさん:2006/05/17(水) 22:16:26
javaプログラミングの課題なのですが、恐縮ながら・・・まったくわかりません!!
丸投げ状態、はっきり言ってお手上げです。

ちょっと追い込まれています。。
わかる方、ぜひお願いいたします。

【 課題 】
これまでのプログラムを利用して,下記のどれかのプログラムを作成してください.
(1)ネットワーク対戦型○×ゲーム
(2)ネットワーク対戦型リバーシゲーム(オセロゲーム)
上記とチャット機能を一緒に持つこともできます.ちょっと頑張れば,下記も作れます.
(3)ネットワーク対戦型ダイヤモンドゲーム
(4)ネットワーク対戦型チェス
(5)ネットワーク対戦型将棋
(6)ネットワーク対戦型囲碁
(7)ネットワーク対戦型カードゲーム
その他,ネットワーク対戦型??なら何でもOKです.
また,一方が動いて,相手も動いて,何かしら通信が生じてそれなり意味があるならOKです.面白いものを期待しています.
様々なメッセージ(サンプルプログラムは「MOVE」だけですが,さらにいろいろ)を使えるようにするなど,苦労(工夫)の跡を見せてください.
その他,工夫とオリジナルに応じて高評価になります.
【 用語 】
【 期限 】5月19日金曜日23時59分まで
【 Ver  】
【 補足 】こちらを参照していただくと、わかりやすいかと思います。http://yoshino.sys.wakayama-u.ac.jp/netprog/
なるべく簡単なゲームがよいかと思います。○×ゲームなんかがいいかと・・・。

よろしくお願いいたします。。。
469デフォルトの名無しさん:2006/05/17(水) 22:16:48
public class LeapYear {
public static boolean isLeapYear(int year) {
return year % 4 == 0 && year % 100 != 0 || year % 400 == 0;
}

public static void main(String[] args) {
java.util.Scanner in = new java.util.Scanner(System.in);
while(true) {
System.out.print("西暦を入力してください => ");
System.out.println(isLeapYear(in.nextInt()) ? "うるう年です" : "うるう年ではありません");
}
}
}
470デフォルトの名無しさん:2006/05/17(水) 22:34:52
>>468
和歌山大学乙
471デフォルトの名無しさん:2006/05/17(水) 22:42:10
またモロバレの奴が・・
472デフォルトの名無しさん:2006/05/17(水) 22:43:41
講義から班までバレバレじゃん
473デフォルトの名無しさん:2006/05/17(水) 22:44:25
犯人はこの17人の中にいる!!
474468:2006/05/17(水) 22:47:57
捨て身です。よろしくお願いします。
475デフォルトの名無しさん:2006/05/17(水) 22:51:15
そんなアナタのために…通報しますた。
時間帯のせいか、
担当の方居ないみたいですが…
476デフォルトの名無しさん:2006/05/17(水) 22:52:25
教えてgooも危険だしここも危険・・・
477デフォルトの名無しさん:2006/05/17(水) 22:56:47
468は難しすぎて解けません
478デフォルトの名無しさん:2006/05/17(水) 23:01:21
同じく468は難しすぎて解けません
479デフォルトの名無しさん:2006/05/17(水) 23:08:43
そういって熟練者の
技の見せたがり心を煽ろうったって
そうはイカの……
480デフォルトの名無しさん:2006/05/18(木) 01:03:12
逆だろうw
481デフォルトの名無しさん:2006/05/18(木) 03:45:50
>468

過去の作品を見たけども、みんなあのくらいの出来なの?
なんだか、同じ大学生としてかなりショック・・・・・・。
482468:2006/05/18(木) 04:06:44
ありがとうございます。それが、うち(W大学)の学科は、情報系ではありません。だからどうしても、プログラミングが苦手な人が多いのです(私も含めて)。
483デフォルトの名無しさん:2006/05/18(木) 06:00:25
過去の作品すごすぎってことでしょう。
情報系の院生でもああいうの作れない人多いと思うが。。。
484デフォルトの名無しさん:2006/05/18(木) 09:59:37
>>483
あんたの知ってる情報系院生はどんだけ雑魚なんですか
485名無しさん:2006/05/18(木) 13:03:55
課題なのですが講師からの説明なし、本を読んでも理解不能です。
どうかご協力お願いします。
1、最大公約数と最小公倍数を求めるプログラムの計算部分を別の関数(メソッド)にしたプログラムに変更せよ。
例:keisanという関数名にした場合、第一引数と第二引数に課題渡す。
そしてoutput1に最大公約数、output2に最小公倍数が帰ってくるようにする。
2、最大公約数、最小公倍数の2点交差のプログラムを作った場合for文が6個になるがそのfor文を1つにできるように出力の関数に分けなさい。
3、文字列のワイルドカード処理を行うプログラムを作成せよ、ワイルドカード処理とは以下のような処理である。
*は無限に利用できるようにする。
出力例:入力 abcdefg         
b*c、             
出力 bc            

入力 abcdefghijk
b*d*i
出力 bcdefghi

入力 abcdefg
b*g  
出力 bcdefg

入力 abcdefg
b*t
出力 存在しない

これは再起呼び出しと言い、自分で自分の関数を呼び出すこと。
期日ですが1と2は五月21日23時59分までにお願いします。
3は5月28の23時59分でOKです。
少し長文になりましたがお願いします。
486名無しさん:2006/05/18(木) 13:04:34
課題なのですが講師からの説明なし、本を読んでも理解不能です。
どうかご協力お願いします。
1、最大公約数と最小公倍数を求めるプログラムの計算部分を別の関数(メソッド)にしたプログラムに変更せよ。
例:keisanという関数名にした場合、第一引数と第二引数に課題渡す。
そしてoutput1に最大公約数、output2に最小公倍数が帰ってくるようにする。
2、最大公約数、最小公倍数の2点交差のプログラムを作った場合for文が6個になるがそのfor文を1つにできるように出力の関数に分けなさい。
3、文字列のワイルドカード処理を行うプログラムを作成せよ、ワイルドカード処理とは以下のような処理である。
*は無限に利用できるようにする。
出力例:入力 abcdefg         
b*c、             
出力 bc            

入力 abcdefghijk
b*d*i
出力 bcdefghi

入力 abcdefg
b*g  
出力 bcdefg

入力 abcdefg
b*t
出力 存在しない

これは再起呼び出しと言い、自分で自分の関数を呼び出すこと。
期日ですが1と2は五月21日23時59分までにお願いします。
3は5月28の23時59分でOKです。
少し長文になりましたがお願いします。
487名無しさん:2006/05/18(木) 13:07:55
課題渡す→値を渡すでした
488デフォルトの名無しさん:2006/05/18(木) 13:24:26
> 1、最大公約数と …(中略)… プログラムに変更せよ。
「変更せよ」ってことは元ソースがあるんだろ。出せ。

> そしてoutput1に最大公約数、output2に最小公倍数が帰ってくるようにする。
フィールドに入れるのかオブジェクトに入れるのか分からん。

> 2点交差
やり方書け。

> 文字列のワイルドカード処理
通常はマッチングしたかどうかなんだが。まあいいけど。
「マッチした文字列」ならそうと書け。

全体的に問題文をそのまま書いてないくさい。問題文と元ソースを正確に晒せ。
489488:2006/05/18(木) 13:26:22
ていうかさ、マッチング処理でマッチした文字列が欲しければ、最短一致が欲しいのか最長一致が欲しいのかをはっきりしてくれ
(最長一致は実装が面倒だから最短一致だとはおもうけどさ)
490デフォルトの名無しさん:2006/05/18(木) 13:38:15
     _, ,_
   ( ^ё^) ヤダァ、見ないで!恥ずかしい…
     (つ/ )
      |`(..イ 彡サッ
     しし'
491デフォルトの名無し:2006/05/18(木) 14:16:07
【 課題 】アプレットをJARファイルにしてjarsignerを用いて暗号化し、復号して実行せよ
【 用語 】jarsigner→ttp://java.sun.com/j2se/1.4/ja/docs/ja/tooldocs/win32/jarsigner.html

Jarファイルにするのはわかるんだけどjarsignerで署名するのはわかるけど
暗号化ってどうやるのかわかりません
492デフォルトの名無しさん:2006/05/18(木) 14:36:01
日本語が不自由すぎ
493デフォルトの名無しさん:2006/05/18(木) 16:06:08
課題を持ってくる奴がアホすぎてやる気失せる
494デフォルトの名無しさん:2006/05/18(木) 16:55:47
【課題】
○1○2○3○4○5○6○7○8○9 

ここの○のなかに「+」、「−」、「なにもいれない」の三種類のどれかがはいる。
ただし何も入れない場合は前後の数字がつながることになる。
例(-12+3+456-78-9など)
計算結果が100となるにはどのように符号を入れればよいか?
ただし一番左の○には「+」を入れてはいけないものとする

【用語】とくになし
【期限】5月末まで
【Ver】とくになし
【補足】とくになし
495デフォルトの名無しさん:2006/05/18(木) 16:59:59
>>494
失せろはげ
496デフォルトの名無しさん:2006/05/18(木) 17:10:14
>>495
なぜ?>>1にsage進行とかいてないが?
497デフォルトの名無しさん:2006/05/18(木) 18:10:14
うわあ・・・
498デフォルトの名無しさん:2006/05/18(木) 18:21:12
>>494
テンプレには書かれていない
じゅうような事が抜けていると思うよ。
499デフォルトの名無しさん :2006/05/18(木) 22:04:50
質問なんですが、今、JAVAをやっててその中でXMLやXSPもやっているんですが、
その中でXSP中に<xsp:logic>内でJAVAを使うんですが、そのときどうしても
IF文で < や > 比較演算子が使えません。
他に ==や ||は使えるんですが、教えてくださいペコm(_ _;m)三(m;_ _)mペコリ
500デフォルトの名無しさん:2006/05/18(木) 22:41:14
>>494
10 PRINT "123-45-67+89"
501JAVA初心者:2006/05/18(木) 23:05:24
こんにちは。今TORQUEで開発を試みていますが、org.apache.torque.Torqueがインポートできないとエクリプスに怒られます。何がたりなくて、どうなっているのでしょう?もう、頭が爆発しそうです、、わかる方、よろしくお願いします。
502デフォルトの名無しさん:2006/05/18(木) 23:07:04
>>501
>>1を読め
503デフォルトの名無しさん:2006/05/18(木) 23:15:03
>>499
マルチ氏ね
504JAVA初心者:2006/05/18(木) 23:23:59
502さん、、すいませんでした。書き込むところを間違えました。。。
505デフォルトの名無しさん:2006/05/19(金) 01:19:29
506デフォルトの名無しさん:2006/05/20(土) 16:31:18
507デフォルトの名無しさん:2006/05/21(日) 23:28:05
>>468がmixiで同じことしてて笑った
508デフォルトの名無しさん:2006/05/22(月) 02:57:57
【 課題 】
三刺激値XYZ(Yxy)から、RGB値に変換して、以下のURLのようなxy色度図を描きなさい。ただし縦横の軸は付けなくてかまいません
ttp://gc.sfc.keio.ac.jp/class/2005_22267/slides/04/38.html
【 用語 】
三刺激値XYZ:色彩学で最もよく用いられるのがXYZの三刺激値である。
三色表色系において試料の色に等色させるために必要な原刺激の量を表わす言葉なのでRGBのような三刺激値もある。
XYZは基本的には赤緑青の色光の強さを表わすがXとZとは明るさを持たない赤と青であり明るさはY値のみに持たせている抽象的な3原色である。
xy色度図:人間が見ることが可能な色(波長)を、二次元で表現したもの
【 期限 】5月25日(木)
【 補足 】
ttp://www.cs.rit.edu/~ncs/color/API_JAVA/source.html
上の「Diagram.java」と「ChromaticityData.java」を使うと描けると思うのですが(たぶんほとんど答え?)、表示系のプログラムにまったく触れていないもので、どうやって表示させるのかわかりません。
色彩工学の知識がないと変換の式とかわからないかもしれませんが、どうかよろしくお願いします。
509436:2006/05/22(月) 14:23:04
>>445
遅れてすみません。ありがとうございました。
510デフォルトの名無しさん:2006/05/22(月) 14:56:23
>>508
本当にこのプログラムちゃんとできてるか?
ArrayIndexOutOfBoundsExceptionが飛んでくるんだが
511デフォルトの名無しさん:2006/05/22(月) 16:19:07
linkList2.javaに次の改良をすべてほどこし、
改良後のプログラム・実行結果を示せ。

改良1) findメソッドに手を加え,指定したデータ項目(キー)がリストの先頭から何番目にあるのかを表示するように改良せよ.指定したデータ項目がリスト中に無い場合は,画面に「見つかりません」と表示させよ.
改良2) 連結リストの最後尾に入っているデータ項目を削除するメソッド(名前を deleteLast とする)を作成せよ.

連結リスト theList に,相異なるデータ項目(各データ項目は,int型とdouble型の数を一つづつ含む.int型の数はキーである)を15個入れて,上記の「改良版findメソッド」と「deleteLastメソッド」をテストせよ.
うまくいっていることが分かる実行結果を示し,うまくいっているという説明もすること.

改良後のプログラム全体:
改良後のfindメソッド:
deleteLastメソッド:
512511:2006/05/22(月) 16:20:01
// linkList2.java
// demonstrates linked list
// to run this program: C>java LinkList2App
////////////////////////////////////////////////////////////////
class Link
{
public int iData; // data item (key)
public double dData; // data item
public Link next; // next link in list
// -------------------------------------------------------------
513511:2006/05/22(月) 16:20:45
public LinkList() // constructor
{
first = null; // no links on list yet
}
// -------------------------------------------------------------
public void insertFirst(int id, double dd)
{ // make new link
Link newLink = new Link(id, dd);
newLink.next = first; // it points to old first link
first = newLink; // now first points to this
}
// -------------------------------------------------------------
public Link find(int key) // find link with given key
{ // (assumes non-empty list)
Link current = first; // start at 'first'
while(current.iData != key) // while no match,
{
if(current.next == null) // if end of list,
return null; // didn't find it
else // not end of list,
current = current.next; // go to next link
}
return current; // found it
}
// -------------------------------------------------------------
514511:2006/05/22(月) 16:21:39
public Link delete(int key) // delete link with given key
{ // (assumes non-empty list)
Link current = first; // search for link
Link previous = first;
while(current.iData != key)
{
if(current.next == null)
return null; // didn't find it
else
{
previous = current; // go to next link
current = current.next;
}
} // found it
if(current == first) // if first link,
first = first.next; // change first
else // otherwise,
previous.next = current.next; // bypass it
return current;
}
// -------------------------------------------------------------
515511:2006/05/22(月) 16:22:23
public void displayList() // display the list
{
System.out.print("List (first-->last): ");
Link current = first; // start at beginning of list
while(current != null) // until end of list,
{
current.displayLink(); // print data
current = current.next; // move to next link
}
System.out.println("");
}
// -------------------------------------------------------------
} // end class LinkList
////////////////////////////////////////////////////////////////


class LinkList2App
{
public static void main(String[] args)
{
LinkList theList = new LinkList(); // make list

theList.insertFirst(22, 2.99); // insert 4 items
theList.insertFirst(44, 4.99);
theList.insertFirst(66, 6.99);
theList.insertFirst(88, 8.99);

theList.displayList(); // display list
516511:2006/05/22(月) 17:29:30
Link f = theList.find(44); // find item
if( f != null)
System.out.println("Found link with key " + f.iData);
else
System.out.println("Can't find link");

Link d = theList.delete(66); // delete item
if( d != null )
System.out.println("Deleted link with key " + d.iData);
else
System.out.println("Can't delete link");

theList.displayList(); // display list
} // end main()
} // end class LinkList2App
517デフォルトの名無しさん:2006/05/22(月) 17:34:43
>>511殴っていい?
518デフォルトの名無しさん:2006/05/22(月) 17:58:21
>>511
>>1の所にソース上げれ
519デフォルトの名無しさん:2006/05/22(月) 21:12:44
繰り返しの制御文を使ってタートルグラフィックスのプログラムを作成してください。
各線の始まりの点の座標は、(30、300)、(60、300)、・・・(300、300)であり、長さは、20、40、・・・200と20ずつ長くなっていくものとします。
520デフォルトの名無しさん:2006/05/22(月) 21:14:43
521デフォルトの名無しさん:2006/05/22(月) 21:24:46
すみませんでした。

【 課題 】繰り返しの制御文を使ってタートルグラフィックスのプログラムを作成してください。
各線の始まりの点の座標は、(30、300)、(60、300)、・・・(300、300)であり、長さは、20、40、・・・200と20ずつ長くなっていくものとします。
【 期限 】5月22日23時
【 Ver  】特になし
【 補足 】for文を使って書きます。
522デフォルトの名無しさん:2006/05/22(月) 21:41:36
>521
ちょwwwwwwwおまwwwwwww短納期すぎwwwwwww
てかこーゆーのってタートルグラフィックスっていうの?
523デフォルトの名無しさん:2006/05/22(月) 21:50:50
ほんとすみません!!無理でしょうか??
形としては
 public class ファイル名 {
public static void main(String[] args){
TurtleFrame f = new TurtleFrame();
Turtle m = new Turtle();
f.add(m);
  int i;
for(i = 初期値; 繰り返し条件; i = i + 増分) {
処理内容
となります!
524デフォルトの名無しさん:2006/05/22(月) 22:13:35
       /⌒ヽ
      ( ^ω^)おっ♪おっ♪おっ♪
 ピョン   ( O┳O)  
  ピョン   し-||-J  
       ⊂§⊃  
         §   
 ⌒ヽ〃⌒ヽ〃 
525デフォルトの名無しさん:2006/05/23(火) 14:58:21
TurtleFrameなんてクラスがあるんだな
初めて知った
526デフォルトの名無しさん:2006/05/23(火) 17:15:29
>>523
>>427 か?
おまいさんの頭は亀の頭かい?
527デフォルトの名無しさん:2006/05/23(火) 22:25:02
<script type="text/javascript">
function calcWeight(theForm){
var height,weight;
height=parseInt(theForm.height.value);
if(theForm.sex[0].checked){
//男性の場合
weight=(height-80)*0.7;
}else{
//女性の場合
weight=(height-70)*0.6;}
theForm.weight.value=weight;}
if(weight>0){
theForm.weight.value=weight;
}else{
alert("入力");
theForm.weight.value="";
}}
</script>

どこがおかしいでしょうか?
528デフォルトの名無しさん:2006/05/23(火) 22:43:26
>>527
Javascript は Web 制作板
529デフォルトの名無しさん:2006/05/24(水) 01:49:29
【 課題 】次のような処理を行うプログラムを作れ。
Which kind of item do you want to add? [cd, book, novel, magazine]
>book
Author? >NAKANO, Hitori
Title? >The train man
ok.

Which kind of item do you want to add? [cd, book, novel, magagine]
>cd
Artist? >Low and Mighty Color
Title? >Pritz
ok.

Which kind of item do you want to add? [cd, book, novel, magagine]
>
[book] The train man (NAKANO, Hitori) [cd] Pritz (Low and Mighty Color) 2 item(s)

Which kind of item do you want to add? [cd, book, novel, magagine]
>
何も入力しなかった場合は今まで追加されたアイテムの一覧を出力する。
追加と一覧出力以外の機能はない。
一覧における項目の情報を次のように出力しなさい。
CD の場合 [cd] タイトル (アーティスト)
Book の場合 [book] タイトル (著者)
Novel の場合 [novel] タイトル (著者) p.ページ数
Magazine の場合 [magazine] タイトル vol.巻数 (出版社)
なお、novel と magagine に関するプロンプトは適当に作ること。
【 期限 】5月24日水曜日21時59分
【 補足 】継承について勉強した後の課題です。
力不足で考えても分かりません。時間があまりないのですがどなたかお願いします
530デフォルトの名無しさん:2006/05/24(水) 03:14:13
【 課題 】
以下のプログラムを、キーボードから入力したn文字(nは5文字以内)
からなる英字または数字の文字列をB-treeに入れ、各ページの内容ができあがったあとに、
それらを印字するように変更せよ。
Pageの大きさは3とする。Parent nodeは”+”で表示し、葉にはデータそのものを印字する。
http://sourcepost.sytes.net/sourceview.aspx?source_id=27770
【 期限 】5/25 22:00まで
【 補足 】
参照:http://upld3.x0.com/src/upld6391.pdf p.133から,
課題の元のソースはListing8.1 tree.java
よろしくお願いします
531デフォルトの名無しさん:2006/05/24(水) 10:22:48
初心者です。力不足なうえ、応用を始めてやります。
おねがいします

四則演算を行うプログラムを作成する
足し算の場合、足す数、四則演算(+)、足される数の入力を受け付け、
どんな計算を行い、どんな結果が得られたかをコンソールに表示させてください。

(足し算の場合)
入力1:足す数
入力2:四則演算
入力3:足される数

注)割り算の場合、小数点以下2桁まで表示。
  少数点以下3桁目を切り捨てること。

例外について
起こりうる全ての例外をキャッチしてください。
例外時は、どんな例外が起きたのかコンソールに表示させてください。

IOException(IOエラー時):
IOエラーが発生しました。
NumberFormatException(数値以外が入ってきた)):
入力された数値が正しくないようです
ArithmeticException(0で割ろうとした時):
0で割ることはできません!


26日午前6時締め切りです。
532デフォルトの名無しさん:2006/05/24(水) 11:51:03
>>529
やってみた
zipで6kbなんだが、どこにあげたらいい?
533532:2006/05/24(水) 12:04:54
>>529
ここにageた。
急に外出することになって、ちょいと細部が適当だが動作する。
いじってくれ

ttp://makegumi.no-ip.info/loader/index.html?1148439754
makegumi0646.zip
534デフォルトの名無しさん:2006/05/24(水) 13:05:33
>>587
★★ Java の宿題ここで答えます Part 56 ★★
http://pc8.2ch.net/test/read.cgi/tech/1145447187/
ここ行ったほうがいいと思うよ

あと、細かい事を言うと四則演算と四則演算子の区別はつけような
四則演算(加算・減算・除算・乗算の総称)と四則演算子(+・-・÷・×記号の総称)では
意味合いが違うから



・・・・細かすぎかな
535534:2006/05/24(水) 13:07:10
↓に投下しようとしたが誤爆してしまった
【初心者】Java質問・相談スレッド85【大歓迎】
http://pc8.2ch.net/test/read.cgi/tech/1147315998/587
むしゃくしゃしてやった
今は反省している
536デフォルトの名無しさん:2006/05/24(水) 16:50:10
>>530
Pageって何
Pageとページは別物か
本当に丸投げか?
537529:2006/05/24(水) 16:55:48
>>533
どうもありがとうございました!
参考にさせていただきます。
538530:2006/05/24(水) 17:04:24
>>536
丸投げです
さっぱり意味が分からなかったので問題文もそのままなんですが…
539デフォルトの名無しさん:2006/05/24(水) 19:41:48
>>531

とりあえず、作ってみた
動くけど、趣味に走ったコーディングなので
参考レベルにしとくように

import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.lang.reflect.InvocationTargetException;
import java.lang.reflect.Method;
import java.math.BigDecimal;
import java.util.HashMap;
import java.util.Map;
public class Calculator {
/** オペレータのマップ */
private static final Map operators = new HashMap();
// オペレータのマップ作成
static {
operators.put("+", "add");
operators.put("-", "subtract");
operators.put("/", "divide");
operators.put("*", "multiply");
}
540デフォルトの名無しさん:2006/05/24(水) 19:42:53
public BigDecimal calc(final BigDecimal arg0, final BigDecimal arg1,
final String operatorSimbol, final int scale) throws Exception {
BigDecimal arg = new BigDecimal(arg0.toString()) {
public BigDecimal divide(BigDecimal decimal) {
return super.divide(decimal, scale, BigDecimal.ROUND_HALF_UP);
}
};
arg.setScale(scale, BigDecimal.ROUND_HALF_UP);
arg1.setScale(scale, BigDecimal.ROUND_HALF_UP);

String operatorString = (String) operators.get(operatorSimbol);
if (operatorString == null) {
throw new IllegalArgumentException("四則演算以外の演算子です。");
}
Class[] argClasses = {BigDecimal.class};
Method method = BigDecimal.class.getMethod(operatorString, argClasses);
BigDecimal[] args = new BigDecimal[1];
args[0] = arg1;
try {
return (BigDecimal) method.invoke(arg, args[0]);
} catch (InvocationTargetException ite) {
throw (Exception) ite.getCause();
}
}
541デフォルトの名無しさん:2006/05/24(水) 19:43:44
private static String getInput() throws IOException {
BufferedReader reader = new BufferedReader(new InputStreamReader(
System.in));
String line = reader.readLine();
if (line != null) {
line = line.trim();
}
else{
line ="";
}
return line;
}
542デフォルトの名無しさん:2006/05/24(水) 19:47:45

public static void main(String[] args) {
try {
System.out.print("数を入力してください。> ");
String argString0 = getInput();
System.out.print("四則演算子を入力してください。> ");
String operator = getInput();
System.out.print("数を入力してください。> ");
String argString1 = getInput();
BigDecimal arg0 = new BigDecimal(argString0);
BigDecimal arg1 = new BigDecimal(argString1);
BigDecimal res = new Calculator().calc(arg0, arg1, operator, 2);
System.out.println("答え>"
+ res.setScale(2, BigDecimal.ROUND_HALF_UP));
} catch (IOException ie) {
System.out.println("IOエラーが発生しました。 ");
} catch (NumberFormatException ne) {
System.out.println("数値以外の値が入力されました。");
} catch (ArithmeticException ae) {
// 0で除算以外のエラーも考えられるので駄目だよ。
System.out.println("0で除算されました。");
} catch (IllegalArgumentException iae) {
// "四則演算以外の演算子が入力された以外のエラーも考えられるので駄目だよ。
System.out.println("四則演算以外の演算子が入力されました。");
} catch (Exception e) {
System.out.println("想定外のエラーです。");
e.printStackTrace();
}
}
}
543539:2006/05/24(水) 22:11:14
思った以上にソースが長かったすまんorz
それで>>1を見て、ソースポストネットにあげてみた
http://sourcepost.sytes.net/sourcepost/sourceview.aspx?source_id=27781
学習の進度等を、あえて無視して作ってるので、多分習ってない技法が
使ってあるので、調べて、自分なりに書きなおして欲しい。
544デフォルトの名無しさん:2006/05/24(水) 22:29:48
>>543
殆どがコメントアウトになってるよw
545539:2006/05/24(水) 22:54:36
>>544

Download as file でダウンロードしてもらえば
きちんと、コメント部分だけコメントになう。
エンコードはunicode(utf-8)になるみたい

546デフォルトの名無しさん:2006/05/26(金) 15:06:05
【 課題 】Robocodeでは出現位置は毎回ランダムなので、必ずフィールド中央に移動し、
停止するように修正しなさい。
【 期限 】5月29日まで
【 補足 】Robocodeは http://robocode.sourceforge.net/ の1.0.7を使って下さい。
いくつかメソッドを書いておきます。
getX() 自機のx座標、getY() 自機のy座標
getBattleFieldWidth() バトルフィールドの幅を習得
getBattleFieldHeight() バトルフィールドの高さを習得
getHeding() 自機の向きを習得

よろしくお願いします



547デフォルトの名無しさん:2006/05/26(金) 20:47:57
【 課題 】一日のうち、当該時間が何秒経過しているかを表示。
1〜24の間の数字を入力し、仮に1を入力した場合は「3600秒経過」と表示される。
【 期限 】17時間以内
【 補足 】promptに入力し、アラートで結果を表示する。

初心者で、何度やっても失敗しているのでお力を貸して頂けると助かります。
よろしくおねがいします。
548デフォルトの名無しさん:2006/05/26(金) 20:58:54
>>547

class R547 {
public static void main(String[] args) {
int t = 0;
try {
t = Integer.parseInt();
} catch (NumberFormatException e) {
Systen.out.println("1〜24の数字を入力してください");
return;
}
if (t >= 1 && t <=24) {
System.out.println(t*3600 + "秒経過");
} else {
Systen.out.println("1〜24の数字を入力してください");
}
}
}
549デフォルトの名無しさん:2006/05/26(金) 21:00:44
Integer.parseInt();→Integer.parseInt(args[0]);
550デフォルトの名無しさん:2006/05/26(金) 21:29:39
>>546
かなりテキトウ

double difX = getBattleFieldWidth()*0.5 - getX();
double difY = getBattleFieldHeight()*0.5 - getY();
double difAngle = (180.0/Math.PI)*Math.atan2(difY,difX) - getHeading();
double distance = Math.sqrt(difX*difX+difY*difY);
if(difAngle>0.0){
551デフォルトの名無しさん:2006/05/26(金) 21:32:13
550失敗やり直しorz

かなりテキトウ 検証はしていない

double difX = getBattleFieldWidth()*0.5 - getX();
double difY = getBattleFieldHeight()*0.5 - getY();
double difAngle = (180.0/Math.PI)*Math.atan2(difY,difX) - getHeading();
double distance = Math.sqrt(difX*difX+difY*difY);
if(difAngle > 0.0) {
 turnLeft(difAngle);
}
else {
 turnRight(difAngle);
}
ahead(distance);
552デフォルトの名無しさん:2006/05/26(金) 21:33:06
また間違えたorz
else {
 turnRight(-difAngle);
}
553デフォルトの名無しさん:2006/05/27(土) 16:13:52
すいません、ちょっとずれた問題かもしれませんが
Cで記述されたプログラムをJavaに書き直しなさいといった
問題を聞いてもいいですか?
554デフォルトの名無しさん:2006/05/27(土) 17:32:18
宿題ならいいよ
555553:2006/05/27(土) 17:53:05
それでは書き込ませていただきます
【課題】次のCプログラムをJavaに書き直しなさい
http://sourcepost.sytes.net/sourcepost/sourceview.aspx?source_id=27807
期限【5月の29日まで】
よろしくお願いいたします
556デフォルトの名無しさん:2006/05/27(土) 21:03:42
>>555
import java.io.*;

class Automaton{
private static final int INPUT = 0;
private static final int STATE = 1;

private String now_state;
private String output_data;

public Automaton(){
initialize();

now_state = "0";
output_data = "void";
}

public void initialize(){

}
public void finish(){

}

public void display_automaton(String input){
System.out.println(" +-------------+ \n");
System.out.println(" 入力 | 状態 | 出力\n");
System.out.println(" " + input + " -->| " + now_state + " | --> " + output_data);
System.out.println(" | | \n");
System.out.println(" +-------------+ \n");
}
557デフォルトの名無しさん:2006/05/27(土) 21:04:54
public void state_transition(String in){
if (now_state.equals("0")){
if (in.equals("100")){
now_state = "100";
output_data = "void";
}else{
error_msg(INPUT);
}
}else if (now_state.equals("100")){
if (in.equals("100")){
now_state = "200";
output_data = "void";
}else{
error_msg(INPUT);
}
}else if (now_state.equals("200")){
if (in.equals("100")){
now_state = "0";
output_data = "ticket";
}else{
error_msg(INPUT);
}
}else
error_msg(STATE);
}
558デフォルトの名無しさん:2006/05/27(土) 21:05:54
public void error_msg(int foo){
switch (foo){
case INPUT:
System.out.println("入力データが間違っています");
finish();
System.exit(1);
break;
case STATE:
System.out.println("状態の指定が間違っています!");
finish();
System.exit(1);
break;
}
}
}

public class AutomatonApp{
public static void main(String[] args){
Automaton automaton = new Automaton();//コンストラクタでinitialize()
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
String input_data = "void";
try{
while (true){
automaton.display_automaton(input_data);
input_data = br.readLine();
automaton.state_transition(input_data);
}
}
catch (Exception ex){
}
}
}
559デフォルトの名無しさん:2006/05/28(日) 13:01:59
【 課題 】@f (x) = cos (x) - x2 = 0 の根のうち、0 < x < 1 を満たすものを2分法で求める
Java アプリケーション (Java Application) を作成しなさい。
その Java アプリケーション (Java Application) は、初期値 a, b が入力でき、
6桁推定された解と関数 f (x) を呼びだした回数を出力するようにしなさい。
また、プログラムの構造は以下のようにすること。

Af (x) = (x-1) (x-2) (x-3) の根を2分法で求める。根は 1,2,3 の3つである。
初期値 a, b を (a,b) = (-5,10)としたとき、どの根が計算されるか説明せよ。


【 期限 】提出期限 6月1日の終わりまで

【 補足 】@は途中まで中身が指定されているので/**/が書いている部分をつくってください。
ただしAは指定はありません。よろしくお願いします。
class Kadai6 {
/* ここに関数を定義する */
static double f(double x) {
return 『関数の中身』;
}

public static void main(String[] args) {
System.out.println(
560553:2006/05/28(日) 14:16:53
>>556-558
ありがとうございます。
561デフォルトの名無しさん:2006/05/29(月) 22:50:45
【 課題 】
1行ごとに6, 1.5, 3が記録されているデータファイルKiroku.txtを作成しなさい。
次に、そのデータファイルからデータを読み込んでその2乗を求めるプログラムKiroku.javaを作成しなさい。
求められた結果は画面に表示するものとします。
java.io.*のインポートが必要です。

【 期限 】
2006/05/30 午前8時まで

【 補足 】
予習として出された問題ですが、まだimportを習ったばかりの右も左もわからないひよっこです。
Verというのもわかりませんが結構最近のやつだったような気がします。
丸投げですが、お願いします。
562デフォルトの名無しさん:2006/05/29(月) 23:57:05
outloop:
for(int i=0;i<3;i++){
for(int j=0;j<2;j++){
if(i==1&&j==1)
break outloop;
System.out.println("i="+i+",j="+j);
}
}
表示される結果は何かという問題です。breakをcontinueに書き換えた場合の結果もお願いします!
563デフォルトの名無しさん:2006/05/30(火) 00:01:12
>>562
忘れてましたが、5/30の朝8時までにお願いします。
564デフォルトの名無しさん:2006/05/30(火) 00:07:56
実行してみろよと言いたいが・・
565デフォルトの名無しさん:2006/05/30(火) 00:31:12
>>562
「'class' または 'interface' がありません。」
566デフォルトの名無しさん:2006/05/30(火) 00:42:18
outloop:
^
567デフォルトの名無しさん:2006/05/30(火) 06:49:37
>>562
結果:エラーが表示される
テンプレつかえ>>1
568デフォルトの名無しさん:2006/05/30(火) 18:26:17
【 課題 】
http://sourcepost.sytes.net/sourcepost/sourceview.aspx?source_id=27829
を、キーボードから入力したn文字(nは5文字以内)からなる英字または数字の
文字列をB-treeにいれ、各ページの内容ができあがったあとに、
それらを印字するように変更せよ。Pageの大きさは3とする。
Parent node は
569デフォルトの名無しさん:2006/05/30(火) 18:29:54
とぎれてしまいました…
>>568の続きです

Parent nodeは"+"で表示し、葉にはデータそのものを印字する。
【 用語 】B-tree:balanced treeのことです
【 期限 】2006/6/2(木)まで
【 Ver  】なし
【 補足 】
・ここで言うPageの大きさとは、各Nodeが持つ子の数のことです
・親となる全てのノードは値を持たず、"+"と表示するようです
 (値が"+"でも構いません)。つまり値を持つのは最下層の葉のみ
・教授は親Nodeにminとmaxのindexをつければ探索できるようになると
 言っていました

かなり頑張っても無理でした…よろしくお願いします
570デフォルトの名無しさん:2006/05/30(火) 18:58:58
>>530の、誰か分かりませんでしょうか
やっぱり難しすぎるんでしょうか…
571デフォルトの名無しさん:2006/05/30(火) 20:42:17
そんなことはないと思うがだるい
572568-569:2006/05/31(水) 11:16:09
>>530さんが既に丸投げしてたのに今気付きましたw
どうやら面倒すぎる宿題はスルーされるみたいすね(´・ω・`)
573デフォルトの名無しさん:2006/05/31(水) 12:51:03
インデント規則が自分勝手で、読みたくない。
574デフォルトの名無しさん:2006/05/31(水) 13:33:42
import java.io.*;

class Sample7
{
public static void main(String args[]) throws IOException
{
System.out.println("テストの点数を入力してください。(-1で終了) ");

BufferedReader br =
new BufferedReader(new InputStreamReader(System.in));

int num = 0;
int sum = 0;
int div = 0;

do{
String str = br.readLine();
num = Integer.parseInt(str);
sum += num;
div =sum/unm;
}while(num != -1);

System.out.println("テストの平均点は" + div + "点です。");
System.out.println("テストの合計点は" + sum + "点です。");
}
}

do〜while文を使って合計点、平均点を出したいですが
合計点は出てくるんですが、どうあがいても平均点が(-合計点)とおかしなことになってしまいます
上手く、同時に出すにはどうすればいいんでしょうか?
575デフォルトの名無しさん:2006/05/31(水) 15:19:46
>>574
滅茶苦茶
そもそもそのプログラムじゃ合計点も間違ってるだろ
576デフォルトの名無しさん:2006/05/31(水) 16:19:44
>>573
具体的にどういうとこがですか?
577デフォルトの名無しさん:2006/05/31(水) 18:14:01
import java.io.*;

class Sample7
{
public static void main(String args[]) throws IOException
{
System.out.println("テストの点数を入力してください。(-1で終了) ");
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));

int sum = 0;
int cnt = 0;
do {
int num = Integer.parseInt(br.readLine());
if (num == -1) break;
sum += num;
cnt++;
} while(true);
if (cnt != 0) {
System.out.println("テストの平均点は" + (sum / cnt) + "点です。");
System.out.println("テストの合計点は" + sum + "点です。");
} else {
System.out.println("テストの平均点は0点です。");
System.out.println("テストの合計点は0点です。");
}
}
}
578デフォルトの名無しさん:2006/05/31(水) 19:34:01
>>577
ありがとうございます
このコードを参照に自分で作ったプログラムを弄ってみます
>>575
滅茶苦茶でも、それでも合計点出たんだが
ていうか、教科書の練習問題の答え丸写ししただけだから合計点は合ってると思う。
まぁ、貼付する前に色々弄ってたからdiv =sum/unm;のnumがunmになってたり変になってるけど
579デフォルトの名無しさん:2006/05/31(水) 19:45:44
>>578
>>574では終了するための-1が合計から引かれてるが
580デフォルトの名無しさん:2006/05/31(水) 20:55:08
 用語 】区間探索
【 期限 】2006/6/2(木)まで
【 Ver  】なし
【 補足 】

重量 50g 料金120円

75g       140  500g  390円
100      160   750   580
150      200   1kg   700
200      240   2kg   950 
250      270   3kg  1,150
               4kg  1,350
重量が4kgを超える場合、取り扱いできませんと表示せよ
ヒント(擬似)
・重量← readInt("重量")
▲(入力された重量のリミットチェック)


_ ■(区分探索)


  ■
   料金表示

よろしくお願いします
581デフォルトの名無しさん:2006/05/31(水) 21:39:57
【課題】次のCプログラムをJavaプログラムに修正しなさい
  * 各セルの状態をウィンドウ上に表示するときには, たとえば,0,1,2 を 黒,黄,
赤というように,数に色を対応させて 視覚的にわかりやすくする。
* シミュレーションの様子を表示させるには,
セル全体の状態が下にのびる(時間軸が下方向にのびる)ように表示する方法
以上を注意して作成せよ。
【期限】6月2日金曜日まで

よろしくお願いいたします
582581:2006/05/31(水) 21:41:10
失礼いたしました。
http://sourcepost.sytes.net/sourcepost/sourceview.aspx?source_id=27838
これが参考にするプログラムです。
583デフォルトの名無しさん:2006/05/31(水) 21:49:07
>>579
んー、でも指定で終了は-1ってことになってるしなぁ
何で-1なのか良く分かんないや…
584559:2006/05/31(水) 22:24:08
このスレの人はめんどくさくて宿題に答えてくれないそうですが
それではどこのスレで質問したらいいですか?
585デフォルトの名無しさん:2006/05/31(水) 22:28:43
最近日本語が不自由な人間が増えたニダ
586デフォルトの名無しさん:2006/05/31(水) 22:32:59
不完全な質問にはレスしない
587デフォルトの名無しさん:2006/05/31(水) 22:48:59
答えないんじゃなくて答えられないだけなの
588デフォルトの名無しさん:2006/05/31(水) 23:00:21
JDBCのちょっと質問なんだけれど

import java.sql.*;

public class HelloWorldJDBC {
public static void main(String[] args) {
try {

// ドライバクラスをロード
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
//new sun.jdbc.odbc.JdbcOdbcDriver(); //これでもok

Connection con = DriverManager.getConnection("jdbc:odbc:helloworld");
Statement stmt = con.createStatement();
String sql = "SELECT * FROM HELLO_WORLD_TABLE";
ResultSet rs = stmt.executeQuery(sql);

while(rs.next()){
int no = rs.getInt("NO");
String lang = rs.getString("LANGUAGE");
String msg = rs.getString("MESSAGE");
System.out.println(no + " " + lang + " " + msg);
}
stmt.close();
con.close();
} catch (Exception e) {
e.printStackTrace();
}
}
}
589デフォルトの名無しさん:2006/05/31(水) 23:04:28
上のサンプルで

// ドライバクラスをロード
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
//new sun.jdbc.odbc.JdbcOdbcDriver(); //これでもok

てのは、どっちもJdbcOdbcDriverクラスのインスタンス作っている
のはバカな俺でもわかるんだが、
受け皿になる変数がないから、これって実行された後、
すぐにこのインスタンスはガベージコレクタで消されると考えていいよな?

となると、この処理には一見意味のないもののようにみえるんだが、
この行を消すと実行エラーになってしまう。
どの資料をみても同じ事をやっているんだが、
それに対する解説はなく、決まり文句のように使われている。
これにはいったいどんな意味があるのかがわからない。

どうかおしえてもらえるとうれしい。
590デフォルトの名無しさん:2006/05/31(水) 23:16:19
591デフォルトの名無しさん:2006/05/31(水) 23:17:39
>>589
Java質問スレで聞いて来い
そしてバカにされろ
592デフォルトの名無しさん:2006/05/31(水) 23:24:58
あいあい
593デフォルトの名無しさん:2006/05/31(水) 23:35:21
すまん。2時間近くいじっててわからんかった。エラー100個とかでたよ。

うるう年かどうか判定しろ。

4 で割りきれ、かつ、100 で割りきれない → うるう年
上記または 400 で割りきれる → うるう年
それ以外 → うるう年ではない
 
int x=2006
if{(x%4==0)||(x%100!=0)}&&(x%400==0)
system.out.println("うるう年")
   else
略・・・うるう年でない
   }
594デフォルトの名無しさん:2006/05/31(水) 23:42:36
用語 】区間探索
【 期限 】2006/6/2(木)まで
【 Ver  】なし
【 補足 】

重量 料金
50g 120円 重量 料金
75g  140  500g  390円
100  160   750   580
150  200   1kg   700
200  240   2kg   950 
250  270   3kg  1,150
           4kg  1,350
重量が4kgを超える場合、取り扱いできませんと表示せよ
ヒント(擬似)
・重量← readInt("重量")
▲(入力された重量のリミットチェック)


_ ■(区分探索)


  ■
   料金表示

よろしくお願いします
これじゃ〜説明ぶそくでしょうか?
595デフォルトの名無しさん:2006/05/31(水) 23:45:06
>>593
そりゃ、ダメだ。
うるう年の条件が足らない。
4000で割れるとか、20000で割れるとかの条件も入れないと。
596デフォルトの名無しさん:2006/05/31(水) 23:46:53
>>594
区間探索と区分探索って違うのか?
擬似って擬似言語の事か?
597デフォルトの名無しさん:2006/05/31(水) 23:47:22
テンプレぐらいは守れ話はそれまでだ
598デフォルトの名無しさん:2006/05/31(水) 23:52:52
▲(入力された重量のリミットチェック)


_ ■(区分探索)


  ■
   料金表示


なんの暗号だ?
599デフォルトの名無しさん:2006/06/01(木) 00:09:31
>>594
入力された重量は積算されるのか?
それとも入力毎に初期化?
600デフォルトの名無しさん:2006/06/01(木) 00:18:01
>>594
区間が以上以下未満より大きいか
〜50なのか
50〜なのか全く分からない
601デフォルトの名無しさん:2006/06/01(木) 00:18:10
>>595 ていうかこの条件で打てばいいよって書いてあるんだよw。イフの使い方わかんね〜
602デフォルトの名無しさん:2006/06/01(木) 00:19:19
>>601
テンプレ嫁
あとお前は参考書を2万回ぐらい嫁
603デフォルトの名無しさん:2006/06/01(木) 00:31:59
>>594
import java.io.*;
class R594{
public static void main(String[] args){
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
int weight;

try{
do{
weight = Integer.parseInt(br.readLine());
if (weight >= 4000){
System.out.println("重量が4kgを超える場合,取り扱いできません");
}
else if (weight < 0){
System.out.println("不正な重量です");
}
else{
System.out.println("料金は" + getPrice(weight) + "です");
}
}while (true);
}catch (Exception ex){
ex.printStackTrace();
}
}
604デフォルトの名無しさん:2006/06/01(木) 00:32:33
public static int getPrice(int weight){
int price = 0;

if (weight < 50)
price = 120;
else if (weight < 75)
price = 140;
else if (weight < 100)
price = 160;
else if (weight < 150)
price = 200;
else if (weight < 200)
price = 240;
else if (weight < 250)
price = 270;
else if (weight < 500)
price = 390;
else if (weight < 1000)
price = 700;
else if (weight < 2000)
price = 950;
else if (weight < 3000)
price = 1150;
else if (weight < 4000)
price = 1350;

return price;
}
}
物凄く適当
検証は自分でしてくれ
605デフォルトの名無しさん:2006/06/01(木) 00:35:48
test
606デフォルトの名無しさん:2006/06/01(木) 00:38:53
HPのソースを.txtで保存するプログラム作ってください
607デフォルトの名無しさん:2006/06/01(木) 00:41:09
やだ
608デフォルトの名無しさん:2006/06/01(木) 15:50:29
609デフォルトの名無しさん:2006/06/01(木) 17:35:56
>>608
サンクス!!!!
610デフォルトの名無しさん:2006/06/01(木) 22:24:56
【問題】年月日に任意の日数(特に制限はない)を加算した年月日を求めなさい。
なおデータ入力はコマンドライン引数でおこないます。
(入力例・>java class.java 2006年6月1日 30日)
※うるう年も考えて作ります

よろしくお願いします。
611デフォルトの名無しさん:2006/06/02(金) 13:44:59
【 課題 】課題1 相手の移動位置を予想して攻撃するようにしなさい。MyRobots1.java
課題2 敵の位置を現在の位置を含めた2点以上記録し、その情報から敵の移動位置を
予想し攻撃するように修正しなさい。 MyRobots2.java
【 期限 】6月3日まで
【 補足 】Robocodeは http://robocode.sourceforge.net/ の1.0.7を使って下さい。
612デフォルトの名無しさん:2006/06/02(金) 14:50:48
>>610 超適当だけど
public static void main(String[] args) {
if (args.length != 2) {
System.err.println("引数が正しくありません");
return;
}
SimpleDateFormat of = new SimpleDateFormat("yyyy年M月d日");
SimpleDateFormat df = new SimpleDateFormat("d日");

Date baseDate = null;
Date addDate = null;
try {
baseDate = of.parse(args[0]);
} catch (ParseException e) {
System.err.println("引数1が正しい日付ではありません");
return;
}
try {
addDate = df.parse(args[1]);
} catch (ParseException e) {
System.err.println("引数2が正しい日数ではありません");
return;
}

Calendar cal = Calendar.getInstance();
cal.setTime(baseDate);
Calendar cal2 = Calendar.getInstance();
cal2.setTime(addDate);
cal.add(Calendar.DATE, cal2.get(Calendar.DAY_OF_YEAR));

System.out.println(of.format(cal.getTime()));
}
613デフォルトの名無しさん:2006/06/03(土) 00:50:53
JAVAを使って3つの画像を以下のように順番に表示します。iアプリOR MIDP
携帯を開く度に以下の画像を順番に待ち受け画面に表示します。
(折りたたみ状態またはフリップ状態の変化FOLD_CHANGED_EVENT)
表示例(毎月画像の表示期間は不規則に変化します)

9月の例
1.gifの表示期間
5月1日〜5月5日、5月16日〜5月28日
2.gifの表示期間
5月3日〜5月10日、5月18日〜5月30日
3.gifの表示期間
5月5日〜9月15日

上記のように画像を1〜数個選択し、それらを順番に表示するコードを教えてください。
614デフォルトの名無しさん:2006/06/03(土) 01:22:55
>>613
おまい、はてなでも質問してただろ?
615559:2006/06/03(土) 18:37:09
CのプログラムをJavaに変換して下さい。お願いします

#include<stdio.h>
#include<stdlib.h>
#include<math.h>
double f(double x, int* n){++*n; return cos(x)*pow(x,2);}
int main(void){double a,b,c,y;char tmp[100];int t,n=0;double e=0.0001;
printf("初期値a:");fgets(tmp,100,stdin);a=atof(tmp);
printf("初期値b:");fgets(tmp,100,stdin);b=atof(tmp);
for(t=0;(double)(abs(b-a)/pow(2,t))>=e;t++);
do{c=(a+b)/2;y=f(c,&n);if((f(a,&n)*y)<0)b=c;else a=c;}while(!(abs(b-a)<e)&&!(y<e)&&(--t>0));
if(t)printf("解:%.6f(%i attempts)\n",c,n);else printf("収束しません\n");return 0;}
616デフォルトの名無しさん:2006/06/03(土) 22:38:49
>>615
public static void main(String[] args){
double a = 0,b = 0,c,y;
String temp;
int t, n = 0;
double e = 0.0001;
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
try{
System.out.println("初期値a:");
a = Double.parseDouble(br.readLine());
System.out.println("初期値b:");
b = Double.parseDouble(br.readLine());
}catch (Exception ex){}
for (t = 0; Math.abs(b-a) / Math.pow(2, t) >= e; t++);
do{
c = (a + b) / 2;
y = f(c);
n++;
if (f(a) * y < 0)
b = c;
else
a = c;
n++;
}while (!(Math.abs(b-a) < e) && !(y < e) && (--t > 0));
if (t != 0)
System.out.println("解:" + c + "(" + n + "attempts)");
else
System.out.println("収束しません");
}
static double f(double x){
return Math.cos(x) * Math.pow(x, 2);
}
617617:2006/06/04(日) 00:45:50
このHPのソースを取得するプログラムを正規表現を使って

↓このソースから
******************************************
<html>
<body>
<TITLE>タイトル</TITLE>
<b>ああああ</b> 
<b>いいい</b>
</body>
</html>
******************************************

↓<b></b>の間にある文字のみを抜き出し表示する

******************************************
ああああ
いいい
******************************************
618617:2006/06/04(日) 00:46:42
import java.io.*;
import org.apache.commons.httpclient.*;
import org.apache.commons.httpclient.methods.*;
import org.apache.oro.text.regex.PatternMatcherInput;
import org.apache.oro.text.perl.*;

public class HttpGetter3{
public static void main(String[] args){
//HttpClientインスタンスを作成
HttpClient client=new HttpClient();
//methodインスタンスを作成
GetMethod method = new GetMethod(args[0]);
try{
//メソッドの実行
int statusCode=client.executeMethod(method);
//charsetの分析
String ct=method.getResponseCharSet();
String chr="Shift_JIS";//文字エンコード。デフォルトはSJIS
if(!ct.equals("ISO-8859-1")){
chr=ct;
}
//ステータスコードのチェック
if (statusCode!=HttpStatus.SC_OK){
System.out.println("失敗:"+method.getStatusLine());
}
619617:2006/06/04(日) 00:47:20
//レスポンスをInputStreamで読む
Reader in=new InputStreamReader(method.getResponseBodyAsStream(),chr);
BufferedReader br=new BufferedReader(in);
//調べたcharsetで表示する
//1行づつ読む。最後はnullが返る。
String html=null;
while ((html=br.readLine())!=null){
System.out.println(html);
}
in.close();
br.close();
}catch(IOException e){
System.out.println("エラーです。");
}finally{
//コネクションの解放
method.releaseConnection();
}
}
}
620617:2006/06/04(日) 00:49:09
↑HPのソースを取得するところまでは出来ています。
おねがいします
621デフォルトの名無しさん:2006/06/04(日) 00:50:44
なんでこんなバカばっかなんだろう
622デフォルトの名無しさん:2006/06/04(日) 17:21:59
お前が頭良すぎるんじゃね?
623デフォルトの名無しさん:2006/06/04(日) 21:21:34
>>622
天才
624デフォルトの名無しさん:2006/06/04(日) 22:48:19
ななな
625デフォルトの名無しさん:2006/06/05(月) 15:41:31
すいません
http://sourcepost.sytes.net/sourcepost/sourceview.aspx?source_id=27838
のプログラムをJavaに変換するだけでいいのでお願いできますか?
626デフォルトの名無しさん:2006/06/05(月) 18:24:27
>>625
テンプレ使え。>>1
627デフォルトの名無しさん:2006/06/05(月) 19:18:05
ずっとここをクロスコンパイラ代わりに使ってる奴が居るな
628デフォルトの名無しさん:2006/06/05(月) 22:16:35
キーボードから点数を入力させ、次のように各自の点数と最低点を出力するコードを
配列を使って記述してください。お願いします。


5人のテストの点数を入力してください。
80
60
57
50
22
1番目の人の点数は80です。
2番目の人の点数は60です。
3番目の人の点数は57です。
4番目の人の点数は50です。
5番目の人の点数は22です。
最低点は22点です。
629デフォルトの名無しさん:2006/06/05(月) 22:22:42
630デフォルトの名無しさん:2006/06/05(月) 22:31:36
>>629

【課題】キーボードから点数を入力させ、次のように各自の点数と最低点を出力するコードを
    配列を使って記述してください。お願いします。

【期限】6月7日(水)


【結果】    
5人のテストの点数を入力してください。
80
60
57
50
22
1番目の人の点数は80です。
2番目の人の点数は60です。
3番目の人の点数は57です。
4番目の人の点数は50です。
5番目の人の点数は22です。
最低点は22点です。

これでOK??
631デフォルトの名無しさん:2006/06/05(月) 22:45:12
課題7
3つの数字を並べるスロットマシンを考えます.
以下のようなルールでスロットマシンを実行できるようにします.

0から9までの10通りの数字を使う.
スロットの試行は,3回行う.
1回の試行に対して,乱数を使って,うまく数字を出す.
3つとも不揃いのときは,-1点.
2つだけ同じ数字になったときは,5点.
3つとも同じ数字になったときは,20点.
3回試行した後,3回分の合計点数を表示する.
(実行結果の例)
【1回戦目】9 vs. 5 vs. 3【2回戦目】0 vs. 1 vs. 2【3回戦目】4 vs. 2 vs. 6
【ゲーム終了】
合計点数=-3
【1回戦目】0 vs. 2 vs. 3【2回戦目】6 vs. 7 vs. 9【3回戦目】5 vs. 6 vs. 6
【ゲーム終了】
合計点数=3
【1回戦目】6 vs. 1 vs. 1【2回戦目】7 vs. 1 vs. 0【3回戦目】9 vs. 9 vs. 8
【ゲーム終了】
合計点数=9
【1回戦目】3 vs. 3 vs. 0【2回戦目】7 vs. 7 vs. 8【3回戦目】3 vs. 9 vs. 3
【ゲーム終了】
合計点数=15
【1回戦目】0 vs. 0 vs. 9【2回戦目】5 vs. 3 vs. 8【3回戦目】9 vs. 9 vs. 9
【ゲーム終了】
合計点数=24
お願いします。

632632:2006/06/05(月) 23:40:24
633デフォルトの名無しさん:2006/06/05(月) 23:43:52
634デフォルトの名無しさん:2006/06/05(月) 23:50:57
httpクライアントプログラムを作ってください。
以下のhtmlからファイルをアップロードするのと同じ働きをして欲しい。
引数でファイルパスを渡したら、httpサーバーへファイルをアップロードしてくれるように。

<html>
<body>
<form enctype="multipart/form-data" action="○○" method="POST">
<input name="userfile" type="file" />
<input type="submit" value="Send File" />
</form>
</body>
</html>
635デフォルトの名無しさん:2006/06/06(火) 00:08:29
>>632 お答えいただきありがとうございます。
   コマンドプロンプトで表示するときは、
    javac sample.java→java sampleでいいんですかね?
    
 Exception in thread "main" java.lang.NoClassDefFoundError: sampleと
 出たんですが・・・・・・・。
636デフォルトの名無しさん:2006/06/06(火) 00:16:33
【 課題 】
3つの数字を並べるスロットマシンを考えます.
以下のようなルールでスロットマシンを実行できるようにします.

0から9までの10通りの数字を使う.
スロットの試行は,3回行う.
1回の試行に対して,乱数を使って,うまく数字を出す.
3つとも不揃いのときは,-1点.
2つだけ同じ数字になったときは,5点.
3つとも同じ数字になったときは,20点.
3回試行した後,3回分の合計点数を表示する

【結果】
【1回戦目】9 vs. 5 vs. 3【2回戦目】0 vs. 1 vs. 2【3回戦目】4 vs. 2 vs. 6
【ゲーム終了】
合計点数=-3
【1回戦目】0 vs. 2 vs. 3【2回戦目】6 vs. 7 vs. 9【3回戦目】5 vs. 6 vs. 6
【ゲーム終了】
合計点数=3
【1回戦目】6 vs. 1 vs. 1【2回戦目】7 vs. 1 vs. 0【3回戦目】9 vs. 9 vs. 8
【ゲーム終了】
合計点数=9
【1回戦目】3 vs. 3 vs. 0【2回戦目】7 vs. 7 vs. 8【3回戦目】3 vs. 9 vs. 3
【ゲーム終了】
合計点数=15
【1回戦目】0 vs. 0 vs. 9【2回戦目】5 vs. 3 vs. 8【3回戦目】9 vs. 9 vs. 9
【ゲーム終了】
合計点数=24
こんな感じでいいですか?お願いします。
637デフォルトの名無しさん:2006/06/06(火) 00:24:11
>635
エラーが出たのは>632のせいじゃないぞ。少しは調べろ。
638age:2006/06/06(火) 00:42:26
age
639デフォルトの名無しさん:2006/06/06(火) 00:53:21
【 課題 】以下のプログラムをJavaに書き直しなさい
http://sourcepost.sytes.net/sourcepost/sourceview.aspx?source_id=27838
【 期限 】とくにありません
よろしくお願いします
640デフォルトの名無しさん:2006/06/06(火) 00:57:06
>>636
何これ?全部自動なのか?
コッチがストップ掛けないでいいのか?
641デフォルトの名無しさん:2006/06/06(火) 01:07:26
>>640
全部自動では無く
こんなような実行結果が出ればいいので
スロットの数とかは自分で決めていいです。
642デフォルトの名無しさん:2006/06/06(火) 01:14:15
スロットだからこちら側がストップ掛けて止める仕組みが必要なのか?
643デフォルトの名無しさん:2006/06/06(火) 01:15:26
>>642
それは必要です。
644632:2006/06/06(火) 05:18:51
>>635
mainメソッドを含むクラスのファイル名はクラス名でなければならない
645デフォルトの名無しさん:2006/06/06(火) 16:19:55
>>617 以下のmethodをそのclassにつんでみて下され。
引数は、code中の変数"html"で、戻りは一行に複数bタグがある場合複数で返却される。
見つからなければ、nullが返却されます。
また、bタグが複数行にまたがる場合は、<b>〜</b>の部分までを含む行を全て引数に指定すれば取れるはず。
import java.util.regex.Pattern;
import java.util.regex.Matcher;
import java.util.List;
import java.util.ArrayList;
private static String[] getBTagValue(String target) {
List results = new ArrayList();
String bSTag = "<b>|<B>";
String bETag = "</b>|</B>";
Pattern ptnS = Pattern.compile(bSTag);
Pattern ptnE = Pattern.compile(bETag);
Matcher mthS = ptnS.matcher(target);
int ps = 0;
while (mthS.find(ps)) {
Matcher mthE = ptnE.matcher(target);
if (mthE.find(mthS.end())) {
results.add(target.substring(mthS.end(), mthE.start()));
ps = mthE.end();
continue;
}
ps = mthS.end();
}
return (0 < results.size()) ? (String[])results.toArray(new String[results.size()]) : null;
}
テンプレ使え。>>1
646デフォルトの名無しさん:2006/06/06(火) 19:51:55
【 課題 】
1)以下のプログラムを使って衝突が何番目のデータで起こるかテストせよ。
データは乱数を発生させて使うこと。
(衝突とはどういうことか。それをプログラムではどのように考えればよいかを考えよ)
2)以下のhash.javaを2次ハッシュ関数を使うように修正して、上の1)を行え。
(2次ハッシュ関数とは何か。この問題をどのようにして解けばよいかを考えよ)
http://sourcepost.sytes.net/sourcepost/sourceview.aspx?source_id=27868
【 期限 】6/8まで
【 補足 】丸投げです。よろしくお願いします
647デフォルトの名無しさん:2006/06/06(火) 21:01:27
よろすく。変数はxyz。
演算と条件判定
問題1
授業中示した 3 つの値の最大値を求めるプログラム (3 種類のどれでも良い・数は自由) を改造して、どの変数が最大だったか、その変数名を表示するようにしなさい。ファイル名は MaxVariable.java とする。
この問題の解法は何通りか考えられる。ひとつの方法は、どれが最大値だったかの情報を変数に記録しておく方法である。たとえば、 x が最大なら isXMax = true, 最大でないなら isXMax = false などとする。
もう一つの方法として、最大値を求めた後で、それが x に等しいか、 y に等しいか、 z に等しいか、と調べるやり方も可能である。
もちろん、これ以外の方法を用いても良い。
問題2
3 つの値 x, y, z の中央値(メジアン)を求めて出力するプログラムを作成しなさい。なお中央値とは、データを大きさの順に並べたときに中央の順位にくる値である。 3 つの値はすべて異なるものとする。プログラム名は Median3 とする。
問題3
定期試験の点数が 89, 55, 32, 94, 60 の人がいたとして、点数が60点以上の人の平均点を求めるプログラムを書きなさい。はじめに 5 人の点数を 5つの int 型の変数に代入しておくこと。
class AverageOfSuccessor {
public static void main(String[] args) {
int student1 = 89;
int student2 = 55;
int student3 = 32;
int student4 = 94;
int student5 = 60;

....
点数が60点以上の人の平均点を求めるプログラムをここに書く

}
}
この計算を行うと、平均点は 81 点となるはずである。
ヒント: 平均をとる場合には対象の人数を数える必要がある。人数を数えるための変数を用意し、 60点以上の人を数えるようにすると良い。
プログラムの名前は AverageOfSuccessor とする。
648デフォルトの名無しさん:2006/06/06(火) 21:03:22
649デフォルトの名無しさん:2006/06/06(火) 22:16:05
[課題]

情報管理用のクラス[Hito]を作成する。
プロパティ

private String name<名前用>
private double taijyu<体重用>
private double sincho<身長用>
private double nenrei<年齢用>

メソッド
各プロパティの値を入出力するためのメソッド

getXXXX,putXXX

まず、上記の内容で[Hito]クラスを作成する。コンストラクタHito(String name,double taijyu,double sincho,double nenrei)を定義する。


※期限翌朝 です。
 宜しくお願いします。
650デフォルトの名無しさん:2006/06/06(火) 23:41:04
>>649
public class Hito {
private String name;
private double taijyu;
private double sincho;
private double nenrei

public String getName(){return name;}
public double getTaijyu(){return taijyu;}
public double getSincho(){return sincho;}
public double getNenrei(){return nenrei;}

public void setName(String name){this.name = name;}
public void setTaijyu(double taijyu){this.taijyu = taijyu;}
public void setSincho(double sincho){this.sincho = sincho;}
public void setNenrei(double nenrei){this.nenrei = nenrei;}

Hito(String name,double taijyu,double sincho,double nenrei){
this.name = name;
this.taijyu = taijyu;
this.sincho = sincho;
this.nenrei = nenrei;
}
}
なんていうかput意味不だし、年齢ダブルにする意味わかんないし、
とにかく適当だ。
651デフォルトの名無しさん:2006/06/06(火) 23:41:39
あ、private double nenreiの後にセミコロン抜けてた。
すまん。
652デフォルトの名無しさん:2006/06/06(火) 23:52:52
【 課題 】演算と条件判定
問題1
授業中示した 3 つの値の最大値を求めるプログラム (3 種類のどれでも良い) を改造して、どの変数が最大だったか、その変数名を表示するようにしなさい。ファイル名は MaxVariable.java とする。
この問題の解法は何通りか考えられる。ひとつの方法は、どれが最大値だったかの情報を変数に記録しておく方法である。たとえば、 x が最大なら isXMax = true, 最大でないなら isXMax = false などとする。
もう一つの方法として、最大値を求めた後で、それが x に等しいか、 y に等しいか、 z に等しいか、と調べるやり方も可能である。
もちろん、これ以外の方法を用いても良い。
問題2
3 つの値 x, y, z の中央値(メジアン)を求めて出力するプログラムを作成しなさい。なお中央値とは、データを大きさの順に並べたときに中央の順位にくる値である。 3 つの値はすべて異なるものとする。プログラム名は Median3 とする。
問題3
定期試験の点数が 89, 55, 32, 94, 60 の人がいたとして、点数が60点以上の人の平均点を求めるプログラムを書きなさい。はじめに 5 人の点数を 5つの int 型の変数に代入しておくこと。
class AverageOfSuccessor {
public static void main(String[] args) {
int student1 = 89;
int student2 = 55;
int student3 = 32;
int student4 = 94;
int student5 = 60;

....
点数が60点以上の人の平均点を求めるプログラムをここに書く

}
}
この計算を行うと、平均点は 81 点となるはずである。
ヒント: 平均をとる場合には対象の人数を数える必要がある。人数を数えるための変数を用意し、 60点以上の人を数えるようにすると良い。
プログラムの名前は AverageOfSuccessor とする。

【 用語 】??変数はXYZを使用。入れる数は全部異なっていること。
【 期限 】水曜18時まで
【 Ver  】よくわからないのですが、リナックスでEMACSで作ってます。
よろしくお願いします。
653デフォルトの名無しさん:2006/06/07(水) 01:39:10
>>652
verっつうのは
java -version
で表示されるやつのことだ

で、授業中示したプログラムってのは何だ?
654デフォルトの名無しさん:2006/06/07(水) 01:46:13
問題3はこれでOK?

public class AverageOfSuccessor {
public static void main(String[] args) {
int student1 = 89;
int student2 = 55;
int student3 = 32;
int student4 = 94;
int student5 = 60;

int count = 0; 
int sum = 0; 
if(student1 >= 60) { count++; sum += student1; }
if(student2 >= 60) { count++; sum += student2; }
if(student3 >= 60) { count++; sum += student3; }
if(student4 >= 60) { count++; sum += student4; }
if(student5 >= 60) { count++; sum += student5; }
int average = sum / count;
System.out.println("点数が60点以上の人の平均値は" + average + "点ですた。");
}
}
655654:2006/06/07(水) 02:21:19
>>652
問題2です。
【用語】??変数はXYZを使用 ←がよくわからなかったので、そこはご了承を。。。

public class Median3 {
public static void main(String[] args) {
int X = 10;
int Y = 20;
int Z = 30;

int i = 0;
if(X < Y && X < Z) {
if(Y < Z) { i = Y; }
else { i = Z; }
}
else if(Y < X && Y < Z) {
if(X < Z) { i = X; }
else { i = Z; }
}
else {
if(X < Y) { i = X; }
else { i = Y;}
}
System.out.println("Median is " + i);
}
}
656デフォルトの名無しさん:2006/06/07(水) 10:05:20
>>654>>655どうもです。カウントとか使うんですね。一番は調べて自分でやってみます。ありがとうございました。
657デフォルトの名無しさん:2006/06/07(水) 16:01:05
>>650
>>651有難うございました。
参考になりました。
658デフォルトの名無しさん:2006/06/07(水) 16:18:40
どなたか>>384の課題が解ける方お願いします。

期限:急
659デフォルトの名無しさん:2006/06/07(水) 16:24:13
>>658
文末からforで有効な値があるまでサーチするのが一番速いと思うが、
それ以上に速いものを知らないので答えられん。
660デフォルトの名無しさん:2006/06/07(水) 16:26:08
あれ、アンカーが変だ。659はスレ汚しスマソ
661デフォルトの名無しさん:2006/06/07(水) 19:46:20
【 課題 】
1.同時座標にはどのような特徴があるか少なくとも2つ答えなさい。
2.陰線処理を行う方法の1つである法線ベクトル法について具体的に説明しなさい。
3.点P(x0,y0,z0)を通り、Y軸に平行な直線を軸として回転する時のアフィン変換のマトリックスを求めなさい。
4.立体を(x1,y1,z1,に平行移動し、y軸を中心にθ回転するときもアフィン変換の変形マトリックスを書きなさい。
また、回転後に平行移動する場合の変換マトリックスと比較しなさい
5.図形の平行移動や回転に用いられるアフィン変換と、透視投影に用いられる射影変換の性質の異なる点をあげなさい

【 期限 】6/8(木)明日の朝までなので急です、スイマセン
【 補足 】プログラムのソースを書く問題と少し違うと思いますが、、
いっぱいいっぱいだったので、皆さんに助けをというか力を借りたくて投稿しました。
よろしくお願いします!!!

662デフォルトの名無しさん:2006/06/07(水) 20:00:28
>>661
スレ違い分かってんだったら書くなよ。
663デフォルトの名無しさん:2006/06/07(水) 21:02:24
【 課題 】スモールコンパイラの制作で学ぶプログラムのしくみ(ttp://www.gihyo.co.jp/books/support.php/4-7741-2177-0)

【 用語 】数学用語、専門用語の意味、説明を書きます 《あれば必須》
【 期限 】提出期限、解答希望日があれば書きます
【 Ver  】希望するJavaバージョンがあれば書きます
【 補足 】
Eclipse
664デフォルトの名無しさん:2006/06/07(水) 21:05:15
【 課題 】スモールコンパイラの制作で学ぶプログラムのしくみ
(ttp://www.gihyo.co.jp/books/support.php/4-7741-2177-0)
から source.zip をDLしてEclipse上で動かせ。
【 期限 】一ヶ月以内
【 補足 】丸投げですがよろしくお願いします
665デフォルトの名無しさん:2006/06/07(水) 21:19:49
DLしてEclipse上で動かしたが何か?
666654:2006/06/07(水) 21:37:19
>>664
404でしたが。
667デフォルトの名無しさん:2006/06/07(水) 21:47:29
665とは別人だがsource.zipをDLできたよ。
リファラーとかプロキシの設定を確認してみては?
668654:2006/06/07(水) 22:42:23
最後の)を削ったら出来た。すまそ
669デフォルトの名無しさん:2006/06/07(水) 23:22:43
class a{
public static void main (String[] args){
for (int N = 1 ; N <= 100000000; N*=10){
float e = 1.0f;
for (int i = 0; i < N; I++){
e = e * (1.0f+1.0f/N);
}
System.out.println(e);
}
}
}
高校で習った式
e=lim(N→∞)(1+1/N)~N
を用いて、自然対数eの値を計算しようと思い、以下のプログラムを作った。

これを実行したらeの値は2.718281・・・に収束していくはずなのに、途中で値が1.0になってしまった。
何故そうなるのか理由を教えて下さい。
670デフォルトの名無しさん:2006/06/07(水) 23:39:04
そうなるようにプログラムを書いたから
671デフォルトの名無しさん:2006/06/07(水) 23:39:23
【課題】以下に食べた分,走った分をそれぞれ蓄積したデータの合計を取得するメソッドgetEatSum、getRunSumをHitoクラスに作成する。

import java.util.*;
public class Hito { private String name; private double taijyu;
private double sincho; private double nenrei;
private ArrayList eatlist; //<食べた分蓄積用>
private ArrayList runlist; //<走った分蓄積用>
public Hito() { eatlist = new ArrayList(); runlist = new ArrayList();
name = ""; taijyu = 0.0; sincho = 0.0; nenrei = 0.0; }
public Hito(String name, double taijyu,double sincho,double nenrei) {
eatlist = new ArrayList(); runlist = new ArrayList();
this.name = name; this.taijyu = taijyu;
this.sincho = sincho; this.nenrei = nenrei; }
public void eat(double in_eat) {
this.taijyu = taijyu + (in_eat * 0.1);
eatlist.add(String.valueOf(in_eat)); }
public ArrayList getEat() {
return eatlist; }
public void run(double in_km) {
this.taijyu = taijyu - (in_km * 0.01);
runlist.add(String.valueOf(in_km)); }
public ArrayList getRun() {
return runlist; } }
672デフォルトの名無しさん:2006/06/07(水) 23:42:16
>669

N が int だからだと思われ。
間違ってたらごめん。
673デフォルトの名無しさん:2006/06/07(水) 23:43:17
>>671 
すみません。途中でレス上げちゃいました・・。
【期限】6/8 AM9時希望  です。

改行が多くてエラーが出てしまうので,詰めたら読みにくくなってしまい申し訳ないです。
宜しくお願いします。  
674デフォルトの名無しさん:2006/06/07(水) 23:58:25
>>669
floatの精度の問題
doubleにして1.0fを1.0にして味噌
675デフォルトの名無しさん:2006/06/08(木) 00:07:30
すみませんわからないので、お願いします。
[課題]createメソッドの不足部分を補って二値化のコンポーネントを作成してください.
676デフォルトの名無しさん:2006/06/08(木) 00:08:26
public class thred extends CoreInterface
{
public thred()
{
name = "thred";
inputs = 2;
outputs = 1;
width = 30;
height = 20;
}

public void setup()
{
Input[0].setConnectionType(IMAGE);
Input[0].setConnectionMode(NORMAL);
Input[0].shortDescription = "";
Input[0].setConnectionDescription(new String[]{
"No connection description available"});

Input[1].setConnectionType(INTEGER);
Input[1].setConnectionMode(NORMAL);
Input[1].shortDescription = "";
Input[1].setConnectionDescription(new String[]{
"No connection description available"});

Output[0].setConnectionType(IMAGE);
Output[0].setConnectionMode(NORMAL);
Output[0].shortDescription = "";
Output[0].setConnectionDescription(new String[]{
"No connection description available"});
677デフォルトの名無しさん:2006/06/08(木) 00:09:16
}

public void doubleClick()
{

}
/*処理本体
コンポーネントの処理本体です。
基本的な処理手順は、コネクタからデータ取得→NeatVision.createメソッドにより既存コンポーネントを呼び出す
となっています。
既存コンポーネント名を入れるときに大文字小文字の間違い、スペルミスなどに気をつけましょう。
*/
public Object create(DataBlock args)
{
/*コネクタからデータを取得し二値化コンポーネントを呼び出し、
 結果をGrayImageクラスのoutputに代入してください
*/
return output;
}
}
678デフォルトの名無しさん:2006/06/08(木) 00:10:17
補足部分

// 任意の番号のコネクタから整数データを取得するには以下のようにします
// ?の部分にコネクタの番号を記述します
Integer i = new Integer(args.getInteger(?));
679673:2006/06/08(木) 00:16:12
>>674
のいうとおりでした。お恥ずかしい。
680664:2006/06/08(木) 10:41:59
昨日質問したモノですが動きません。
パッケージはcell
最初のCellはパブリックにチェック
それ以外のK.V.Gはパブリックのチェック消して継承にチェック
ではだめですか?
だれか詳しく教えてくれませんか?
681デフォルトの名無しさん:2006/06/08(木) 14:28:17
>>646誰かできませんか?
682デフォルトの名無しさん:2006/06/09(金) 13:26:28
【 課題 】Googleの検索結果の"検索結果ページ"のように開いているページ+前後nページを表示するプログラムを作りなさい。
【 補足 】わかりにくくてすいません。
Googleなどで検索するとページの下のほうに
gooooooooooooooooooooooooooooogle
123......
のように表示されていると思います。
これをコンソールで最大ページNo,現在ページNo,候補ページ数を入力します。
たとえば最大ページNoを100、現在ページNoを14と入力すると
4 5 6 7 8 .... 14 .. 22 23 のように表示されるようにしたいのです。
最大ページNoを100、現在ページNoを98と入力すると
88 89 90 ... 98 99 100
のようになり候補ページ数が10でも 108(98 + 10)までは表示されないようにしたいです。
683デフォルトの名無しさん:2006/06/09(金) 13:51:31
互いにリンク張り合ったHTML群を書き出せばいいのか?
684デフォルトの名無しさん:2006/06/09(金) 20:48:46
【 課題 】
2本のベクトル
x=[1;0;0]とy[1;1;0]を表す配列x,yを引数とし、その内積を計算するメソッドinnerProductを作成せよ
(引数、戻り値の型は適切に設計せよ)。
また、main中でinnerProductを呼び出し、2つのベクトルそれぞれのノルムと二つのベクトルの成す角を表示せよ。
クラス名はPro3_0503とし、メソッドinnerProductはPro3_0503のクラスメソッドとすること。
また、表示形式は以下を参考にすること。

x=[1;0;0]
y=[1;1;0]

||x||=1.000
||y||=1.414
theta=45.000[deg]

【 期限 】来週月曜日
【 補足 】
桁数の指定については、こちらのソースを参照とのこと。

import java.text.DecimalFormat;
public class Sample{
      double x=Math.sqrt(2);
      DecimalFormat df=new DecimalFormat(".000");
      System.out.println(df.format(x));
}

*上の通りです。よろしくお願いします。
685デフォルトの名無しさん:2006/06/09(金) 22:05:33
686デフォルトの名無しさん:2006/06/09(金) 23:03:11
>>685
ありがとうございます。
687デフォルトの名無しさん:2006/06/10(土) 22:30:20
【課題】インターフェース
○クラス Dell
   ・商品情報を3商品分持つ。
    *商品情報は商品コード・名前・単価の3項目からなる。
     各項目の定義の仕方、及び各項目の具体的な内容は任意とする。
   ・ユーザ名を受け取って保持するユーザ登録メソッドを持つ。
   ・商品コード(Stringで定義)および数量(intで定義)を受け取って保持する商品注文メソッドを持つ。
   ・以下の処理を行う商品検索のメソッドを持つ。
    *引数で渡された商品コードを持つ商品があるかどうかを判定し、
     あった場合はその名前・単価をメッセージとして表示、なかった場合も
     その旨のメッセージを表示する。
   ・以下の処理を行う商品単価確認メソッドを持つ。
    *引数で渡された商品コードの商品の単価をリターンする。
   ・購入した商品の合計金額をリターンする合計購入金額算出メソッドを持つ。
○クラス Lenovo
   ・商品情報を5商品分持つ。
    *商品情報の内容や定義等については上記のDellクラスと同様。
   ・上記Dellクラスと同様のユーザ登録・商品注文・商品検索・商品単価確認メソッドを持つ。
   ・購入した商品の合計金額に送料(任意の値)を加えた値をリターンする合計購入金額算出メソッドを持つ。

  上記2つのクラスを、同一のインターフェイス PCShop を実装する形に変更してください。

【提出期限】6/12(月)朝
丸投げです。どなたか宜しくお願いします。
688デフォルトの名無しさん:2006/06/11(日) 00:38:04
>>678
http://sourcepost.sytes.net/sourcepost/sourceview.aspx?source_id=27885

途中で飽きちゃったので未完成です。
後は適当にどーぞ。
689688:2006/06/11(日) 00:40:25
>>687 と間違えた。。。 orz
690デフォルトの名無しさん:2006/06/11(日) 19:53:27
【 課題 】
import java.net.*;
class ip_search
{
public static void main(String args[]){
String hostname;
InetAddress dest=null;
hostname=args[0];
try{
dest=InetAddress.getByName(hostname);
}catch(Exception e){
System.out.println("見つかりません");
}
System.out.println(dest);
}
}

次のプログラムはドメイン名から、IPアドレスを表示するプログラムである。
動作原理の詳細を述べよ。
【 期限 】6/12 pm1:00
【 補足 】丸投げですがよろしくお願いします。m(_ _)m
691デフォルトの名無しさん:2006/06/11(日) 20:11:16
マイナス単項を計算できるようにするにはどのような方法があるのでしょうか?

692デフォルトの名無しさん:2006/06/11(日) 21:02:27
>>690
ドメイン名からIPアドレスを取得してる
以上
693デフォルトの名無しさん:2006/06/11(日) 21:13:26
10個のデータを乱数で生成し、その平均と分散を求めるプログラムを作れ。
分散だけどうしてもわかりません(T-T )( T-T)ウルウル
よろしくおねがいします(;人;)
694デフォルトの名無しさん:2006/06/11(日) 21:17:00
695693:2006/06/11(日) 21:38:24
今のところこんな感じなんですけど…できてますかね?


private static double Dispersion(int[] data)
{
double dispersion = 0;
double[] datad = new double[SIZE];
double E = 0;
double F = 0;

for(int i = 0; i < SIZE; i++)
{
// int型→double型
datad[i] = data[i];
E = E + datad[i]*0.001;
F = F + datad[i]*datad[i]*0.001;
}

dispersion = F - E;

return dispersion;
}
696デフォルトの名無しさん:2006/06/12(月) 22:11:50
【 課題 】ボタンを押したらテキストフィールドに入力された文字列がコマンドプロンプトに表示される。ただし、半角英数5〜10文字だけ。それ以外の場合はダイアログでエラーを表示する。
【 期限 】朝までに・・・。
【 Ver  】  (1) Java 2 Platform, Standard Edition, バージョン 1.4 もしくは 5.0
【 補足 】「半角英数5〜10文字だけ」の部分の例外処理だけお願いします。
String text_=tf.getText(); //tfはJTextFieldのオブジェクト
int len_=text_.length();
って感じで、続きをお願いします。
697デフォルトの名無しさん:2006/06/13(火) 10:02:01
例外処理なんていらんから text_.matches("[a-zA-Z0-9]{5,10}") だけでいいんじゃ?
698デフォルトの名無しさん:2006/06/13(火) 11:17:23
javaで改行ってどうやるんですか?
String str="あいうえお\r\nかきくけこ\r\n";
で良いでしょうか?
699デフォルトの名無しさん:2006/06/13(火) 14:18:25
>698
\nだけでいいお
700デフォルトの名無しさん:2006/06/13(火) 17:16:50
>>695
intをdoubleにするのはキャスト使えばいいわな。

で、分散だけど、FをSIZEで割って、EをSIZEで割ったもの(平均)を引くと出るっていう話だな。



でさ、0.001ってなに?w
701デフォルトの名無しさん:2006/06/13(火) 17:37:06
【 課題 】以下のプログラムに1)から4)の修正を加えて、究極的に5)の
仕様を実行するプログラムにせよ。
http://sourcepost.sytes.net/sourcepost/sourceview.aspx?source_id=27901

1)10,000件の項目を配列に入れよ。
2)整列させる前後のデータを配列の最初から表示せよ。
3)display()を削除して整列にどのくらいの時間がかかるかを実験せよ。
4)100,000件について3)をもう一度実験せよ。
5)項目の件数を適当に変更して100,000件、30,000件、5,000件、3,000件、1,000件
について、それぞれ実行時間を測定せよ。

注)入力データは、以下の乱数プログラムを使って発生させるとよい。
Program fill array with random numbers
for (int j=0; j < maxSize; j++)//fill array with random numbers
long n = (long)(java.lang.Math.random()*(maxSize-1));
arr.insert(n);
}
//end of random numbers program source
注2)実行時間の測定は適当なプログラム、例えばtimerを使って測定すること。
【 期限 】6/15 22:00まで
【 補足 】時間を計測するプログラムは自分で見つけたんですが、
これで合ってるか不安なのでもし間違ってたらこちらの修正もお願いします
702デフォルトの名無しさん:2006/06/13(火) 18:14:28
【 課題 】実行時に1〜10の引数を漬けて実行させるプログラム

1〜4の引数が渡されたときは「頑張りましょう」、5〜7が渡されたら「まぁまぁです」
8〜10が渡されたら「良くできました」とディスプレイに出力させなさい。
703デフォルトの名無しさん:2006/06/13(火) 22:04:26
【課題】
6項目の質問があり、それぞれの質問に対する回答が2つor4つ用意してある。
選択肢によって0点から3点の点数が与えられている。
各項目は、1つしか回答を選択できない。
それらを選択し、結果ボタンを押すと合計点数を表示させるものを作成せよ。
【補足】
6項目の点数は決まっており、一番高い場合は10点となる。
自分で下記プログラムを組んだのですが、ネスケでのみ動作せずエラーにもなりませんでした。
ネスケで動くようにお願いしたいです。

長いので次のレスに記入します。
すみません。
704デフォルトの名無しさん:2006/06/13(火) 22:05:38
自分で作成したプログラム文です。

【HEAD部分】
<SCRIPT language="JavaScript"><!--
function MakeArray(n) {
this.length = n
for (var i = 1; i <= n; i++) { this[i] = 0 }
return this
}
function kekkaDef(label) {this.label = label }
kekka = new MakeArray(3)

function seeResult() {
var tokuten = 0
var numberOfQuestions = 6
var j = 0
for (var i = 0; i <= 18; i++) {
if (document.chkform.elements[i].checked) {
tokuten += eval(document.chkform.elements[i].value)
} }
if (tokuten <= 3) { j = 1}
else { if (tokuten <= 6) { j = 2 }else {j = 3} }
document.chkform.Text.value = tokuten ;
}
--></SCRIPT>
705デフォルトの名無しさん:2006/06/13(火) 22:17:48
706703:2006/06/13(火) 22:35:13
>>705
参考になればと思って書いたのが邪魔だったようで申し訳ありません。
703の条件でプログラム作成お願いします。
707デフォルトの名無しさん:2006/06/13(火) 22:38:24
>705,706
実は>1には肝心なことが抜けてる。
JavaScriptは板違い。Web製作板へ。
708デフォルトの名無しさん:2006/06/13(火) 23:11:49
>>707
板違いすみません;
誘導ありがとうございます
709デフォルトの名無しさん:2006/06/14(水) 01:59:19
>>702
class R702{
public static void main(String[] args){
int num;
try{
num = Integer.parseInt(args[0]);
if (num <= 0 || num > 10)
System.out.println("引数が不正です");
else if (num < 5)
System.out.println("頑張りましょう");
else if (num <= 7)
System.out.println("まぁまぁです");
else if (num <= 10)
System.out.println("良くできました");
}catch (Exception ex){
System.out.println("引数が不正です");
}
}
}
710デフォルトの名無しさん:2006/06/14(水) 14:39:57
【 課題 】配列を、ずらしてコピー

配列A:[0][1][2][3][4]
↓ ↓ ↓ ↓
配列B:  [0][1][2][3]

こんな感じで、ずらしてコピーしたいです。
配列A[0]は無視。

宜しくお願いします。
711710:2006/06/14(水) 14:41:38
申し訳ありません。
ずれすぎました。
訂正します。

A[0]→無視
A[1]→B[0]
A[2]→B[1]
A[3]→B[2]
A[4]→B[3]

こんな感じです。
改めてお願いいたします。
712デフォルトの名無しさん:2006/06/14(水) 14:56:15
for ( i = 0 ;i < A.length - 1 ; ++i ) {
 B[i] = A[i+1] ;
}
713デフォルトの名無しさん:2006/06/14(水) 16:25:52
>>675-678
ルール違反かもしれないがヒントだけにとどめておく。
すぐ前の課題3のNotの課題と比べて違っているのはどこか?
それがわかれば自ずと解けると思う。
わからなかったら諦めてくれ。
ちゃんと授業での説明を聞いていない証拠だから。
714713:2006/06/14(水) 16:29:01
他の人にもわかるようにちょっと補足。
>>675-678はJavaで書かれてはいるが、厳密にはNeatVisionというソフトでの
課題。

それを書かないとNeatVision使いじゃないJava使いの人には分からない罠
715デフォルトの名無しさん:2006/06/14(水) 17:01:17
【 課題 】
テキストファイルの中に文字列が50000個はいってて、
小文字の英字が4文字(最初がa)、
数字が2〜4個、
大文字の英字が3文字続くようなものを全て出力し、
最後にその個数を出力する。出力結果は49になる。
【 期限 】明日・・・orz
正規表現を用いるんですが、
自分で作ったやつのどこがおかしいのかわからない・・・自分のソースも載せなければいけない場合は載せます。
716デフォルトの名無しさん:2006/06/14(水) 17:12:25
「課題」等差数列の項と和を求めるプログラムを書きなさい。

初項 c 、項差 d の等差数列を考えると、 i番目の項 ai と、その項までの和 si は以下のような漸化式で求めることができる。

ai = ai-1 + d
si = si-1 + ai

初項 c と公差 d をあらかじめプログラム中に定義しておき、先頭から第 10 項までの ai と si を出力するようなプログラムにすること。たとえば、初項が 10 、公差が 5 だった場合、出力の最初の数行は次のようになれば良い。

ArithmeticalProgression (c=10, d=5)

1: a=10 s=10
2: a=15 s=25
3: a=20 s=45
4: a=25 s=70
5: a=30 s=100
...

プログラム
「期限」明日
よろしくお願いします
717デフォルトの名無しさん:2006/06/14(水) 17:14:26
>>710
System.arraycopy(A, 1, B, 0, A.length - 1)
718デフォルトの名無しさん:2006/06/14(水) 17:17:35
719デフォルトの名無しさん:2006/06/14(水) 17:50:03
>>716
class ArithmeticalProgression {
public static void main(String[] args) {
An an = new An(10, 5);
for (int i = 1; i < 10; i++) {
System.out.println(i + ": a=" + an.getA(i) + " s=" + an.getS(i));
}
}
}
class An {
private int c;
private int d;

An(int c, int d) {
this.c = c;
this.d = d;
}
int getA(int n) {
int an = c;
for (int i = 2; i <= n; i++) {
an = an + d; //ai = ai-1 + d
}
return an;
}
int getS(int n) {
int sn = 0;
for (int i = 1; i <= n; i++) {
sn = sn + getA(i); //si = si-1 + ai
}
return sn;
}
}
720デフォルトの名無しさん:2006/06/14(水) 17:56:54
>>715
テキストファイルのサンプルがほしいところだが・・
721715:2006/06/14(水) 18:01:31
わかりました。どこにのせればいいですか・・・?
722デフォルトの名無しさん:2006/06/14(水) 19:10:00
>>715
正規表現を "." に変えたら、ちゃんと全文字列と 50000 が表示される?
されるなら正規表現だけ直せば良さそう。
723715:2006/06/14(水) 20:48:43
あ、はい、されました・・・!
724715:2006/06/14(水) 20:53:13
とりあえず自分が作ったソースはってみますね。
java初心者なもので・・・
import java.util.regex.*;
import java.io.*;
public class work81{
public static void main(String[] args) {
int i=0;
try {
BufferedReader reader=new BufferedReader(new FileReader("data.txt"));
String line="";
Pattern p=Pattern.compile("^a[a-z]{3}[0-9]{2,4}[A-Z]{3}$");
Matcher m=p.matcher(line);
while(true){
line=reader.readLine();
if(m.matches()){
System.out.println(line);
i++;
}
if(line==null){
System.out.print(i);
break;
}
}
}
catch(FileNotFoundException e) {
System.out.println("ファイルがありません");
}
catch(IOException e) {
System.out.println("入出力エラーです");
}
}
}
725デフォルトの名無しさん:2006/06/14(水) 21:10:04
>>724
m = p.mather(line) をやるのは、 line に読み込んだ後。
726デフォルトの名無しさん:2006/06/14(水) 21:20:36
>>724
それと、line の null チェックを matcher(line) を呼ぶ前に。
正規表現は合ってる。
727デフォルトの名無しさん:2006/06/14(水) 21:27:09
キーボードより上限、下限の値を読み込みその範囲ないに7の倍数を表示する。
また最後に7の倍数の個数を表示するプログラムを作りなさい。
条件
for文をしよう。
入力データは整数型で上限下限の条件は0<下限<上限とする。
7の倍数は1行に10個表示する。
明日までなのでお願いします。
728715:2006/06/14(水) 21:33:40
うおおおおおおお
>>725
>>726
ありがとうございます・・・正しい結果出ました
729デフォルトの名無しさん:2006/06/14(水) 21:53:49
【 課題 】
ttp://www.asahi.com/english/index.htmlyoriより適当な記事を選び記事の本文をファイルに保存(.txt)
そのファイルを入力として、記事中に出現する全単語のリストを出力するプログラムを作成せよ。
なおリストは全て小文字に変換し、辞書式順序で昇順にソートして出力すること。
ソートにはCollection.sortを使用すること。

正規表現が上手く行きません。'以外の記号を無くせれば良いのですが…
730デフォルトの名無しさん:2006/06/14(水) 22:33:04
>>727
擬似コードで書くとだいたいこんなかんじ

for (int i = 下限; i <= 上限; i++) {
i が 7 の倍数なら表示
10 個表示したら改行
}
731デフォルトの名無しさん:2006/06/14(水) 22:55:27
>>730を改造しとく

7の倍数の個数 = 0
for (int i = 下限; i <= 上限; i++) {
i が 7 の倍数なら {
7の倍数の個数が1以上で10の倍数なら改行
iを表示
7の倍数の個数++
}
}
改行
7の倍数の個数を表示
732デフォルトの名無しさん:2006/06/14(水) 23:05:21
for (int i = 下限 + 7 - 下限 % 7; i <= 上限; i += 7) {
iを表示
10個表示したら改行
}
733デフォルトの名無しさん:2006/06/14(水) 23:27:00
>>729
"\w(\w|'|,)*(s'|\w)|\w+" でどうだろう
734デフォルトの名無しさん:2006/06/14(水) 23:35:26
>>733
ありがとうございます。だいぶ近づきましたが、()と,が残ってしまいます。

Pattern p = Pattern.compile("[^\\w(\\w|'|,)*(s'|\\w)|\\w+]");
strs = p.split(str);

こんな感じでやって見たのですが
735デフォルトの名無しさん:2006/06/14(水) 23:38:27
あー、ごめんなさい。,を除けばいいだけでしたね。
あとは()か・・・
736デフォルトの名無しさん:2006/06/14(水) 23:48:18
>>734
否定をとって split じゃなくて
Matcher m = pattern.matcher(txt);
while (m.find()) {
 strs.add(m.group().toLowerCase()) // strs は List
}
というかんじで
737デフォルトの名無しさん:2006/06/15(木) 00:55:35
>>736
splitに拘りすぎてたみたいですね。ありがとうございます。無事出力することが出来ました。
数字も出力されてしまいますが、これは無視して良さそうですね。お世話になりました。
738デフォルトの名無しさん:2006/06/15(木) 18:31:25
ブロック崩しなのですが、
【 課題 】ブロック崩しアプレットを作成しなさい。
ボールのサイズは10、ラケットサイズは任意、画面サイズは500×400とする。
画面上部ニブロック、スタートボタンを配置する。
現在のスコア、ハイスコア、残りボール数を表示する。
アップレットを起動するとボールを任意の位置に表示する。
マウスの移動と左右キーでラケットを左右に動かせる。
ボールは上、左右の壁に当たると跳ね返る。ブロックに当たった場合、
ブロックが消え、ポイントが加算される。
スタートボタンでゲームスタート。ボールがラケットより下に行くと
ボールはロスとされる。ボールがロストした場合、三個まで新たにボール
が出る。三個のボールをロストした場合、gameoverと表示する。
【 用語 】とくになし
【 期限 】6月17日正午まで
【 Ver  】とくになし
【 補足 】出来れば今日中にお願いしたいです。よろしくお願いします。
739デフォルトの名無しさん:2006/06/15(木) 21:16:43
 課題 】》1. 3を4で割った答えと余りを整数で答えなさい.

2. 3a=(3/2)b+c の等式を bについての等式に変形しなさい.

3. 数字だけを組み合わせて作る4桁の暗証番号は全部で何通りできますか?
4.キーボードから正の数を次々と入力し,0が来たら,それまで入力した数の最大値,
最小値,平均値を出力するプログラムを書きなさい

【 用語 】 1から3は計算で、4は繰り返しです。
【 期限 】6月22日まで。
【 Ver  】ez-HTML ver6.86.1
【 補足 】var a;
while(true){
a=Number(window.prompt("データ入力"));
if(a==0) break;
document.write(a,"<br>");

↑4のです。。まったくわかりません。
お願いします。
740デフォルトの名無しさん:2006/06/15(木) 21:21:00
>>738
コーディングにかかる時間をどれぐらいに見積もっているのか聞いてみたい。

>>739
>>707
741デフォルトの名無しさん:2006/06/18(日) 19:10:18
【 課題 】あるフォルダ内の複数のテキストファイルの内容を一つにまとめ、
      新しいテキストファイルに出力するプログラムを作りなさい。

【 補足 】例えば、
      あるフォルダに以下の内容をもつテキストファイルが存在した場合、
      
      「あいうえお」 「かきくけこ」 「さしすせそ」

       プログラムにより
       「あいうえお
        かきくけこ
        さしすせそ」
        
        という内容の新しいテキストファイルが出来上がるという感じです。
        ただしファイルの数が何個であっても対応できるものでなければならないとのことです。

よろしくお願いします。
742デフォルトの名無しさん:2006/06/18(日) 21:39:46
【 課題 】
ArrayListに、nameプロパティ、studentIdプロパティ、majorプロパティを持つ
Studentクラスのオブジェクトが複数保存されている。
Studentオブジェクトを一つずつ比較して、studentIdかつmajorが同じものがあれば、
「学籍番号と専攻科目が重複しています。」とメッセージを出しなさい。
【 用語 】ありません
【 期限 】6月20日朝
【 Ver  】ありません
【 補足 】
・どちらか一方のプロパティのみが一致した場合は対象外でお願いします。
・以下のStudentクラスが用意されているので、それを使ってお願いします。(次番号に書きます)
・name、studentId、majorの各プロパティは、値は何でもいいです。

743742:2006/06/18(日) 21:40:53
class Student{
private String name;
private int studentId;
private String major;

public Student(String name, int studentId, String major){
this.name=name;
this.studentId=studentId;
this.major=major;
}

public String getName(){
return name;
}

public int getStudentId(){
return id;
}

public String getMajor(){
return major;
}
}

よろしくお願い致します。
744デフォルトの名無しさん:2006/06/18(日) 23:36:23
ニュートンラプソン法でルート5を求めるプログラムを書け

教えてください。。。
745デフォルトの名無しさん:2006/06/19(月) 00:32:08
何を?
746デフォルトの名無しさん:2006/06/19(月) 09:30:03
テンプレも使えない奴に教えることなんざ無い
747100%素人Java:2006/06/19(月) 12:17:11
748デフォルトの名無しさん:2006/06/19(月) 20:39:11
かなり部分的な話ですが、、
【 課題 】Vectorクラスのオブジェクトからデータを抜き出して配列を作る
【 用語 】
【 期限 】明日朝
【 Ver  】特になし
【 補足 】
{Aの名前,Aの住所,Aの電話番号,Bの名前,Bの住所,Bの電話番号,Cの名前,Cの住所,Cの電話番号,…nの名前,nの住所,nの電話番号}(n:n番目の意)

みたいな感じで、Vectorクラスのオブジェクトに3種類のデータを順々に入れていったものを作ります。
ここからデータを取り出して、名前だけを格納した配列・住所だけを格納した配列・電話番号だけを格納した配列、を作りたいんです。

String [] name=new String [n];→{Aの名前,Bの名前,Cの名前,…}
見たいな感じで。

最初はfor文で開始場所をずらしてVectorから3つ置きにデータ出してきて…って思ったんですが、それだと格納先の配列まで3置きの番号が割り当てられます。
頭悪くてごめんなさい。
お知恵を貸してください、お願いします。
749デフォルトの名無しさん:2006/06/19(月) 21:12:15
【 課題 】円、矩形、三角形を適宜組み合わせた簡単な「絵」をデザインし、その絵を表すようなクラスを作ってアプレッ
トで描画してみよ。
【 期限 】6/20
【 補足 】複雑な絵でなく、シンプルな絵(マークみたいなもの)で良いので、その絵を構成する部品クラスを定義し、部品クラスを利用して絵(マーク)のクラスを作るのが目的だそうです。
750Javaはイイ:2006/06/19(月) 21:19:34
751デフォルトの名無しさん:2006/06/19(月) 21:29:15
>750
URLが途中で切れてる。
752Javaはイイ:2006/06/19(月) 21:41:31
753748:2006/06/19(月) 22:43:00
>>750-2
あー、なるほど。3回読んで理解しました。。
ありがとうございました!!
754デフォルトの名無しさん:2006/06/19(月) 23:21:04
【 課題 】次のHPのソースを出力するプログラムのURLの銘柄コードの部分を変え
3730〜3740までの
【 用語 】数学用語、専門用語の意味、説明を書きます 《あれば必須》
【 期限 】提出期限、解答希望日があれば書きます
【 Ver  】希望するJavaバージョンがあれば書きます
【 補足 】課題について自分なりに補足する事、何か思う事があれば書きます。
       丸投げでない場合は、途中までのソースとその経過報告、
       質問点、疑問点を書きます(なるべく丸投げにしてください)
755755:2006/06/19(月) 23:27:08
すいません途中で書き込んでしまいました。

【 課題 】次のHPのソースを出力するプログラムのURLの銘柄コードの部分を変え
       3730〜3740までのソースを表示させなさい。
【 期限 】6月19日
【 補足 】
http://quote.yahoo.co.jp/q?s=3730&d=t
http://quote.yahoo.co.jp/q?s=3731&d=t


http://quote.yahoo.co.jp/q?s=3740&d=t

までのソースを全部一度に出力します。
元のプログラムは下記の通りです。よろしくおねがいします。
756755:2006/06/19(月) 23:27:43
import java.io.*;
import java.net.*;

public class WebRead2 {
public static void main(String[] args)
throws IOException
{
URL u = new URL("http://quote.yahoo.co.jp/q?s=3730&d=t");
InputStream is = u.openStream();
InputStreamReader isr = new InputStreamReader(is, "euc-jp");
BufferedReader r = new BufferedReader(isr);
String line;

while ((line = r.readLine()) != null) {
System.out.println(line);
}
}
}
757デフォルトの名無しさん:2006/06/19(月) 23:44:46
【 課題 】テキストエリアから入力された上辺と下辺と高さを元に、クリックした位置に台形を描画するJAVAアプレットを作成せよ。
      台形の面積を求め、ラベルの中に表示させよ。
      アプレット上に台形は複数描画できるものとします。
【 補足 】台形の面積表示が皆目わかりません。

台形の面積をラベルで表示する場所で詰まっております。
http://sourcepost.sytes.net/sourcepost/sourceview.aspx?source_id=27931
758100%素人Java:2006/06/19(月) 23:58:38
>>755 こんな感じかな?
import java.io.*;
import java.net.*;
public class WebRead3 {
public static void main(String[] args) throws IOException {
for(int i = 3730; i <= 3740; i++) {
String url = "http://quote.yahoo.co.jp/q?s=" + i + "&d=t"";
System.out.println(url);
URL u =new URL(url);
InputStream is = u.openStream();
InputStreamReader isr = new InputStreamReader(is, "euc-jp");
BufferedReader r = new BufferedReader(isr);
String line;
while ((line = r.readLine()) != null) {
System.out.println(line);
}
}
}
}

759デフォルトの名無しさん:2006/06/20(火) 00:33:05
【課題】 サブクラスを以下の通りに作成しなさい。
・計算を行うメソッドを持つ。
・計算を行うメソッドは,第一引数にintを,第二引数には1次配列を持っています。
 *第一引数の値が0の場合,第二引数の値をすべて足します。
 *第一引数の値が1の場合,第二引数の値をすべて引きます。
 *第一引数の値が2の場合,第二引数の値をすべて掛けます。
   戻り値は,計算結果とします。

・メインメソッドに,以下のメソッドを作成しなさい。
  *サブクラスの計算メソッドを使用(任意の配列の数に任意の値を設定)し,
  計算結果をメインメソッド内で出力しなさい。

【期限】 6/21(水)昼

宜しくお願いします。 
760デフォルトの名無しさん:2006/06/20(火) 00:45:24
>>759
サブクラスって元のクラスの指定は無いのか?
761Javaはイイ:2006/06/20(火) 00:58:24
>>759
http://sourcepost.sytes.net/sourcepost/sourceview.aspx?source_id=27934

>【課題】 サブクラスを以下の通りに作成しなさい。
...
>・メインメソッドに,以下のメソッドを作成しなさい。
メインとサブというのがあったため、メインメソッドとサブメソッドと脳内変換して作ってみた。
クラスに関する記述もないのでこれでいいかな
762761:2006/06/20(火) 01:00:53
import java.util.*;
これは不要だから削除して参考にでも〜
763デフォルトの名無しさん:2006/06/20(火) 01:30:42
>>758
出来ました!!
ありがとうございました。
764デフォルトの名無しさん:2006/06/20(火) 06:43:55
>>757
http://sourcepost.sytes.net/sourcepost/sourceview.aspx?source_id=27942
これ意図的にupdateにしてるのか?
気持ち悪いのでpaintにしてるから気に入らんかったら戻してくれ
765デフォルトの名無しさん:2006/06/20(火) 08:18:18
台形の面積って 小 学 校 で勉強するよな?
766デフォルトの名無しさん:2006/06/20(火) 08:39:02
俺もそこは大いに疑問だ
あ、今は小学校じゃ習わんかもしれんな
よく知らんが
767デフォルトの名無しさん:2006/06/20(火) 10:28:34
(上底+下底)・・・
あれ、小学校で括弧って習ったっけ?
768デフォルトの名無しさん:2006/06/20(火) 17:06:36
考えれば分かることだから公式の丸暗記はさせないんじゃなかったか?
769デフォルトの名無しさん:2006/06/20(火) 17:54:32
皆目分からないってな人の立場がないなw
770デフォルトの名無しさん:2006/06/20(火) 18:10:39
>>759
なんか気持ち悪い問題だね。
第一引数を削除して多態性を使うように書き直せっていう問題の間違いじゃないの?
771デフォルトの名無しさん:2006/06/20(火) 19:08:24
ごめんなさい><
772デフォルトの名無しさん:2006/06/20(火) 20:19:19
>>760 さん  元のサブクラスの指定はないです。
>>759 さん  早々のお答えありがとうございます!早速参考にさせて頂きます。
>>770 さん  計算メソッドを持つサブクラスと,それを呼び出すメインクラスを作れという課題です。
       サブクラスに計算するset()メソッドを作り,その引数にメインから値を入れて,
       計算結果をreturnするget()メソッドをサブクラスに作って,
       メインで呼び出すという内容です。
       課題○投げしたんですが解りにくくてすみません。
       
773デフォルトの名無しさん:2006/06/20(火) 20:39:52
【 課題 】
5円玉、10円玉、50円玉、100円玉、500円玉がそれぞれ7枚あるとします。(総額4655円)
実行時引数として、4655以下の5の倍数の正整数nを入力します
n円の買い物をするとして、買い物の結果、手元に残る小銭が最も少なくなるお金の払い方とを示しなさい

【 補足 】
java始めて2ヶ月ほどの自分には、かなり長い条件文になると思われ、むしろ数学の問題に近いと思います
774742:2006/06/20(火) 20:41:42
>>747
遅ればせながら、ありがとうございました。
775デフォルトの名無しさん:2006/06/20(火) 21:14:46
>>773
数学の問題だからスレ違い
776Javaはイイ:2006/06/20(火) 21:18:48
>>759
よく読み取れない問題だけど・・・これでいいかな??
http://sourcepost.sytes.net/sourcepost/sourceview.aspx?source_id=27947
777デフォルトの名無しさん:2006/06/20(火) 23:09:37
>>773
条件分使わなくても8^5通り全検索すればできるお
778759:2006/06/20(火) 23:09:42
>>776 Javaはイイさん

はい,お陰様で無事コンパイルできました。
本当に助かりました!ありがとうございました!!
779デフォルトの名無しさん:2006/06/21(水) 00:53:10
【 課題 】
アプレット上で3点をクリックするとその点で三角形を描くアプレットを作成しなさい。
【 補足 】
お願いします...
780デフォルトの名無しさん:2006/06/21(水) 05:07:32
>>773
「小銭が最も少なくなる」の「少ない」は金額なのか枚数なのかを確認。
781デフォルトの名無しさん:2006/06/21(水) 05:09:29
>>780
ごめ 金額は指定するんだから枚数に決まってらーね
782デフォルトの名無しさん:2006/06/21(水) 08:23:15
783デフォルトの名無しさん:2006/06/21(水) 09:10:58
>>779
<HTML><BODY><APPLET code="Ap.class" width=300, height=200></APPLET></BODY></HTML>
import java.applet.*;
import java.awt.*;
import java.awt.event.*;
public class Ap extends Applet {
Point[] points = new Point[3];
int count = 0;
public void init() {
addMouseListener(new MouseAdapter() {
public void mouseClicked(MouseEvent e) {
points[count] = e.getPoint();
count++;
if (count > 2) {
repaint();
count = 0;
}
}
});
}
public void paint(Graphics g) {
g.drawRect(0, 0, 299, 199);
if (points[0] != null && points[1] != null && points[2] != null) {
g.drawLine(points[0].x, points[0].y, points[1].x, points[1].y);
g.drawLine(points[1].x, points[1].y, points[2].x, points[2].y);
g.drawLine(points[2].x, points[2].y, points[0].x, points[0].y);
}
}
}
784デフォルトの名無しさん:2006/06/21(水) 09:12:19
>>780はアフォか?wwwwww
n円払うって言ってんだろwwwww
785デフォルトの名無しさん:2006/06/21(水) 09:25:01
>>781が見えない>>784ってすごいと思う
786デフォルトの名無しさん:2006/06/21(水) 09:45:13
どうだまいったか
787デフォルトの名無しさん:2006/06/21(水) 09:55:32
【 課題 】
データ分布

あらかじめ年齢データが格納された配列nenreiがある。
これは,変数宣言と同時に値を格納
nenreiには,10, 23 ,94 ,22, 46, 32, 64, 88, 23, 35, 67, 54, 34, 62, 99
年代別(0代〜90代)の人数をカウントして,集計結果を出力する。
なお,データの終わりには負の値が格納されており,最大データ件数は100件を越えないものとする。
ただし,if文やswitch文を使わない。

【 期限 】できれば明日までに
【 補足 】カウントの仕方が分かりませんので丸投げですが、どうぞ宜しくお願いします。
788デフォルトの名無しさん:2006/06/21(水) 10:15:32
>>782
配列、メソッドは習いましたけど、こんなのは授業でやってなくてわからん・・・
static final int[] COINS = {5, 10, 50, 100, 500};
boolean search(int remain, int n) {
public void print() {

その時点で出された問題だからそれ以外のjavaのテクニックみたいなのは使わないはずです
789デフォルトの名無しさん:2006/06/21(水) 10:48:13
>>788
>>1嫁。やなら自分でやれ。まずはお礼が最初だろ。
790デフォルトの名無しさん:2006/06/21(水) 11:35:07
>>787
int[] nums = new int[10];
for (int i = 0; i < nenrei.length && nenrei[i] >= 0; i++) {
nums[nenrei[i] / 10]++;
}
for (int i = 0; i < nums.length; i++) {
System.out.printf("%2d代:%3d人%n", i * 10, nums[i]);
}
791デフォルトの名無しさん:2006/06/21(水) 11:41:13
>>788
「static final」にはこの場合たいした意味はないので、
説明できないと思えば消してもいい。
あとは配列とメソッドを習って理解したなら、分かると思うんだけど。
792787:2006/06/21(水) 11:47:49
>>790
動作しました。
とても勉強になります。本当に有り難うございました。
793デフォルトの名無しさん:2006/06/21(水) 13:26:19
javaを用いて「台形公式による円周率の近似値の計算(分割数は1000)」
を完成させなさい。という問題を教えていただけませんか?

初心者の私にいきなりこんな授業は酷すぎて死んでいます。
よろしかったらどなたかお願いいたします。
794デフォルトの名無しさん:2006/06/21(水) 13:41:16
最初は誰でも初心者だ
死んだ奴は居ないんだがな
795793:2006/06/21(水) 13:55:19
java ではなく javascript でした。
796デフォルトの名無しさん:2006/06/21(水) 14:09:53
>>795
では板違い
797デフォルトの名無しさん:2006/06/21(水) 15:44:48
【課題】
00000001〜99999999という8桁の連番を生成するもの

下記のようにfor文の中にfor文っていうのを繰り返せばできると思うのですが
もっと簡単にできないでしょうか。

for (int a = 0; a <= 9; a++)
{
for (int a = 0; a <=9; a++)
{
(以下8桁分繰り返し)
}
}

宜しくお願いします。
798デフォルトの名無しさん:2006/06/21(水) 16:23:44
生成って言われてもねぇ
課題は丸投げにしろって言ってんだろ
for(int i=0;i<100000000;i++)
じゃ駄目なのか?
799デフォルトの名無しさん:2006/06/21(水) 16:25:47
>>797
やり方はいろいろあろうが、とりあえず連番を for で生成するとして、
a, printf("%08d", i) とか Formatter とかそのへんを使う
b, 桁数を調べ、足りない 0 を文字列頭に追加
 b-a, 基数で割っていって地道に調べる
 b-b, String.valueOf(i) などで文字列に直し、その文字列長を調べる
c, 10 で割りながら余りを頭についでいく

たぶん、b-a あたりが出題者の想定する解法。
もっとトリッキーなのがあれば知りたい。
800デフォルトの名無しさん:2006/06/21(水) 21:16:36
>>799
分類的には b-b だと思うけどこういうのも。
public static void main(String[] args) {
String[] values = {"00000000","0000000","000000",
"00000","0000","000","00","0",""};
String str = String.valueOf(1000);
System.out.println( values[str.length()] + str);
}
元ネタ「リファクタリング」
801デフォルトの名無しさん:2006/06/21(水) 23:09:13
>>799
C じゃないんだから、桁数を調べるなら Math.log10() を使えば
802でふぉるとの名無しさん:2006/06/22(木) 14:24:57
【課題】
日付を2つ入力して,その間に何日あるかを書き出すプログラム(Nannichi)を作れ。
実行例はつぎの通りである.
日付を2つ入力して下さい.

例を挙げますと・・・

何年? 2005

何月? 7

何日? 1

何年? 2006

何月? 7

何日? 1

日数は 365日です

このようになるプログラムらしいです。
先生の話がまったく理解できなかったため手も足も出ませんでした・・・。
どうぞよろしくお願いします。
803デフォルトの名無しさん:2006/06/22(木) 18:14:05
>>802
日付の範囲チェックとかしてないけど、とりあえず。
http://sourcepost.sytes.net/sourcepost/sourceview.aspx?source_id=27966
804デフォルトの名無しさん:2006/06/22(木) 19:02:42
c1.clear();
805デフォルトの名無しさん:2006/06/23(金) 14:38:10
JAVAの1.4での課題なんですが、コマンドプロンプトで実行したら、
@まず、適当に文字を入力させて【コントロール】+Zで終了Aテキストに保存[Y/N]でするかをきいてYならば保存名をつけさせる。Nならば次の処理へ
B保存しおわったらプログラムを終わるか同じように聞く。Yなら終わり、Nならまた聞くできないのでおしえてください。
806デフォルトの名無しさん:2006/06/23(金) 15:12:46
改行することから覚えろ
807デフォルトの名無しさん:2006/06/23(金) 15:24:35
初めて書き込みます。
よろしくお願いします。
【 課題 】Java Sound API のMixer を使い音声を合成するプログラムを作れ。
【 補足 】Java SoundのMixer の synchronize() メソッドを使い
      複数のオーディオデータを同期させて合成した音声を再生できれば
      いいみたいです。
808デフォルトの名無しさん:2006/06/23(金) 16:33:21
806すいません。今、ケータイなんでちゃんと改行できません。
809デフォルトの名無しさん:2006/06/23(金) 18:51:27
ケータイでもちゃんと改行はできるだろ・・・
810100%素人Java:2006/06/23(金) 21:53:50
>>805
http://sourcepost.sytes.net/sourcepost/sourceview.aspx?source_id=27969
一応作ってみたけど・・・処理内容取り違えてたらスマソ
811デフォルトの名無しさん:2006/06/24(土) 00:30:19
【 課題 】コマンドライン引数で年月日をYYYY/MM/DDで指定し、
      それをYYYY年MM月DD日の形式で表示するプログラムを作成してください。
      
【 補足 】問題文は上の通りなのですが、コマンドプロンプトで入力する際に、
      YYYY/MM/D、YYYY/M/DDの場合、YYYY/M/Dの場合もそれぞれ
      YYYY年MM月D日、YYYY年M月DD日、YYYY年M月D日で表示させなければいけません。
      
812デフォルトの名無しさん:2006/06/24(土) 03:47:29
import java.util.regex.*;
class Sample{
public static void main(String args[]){
Pattern pattern = Pattern.compile("/");
String[] strs = pattern.split(args[0]);
System.out.println(strs[0]+"年"+strs[1]+"月"+strs[2]+"日");
}
}
813デフォルトの名無しさん:2006/06/24(土) 14:44:02
あみだくじを表示するプログラムを作りなさい。ただし、あみだくじの形は、縦棒の数、縦棒の長さ(y座標数)、
横棒の場所(x座標とy座標)をキーボードから入力。横棒は縦棒を飛び越。また、えて引けないある縦棒の同じy座標の
左右に横棒が指定された場合と横棒の指定場所が座標最大値を超える場合は、「指定した座標は無効です。」と出力し、
再び入力を催促しなさい。ヒント:縦棒を10本以下、縦棒の長さ(y座標数)を10以下とする。x座標とy座標を行と列方向とする
2次元配列を用意し、そこに横棒の有無を1と0で格納する。
教えてください!!
814デフォルトの名無しさん:2006/06/24(土) 14:46:24
あみだくじを表示するプログラムを作りなさい。ただし、あみだくじの形は、縦棒の数、縦棒の長さ(y座標数)、
横棒の場所(x座標とy座標)をキーボードから入力。横棒は縦棒を飛び越えて引けない。また、ある縦棒の同じy座標の
左右に横棒が指定された場合と横棒の指定場所が座標最大値を超える場合は、「指定した座標は無効です。」と出力し、
再び入力を催促しなさい。ヒント:縦棒を10本以下、縦棒の長さ(y座標数)を10以下とする。x座標とy座標を行と列方向とする
2次元配列を用意し、そこに横棒の有無を1と0で格納する。
教えてください!!
815デフォルトの名無しさん:2006/06/24(土) 14:47:39
>>813
テンプレ使え。>>1嫁。一度文章読み直してから書け。ちゃんと改行しろ。
816デフォルトの名無しさん:2006/06/25(日) 02:54:58
なんでテンプレ使えないんだ・・
817デフォルトの名無しさん:2006/06/25(日) 12:18:38
758 :デフォルトの名無しさん :2006/06/24(土) 13:49:59
あみだくじを作りたいんですが、うまくできません。
どうしたら、いいんですか??
818デフォルトの名無しさん:2006/06/26(月) 21:27:13
nに入力された数字列の中で最も多く出現する数字を返すメソッドcountの中身を埋めなさい。ただし、最も多く出現する数字が複数ある場合、位が小さい数字を優先的に返すことにする。
例えば、nが123331の場合、3が3個、1が2個、2が1個出現するので返す値は3となる。
また、nが245654の場合、4と5が2個、2と6が1個出現する。この場合4の方が小さい位で出現しているので返す値は4となる。

public class NumCounter{
public int count(int n){
int[] a=new int[10];
for(int i=0;i<10;i++)a[i]=0;
r=n%10;
n=n/10;
a[r+1]++;
int ans=0;
for(int i=0;i<10;i++)if(a[i]>ans)ans=a[i]
return ans;
}
}
ここまではやったのですが
最も多く出現する数字が複数ある場合、位が小さい数字を優先的に返すことにする。
が書けません。どうすればいいでしょうか
819デフォルトの名無しさん:2006/06/26(月) 21:38:52
>>818
public static int count(int n){
int[] a = new int[10];
int r, j, tmp1, tmp2;
for (int i = 0; i < 10; i++) a[i] = 0;
while (n > 0) {r = n % 10;n = n / 10;a[r]++;}
for (j = 1, tmp1 = a[0], tmp2 = j; j < 10; j++) {
if(a[j] > tmp1) {tmp1 = a[j];tmp2 = j;}}
return tmp2;}}
820デフォルトの名無しさん:2006/06/26(月) 21:40:57
>>818
適当に作ってみた。
変なとこあってもしりません。
public int count(int n) {
// TODO 自動生成されたメソッド・スタブ
String strNum = String.valueOf(n);
int[] a = new int[strNum.length()];
int[] num = new int[] { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 };
int ans, max;
for (int i = 0; i < a.length; i++) {
a[i] = n % 10;
n = n / 10;
}
for (int i = 0; i < 10; i++) {
for (int j = 0; j < a.length; j++) {
if (a[j] == i) {
num[i]++;
}
}
}
ans = 0;
max = num[0];
for (int i = 1; i < 10; i++) {
if (max < num[i]) {
max = num[i];
ans = i;
}
}
return ans;
}
821デフォルトの名無しさん:2006/06/27(火) 19:53:49
>>819-820
今日見させてもらったがあんたら問題文理解してないだろ
nが245654の場合、4と5が2個、2と6が1個出現する。この場合4の方が小さい位で出現しているので返す値は4となる。だぞ
だが>>820、全ての桁の数字を配列に格納するのはナイスだ使わせてもらった

public class NumCounter{
public int count(int n){
int z=n;
int keta=0;
while(z>0){z/=10; keta++;}
int[] a=new int[keta];
int[] num=new int[] {0,0,0,0,0,0,0,0,0,0};
for(int i=0; i<a.length; i++){a[i]=n%10; n/=10;}
for(int i=0; i<10; i++){
for(int j=0; j<a.length; j++){
if(a[j]==i)num[i]++;
}
}
int ans=0,max=num[0];
for(int i=0;i<10;i++){
if(num[i]>max){max=num[i]; ans=i;}
if(num[i]==max){
for(int h=0;h<a.length;h++){
if(a[h]==i){ans=i;break;}
if(a[h]==ans)break;
}
}
}
return ans;
}
}
これで見てくれ>>821
822デフォルトの名無しさん:2006/06/27(火) 20:54:00
何このバカ
823デフォルトの名無しさん:2006/06/27(火) 22:34:10
【 課題 】以下のテキストファイルに対するThorndikeTableをつくり、結果を印字せよ。
ただし、印字用のLaTeXコードは無視する。
ttp://www.katsakuri.sakura.ne.jp/src/up14056.txt.html
例)
frequency  word
9996     software  ←新しい単語が出る度に検出、最終的に数が多いものからソートする
 ・       ・
 ・       ・
 ・       ・
56      engineering

注意:
1)件のファイルは、デバッグでは使用できない。
2)複数形の語は単数形の語として集計する。また過去形、過去分詞は現在形として集計する。
文頭のために大文字表示されている文字は、小文字表示に直して処理すること。
数字だけの語は対象外とする。
【 期限 】7/5 22:00まで
【 補足 】丸投げです。よろしくお願いします
824デフォルトの名無しさん:2006/06/27(火) 23:07:43
>>821
よくわからんがとりあえず819をお前の言うn=245654にしたら4が返ってきたぞ。
825デフォルトの名無しさん:2006/06/27(火) 23:15:39
>824
よく分からないなら書くな。
例)254645
5が正解。
826デフォルトの名無しさん:2006/06/27(火) 23:19:13
825 名前:デフォルトの名無しさん[sage] 投稿日:2006/06/27(火) 23:15:39
>824
よく分からないなら書くな。
例)254645
5が正解。
827デフォルトの名無しさん:2006/06/27(火) 23:24:31
>>825
頭大丈夫?
828デフォルトの名無しさん:2006/06/27(火) 23:26:45
>>825
>>821で4を返すって言ってるぞ
829デフォルトの名無しさん:2006/06/27(火) 23:37:12
>>828
よく見ろ。数字ちがうだろ?
この場合5が1の位なんだから5が返るのが正解だろ。
830828:2006/06/27(火) 23:42:37
ああ、値じゃなくて位か。
勘違いしてた。
831デフォルトの名無しさん:2006/06/27(火) 23:50:57
で?>>819でも>>820でも同じじゃん
832デフォルトの名無しさん:2006/06/28(水) 00:22:19
>>819は3434でやってみろ3が返ってくる
個数が同じ場合"位が小さいほう"じゃなくて、"数字が小さいほう"が返ってくるだけだ
>>820も同じことやってる
なにこのバカども
833デフォルトの名無しさん:2006/06/28(水) 00:24:58
>>819-821
一応nが負の場合も考慮してみた。

public static int count(int n) {
 int[] first = new int[10];
 String str = Integer.toString(n);
 for (int i=0; i<10; i++) {
  first[i] = str.lastIndexOf(Integer.toString(i));
 }
 int[] count = new int[10];
 do {
  count[n%10]++;
  n /= 10;
 } while (n!=0);
 int result = 0;
 for (int i=0; i<10; i++) {
  if (count[i]>count[result] ||
    count[i]==count[result] && first[i]>first[result]) {
   result = i;
  }
 }
return result;
}
834デフォルトの名無しさん:2006/06/28(水) 00:27:09
間違えた。

int[] count = new int[10];
int temp = Math.abs(n);
do {
 count[temp%10]++;
 temp /= 10;
} while (temp!=0);
835デフォルトの名無しさん:2006/06/28(水) 00:53:16
>>832
顔真っ赤w
836デフォルトの名無しさん:2006/06/28(水) 00:55:16
去年に比べて回答者のレベルが急激に下がってるな
あのバカのせいでまともに答える奴がいなくなっちゃったか
837デフォルトの名無しさん:2006/06/28(水) 00:57:16
質問者のが先に答え出しちゃって回答者もバカ揃いだな
838デフォルトの名無しさん:2006/06/28(水) 01:00:08
バレてないとでも思ってるのかなぁ
おちょくられてるのに
839デフォルトの名無しさん:2006/06/28(水) 01:09:37
840デフォルトの名無しさん:2006/06/28(水) 01:11:22
>>823
単数化も自力で実装するの?
841デフォルトの名無しさん:2006/06/28(水) 02:01:26
>>839
テンプレも使えないバカが見事におちょくられたってことだなw
842823:2006/06/28(水) 02:03:11
>>840
全部自分で実装しないといけないっぽいです
結構難しいって言われました…
843デフォルトの名無しさん:2006/06/28(水) 02:06:20
>>839
お前>>818のときと比べて口調変わりすぎw
844デフォルトの名無しさん:2006/06/28(水) 02:09:05
上から目線の質問者(笑)
845デフォルトの名無しさん:2006/06/28(水) 02:19:49
>>839
取りあえず>>821のバグ直したら?
846デフォルトの名無しさん:2006/06/28(水) 02:49:05
>>842
単語の切り出しは前に答えた気がするので、このスレの上の方にあるはず。
語形変化は、不可算名詞、不規則変化する単語、規則変化する単語などを個別に調べて、標準形に直す。
なお、単語のリストは自分でつくるか、ネット上にいろいろある英語辞書からとってくるかする。
単語のリストを集計してソート。
というステップで大体できるんじゃないか。

標準形に戻す部分を完全にするのはまず無理だろうから、
課題文の範囲で問題でない程度にごまかせば?
847823:2006/06/28(水) 04:11:24
>>846
やっぱり難しそうですね…自力で解くしかないでしょうかorz
848デフォルトの名無しさん:2006/06/28(水) 09:53:50
>>838
>>841
>>819-820は俺がやったとこまでを載せただけなのか?それでおちょくられてたのか?
ていうかテンプレってなんだ>>1か?

>>845
確かめたけどバグないよ通ったよ
849デフォルトの名無しさん:2006/06/28(水) 12:04:06
>>848
理解できて無いようですね
学生生活楽しんで就職してから悩みなさい
850デフォルトの名無しさん:2006/06/28(水) 17:01:37
>>847
語形変化する単語のリストさえなんとかすれば、面倒なだけでそれほど難しくはないと思う。
あと1週間あるんだから、クラスメイトでも誘って頑張ってみれば?
851デフォルトの名無しさん:2006/06/28(水) 18:20:18
>>847
とりあえずかなりテキトーに数えるだけなら
public static void main(String[] args) throws Exception {
File file = new File("long.txt");
BufferedReader reader = new BufferedReader(new FileReader(file));

String line = null;
StringBuilder builder = new StringBuilder();
while ((line = reader.readLine()) != null) {
builder.append(line);
}

String to = builder.toString();

Map<String, Integer> map = new HashMap<String, Integer>();
StringTokenizer tokenizer = new StringTokenizer(to);
while (tokenizer.hasMoreTokens()) {
String token = tokenizer.nextToken();

if (map.containsKey(token)) {
map.put(token, map.get(token) + 1);
} else {
map.put(token, 1);
}
}

Iterator<Map.Entry<String, Integer>> itr = map.entrySet().iterator();
while (itr.hasNext()) {
Map.Entry<String, Integer> entry = itr.next();
System.out.println(key + " : " + entry.getValue());
}
}
852851:2006/06/28(水) 18:23:43
でも、コレだと記号とかハイフネーションとか全然考慮してない。
このへんの判断ロジックがちょっと面倒なだけで
辞書作りはひたすら手間だけかな。
853820:2006/06/28(水) 18:25:55
問題勘違いしてた。値と位。
スマソ。
854デフォルトの名無しさん:2006/06/28(水) 19:05:56
>>818
遅蒔きながら俺もやってみた

static int count(int n) {
String str = String.valueOf(Math.abs(n));
int[] count = new int[10];
int max = 0, num = 0;
for(int i=0; i<str.length(); i++) {
int tmp = str.charAt(i) - '0';
count[tmp]++;
if (max <= count[tmp]) {
max = count[tmp];
num = tmp;
}
}
return num;
}
855デフォルトの名無しさん:2006/06/28(水) 19:46:50
String.valueOf(Math.abs(n))
がわからん、まだ習ってない
こんなの使って提出したらバレる
856デフォルトの名無しさん:2006/06/28(水) 19:49:25
だったら最初から条件書いとけやカス
857デフォルトの名無しさん:2006/06/28(水) 19:50:19
>>855
じゃ、これで

if (n < 0) n = -n;
String str = String.valueOf(n);
858デフォルトの名無しさん:2006/06/28(水) 19:53:23
>>854
>>821に比べると随分洗練されてるね
859デフォルトの名無しさん:2006/06/28(水) 19:55:34
>>855
随分上から目線だと思ったらやっぱりバカ学生かよ( ´_ゝ`)
860デフォルトの名無しさん:2006/06/28(水) 20:01:44
じゃぁ、メソッドは使っちゃいけない
861854=857:2006/06/28(水) 20:07:27
nがInteger.MIN_VALUE (-2147483648) だとちゃんと動かないのは秘密だぞw
862デフォルトの名無しさん:2006/06/28(水) 20:30:16
for (int i = (n < 0) ? 1 : 0; i < str.length(); i++)

でいいんじゃね?
863デフォルトの名無しさん:2006/06/28(水) 20:46:39
>>862
ああ、それでよさげだね。
でも 「こんなの(三項演算子)まだ習ってない、こんなの使って提出したらバレる」 とか言ってきたりw
864デフォルトの名無しさん:2006/06/28(水) 20:48:58
流石にそれは・・・ありえるなw
865デフォルトの名無しさん:2006/06/28(水) 21:02:35
こんなの(三項演算子)まだ習ってない、こんなの使って提出したらバレる
866デフォルトの名無しさん:2006/06/28(水) 21:05:35
もういいや、使えないのばっかだし、もう提出したし
867デフォルトの名無しさん:2006/06/28(水) 21:50:00
バカ学生の限界だな
868823:2006/06/28(水) 21:57:10
>>850
ひとりぼっちのボク(´・ω・`)

>>851
ありがとうございます!なんとか頑張ってみます
869デフォルトの名無しさん:2006/06/29(木) 00:43:53
【 課題 】10 円玉,50 円玉,100 円玉がそれぞれ十分多くある.
これらのうちから何個か (0 個のものがあってもよい)
取り出して,その合計金額を 1000 円とする組合せが何通り
あるかを for 文を用いて数え上げ,画面に表示せよ.
【 用語 】特になし
【 期限 】7月1日
【 Ver  】1.4.2
【 補足 】宜しくお願いします。
870デフォルトの名無しさん:2006/06/29(木) 00:58:15
>>869
class Test{
public static void main(String[] args){
for (int i = 0; i <= 1000; i+= 10)
for (int j = 0; j <= 1000; j+= 50)
for (int k = 0; k <= 1000; k+= 100)
if (i + j + k == 1000)
System.out.println("10円玉:" + i/10 + "枚 50円玉:" + j/50 + "枚 100円玉:" + k/100 + "枚");
}

}
871870:2006/06/29(木) 01:00:55
数え上げろだからカウントかますのが抜けてた
スマソ

class Test{
public static void main(String[] args){
int cnt = 0;
for (int i = 0; i <= 1000; i+= 10)
for (int j = 0; j <= 1000; j+= 50)
for (int k = 0; k <= 1000; k+= 100)
if (i + j + k == 1000){
System.out.println("10円玉:" + i/10 + "枚 50円玉:" + j/50 + "枚 100円玉:" + k/100 + "枚");
cnt ++;
}

System.out.println(cnt + "通り");
}

}
872デフォルトの名無しさん:2006/06/29(木) 02:08:51
【 課題 】「月曜から金曜までの勉強時間を入力して、総勉強時間を表示するプログラム」を作成する。
ただし、・勉強時間の入力は、曜日ごとに「開始時間」と「終了時間」を分単位で入力する。
分の切捨てや切り上げは行わない、総勉強時間は「何時間何分」という形で表示すること。
総勉強時間を表示した後、その結果を30分単位で四捨五入して時間に直し、以下のようなメッセジーを出す。
5時間以下の場合
今週の総勉強時間は約 + benkyoJikan + 時間です。このままだとやばいかも。。。
benkyoJikan は総勉強時間を30分単位で四捨五入した時間数にする
6時間以上10時間未満の場合
今週の総勉強時間は約 + benkyoJikan +時間です。もう少し頑張ろうか!"
benkyoJikan は総勉強時間を30分単位で四捨五入した時間数にする
【 用語 】なし
【 期限 】6/30日の御前8時まで
【 Ver  】どれでも大丈夫だと思います
【 補足 】制御の組み合わせのプログラムらしいんですけど、全然判らないので丸投げです。
よろしくお願いします
873デフォルトの名無しさん:2006/06/29(木) 08:25:04
>>872
import java.io.*;
class A120 {
int main;
public static void main(String[] args) {
String[] days = {"月", "火", "水", "木" , "金"};
int totalTime = 0;
try {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
for (int i = 0; i < 5; i++) {
System.out.print(days[i] + "曜日の開始時刻 ");
String t1 = br.readLine();
System.out.print( "    終了時刻 ");
String t2 = br.readLine();
String[] t1s = t1.split(":");
String[] t2s = t2.split(":");
int h1 = Integer.parseInt(t1s[0]); int m1 = Integer.parseInt(t1s[1]);
int h2 = Integer.parseInt(t2s[0]); int m2 = Integer.parseInt(t2s[1]);
int time = (h2*60 + m2) - (h1*60 + m1);
totalTime += time;
}
System.out.println("総勉強時間は " + totalTime/60 + " 時間" + totalTime%60 + " 分です。");
int benkyoJikan = (totalTime+30)/60;
if (benkyoJikan <= 5) {
System.out.println("今週の総勉強時間は約 " + benkyoJikan + " 時間です。このままだとやばいかも。。。");
} else if(benkyoJikan <= 10) {
System.out.println("今週の総勉強時間は約 " + benkyoJikan + " 時間です。もう少し頑張ろうか!");
}
} catch (IOException e) {} catch (NumberFormatException e) {System.err.println("時刻が不正です");}
}
}
874デフォルトの名無しさん:2006/06/29(木) 09:51:07
【 課題 】1.画面上で5回クリックする。
5回目に5つのクリック点を(クリックした順に)結ぶ折れ線を表示する。

2.海面近くを漂う(上から見えない)機雷を上空から爆撃し除去する。
機雷周辺距離20mに爆弾を落とすと機雷が爆発して取り除ける(機雷周辺20mが赤くなる)。
機雷から20〜50mの範囲に爆弾が落ちると落ちた地点を中心に黄色い円ができる。
機雷は流され少しずつランダムに動く。

(機雷と着弾点の間の距離を求めるのに3平方の定理と、Math.sqrt(距離の自乗)を使用)

3.複数(3つ)の機雷があるケースをシミュレーションするため、機雷クラスを使う方法を検討する。
次に機雷クラスの配列を使ったプログラムを示す。ただし、プログラムでは1つの機雷しか生成していない。
これを変更し4つの機雷をシミュレートできるようにせよ。


【 用語 】特になし
【 期限 】7月1日
【 補足 】丸投げです。お願いします。
875デフォルトの名無しさん:2006/06/29(木) 10:32:25
>>874
めんどくさいから誰もやらない予感
876デフォルトの名無しさん:2006/06/29(木) 11:07:54
>>738とか>>874とか
無視されるのが分らないんだろうか

あと高慢でバカな>>821とか
877805:2006/06/29(木) 13:16:29
810さん
見れないんですが
878デフォルトの名無しさん:2006/06/29(木) 15:14:21
>>877
おせーよカス
879877:2006/06/29(木) 16:15:47
カスでご・め・んФwФ
880デフォルトの名無しさん:2006/06/29(木) 18:40:03
いつまでもネチネチしてんじゃねーぞー
881デフォルトの名無しさん:2006/06/29(木) 19:27:03
ネチネチ。
882デフォルトの名無しさん:2006/06/29(木) 21:29:07
【 課題 】
今年2006年のカレンダーを表示するプログラムを作成してください。
目安は20〜30行です。
【 用語 】なし
【 期限 】なし
【 Ver  】どれでも
【 補足 】以下のようにコマンドプロンプトで月ごとに縦に表示させてください

     1月
日 月 火 水 木 金 土
 1 2 3 4  5  6 7 
 8 9 10 11 12 13 14
15 16 17 18 19 20 21
22 23 24 25 26 27 28
29 30 31
      ・
      ・
      ・
      ・
883デフォルトの名無しさん:2006/06/29(木) 22:41:08
【 課題 】n以下の素数を全て見つけ出し、画面上に表示するプログラムを作成せよ。
ただし、必ず配列と繰り返し文(for,while,do-whileの何を使ってもよい)を用いること。
なお、nはコマンドラインから入力できるようにすること。

【 期限 】7月1日
【 補足 】丸投げです。よろしくお願いします。
884デフォルトの名無しさん:2006/06/30(金) 00:18:49
>>874
1だけ

import java.awt.*;
import java.awt.event.*;

import javax.swing.*;

public class Report56_874_1 extends JFrame {

private int maxCount = 5;
private int[] xpoints = new int[maxCount];
private int[] ypoints = new int[maxCount];

private int counter = 0;

private Color lineColor = Color.BLACK;
private int radius = 3;

public Report56_874_1() {
super();
// マウスクリックの処理
addMouseListener(new MouseAdapter() {
public void mouseClicked(MouseEvent e) {
addPoint(e.getPoint());
repaint();
}
});
}
885デフォルトの名無しさん:2006/06/30(金) 00:20:04
つづき

// 点の追加
private void addPoint(Point point) {
if (counter >= maxCount) {
counter = 0;
}
xpoints[counter] = point.x;
ypoints[counter] = point.y;
counter++;
}

// 多角形の描画
public void paint(Graphics g) {
g.setColor(getBackground());
g.fillRect(0, 0, getWidth(), getHeight());

g.setColor(lineColor);
for (int i = 0; i < counter; i++) {
g.fillOval(xpoints[i] - radius, ypoints[i] - radius, radius * 2, radius * 2);
g.drawPolyline(xpoints, ypoints, counter);
}
}

public static void main(String[] args) {
JFrame frame = new Report56_874_1();
frame.setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE);
frame.setSize(400, 400);
frame.setVisible(true);
}
}
886デフォルトの名無しさん:2006/06/30(金) 00:23:53
あ、5回目に表示だからちょっと違ったな。
2と3は所与の機雷クラスがあるはずなので放置。
887Javaはイイ:2006/06/30(金) 00:35:25
>>874
http://www.wikiroom.com/java/index.php?%A5%BD%A1%BC%A5%B9%C5%BD%C9%D5%A4%B1#content_1_0
簡単そうだったので課題1のみ作ってみました。
残りは時間がないので気が向いたら作ります。










遅かった orz
888672:2006/06/30(金) 01:24:59
実行してみたんだけどSystem.out.printlnの行が表示されない…
やっぱいまいち理解できてないや…
889デフォルトの名無しさん:2006/06/30(金) 01:40:27
public class a {
public static void main (String[] args){
for (int N = 1 ; N <= 100000000; N*=10){
double e = 1.0f;
for (int i = 0; i < N; i++) e = e * (1.0+1.0/(double)N);
System.out.println(e);
}
}
}
890デフォルトの名無しさん:2006/06/30(金) 14:04:08
【 課題 】各自、独自の設計によって動的で対話型のJavaアプレットを作成せよ。作成にあたっての構想、設計の過程
、使用したクラスライブラリなどの説明を含め、プログラムの構成や動作を他人が理解できるように解説せよ。
【 用語 】特にないかと・・・
【 期限 】 7月3日 13時30分
【 Ver  】 得にないです。
【 補足 】まだ初歩的なことしか習っていないのでとても単純な対話的な動作でお願いします。
例えばボタンを押すとボールが回転してもう1回ボタンを押すとボールが止まるみたいな感じでお願いします。
891デフォルトの名無しさん:2006/06/30(金) 14:10:20
テンプレ使ってるのは評価できるんだが
もうちょっと詳しく書いてくれよ・・
892デフォルトの名無しさん:2006/06/30(金) 16:02:34
すみません。もう少し詳しく書きます。

スタートボタンを押すとボール(丸)が回転し、ストップボタンを押すとボールの回転が止まるって
いうプログラムを作っているのですけどどうしてもうまくいかなくて・・・
ボールの色の指定もボタン操作でできればお願いします。
893デフォルトの名無しさん:2006/06/30(金) 16:30:36
int n=Integer.parseInt(args[0]);
int m=4655-n;
int[] a={500,100,50,10,5};
int[] b={7,7,7,7,7};
for(int i=0;i<5;i++){
while(m>0 || b[i]>0){b[i]--; m-=a[i];}
}
System.out.printf("支払う金額%5d円%n残った硬貨%n",n);
for(int i=4;i>=0;i--)System.out.printf("%3d円%2d枚%n",a[i],b[i]);
System.out.println("使用した硬貨");
for(int i=4;i>=0;i--)System.out.printf("%3d円%2d枚%n",a[i],7-b[i]);
System.out.printf("%3d円%2d枚%n",a[i],b[i]);



for(int i=4;i>=0;i--)System.out.printf("%3d円%2d枚%n",a[i],b[i]);
のiに対してシンボルを見つけられませんてエラー出てくるのだけど何がおかしいですか?
894デフォルトの名無しさん:2006/06/30(金) 16:32:33
↑なんでもありません
895851:2006/06/30(金) 17:33:56
>>892
回転って、自転してるのか、円運動を描くのか、とかあるけどどんな感じだい?
単色のボールだと、自転してる場合は表現に困るんだが。
896デフォルトの名無しさん:2006/06/30(金) 17:42:49
なんか模様があるのかね
897デフォルトの名無しさん:2006/06/30(金) 19:10:09
>>892
なにがうまくいかないのか、その説明ではさっぱり。
ボタンなしでボールが回りっぱなしなら作れるの?
898Javaはイイ:2006/06/30(金) 22:38:25
>>882
作ろうかと思ったけれども、日付関係のサンプルを検索したら似たようなのを見つけたのでそのURLを
http://www.stackasterisk.jp/tech/java/javaPractice06_06.jsp
899890:2006/07/01(土) 00:33:52
円運動をしての回転です。度々すみません・・・
よろしくお願いします。
900デフォルトの名無しさん:2006/07/01(土) 09:00:28
【 課題 】2〜1000までの素数を全て求めるプログラムを作成せよ
【 期限 】7月3日までです
【 補足 】繰り返し文((for,while,do-while)を用いて作成します。配列というやつはまだ
901900:2006/07/01(土) 09:02:13
すいません途中で書き込んじゃいました。
【 課題 】2〜1000までの素数を全て求めるプログラムを作成せよ
【 期限 】7月3日までです
【 補足 】繰り返し文((for,while,do-while)を用いて作成します。配列というやつはまだ
       習っていないので使用してはいけないです。
       お願いします
902デフォルトの名無しさん:2006/07/01(土) 09:18:18
じゃあコレクションフレームワークはいいんだな?
903901:2006/07/01(土) 09:23:26
>>902
コレクションフレームワークっていうのわかりませんが多分ダメです。
まだ授業で繰り返し文までしかやっていないのであまり難しいのはダメです。
繰り返し文までの範囲でお願いします
904デフォルトの名無しさん:2006/07/01(土) 09:28:01
繰り返し分までの範囲って言われても
あんたの受けてる授業の進度なんて知らんがなw
905デフォルトの名無しさん:2006/07/01(土) 09:33:39
>>901
もしかしてmainメソッド以外のメソッド使うなとか?
breakとかやった?
906デフォルトの名無しさん:2006/07/01(土) 09:42:54
>>901
class Prime {
public static void main(String[] args) {
boolean flag;
for (int i = 2; i <= 1000; i++) {
flag = true;
for (int j = 2; j < i; j++) {
if (i%j == 0) {
flag = false;
}
}
if (flag) {
System.out.println(i);
}
}
}
}
907デフォルトの名無しさん:2006/07/01(土) 10:07:44
>>906
2つめのループは j < i / 2 でよくない?
908901:2006/07/01(土) 10:10:11
>>903
まだif文とか繰り返し文までしかやってません。
>>904
多分main以外はダメです。breakはswitch文でやりました。
>>905
ありがとうございます!できました!
909906:2006/07/01(土) 15:15:14
>>906を改良してみた。
class Prime {
public static void main(String[] args) {
boolean flag;
for (int i = 2; i <= 1000; i++) {
flag = true;
for (int j = 2; j <= (int)Math.sqrt(i); j++) {
if (i%j == 0) {
flag = false;
break;
}
}
if (flag) {
System.out.println(i);
}
}
}
}
910909:2006/07/01(土) 15:15:57
名前間違えた
911デフォルトの名無しさん:2006/07/01(土) 15:27:29
【課題提示用テンプレ】

【 課題 】文字列1に対し、文字列2で指定した部分だけ抜き出す。

【 用語 】特にないです
【 期限 】7/1 土曜日(23:59まで)
【 Ver  】Eclipse 3.1

【 補足 】初歩的な内容ですみません。
例えば文字列1に「abcabcabc」を入力し、文字列2に「bc」と入力すると
「bcbcbc」と表示するようにしたいんです。
多分Stringを使って書けばいいと思うんですが、Stringの何を使えばいいのかわかりません。お願いします。
912890:2006/07/01(土) 16:49:36
わかりにくくなったのでまとめます。

【 課題 】各自、独自の設計によって動的で対話型のJavaアプレットを作成せよ。作成にあたっての構想、設計の過程
、使用したクラスライブラリなどの説明を含め、プログラムの構成や動作を他人が理解できるように解説せよ。
【 用語 】特にないかと・・・
【 期限 】 7月3日 13時30分
【 Ver  】 得にないです。
【 補足 】Javaアプレットでstartボタンを押すとボールが円運動をし、stopボタンで円運動を止める。

どうかよろしくお願いします。
913デフォルトの名無しさん:2006/07/01(土) 16:55:51
ん〜・・
ソースポストネットが落ちてるな
914デフォルトの名無しさん:2006/07/01(土) 17:51:17
>>912
ここで誰かが教えたら「独自」じゃなくなっちゃうから、
その課題の答えは教えようがない
915デフォルトの名無しさん:2006/07/01(土) 20:27:51
916890:2006/07/02(日) 00:07:17
>>914
テンプレ通りそのまま課題文を書いたので・・・補足に書いてある
[Javaアプレットでstartボタンを押すとボールが円運動をし、stopボタンで円運動を止める。]プログラム
も難しいでしょうか・・・
できればこちらでお願いします。
917デフォルトの名無しさん:2006/07/02(日) 01:10:46
【 課題 】ア)実行時に引数として英数文字からなる単語(文字列)を
        いくつか指定する.そのうち最も文字数の多い単語の文
        字数を表示するプログラムを作れ.

      イ)実行時に引数として英数文字からなる単語(文字列)を
        いくつか指定する.それらの単語を辞書式の順序に並べ
        替えて表示するプログラムを作れ.
【 期限 】7月3日(月)
【 Ver  】どれでもいけると思います。
【 補足 】丸投げです。よろしくお願いします。
918Javaはイイ:2006/07/02(日) 01:27:00
>>917
ア)の課題

public class Sample0005 {
  public static void main(String[] args) {
    int num = 0;

    if(args.length < 1) {
      System.out.println("英数字の単語を二つ以上入力してください。");
      System.exit(-1);
    }

    num = args[0].length();
    for(int i = 1; i < args.length; i++) {
      if(num < args[i].length()) {
        num = args[i].length();
      }
    }
    System.out.println("一番多い文字数は'" + num + "'です。");
  }
}
919Javaはイイ:2006/07/02(日) 01:42:27
>>917
イ)の課題

import java.util.*;
public class Sample0006 {
  public static void main(String[] args) {
    if(args.length < 1) {
      System.out.println("英数字の単語を二つ以上入力してください。");
      System.exit(-1);
    }

    Arrays.sort(args);
    for(String str : args)
      System.out.println(str);
  }
}
920デフォルトの名無しさん:2006/07/02(日) 10:07:56
【 課題 】 20個の20桁の整数の和を計算するプログラムを作成しなさい。
計算する際、適当な桁で整数を分割し、各桁の計算をそれぞれ別のスレッドで行いなさい。
最後にBigInteger型を用いて検算しなさい。
【 用語 】なし
【 期限 】7月3日午後11時まで
【 Ver  】どれでも
【 補足 】全然わからないので丸投げです。よろしくお願いします。
921デフォルトの名無しさん:2006/07/02(日) 20:14:52
ちょっとすれ違いかもしれませんがお願いします
【 課題 】人事管理システムのDB1〜4段階まであり、1段階目はjavaのみでDB設計
人事情報をDOSプロントから一覧表示登録、変更、削除する。(課題は1段階目まで
メモリテープル上に登録された情報をコンソールから入力し、メモリ上に登録し、一人分の人事情報登録をくり
返すことで複数の情報を登録、メモリ上に登録された情報をコンソールで指定したファイルに書き込める(常に新規作成する)
人事商法をコンソールで指定したファイルから読み込める、その他DBに登録する再の存在しない場合のエラー、入力時に未入力、重複だった場合のエラー処理
などがあります。(人事情報はarrayリストなどで作るらしい)
【 期限 】できれば7月第2週まで
【 Ver  】バージョンはないですがECLIPSEを使っての課題です
【 補足 】javaは一応情報系専門学校の1.2年でやってますが基本的なことだけ
WEBアプリ(DB)の課題もやったが正直教科書みながらだったんでほぼ初心者です。
3年で学科をかえたのですが、何故かこの科目のこの課題が成績に大きく関係あるので
参考にできそうなお勧めの参考書やHPなどがありましたらよろしくお願いします。
本屋などをみても似たようなテキストはあるのですがどれもWEB関係の本でしたので多少参考にはなった
のですがファイルの入出力、arrayリストなどで困っています。
922デフォルトの名無しさん:2006/07/02(日) 20:25:51
>>921
【初心者】Java質問・相談スレッド87【大歓迎】
http://pc8.2ch.net/test/read.cgi/tech/1151678944/
923デフォルトの名無しさん:2006/07/03(月) 09:18:30
javaのバージョンが無いってのはありえないんだが・・
924デフォルトの名無しさん:2006/07/03(月) 09:46:21
>>922
すみませんそちらで聞いてみます
>>923
すみません、バージョンの指定は特にしないってことです
925デフォルトの名無しさん:2006/07/03(月) 19:26:47
【 課題 】スモールコンパイラの制作で学ぶプログラムのしくみ
(ttp://www.gihyo.co.jp/books/support.php/4-7741-2177-0)
から source.zip をDLしてEclipse上で動かせ。
【 期限 】1週間
【 補足 】上の方で誰かが質問してますが別人です。多分同じ学校でしょうw
      パッケージ作ってそれぞれクラス作ってコピペで動くんですかね?
      分かる方お願いします
926 :2006/07/03(月) 23:47:26
927 :2006/07/03(月) 23:59:29
928 :2006/07/04(火) 00:00:13
929 :2006/07/04(火) 00:06:57
930 :2006/07/04(火) 01:08:27
 
931 :2006/07/04(火) 02:36:47
 
932 :2006/07/04(火) 02:37:29
 
933 :2006/07/04(火) 02:38:04
 
934 :2006/07/04(火) 02:40:01
 
935 :2006/07/04(火) 02:40:35
 
936 :2006/07/04(火) 03:45:08
937デフォルトの名無しさん:2006/07/04(火) 20:06:46
>918、919
違うんでわ?
938デフォルトの名無しさん:2006/07/04(火) 21:00:01
時給1000円でJava教えてくださるかたを募集します
場所 所沢(池袋・高田馬場から直通)

i−want−to−study−java@hotmail.co.jp
(アドレスは全角で書いてあるので半角に直してください)
よろしくおねがいします
939デフォルトの名無しさん:2006/07/04(火) 21:12:43
まじ?
940 :2006/07/04(火) 21:18:54
941 :2006/07/04(火) 21:58:01
942 :2006/07/04(火) 22:35:08
943 :2006/07/05(水) 00:09:50
944 :2006/07/05(水) 00:19:08
945 :2006/07/05(水) 00:41:52
946 :2006/07/05(水) 00:47:56
947 :2006/07/05(水) 00:53:28
948 :2006/07/05(水) 01:40:11
949 :2006/07/05(水) 01:42:35
950 :2006/07/05(水) 01:49:05
951 :2006/07/05(水) 02:12:26
952 :2006/07/05(水) 02:23:46
 
953 :2006/07/05(水) 02:27:12
954 :2006/07/05(水) 02:27:56
 
955 :2006/07/05(水) 08:13:17
956 :2006/07/05(水) 19:45:42
 
957 :2006/07/05(水) 19:46:55
 
958デフォルトの名無しさん:2006/07/05(水) 22:50:24
>>926-936,940-957
何がしたいんだ?
959デフォルトの名無しさん:2006/07/05(水) 23:08:42
バカにされた学生が荒らしてるんじゃないか
960デフォルトの名無しさん:2006/07/05(水) 23:17:46
納得した
961デフォルトの名無しさん:2006/07/05(水) 23:59:22
【課題提示用テンプレ】
【 課題 】マルバツゲームを作れ

【 期限 】明日
【 補足 】CP上ででキル奴作ればいいみたいですお願いします。
962 :2006/07/06(木) 02:13:15
963 :2006/07/06(木) 02:13:46
964 :2006/07/06(木) 02:17:07
965 :2006/07/06(木) 02:17:56
966 :2006/07/06(木) 02:19:07
967デフォルトの名無しさん:2006/07/06(木) 03:48:59
>>961
TicTacToe.javaをおまいのPCで検索しろ
968 :2006/07/06(木) 07:35:28
 
969 :2006/07/06(木) 07:38:15
 
970デフォルトの名無しさん:2006/07/06(木) 08:58:53
var point = new GLatLng(緯度1,経度1);
var distance = point.distanceFrom(new GLatLng(緯度2,経度2));

これで2地点の距離がdistanceに入るらしいのですが
どうやって使えばいいのでしょうか?
971デフォルトの名無しさん:2006/07/06(木) 10:22:26
>>970
Javascript は Web 制作板
次からこの注意書きテンプレに入れよーぜ
972デフォルトの名無しさん:2006/07/06(木) 14:37:46
【 課題 】コマンドラインで指定した回数分、2つの乱数の組x,yを発生させ、
      その乱数をもとに、円周率πを求めるプログラムPai.javaを作成せよ。

・乱数生成は、Math.random()を使用すること
・実行は、「java Pai 1000」のようにコマンドラインから引数として
 乱数の発生組数を入力するものとする
・プログラムは3つのメソッド(main()とrandomCheck()とlinelnput())からの構成のこと
・randomCheck()の動作は以下の通り
 (1)random()メソッドにより一組の乱数(x,y)を発生させる
 (2)(x,y)が円の中に入ってる場合はtrue、そうでない場合はfalseを返す
・linelnput()の動作は以下の通り
 (1)コマンドラインから1行読み取り
 (2)読み取った文字を整数に変換したものを返値として返す

【 期限 】7月7日
【 補足 】丸投げです。よろしくお願いします
973デフォルトの名無しさん:2006/07/06(木) 15:14:26
>>972
よくわからないが,モンテカルロ法で求めろってことなのか?
974デフォルトの名無しさん:2006/07/06(木) 17:41:10
【 課題 】文字列の単語の先頭を大文字、以降を小文字に変換する
      プログラムを作成せよ。
      例:mEはnow、computerをsTuDy中でござる
       →MeはNow、ComputerをStudy中でござる
【 用語 】とくになし
【 期限 】2006/07/13まで
【 Ver  】とくになし
【 補足 】大文字はtoUpperCase、小文字はtoLowerCaseを使えばできると思うのですが、
      単語をどうやって取り出し、先頭を判定するのかが分かりません。
      お願いします。
975デフォルトの名無しさん:2006/07/06(木) 18:49:16
976デフォルトの名無しさん:2006/07/06(木) 18:57:18
>>974
1文字ずつ置換してみた。これでも多分大丈夫。
http://sourcepost.sytes.net/sourcepost/sourceview.aspx?source_id=28020
977974:2006/07/06(木) 19:03:08
>>975
ありがとうございます。参考にしたいと思います。
978974:2006/07/06(木) 19:05:43
>>976
ありがとうございます。がんばりたいと思います。
979デフォルトの名無しさん:2006/07/06(木) 19:11:53
あーなるほどなぁ
なんか文字の比較って発想が出てこないんだよなぁ
980デフォルトの名無しさん:2006/07/06(木) 21:29:07
【 課題 】課題1、ボールを左右に大きく往復運動するようにしよう。
テーブル右端にきたら、落下するようにしよう。
課題2、上の往復運動を無限に繰り返す(for(;;)を使用)ようにしよう。
課題3、上の水平移動を、机の上をころがるボールと考え、右端に来たら落下させてみよう。
【 期限 】7月8日
【 Ver  】どれでもいけると思います。
【 補足 】丸投げです。お願いします。


981デフォルトの名無しさん:2006/07/06(木) 21:29:36
982デフォルトの名無しさん:2006/07/06(木) 21:31:20
983デフォルトの名無しさん:2006/07/06(木) 21:33:29
/*<applet code="Ball.class" width=300 height=300></applet>*/

import java.applet.*;
import java.awt.*;

public class Ball extends Applet implements Runnable{
int x;
Thread th;
public void start(){
th= new Thread(this);
th.start();
}

public void run() {
for(x=0; x<180; x++) {
repaint();

try{

Thread.sleep(100);

}catch(InterruptedException e) { }

}
}

public void paint(Graphics g) {
g.drawOval(x,90,20,20);
g.drawLine(0,110,200,110);
}
}
984デフォルトの名無しさん:2006/07/06(木) 21:35:07
>>983
980の参考プログラムです。
985デフォルトの名無しさん:2006/07/06(木) 21:37:41
986デフォルトの名無しさん:2006/07/06(木) 21:38:31
987デフォルトの名無しさん:2006/07/06(木) 21:42:01
988 :2006/07/07(金) 14:27:34
989デフォルトの名無しさん:2006/07/07(金) 14:31:29
990デフォルトの名無しさん:2006/07/07(金) 14:32:18
991デフォルトの名無しさん:2006/07/07(金) 14:34:02
992デフォルトの名無しさん:2006/07/07(金) 14:53:15
993デフォルトの名無しさん:2006/07/07(金) 14:54:56
994デフォルトの名無しさん:2006/07/07(金) 14:56:53
995デフォルトの名無しさん:2006/07/07(金) 14:57:43
996デフォルトの名無しさん:2006/07/07(金) 14:59:29
997デフォルトの名無しさん:2006/07/07(金) 15:17:21
 
998デフォルトの名無しさん:2006/07/07(金) 15:17:52
 
999デフォルトの名無しさん:2006/07/07(金) 15:24:10
 
1000デフォルトの名無しさん:2006/07/07(金) 15:24:33
次スレ
★★ Java の宿題ここで答えます Part 57 ★★
http://pc8.2ch.net/test/read.cgi/tech/1152253441/
10011001
このスレッドは1000を超えました。
もう書けないので、新しいスレッドを立ててくださいです。。。