★★ Java の宿題ここで答えます Part 55 ★★
レス数が1000を超えています。これ以上書き込みはできません。
0001デフォルトの名無しさん
2006/01/26(木) 22:23:291:問題文は自己省略せずに、直接全部貼り付けてください。
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/1133778112/
0002デフォルトの名無しさん
2006/01/26(木) 22:30:33【マウスで絵を描く】
【 課題 】画面分割>>980みたいな感じ、コンボボックスを右、左でマウスで
絵をかけるようにするコンボボックスは2つ用意し線の太さ、色を
変更する
【 期限 】来週土曜
【 補足 】とにかく、エラーがなく上で書いたことができればOKです。
色は3色くらい、線の太さも3種類くらいでお願いします
0003デフォルトの名無しさん
2006/01/26(木) 22:32:12【マウスで絵を描く】
【 課題 】フレームを2つに分割(前レスの>>980みたいな感じ)コンボボックスを右、左でマウスで
絵をかけるようにするコンボボックスは2つ用意し線の太さ、色を
変更する
【 期限 】来週土曜
【 補足 】とにかく、エラーがなく上で書いたことができればOKです。
色は3色くらい、線の太さも3種類くらいでお願いします
0004デフォルトの名無しさん
2006/01/26(木) 22:43:11スレ立てどうもです!
0005デフォルトの名無しさん
2006/01/26(木) 22:44:17何故「丸投げ」が好ましいのかと言うと、人のソースを読んで
それに修正を加えるのは、一から書くのより数倍大変になるのですね。
だから、少しでも自分でプログラムを書いてそれから出そうとするのは
余計なお節介どころか、絶対やって欲しくないお節介になってしまうのです。
0006デフォルトの名無しさん
2006/01/26(木) 23:26:06【 期限 】明日
【 補足 】丸投げ
0007デフォルトの名無しさん
2006/01/26(木) 23:52:56★★ Java の宿題ここで答えます Part 54 ★★
http://pc8.2ch.net/test/read.cgi/tech/1133778112/989
0008デフォルトの名無しさん
2006/01/27(金) 01:14:070009デフォルトの名無しさん
2006/01/27(金) 01:16:08【 期限 】できるだけ早くお願いします
【 補足 】丸投げです。よろしく
0010デフォルトの名無しさん
2006/01/27(金) 01:27:360011デフォルトの名無しさん
2006/01/27(金) 06:11:05【 期限 】出来るだけ早いとありがたいです。
【 補足 】183の場合 1の画像 8の画像 3の画像てな感じでお願いします。
0012デフォルトの名無しさん
2006/01/27(金) 10:58:49右側のある一定の場所から始まり、左側もある一定の場所まで行ったら、
右側の最初の位置に戻って文章を最初から描画したいのです。
どうやってもできないので、よろしくお願いします。
後流す文字は全角でお願いしますorz
期限が本日の放課後までなので、なるべく早くお願いしたいです・・
0013デフォルトの名無しさん
2006/01/27(金) 11:02:128.gifとか言う名前なんか?
>>12
意味不明なのだすが
0014デフォルトの名無しさん
2006/01/27(金) 11:14:04左の場所 右の場所
ス
スジャータが
スジャータが2時をお知らせ
スジャータが2時をお知らせします
ジャータが2時をお知らせします ス
が2時をお知らせします スジャータ
0015デフォルトの名無しさん
2006/01/27(金) 11:40:000016デフォルトの名無しさん
2006/01/27(金) 11:46:06何となく解るからいんじゃね
001711
2006/01/27(金) 12:26:06そうです。数字.gifです。8の場8.gifですね説明不足ですみません
0018デフォルトの名無しさん
2006/01/27(金) 12:52:410.3 0.5 0.2 3
(1.0、0)( 0.4 0.3 0.3 ) ※3は3乗
0.2 0.3 0.5
for文と配列のみで組むこと。
0020デフォルトの名無しさん
2006/01/27(金) 13:37:47並べてって何か指定されてる?
画像の大きさとか並べ方とか
0021デフォルトの名無しさん
2006/01/27(金) 15:10:37同じ大きさで画像横に3つ並べてです。
0022デフォルトの名無しさん
2006/01/27(金) 16:25:59(1)A店とB店のアイスの値段を入力して比較し、以下のように表示するプログラムを書け。
(画面表示例)
A店のアイス値段=○○○○
B店のアイス値段=○○○○
◇◇◇◇の方が△△△△より○○○円やすい。
(2)以下の仕様要求を実現するプログラムを書け。
仕様要求:0度から90度までのcos関数の値を画面に表示する。
(画面表示例)
x(度) cosx
0 *****
1 *****
2 *****
: :
: :
90 *****
(下に続きます)
0023デフォルトの名無しさん
2006/01/27(金) 16:27:40仕様要求:”textfile.txt”から検索したい文字列の出現場所(行番号、列番号)をすべて
”dataout.txt”に記録する。
ただし、検索したい文字列はコマンドラインから与えるものとする。
実行コマンドの例:
Z:¥(ファイル名)>java kadai10 textfile.txt 偏差値
実行結果はdataout.txtを開いて確認する。
(4) 以下の仕様要求にしたがって、systemtimeクラスを設計して、
これを用いた時間を設定と表示するプログラムを書け。
(仕様要求)
class systemtime {フィールド変数(初期値:時=-1、分=-1、秒=-1)
時間設定メソッド(設定値をチェック、不備の場合は変更しない。(エラーメッセージを表示))
時間表示メソッド(正しく設定された場合、「**時**分**秒です。」と表示する。
正しく設定されていない場合、「正しく設定されていません。」と表示する。)
}public class kadai4{public static void main(String args[])
{インスタンス生成
時間を設定
設定時間を表示}}
4.以下の仕様要求にしたがって、systemtimeクラスを設計して、
これを用いた時間を設定と表示するプログラムを書け。
(使用要求)
class systemtime {フィールド変数(初期値:時=-1、分=-1、秒=-1)
コンストラクタ(設定値をチェック、不備の場合は変更しない。(エラーメッセージを表示))
時間表示メソッド(正しく設定された場合、「**時**分**秒です。」と表示する。
正しく設定されていない場合、「正しく設定されていません。」と表示する。)
}public class kadai4{
public static void main(String args[]){
インスタンス生成、コンストラクタで初期化
設定時間を表示}}
■期限 1/30
■補足 丸投げです。申し訳有りませんが宜しくお願いします。
0024デフォルトの名無しさん
2006/01/27(金) 17:31:36バーボンハウスに捕まってた
今からやるわ
0025デフォルトの名無しさん
2006/01/27(金) 17:43:30(1)前スレッド779
http://pc8.2ch.net/test/read.cgi/tech/1133778112/779
これは値段が決め打ち。
入力するようにしたければ前スレ780を参考に入力部分を追加すればOK。
http://pc8.2ch.net/test/read.cgi/tech/1133778112/780
0026デフォルトの名無しさん
2006/01/27(金) 17:58:38import java.applet.Applet;
import java.awt.*;
import java.awt.event.*;
public class Sample extends Applet implements ActionListener{
TextField text;
Image img[] = new Image[3];
boolean ch=false;
public void init(){
setLayout(null);
text = new TextField();
text.addActionListener(this);
add(text);
text.setBounds(10,20,200,20);
}
public void paint(Graphics g){
if(ch==true){
for(int i=0;i<3;i++)
g.drawImage(img[i],i*100,100,100,100,this);
}
}
public void actionPerformed(ActionEvent e){
if(text.getText().equals("")==false){
String str = text.getText();
for(int i=0;i<3;i++)
img[i] = getImage(getDocumentBase(),str.charAt(i)+".gif");
ch=true;
text.setText(null);
repaint();
}
}
}
0027デフォルトの名無しさん
2006/01/27(金) 18:04:190028デフォルトの名無しさん
2006/01/27(金) 19:58:140029デフォルトの名無しさん
2006/01/27(金) 20:37:54なんか知らんがワロタ
0030ganma
2006/01/27(金) 21:20:18これを作ってください!お願いします。
【 期限 】1/30
0031デフォルトの名無しさん
2006/01/27(金) 21:52:34有難うございました
一つ質問なのですが3*3の9文字にする時はどのようにいじったらよろしいのですか?
0032デフォルトの名無しさん
2006/01/27(金) 22:03:32iとjでも使ってfor文2重にして座標指定でもしてちょ
0033デフォルトの名無しさん
2006/01/27(金) 22:27:39import java.applet.Applet;
import java.awt.*;
import java.awt.event.*;
public class Sample extends Applet implements ActionListener{
TextField text;
Image img[][] = new Image[3][3];
boolean ch=false;
public void init(){
setLayout(null);
text = new TextField();
text.addActionListener(this);
add(text);
text.setBounds(10,20,200,20);
}
public void paint(Graphics g){
if(ch==true){
for(int i=1;i<4;i++)
for(int j=1;j<4;j++)
g.drawImage(img[i][j],i*100,j*100,100,100,this);
} }
public void actionPerformed(ActionEvent e){
if(text.getText().equals("")==false){
String str = text.getText();
for(int i=1;i<4;i++)
for(int j=1;j<4;j++)
img[i][j] = getImage(getDocumentBase(),str.charAt(i)+".gif");
ch=true;
text.setText(null);
repaint();
} } }
0034前スレ944
2006/01/27(金) 22:28:12>>2-3
>>30
何度も同じこと書くなって・・・
ttp://sourcepost.sytes.net/sourcepost/sourceview.aspx?source_id=26905
ttp://sourcepost.sytes.net/sourcepost/sourceview.aspx?source_id=26906
ttp://sourcepost.sytes.net/sourcepost/sourceview.aspx?source_id=26907
0035デフォルトの名無しさん
2006/01/27(金) 22:28:41作ってみたんですがエラーは出ないのに実効ができません。すみませんですけど3*3も作ってくれませんか?
0036デフォルトの名無しさん
2006/01/27(金) 22:46:20>>33が作ってるがな
0037デフォルトの名無しさん
2006/01/27(金) 22:49:010038デフォルトの名無しさん
2006/01/27(金) 22:52:52public class Sample extends Applet implements ActionListener{
TextField text;
Image img[][] = new Image[3][3];
boolean ch=false;
public void init(){
setLayout(null);
text = new TextField();
text.addActionListener(this);
add(text);
text.setBounds(10,20,200,20);
}
public void paint(Graphics g){
if(ch==true){
for(int i=0;i<3;i++)
for(int j=0;j<3;j++)
g.drawImage(img[i][j],i*100,j*100+100,100,100,this);
}
}
public void actionPerformed(ActionEvent e){
if(text.getText().equals("")==false){
String str = text.getText();
for(int i=0;i<3;i++)
for(int j=0;j<3;j++)
img[i][j] = getImage(getDocumentBase(),str.charAt(i*3+j)+".gif");
ch=true;
text.setText(null);
repaint();
}
}
}
0039デフォルトの名無しさん
2006/01/27(金) 22:57:04有難うございました。
0040デフォルトの名無しさん
2006/01/27(金) 23:01:24まて
g.drawImage(img[i][j],i*100,j*100+100,100,100,this);
のiとjを入れ替えれ
0041デフォルトの名無しさん
2006/01/28(土) 13:44:18【 期限 】 29日昼
【 補足 】Integer.toString(int i, int radix)
Integer.parseInt(String s, int radix)のどちらかを使うみたいです。
入力文字数は3文字で出力はSystem.out.printlnでお願いします。
0042デフォルトの名無しさん
2006/01/28(土) 14:17:10まず(3)だけ
http://sourcepost.sytes.net/sourcepost/sourcedownload.aspx?source_id=26919
0043デフォルトの名無しさん
2006/01/28(土) 14:21:32// ASCIIDemo.java
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
/**
* @see ttp://www.shibu.jp/cppreference/ascii.html
*/
public class ASCIIDemo {
public static void main(String[] args) {
System.out.println( "exitを入力すると終了." );
while( true ) {
System.out.print( "> " );
try {
BufferedReader br = new BufferedReader( new InputStreamReader(System.in) );
String line = br.readLine();
if( line.equals( "exit" ) ) System.exit( 0 );
else if( line.length() != 1 ) throw new IllegalArgumentException( "入力文字は1文字で:" + line );
else {
int ascii = new Character(line.toCharArray()[0]).hashCode();
if( ascii > 127 ) throw new IllegalArgumentException( "ASCIIコードがありません:" + line );
else System.out.println( ascii );
}
} catch( IOException ioe ) {
ioe.printStackTrace();
} catch( IllegalArgumentException iae ) {
System.err.println( iae.getMessage() );
}
}
}
}
0044デフォルトの名無しさん
2006/01/28(土) 14:44:02(1.0)(0.6 0.4)3
(0.7 0.3) を計算し、”解は(○.△)です。”と
出力するプログラムを作成しなさい。
○と△は計算結果です。
(3は3乗するって意味です。)
【期限】30日
【補足】forと配列を使って作成して下さい。
出力はSystem.out.printlnでお願いします。
どうかよろしくお願いしますm(_ _)m
0045デフォルトの名無しさん
2006/01/28(土) 14:47:10(1.0)(0.6 0.4)3
(0.7 0.3)
どうかよろしくお願いしますm(_ _)m
0046デフォルトの名無しさん
2006/01/28(土) 15:13:31行列廚ウザス
0047デフォルトの名無しさん
2006/01/28(土) 15:27:01なのになんでできないのかね?
10分くらいしか考えてないんだろ
0048デフォルトの名無しさん
2006/01/28(土) 15:36:44ここで相談して御覧よ
http://www.ntv.co.jp/horitsu/
0049デフォルトの名無しさん
2006/01/28(土) 15:39:010050デフォルトの名無しさん
2006/01/28(土) 15:41:440051デフォルトの名無しさん
2006/01/28(土) 15:44:04005246
2006/01/28(土) 16:01:13別に質問者が自分で考えようが考えまいがそんなことはどうでもいい。
もうすでに答えを出しているのに、それに対して何のレスポンスもせず、
ただただ同じトーンで質問を投げてる、というのがすごく嫌。
0053>>41
2006/01/28(土) 16:22:45それ変換の方向が逆ではないかい?
// A.java
import java.io.IOException;
import java.io.BufferedReader;
import java.io.InputStreamReader;
public class A {
public static void main(String[] args) {
String str = null;
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
for(;;)
try {
System.out.print("ASCII値を入力してください> ");
str = br.readLine();
if ("".equals(str)) break; // 空の入力(改行のみ)で終了
int i = Integer.parseInt(str);
if ((i < 0) || (i > 127)) {
System.out.println("入力値(" + i + ")は適切なASCII値ではありません");
continue;
}
System.out.println(i + " -> " + (char) i);
} catch (NumberFormatException e) {
System.out.println("入力文字列(" + str + ")は数値ではありません");
} catch (IOException e) {
e.printStackTrace();
}
}
}
// 逆だとしたらこんな感じか?
0054デフォルトの名無しさん
2006/01/28(土) 16:39:34行列知らないけどWikipediaの公式参考に作ってみた
展開が間違ってたら直してくれ
public class Gyoretsu
{
public static void main(String[] args) {
double[] v = {1.0, 0.0};
double[][] m = {{0.6, 0.7}, {0.4, 0.3}};
for (int i = 0; i < 3; i++) v = calc(v, m);
System.out.println("解は(" + v[0] + " " + v[1] + ")です。");
}
private static double[] calc(double[] v, double[][] m) {
double[] r = new double[2];
r[0] = v[0] * m[0][0] + v[1] * m[0][1];
r[1] = v[0] * m[1][0] + v[1] * m[1][1];
return r;
}
}
005543
2006/01/28(土) 17:07:39>41をよく読んだらそうですね。。
0056デフォルトの名無しさん
2006/01/28(土) 17:14:18全然汎用的じゃないけど
public class Gyoretsu
{
public static void main(String[] args) {
int[] v = {1, 0};
int[][] m = {{6, 7}, {4, 3}};
for (int i = 0; i < 3; i++) v = calc(v, m);
System.out.println("解は(" + (v[0] * 0.001) + " " + (v[1] * 0.001) + ")です。");
}
private static int[] calc(int[] v, int[][] m) {
int[] r = new int[2];
r[0] = v[0] * m[0][0] + v[1] * m[0][1];
r[1] = v[0] * m[1][0] + v[1] * m[1][1];
return r;
}
}
0057デフォルトの名無しさん
2006/01/28(土) 18:07:56いくらなんでもそれは無理矢理過ぎ。
0058デフォルトの名無しさん
2006/01/29(日) 13:11:170059デフォルトの名無しさん
2006/01/29(日) 13:53:25先生言っとくわwwww
0060デフォルトの名無しさん
2006/01/29(日) 14:50:18針は時針,分針,秒針,タイマー針の4本とする.
タイマー針はマウスドラッグで動かせるものとし,設定時間(初期値は12:00にする)になったらアラーム表示をさせる.
【 期限 】1/31ですが、できるだけ早めにお願いいたします
【 補足 】24時間時計についてはこちらをご参照ください:http://www.imskk.com/24h/top.html
また、こちらのプログラムを利用していただければ、大きく手間が省けると思います。
http://sourcepost.sytes.net/sourcepost/sourceview.aspx?source_id=26927
0061デフォルトの名無しさん
2006/01/29(日) 15:48:57import java.io.InputStreamReader;
import java.util.Arrays;
/**
* 22の課題1.<br>
* Shopは前回のShopを使う.
*/
public class Kadai22_1 {
public static void main(String[] args) throws Exception {
Shop[] shops = new Shop[] { new Shop("A", 0), new Shop("B", 0) };
for (int i = 0; i < shops.length; i++) inputShopData(shops[i]);
printComp(shops);
}
private static void inputShopData(Shop shop) throws Exception {
System.out.print(shop.getName() + "店のアイス値段=");
String icePrice = new BufferedReader(new InputStreamReader(System.in)).readLine();
shop.setIcePrice(Integer.parseInt(icePrice));
}
private static void printComp(Shop[] shops) {
for (int i = 0; i < shops.length; i++)
System.out.println(shops[i].getName() + "店のアイスの値段="+ shops[i].getIcePrice());
Arrays.sort(shops);
Shop min = shops[0];
Shop max = shops[shops.length - 1];
System.out.println(min.getName() + "店の方が" + max.getName() + "店より"+ (max.getIcePrice() - min.getIcePrice()) + "円安い。");
}
}
0062デフォルトの名無しさん
2006/01/29(日) 15:53:00* 22の課題2.
*/
public class Kadai22_2 {
public static void main(String[] args) {
for (int i = 0; i <= 90; i++)
System.out.println(i + "\t" + Math.cos(i));
}
}
0063デフォルトの名無しさん
2006/01/29(日) 16:01:17import java.util.ArrayList;
/**
* 23の課題3
*/
public class Kadai23_3 {
public static void main(String[] args) throws Exception {
// args = new String[] { "textfile.txt", "偏差値" };
String textfile = args[0];
String keyword = args[1];
String dataout = "dataout.txt";
BufferedReader br = new BufferedReader(new FileReader(textfile));
BufferedWriter bw = new BufferedWriter(new FileWriter(dataout));
String s = null;
for (int i = 1; (s = br.readLine()) != null; i++) {
ArrayList list = new ArrayList(0);
searchIndexes(s, 0, keyword, list);
for (int j = 0; j < list.size(); j++) bw.write("行番号=" + i + "\t列番号="+ (((Integer) list.get(j)).intValue() + 1) + "\r\n");
}
br.close();
bw.close();
}
private static void searchIndexes(String target, int fromIndex,String keyword, ArrayList list) {
int index = target.indexOf(keyword, fromIndex);
if (index != -1) {
list.add(new Integer(index));
searchIndexes(target, ++index, keyword, list);
}
}
}
0064デフォルトの名無しさん
2006/01/29(日) 16:33:51課題4と課題(4)は別物として作るの?
それとも、一つでいいの?
あと、このsystemtimeクラスって1秒毎に秒数が自動でアップするような、
時計としての機能も要る?
それとも、設定されたときの時間をそのまま持っていればいいだけ?
あと、
>時間表示メソッド(正しく設定された場合、「**時**分**秒です。」と表示する。
>正しく設定されていない場合、「正しく設定されていません。」と表示する。)
ここで「正しく設定された場合」って、現在の設定時刻をチェックすればいいだけ?
つまり、
×正しく設定された場合
○正しく設定されている場合
でいいかな?
0065デフォルトの名無しさん
2006/01/29(日) 17:20:16ただし、画像は白黒のbmp画像で、埋め込むデータの容量はできるだけ大きくすること。
【 期限 】1月30日中にお願いします。
【 補足 】丸投げです、すいません。
画像に他のデータを埋め込むプログラムは初めてで全くわかりません。
難しいかもしれませんがよろしくお願いします。
0066デフォルトの名無しさん
2006/01/29(日) 17:27:11ststemtimeクラスは設定されたときの時間をそのまま持っていればいいだけ
だと思います。時計としての機能〜というのは聞いてなかったので。
>○正しく設定されている場合。こっちで良いと思われます。
済みません;お手数かけます;
0067デフォルトの名無しさん
2006/01/29(日) 18:38:06// SteganographDemo.java
import java.io.*;
public class SteganographDemo {
public static void main(String[] args) {
if( args.length != 2 ) usage();
else if( !args[0].endsWith( ".bmp" ) ) usage();
File bmpFile = new File( args[0] ); File inpFile = new File( args[1] );
FileInputStream fis = null; FileOutputStream fos = null;
try {
fos = new FileOutputStream( bmpFile, true );
fis = new FileInputStream( inpFile );
fos.write( "here".getBytes() );
for( int i; (i=fis.read()) != -1; ) fos.write( i );
System.out.println( "埋め込み完了..." );
} catch (FileNotFoundException e) {
e.printStackTrace();
} catch( IOException ioe ) {
ioe.printStackTrace();
} finally {
try {
if( fos != null ) fos.close();
if( fis != null ) fis.close();
} catch( IOException ioe ) {}}
}
public static void usage() {
System.err.println( "java SteganographDemo [bmp画像] [埋め込みデータ]" ); System.exit(0);
}
}
ひどく単純。後ろにくっつけるだけ。
取り出すときは「here」という文字列を手掛かりにすればいいようにしてみました(※取り出す機能はありません)。
ファイル偽装って昔流行ったよね、なにもかも懐かしい。
0068デフォルトの名無しさん
2006/01/29(日) 20:35:56様とかつけんでいいから「>>レス番号」という風にしてくれ。
0069デフォルトの名無しさん
2006/01/29(日) 20:51:44タイマー針をマウスドラッグで動かせるようにするにはどうすればいいんだろ?
思い付かないなあ。
0070javaです
2006/01/29(日) 21:04:40ただし、振り子の長さ は123cmとし、g=9.8 、初期角速度を w=0rad/sとする。
�@初期振幅 θ=0.01rad、刻み幅 hをT/10、T/20、T/100として5周期分の振幅波形をそれぞれ計算し、
理論と比較することで誤差を評価せよ。ただし、Tは周期である。
�A刻み幅 をT/100として、初期振幅 θと計算周期T”関係を考察せよ。
�B�@をルンゲクッタ法で計算し、オイラー法と比較せよ。
■期限 2/05
■補足 丸投げです。何もわからないんで宜しくお願いします。
0071デフォルトの名無しさん
2006/01/29(日) 21:43:27オイラー法とルンゲクッタ法についてのフォローは無しかよ。
0072デフォルトの名無しさん
2006/01/29(日) 23:18:07-9/2 -2
【 期限 】今から3時間以内であるとたすかります
0073デフォルトの名無しさん
2006/01/29(日) 23:28:41>>59
0074デフォルトの名無しさん
2006/01/29(日) 23:30:05import java.text.DecimalFormat;
public class Systemtime23_4 {
private int hh = -1;
private int mm = -1;
private int ss = -1;
public void setTime(int theHh, int theMm, int theSs) {
try {
this.validate(theHh, theMm, theSs);
this.hh = theHh;
this.mm = theMm;
this.ss = theSs;
} catch (Exception e) {
System.err.println(e.getMessage());
}
}
public void printTime() {
try {
this.validate(this.hh, this.mm, this.ss);
DecimalFormat df = new DecimalFormat("00");
System.out.println(df.format(this.hh) + "時" + df.format(this.mm)+ "分" + df.format(this.ss) + "秒です。");
} catch (Exception e) {
System.err.println("正しく設定されていません。");
}
}
private void validate(int theHh, int theMm, int theSs) throws Exception {
if (theHh < 0 || theHh >= 24) throw new Exception(theHh + "は正しい時ではありません。");
if (theMm < 0 || theMm >= 60) throw new Exception(theMm + "は正しい分ではありません。");
if (theSs < 0 || theSs >= 60) throw new Exception(theSs + "は正しい秒ではありません。");
}
}
0075デフォルトの名無しさん
2006/01/29(日) 23:32:50public class Kadai23_4 {
public Kadai23_4() {
}
public static void main(String[] args) {
Systemtime23_4 st = new Systemtime23_4();
st.setTime(2, 0, 40);
st.printTime();
}
}
0076デフォルトの名無しさん
2006/01/29(日) 23:36:48import java.text.DecimalFormat;
public class Systemtime23_5 {
private int hh = -1;
private int mm = -1;
private int ss = -1;
public Systemtime23_5(int theHh, int theMm, int theSs) {
try {
this.validate(theHh, theMm, theSs);
this.hh = theHh;
this.mm = theMm;
this.ss = theSs;
} catch (Exception e) {
System.err.println(e.getMessage());
}
}
public void printTime() {
try {
this.validate(this.hh, this.mm, this.ss);
DecimalFormat df = new DecimalFormat("00");
System.out.println(df.format(this.hh) + "時" + df.format(this.mm)+ "分" + df.format(this.ss) + "秒です。");
} catch (Exception e) {
System.err.println("正しく設定されていません。");
}
}
private void validate(int theHh, int theMm, int theSs) throws Exception {
if (theHh < 0 || theHh >= 24) throw new Exception(theHh + "は正しい時ではありません。");
if (theMm < 0 || theMm >= 60) throw new Exception(theMm + "は正しい分ではありません。");
if (theSs < 0 || theSs >= 60) throw new Exception(theSs + "は正しい秒ではありません。");
}
}
0077デフォルトの名無しさん
2006/01/29(日) 23:37:52public class Kadai23_5 {
public static void main(String[] args) {
Systemtime23_5 st = new Systemtime23_5(12, 50, 33);
st.printTime();
}
}
0078デフォルトの名無しさん
2006/01/30(月) 00:03:25期限:本日まで
補足:基本的な部分は完成したのですが、変数の受け渡しに四苦八苦しています。
以下に元のソースを記述致しますので、どなたか宜しければ補完をお願いします。
/* MyPanel.java */
import java.awt.Color;
import java.awt.Dimension;
import java.awt.FlowLayout;
import java.awt.Graphics;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.MouseEvent;
import java.awt.event.MouseMotionListener;
import javax.swing.JButton;
import javax.swing.JPanel;
0079デフォルトの名無しさん
2006/01/30(月) 00:06:53implements MouseMotionListener, ActionListener
{
private MyFrame myFrame;
int red,green,blue;
JButton bclear = new JButton("clear");
JButton bred = new JButton("red");
JButton bgreen = new JButton("green");
JButton bblue = new JButton("blue");
public MyPanel(MyFrame myFrame)
{
super();
this.myFrame = myFrame;
myPanel.add(bclear); //ここでmyPanelを使えるようにしたい(アクセサーを利用らしいです)
myPanel.add(bred);
myPanel.add(bgreen);
myPanel.add(bblue);
bclear.addActionListener(this);
bred.addActionListener(this);
bgreen.addActionListener(this);
bblue.addActionListener(this);
addMouseMotionListener(this);
setPreferredSize(new Dimension(640, 480));
}
0080デフォルトの名無しさん
2006/01/30(月) 00:13:48public void paintComponent(Graphics g)
{
super.paintComponents(g);
setBackground(Color.white);
}
public void mouseMoved(MouseEvent e) {}
public void mouseDragged(MouseEvent e){
Graphics g = getGraphics();
int x = e.getX();
int y = e.getY();
Color color = new Color(red,green,blue);
g.setColor(color);
g.drawLine(x,y,x,y);
g.dispose();
}
0081デフォルトの名無しさん
2006/01/30(月) 00:16:26public void actionPerformed(ActionEvent e) {
if(e.getSource() == bclear){
repaint();
}
if(e.getSource() == bred){
Graphics g = getGraphics();
red = 255;
green = 0;
blue = 0;
}
if(e.getSource() == bgreen){
Graphics g = getGraphics();
red = 0;
green = 255;
blue = 0;
}
if(e.getSource() == bblue){
Graphics g = getGraphics();
red = 0;
green = 0;
blue = 255;
}
}
}
0082デフォルトの名無しさん
2006/01/30(月) 00:18:10import java.awt.*;
import javax.swing.*;
class MyFrame extends JFrame
{
private MyPanel myPanel;
public MyFrame()
{
super();
myPanel = new MyPanel(this);
FlowLayout flow = new FlowLayout();
myPanel.setLayout(flow);
getContentPane().add(myPanel);
}
}
0083デフォルトの名無しさん
2006/01/30(月) 00:19:38> public class MyPanel extends JPanel
> public MyPanel(MyFrame myFrame) {
> myPanel.add(bclear); //ここでmyPanelを使えるようにしたい(アクセサーを利用らしいです)
この myPanel は何者だろう
もし、このコンストラクタで生成するインスタンスならば、
add(bclear);
で問題ないのだが・・・
0084デフォルトの名無しさん
2006/01/30(月) 00:20:19class MyFrameApp{
public static void main(String[] args) {
MyFrame x = new MyFrame();
x.setSize(300, 300);
x.setLocation(10, 10);
x.setVisible(true);
}
}
0085デフォルトの名無しさん
2006/01/30(月) 00:25:33長くなってしまいました・・・。
こちらの拙いソースに不備があればその点もおっしゃって頂ければ幸いです。
0086行列厨の72
2006/01/30(月) 00:54:46たしかにうざいかもしれんね
まぁ先生に言っといてくれw
008778
2006/01/30(月) 01:47:29変数myPanelはMyFrame.javaで定義するようなっているので
どうにかしてMyPanel.java内で使用したいのですか・・・。
そのためにはアクセサーを組むようにすれば可能とは聞いたのですが
どうしてもわからずにこのスレで質問させていただいた次第です。
0089デフォルトの名無しさん
2006/01/30(月) 02:31:39>myPanel.add(bclear); //ここでmyPanelを使えるようにしたい(アクセサーを利用らしいです)
>myPanel.add(bred);
>myPanel.add(bgreen);
>myPanel.add(bblue);
ここでやりたいことって、
MyPanel上にbclear,bred,bgreen,bblueボタンを追加したい。
ってことでしょ?
だとしたら>>83が言うようにadd(bclear);・・・でいいんじゃない?
009083
2006/01/30(月) 02:33:53# このあたりの感覚は、理解するまでに多少時間がかかるかもしれませんが…
仮に、MyFrame に getMyPanel という
MyFrame の myPanel を取ってくるメソッドを作ったとします。
このメソッドを MyPanel のコンストラクタから呼び出すと、
MyFrame の myPanel には、まだ何も入っていないので、当然 null が返されます。
# myPanel = new MyPanel(this); ←ココの右辺を解決中なので
0091デフォルトの名無しさん
2006/01/30(月) 03:02:340092デフォルトの名無しさん
2006/01/30(月) 03:07:28>>70 と同じ臭いがする(´・ω・`)
0093デフォルトの名無しさん
2006/01/30(月) 03:15:080094デフォルトの名無しさん
2006/01/30(月) 03:25:47RungeKutta 法のアルゴリズム(計算手順書)が分かれば、誰かやってくれるかも。
# 少なくても僕は調べる気にはなれませんでした。ごめんよ。
0095デフォルトの名無しさん
2006/01/30(月) 05:32:33下のタイトルソースと問題1ソース、問題2ソースをひとつにまとめたいのですが、
どうすればいいのでしょうか?
タイトルソースで表示される、「言語問題」をクリックすると問題1が、「非言語
問題」をクリックすると問題2が始まるようにしたいです。
そして最後の「結果」ウインドウの了解ボタンをおすと、タイトルに戻ってくるよう
にしたいのです。だれか助けてください。お願いします。
タイトルソース:http://sourcepost.sytes.net/sourcepost/sourceview.aspx?source_id=26943
問題1ソース:http://sourcepost.sytes.net/sourcepost/sourceview.aspx?source_id=26944
問題2ソース:http://sourcepost.sytes.net/sourcepost/sourceview.aspx?source_id=26945
009665
2006/01/30(月) 06:00:16返事遅れましたがありがとうございます!!
しっかり埋め込むことができました!!
元画像の容量をなるべく変えずに埋め込むことって可能でしょうか??
あつかましくてすいませんが何かアドバイスあったらお願いします!
0097デフォルトの名無しさん
2006/01/30(月) 08:49:36というのが出て来たのですが、この"0xFF"が何を意味するのか判りません。
どなたかご存知でしたら教えて下さい。
0098デフォルトの名無しさん
2006/01/30(月) 09:05:08「0x〜」は16進数表示であることをあらわす。
16進数のFFは10進数で表現すると255。
2進数で表現すると11111111。
data[62]&0xFF は 「data[62]の下位8biitを取り出す」ことを意味する。
0099デフォルトの名無しさん
2006/01/30(月) 09:24:48そういうことでしたか!
いやー謎が解けました。ありがとうございました。
0100タカベガス
2006/01/30(月) 09:42:18得点の高いものから順に並べ替えるプログラムを作成しなさい。
ただし、得点データは左から順に学籍番号の1,2,3・・・番の成績である。
「 85,40,89,72,84,53,23,68,78,94,16,54,81,68,30,70,48,65,80,87 」
・学籍番号8番と、14番の成績は同一の68点である。プログラムによって
並べ替えられた際に、上位に表示されている68点はいずれの学生の成績であるか
明確に説明しなさい。
[期限]・・・2月3日です。
・・・といった内容の課題です。正直、全然わかりません(--;)
よろしくお願いします
0101デフォルトの名無しさん
2006/01/30(月) 12:39:20よければお願いします。
26の医療XMLデータを選択リストで選択すると、
ポップアップウインドウでそのデータが表示される
プログラムを作成せよ。です。
ファイル名はa,bなどで結構です。
よろしくお願いします!
0102デフォルトの名無しさん
2006/01/30(月) 12:47:04埋め込みデータを圧縮するとか?
>101
XMLデータも作れ、と言ってる?
いくらなんでもそれは。。
0104デフォルトの名無しさん
2006/01/30(月) 14:00:12010559
2006/01/30(月) 16:01:08だとしたら大学違うがナー
前スレ918と>>20は同じなら大学同じなんだが・・・
まぁもうこのスレにいねーかな、もう言っちゃったしまぁいいかw
0106デフォルトの名無しさん
2006/01/30(月) 17:05:590107デフォルトの名無しさん
2006/01/30(月) 17:08:09ついに姉貴がキレて、手当たり次第に物を投げつけてきた。
でも、芯から心の優しい姉貴は、命中すると痛い物を投げるのは、意識的に避けているようだった。
最初は縫いぐるみや、枕を投げつけてきたが、もう投げるものが無くなってしまった。
それでも怒りの収まらない姉貴は、Tシャツを脱いで投げつけ、ジーンズを脱いで投げつけ、
ブラを外して投げつけ、最後にはぱんつを脱いでは投げつけ……。
そして投げるものが一切無くなったとき、姉貴はうつむいたままこう嗚咽した。
「抱きしめてよ!!弟なら!姉を抱きしめてよ!!」
漏れは姉貴に歩み寄りそっと抱きしめる。
思いっきり投げられた。
0108デフォルトの名無しさん
2006/01/30(月) 17:20:04ただし、振り子の長さ は123cmとし、g=9.8 、初期角速度を w=0rad/sとする。
�@初期振幅 θ=0.01rad、刻み幅 hをT/10、T/20、T/100として5周期分の振幅波形をそれぞれ計算し、
理論と比較することで誤差を評価せよ。ただし、Tは周期である。
�A刻み幅 をT/100として、初期振幅 θと計算周期T”関係を考察せよ。
�B�@をルンゲクッタ法で計算し、オイラー法と比較せよ。
■期限 2/05
■補足 丸投げです。何もわからないんで宜しくお願いします。
0109デフォルトの名無しさん
2006/01/30(月) 17:27:35つーかさ、多分宿題ってテキストとかからでしょ?
もし進め具合がほぼ一緒で同じ章を勉強してたとしたら
同じような問題を宿題に出しても不思議じゃないよね?
君が同一人物と勘違いするのは勝手だけど
君の馬鹿スレで他の人のスレが流されるのって迷惑なんだよね。
0110デフォルトの名無しさん
2006/01/30(月) 17:29:05だーかーらー。
>71の返事は?
つか、>70のまんまコピペじゃん。
答えてもらえない場合、なんか工夫しようとは思わんのかね。
0111デフォルトの名無しさん
2006/01/30(月) 18:43:28君の馬鹿「レス」で他の人の「レス」が流されるのって迷惑なんだよね。が正解
2ch初心者は半年ROMってろクズ
あ、先生に言われたから単位取れなかった阿呆ですか?^^^
ってかこのスレsage基本ですか?
0112デフォルトの名無しさん
2006/01/30(月) 18:46:13同一人物と勘違いしたあほうですか・・・
0113デフォルトの名無しさん
2006/01/30(月) 18:53:01ですか?って聞いてんだから同一人物と思ったわけじゃない
あんたも言ってるでしょ?
>もし進め具合がほぼ一緒で同じ章を勉強してたとしたら
>同じような問題を宿題に出しても不思議じゃないよね?
ってな、別に>>111が同一人物じゃなくても当てはまるわけだ
俺叩いてる暇があったら親の肩でも叩いてろ
君の馬鹿「スレ」で他の人の「スレ」が流されるのって迷惑なんだよねwww
0115デフォルトの名無しさん
2006/01/30(月) 18:56:34public class これはは100さんへの回答です {
public static void main(String[] args) {
これはは100さんへの回答です 自分自身 = new これはは100さんへの回答です();
自分自身.並べ替えてください();
}
public void 並べ替えてください(){
int[] 学生情報全体点数 = {85,40,89,72,84,53,23,68,78,94,16,54,81,68,30,70,48,65,80,87};
学生情報[] 学生情報全体 = new 学生情報[20];
for(int 連番 = 0;連番<学生情報全体.length;連番++){
学生情報 学生情報個人 = new 学生情報();
学生情報個人.学生番号 = 連番;
学生情報個人.成績 = 学生情報全体点数[連番];
学生情報全体[連番] = 学生情報個人;
}
Arrays.sort(学生情報全体, new 生徒を並べ替えたい());
for(int 連番 = 0;連番<学生情報全体.length;連番++){
System.out.println("学籍番号"+(学生情報全体[連番].学生番号+1));
System.out.println("成績"+学生情報全体[連番].成績);
}
}
public class 生徒を並べ替えたい implements java.util.Comparator{
public int compare(Object キャストオブジェクト1, Object キャストオブジェクト2){
return ((学生情報)キャストオブジェクト2).成績 - ((学生情報)キャストオブジェクト1).成績;
}
}
public class 学生情報 {
public int 学生番号 = 0;
public int 成績 = 0;
}
}
0116デフォルトの名無しさん
2006/01/30(月) 21:56:00もっとマッタリいきましょうよ。ねえ。
0117デフォルトの名無しさん
2006/01/30(月) 21:56:5124時間時計
http://www.wikiroom.com/java/index.php?%A5%BD%A1%BC%A5%B9%C5%BD%C9%D5%A4%B1#gcf66de6
011860
2006/01/30(月) 22:23:420119デフォルトの名無しさん
2006/01/30(月) 22:27:47【回答者】125
ヨロシク!
0120デフォルトの名無しさん
2006/01/30(月) 22:31:43かわいそす;;
誰か教えてあげて!
0121デフォルトの名無しさん
2006/01/30(月) 22:49:40この表を見やすいグラフで表せ。棒グラフ、折れ線グラフなど、形式は自由とする。
新人 若手 中堅 ベテラン 合計
男 女 計 男 女 計 男 女 計 男 女 計 男 女 計
A社 95 10 105 85 10 95 98 8 106 77 6 83 355 34 389
B社 56 16 72 44 19 63 66 25 91 86 24 110 252 84 336
C社 28 13 41 31 18 49 25 16 41 0 0 0 84 47 131
D社 105 13 118 73 6 79 141 18 159 0 0 0 319 37 356
計 284 52 336 233 53 286 330 67 397 163 30 193 1010 202 1212
【 期限 】2月1日ですが、できれば早めにお願いします
0122120
2006/01/30(月) 22:59:07新人 若手 中堅 ベテラン 合計
男 女 計 男 女 計 男 女 計 男 女 計 男 女 計
A社 95 10 105 85 10 95 98 8 106 77 6 83 355 34 389
B社 56 16 72 44 19 63 66 25 91 86 24 110 252 84 336
C社 28 13 41 31 18 49 25 16 41 0 0 0 84 47 131
D社 105 13 118 73 6 79 141 18 159 0 0 0 319 37 356
計 284 52 336 233 53 286 330 67 397 163 30 193 1010 202 1212
0123108
2006/01/30(月) 23:19:57導関数 dy/dx=f(x,y)=k が与えられているとき、関数 yを求めることを目的とします。
例えば、y3の値は、位置x2におけるy2の値が前回計算で求められてあり、
位置x2における傾き k は与えられた導関数dy/dxから計算できるので、
刻み幅h を傾き k に乗算することにより、
y2をこれに加えて、y3の値とする。以下同様の手順を限界まで繰り返す。
[ y3の値 = 位置x2におけるy2の値 + 位置x2における傾き k * 刻み幅h ]
この手順において、x0におけるy0の値を初期値として与える必要がある。
初期値を与えれば、全てのxに対してyの値が算出可能である。
なお、初期条件の個数としては、1階の微分方程式では1つ。2階の微分方程式では2つ必要です。
計算手順:
1.x1=x0+h, y1=y0+k0・h
2.x2=x1+h, y2=y1+k1・h
3.x3=x2+h, y3=y2+k2・h
・・・
N.xn+1=xn+h, yn+1=yn+kn・h
ただし、 kn は下式にて求める。
kn=k1
ここで、
k1=f(xn,yn)
の計算を行う。
必要回数にて、計算を終了する。
算出された(x1,y1),(x2,y2),(x3,y3),(x4,y4),,,(xi,yi),,,(xn,yn)を
平面上にプロットすると図形が描かれる。
こうして解としての関数 y が図形上に求められたことになる
0124108
2006/01/30(月) 23:24:26計算手順:
1.x1=x0+h, y1=y0+k0・h
2.x2=x1+h, y2=y1+k1・h
3.x3=x2+h, y3=y2+k2・h
・・・
N.xn+1=xn+h, yn+1=yn+kn・h
ただし、調整する傾き kn は下式にて求める。
kn=(k1+2k2+2k3+k4)/6
ここで、
k1=f(xn+0/1,yn+000/1)
k2=f(xn+h/2,yn+kn1/2)
k3=f(xn+h/2,yn+kn2/2)
k4=f(xn+h/1,yn+kn3/1)
の計算を付加的に行う必要がある。
必要回数にて、計算を終了する。
算出された(x1,y1),(x2,y2),(x3,y3),(x4,y4),,,(xi,yi),,,(xn,yn)を
平面上にプロットすると図形が描かれる。
こうして解としての関数 y が図形上に求められたことになる。
0125108
2006/01/30(月) 23:25:49導関数 dy/dx=f(x,y) が与えられているとき、関数 yを求めることを目的とします。
ルンゲ・クッタ法の基本的な、大きい手順は、オイラー法と同じですが、
オイラー法に較べて、傾きの求め方を調整・工夫します。
すなわち、例えば、y3の値は、位置x2におけるy2の値が前回計算で求められてあり、
位置x2における傾きは与えられた導関数dy/dxから 調整した 傾き k を算出することとするので、
刻み幅 h を調整した傾き k に乗算することにより、
y2をこれに加えて、y3の値とする。以下同様の手順を限界まで繰り返す。
[ y3の値 = 位置x2におけるy2の値 + 位置x2における調整した傾き k * 刻み幅h ]
この手順において、x0におけるy0の値を初期値として与える必要がある。
初期値を与えれば、全てのxに対してyの値が算出可能である。
なお、初期条件の個数としては、1階の微分方程式では1つ。2階の微分方程式では2つ必要です。
0126108
2006/01/30(月) 23:27:45計算手順:
1.x1=x0+h, y1=y0+k0・h
2.x2=x1+h, y2=y1+k1・h
3.x3=x2+h, y3=y2+k2・h
・・・
N.xn+1=xn+h, yn+1=yn+kn・h
ただし、調整する傾き kn は下式にて求める。 kn=(k1+2k2+2k3+k4)/6
ここで、
k1=f(xn+0/1,yn+000/1)
k2=f(xn+h/2,yn+kn1/2)
k3=f(xn+h/2,yn+kn2/2)
k4=f(xn+h/1,yn+kn3/1)
の計算を付加的に行う必要がある。
必要回数にて、計算を終了する。
算出された(x1,y1),(x2,y2),(x3,y3),(x4,y4),,,(xi,yi),,,(xn,yn)を
平面上にプロットすると図形が描かれる。
こうして解としての関数 y が図形上に求められたことになる。
0127108
2006/01/30(月) 23:31:172chはじめてなんでよくわかんなくてすいません。
以上が調べたオイラー法とルンゲグッタ法の説明です。
0128デフォルトの名無しさん
2006/01/31(火) 00:40:590129デフォルトの名無しさん
2006/01/31(火) 10:25:53int number;
static void methodA(int a,VarTest b){
a=10;
b.number=100;
}
public static void main(String[] args){
int a=0;
VarTest b=new VarTest();
b.number=0;
methodA(a,b);
System.out.println("a:"+a+",b.number:"+b.number);
}
}
を実行し、なぜそのような出力結果が得られるか論ぜよ。
実行結果はa=0,b.number=100です。
多分スタックとかヒープとかそんな感じのことだと思うのですがわかりません。
お願いします。
0130デフォルトの名無しさん
2006/01/31(火) 10:54:25java初心者です。課題をやっていただきといと思います。お願いします。できれば1/30中がよいのですが、2/1までにお願いできたらと思います。
�@あるサーバを起動したときにサーバソケットを作成し、クライアントからの接続待ちをするメソッドを
呼び出す。
�Aサーバを停止するときにサーバソケットをクローズし、終了するメソッドを呼び出す。
�Bサーバの起動、停止をするメソッドは同一クラス。しかし、javaアプリ(mainがあるやつ)ではなく
メソッドのみで記述。これはLinuxで/etc/init.d/サーバd stopなどのコマンドを行うときに呼び出すの
で
�Cクライアントからの接続は一度に4人までとする。(認証など)処理中に5人目以降のクライアントが接
続要求した場合、その要求を破棄する
�D接続したあとの認証などの処理をこちらで用意しているので、記述する箇所を明記してほしい
という課題をお願いしたいです。
今自分でやってできなかったところは、サーバの停止時にサーバソケットを閉じる部分で、閉じることが
できず、次にサーバを立ち上げたとき、port番号が重複するというエラーが出てきます。最悪、そのサー
バ自体をリブートかければできるのですが、それはダメといわれているので、、、
続く
0131130
2006/01/31(火) 10:54:58try{
while(true)
socket = serverSocket.accept();
new ServerSocketThread(socket).start();//ServerSocketThreadクラスで認証処理や、クライアントの
接続要求を受け入れるかを判断しています。
}catch(Exception e){
e.printStackTrace();
}finally{
if(serverSocket!= null){
try{
serverSocekt.close();
}catch(IOException){
e1.printStackTrace();
}
}
のようになっていて、while(true)を抜けない限り終了できません(これは私が作ったのではなく、ひきつ
いだので容易にかえられず、、、)。フラグを入れたり、サーバ停止メソッドのなかで、serversocketを
閉じるメソッドを呼び出したりしたのですが、まったくダメでした。また、サーバ停止メソッドで
Systemo.exit()を呼び出してもできません(プロセスが違うから?)他にもシングルトンなども試したのですが、ダメでした。
分かる方いらっしゃいましたらお願いします。
0132デフォルトの名無しさん
2006/01/31(火) 12:05:220133デフォルトの名無しさん
2006/01/31(火) 13:02:50private boolean runFlag;
private synchronized void setRunFlag (boolean bool) {
runFlag = bool;
}
private synchronized boolean isRun () {
return runFlag;
}
public void start (int port) {
setRunFlag(true);
ServerSocket ss = new ServerSocket(port);
ss.setSoTimeout(1000);
while(isRun()) {
try {
Socket socket = ss.accept();
new ServerSocketThread(socket).start();
} catch (SocketTimeoutException ex) {
// nop
} catch (Exception ex) {
// operation
}
}
try {
ss.clese;
} catch (Exception ex) {
// operation
}
}
public void stop () {
setRunFlag(false);
}
0134デフォルトの名無しさん
2006/01/31(火) 13:19:24ごめん、意味がわからんない・・
0135デフォルトの名無しさん
2006/01/31(火) 16:10:270136デフォルトの名無しさん
2006/01/31(火) 17:13:15作成せよ、引数としてintを受け取り返り値としてStringを返すものとする。変換例をいかに示す
1->A
2->B
26->Z
27->AA
28->AB
【期限】2006/02/08までにお願いします。
0137デフォルトの名無しさん
2006/01/31(火) 17:21:55頂いたプログラム上手く行きました!有難う御座いました!
お礼と動作確認が送れてしまい申し訳有りませんでした…。
0138デフォルトの名無しさん
2006/01/31(火) 18:20:28「Java 参照渡し 値渡し」でぐぐるといいかも。
ttp://wisdom.sakura.ne.jp/programming/java/java23.html
0139デフォルトの名無しさん
2006/01/31(火) 19:52:050140デフォルトの名無しさん
2006/01/31(火) 20:43:44public static String convert(int n) {
if (n <= 0) {
return "";
}
n--;
StringBuilder sb = new StringBuilder();
do {
sb.append(c[n%26]);
n = n/26;
} while(n > 0);
return sb.toString();
}
0141デフォルトの名無しさん
2006/01/31(火) 21:03:2526が「Z」という文字一文字だったら27進法なんじゃないの?
例に「ゼロ」への対応方法がないのでそのへんよく分かりません。
と書き込もうと思ったら>140さんが答え出した。
0142デフォルトの名無しさん
2006/01/31(火) 21:07:15従わないのは答えなくていいよね
0143デフォルトの名無しさん
2006/01/31(火) 21:13:10いいんじゃないの?
テンプレ使わなくても答え貰える、と思われても困るし。
0144デフォルトの名無しさん
2006/01/31(火) 21:16:02このJava宿題スレのテンプレでは、【課題】の一つだけが必須で外は任意なのに
それすらもやはり面倒なのか。。。
0145140
2006/01/31(火) 21:19:520146141
2006/01/31(火) 21:21:37というより問題がおかしいと思う。
気にしなくていいと思うよー。
0147140
2006/01/31(火) 21:35:20private static char[] c = {'A','B','C','D','E','F','G','H','I','J','K','L','M','N','O','P','Q','R','S','T','U','V','W','X','Y','Z'};
public static String convert(int n) {
if (n <= 0) {
return "";
}
StringBuilder sb = new StringBuilder();
do {
n--;
sb.insert(0, c[n%26]);
n = n/26;
} while(n > 0);
return sb.toString();
}
0148デフォルトの名無しさん
2006/01/31(火) 22:25:16if(n <= 0){
return "ぬるぽっ";
}
switch(n){
case 1:retrun "A";break;
case 2:retrun "B";break;
case 3:retrun "C";break;
case 4:retrun "D";break;
(中略)
case 2147483645:retrun "FXSHRXU";break;
case 2147483646:retrun "FXSHRXV";break;
case 2147483647:retrun "FXSHRXW";break;
default:return "ガッ";
}
}
0149256
2006/01/31(火) 22:57:09DBに接続する為にIDとパスワードを入力画面を作成。
入力後、「Select」ボタンを押下しテーブルの選択画面に進む。
テーブルを選択(vegetable)を選択し、「Select」ボタンを押下
し「テーブル名」と「vegetable(列名 No・Name・Money)」の表を
表示させる。
又「Back」ボタンを押下しIDとパスワードを入力画面に戻る
プログラムを作成せよ。
【期限】2月2日ですがなるべく早くお願いします
【補足】ほんとにわかりません。丸投げですいません。
0150デフォルトの名無しさん
2006/01/31(火) 23:07:550151デフォルトの名無しさん
2006/01/31(火) 23:14:36ttp://www.wikiroom.com/java/index.php?SourcePost___#x18a7713
時間とセンスがないのでこれであきらめ。
HashMapにデータ持ってるから、工夫できる余地は色々あるよ。
0152デフォルトの名無しさん
2006/02/01(水) 00:04:32Thread th = null;
int x;
Image img;
public void init() {
img = getImage(getDocumentBase(),"img1.jpg");
}
public void start() {
if (th == null) {
th = new Thread(this);
th.start();
}
}
public void run() {
for (x=0; x<400; x=x+10) {
repaint();
try {
th.sleep(100); }
catch(InterruptedException e){}
}
}
public void paint(Graphics g) {
g.drawImage(img,x,10,this);
}
画像を左右にはね返させたいんですが。おねがいします。
0153デフォルトの名無しさん
2006/02/01(水) 00:05:060154デフォルトの名無しさん
2006/02/01(水) 00:07:300155152
2006/02/01(水) 00:20:45import java.awt.*;
import java.awt.event.*;
追加です、行が多いんで。朝までにおねがいします。
0156デフォルトの名無しさん
2006/02/01(水) 00:22:01朝、呆然としてる>>152が楽しみだ
0157デフォルトの名無しさん
2006/02/01(水) 00:23:360158デフォルトの名無しさん
2006/02/01(水) 00:29:010159デフォルトの名無しさん
2006/02/01(水) 00:30:020160デフォルトの名無しさん
2006/02/01(水) 00:37:330161デフォルトの名無しさん
2006/02/01(水) 04:17:31せっかく課題を出してくれてる人を茶化してどうするんだ。
このスレの序列は
課題を出す人 >>>>> 回答プログラムを書く人 >>>>
コードを書かずに薀蓄だけの人 >>>> 傍観者
だ。勘違いも程ほどに。
0162デフォルトの名無しさん
2006/02/01(水) 08:17:38勘違いも程々に
0163デフォルトの名無しさん
2006/02/01(水) 10:26:38StringBufferクラスに置き換えましたが…
0164デフォルトの名無しさん
2006/02/01(水) 11:30:47課題提出が明後日なので
答えて頂ける方おりませんでしょうか?
自分もいろいろ考えたんですが全くわからないので
お願いします。
0165デフォルトの名無しさん
2006/02/01(水) 12:32:52別にこっちとしては問題なくてだらだらやってるだけでもいいから
出題者は最上位じゃない
気に入らなければやらない
特にテンプレに従わないのはやらない
0166デフォルトの名無しさん
2006/02/01(水) 15:42:44働けボケが
0167デフォルトの名無しさん
2006/02/01(水) 15:53:22そのセリフそっくりそのまま返しますよ
ちなみに自分は大学生で試験期間ですがもう試験は終わりました
0168デフォルトの名無しさん
2006/02/01(水) 16:53:49クラスの数
クラス当たりのメソッドの数
アクセス属性毎の数
属性の数
メソッドの行の数
メソッド毎のメソッド呼び出しの数
をXMLから取り出しテキストファイルに出力するプログラムを作成せよ。
【Ver】j2sdk1.4.2
【期限】2月2日午前中です 時間が無くてすいません
0169デフォルトの名無しさん
2006/02/01(水) 17:09:37import java.awt.*;
import java.awt.event.*;
public class reidai14 extends Applet implements Runnable,KeyListener,ActionListener {
Thread th = null;
int x=10, y=200, vx=10, vy=10, xl=65, yl=65;
int px=300, py=500, vpx=10, pl=64;
int xmin=0, xmax=600, ymin=0, ymax=500;
int sleep_time = 128;
int n=2;
Button bt1,bt2;
Image img;
public void init() {
img = getImage(getDocumentBase(),"img1.jpg");
bt1 = new Button("スタート");
bt2 = new Button("ストップ");
add(bt1);
add(bt2);
bt1.addActionListener(this);
bt2.addActionListener(this);
requestFocus();
addKeyListener(this);
}
public void start() {
if (th == null) {
th = new Thread(this);
th.start();
}
} 前半
0170デフォルトの名無しさん
2006/02/01(水) 17:12:07問題の意味がいまいち不明なのですが・・・・
ソースコードから、XML要素を取り出すとはどういう事ですか?
0171デフォルトの名無しさん
2006/02/01(水) 17:17:03while (th != null) {
if(n == 1) {
if (x <= xmin || x >= xmax-xl) vx = -vx;
if (y <= ymin ) vy = -vy;
if (y >= ymax-yl) {
if( px-xl < x && px+pl > x ) vy = -vy;
}
x = x+vx;
y = y+vy;
if(y > ymax+100) th = null;
repaint();
}
try {
th.sleep(sleep_time);
}
catch(InterruptedException e){}
}
}
public void paint(Graphics g) {
g.setColor(Color.black);
g.drawLine(xmin,ymin,xmin,ymax);
g.drawLine(xmin,ymin,xmax,ymin);
g.drawLine(xmax,ymin,xmax,ymax);
g.setColor(Color.red);
g.drawLine(px,py,px+pl,py);
g.drawImage(img,x,y,this);
}
つづきです
0172デフォルトの名無しさん
2006/02/01(水) 17:21:37if (th != null) {
th = null;
}
}
public void keyPressed(KeyEvent e) {
switch (e.getKeyCode()) {
case KeyEvent.VK_RIGHT : px=px+vpx; if(px > xmax-pl) px=xmax-pl; break;
case KeyEvent.VK_LEFT : px=px-vpx; if(px < xmin) px=xmin; break;
}
repaint();
}
public void keyReleased(KeyEvent e) { }
public void keyTyped(KeyEvent e) { }
public void actionPerformed(ActionEvent e) {
if(e.getSource() == bt1) n=1;
else n=2;
requestFocus();
}
}
スタートボタンを押すと,600×500 ピクセル上のあちこちに,画像が
20回だけ表示される。画像の表示間隔は最初の 5回が 900ミリ秒,10回
までが800ミリ秒,15回までが 700ミリ秒,20回までが 600ミリ秒とし,
画像が表示されている間にその画像の上をマウスでクリックすると得点が
加算され,ステータス行に現在の得点を表示する。ゲームが終わったら
「ゲームオーバー,あなたの得点は〜点です」という表示が画面上に
されて終わりになるようなゲームを作成せよ。
今週までです、全然わからないのでおねがい。
0173デフォルトの名無しさん
2006/02/01(水) 17:35:11もう完成してるようですが・・・・
0174168
2006/02/01(水) 17:38:54ありがとうございます。
あらかじめJavaのソースを(何でもよい)をJavaMLをつかいXMLに変換をしています。
そのXMLからクラスの数etcを取り出す
言葉足らずで御免
0175172
2006/02/01(水) 17:41:240176ザイン帝國軍帥・伯壬旭(小島露観)
2006/02/01(水) 22:33:31http://www.wikiroom.com/java/index.php?SourcePost___
ここに回答を貼りました。環境はTomcatとMySQLです。
MySQLの使用database名は「homework」です。JSTLを使用してます。
構成は以下の通りです。
WEBアプリのルートディレクトリ
WEB-INF
lib ― jstl.jar と standard.jar(JSTLのJarファイル)
jsp ― start.jsp と tablelist.jsp と table.jsp
web.xml
0177デフォルトの名無しさん
2006/02/01(水) 23:52:46String[] ans=int String[]{"選1","選2","選3","選4","選5"};
●メニューの「書込」によって上(qus・ans)のデータをレコードに保存し、
「読込」によってレコードに保存↑したデータを表示せよ。
MIDP2.0 J2ME
明日の昼までです。宜しくお願いします。時間がなくてすみません(>_<")
0178デフォルトの名無しさん
2006/02/02(木) 00:13:26九九表を作りたいのですが
12345
246810
・・・・
という風に作りたいのにどうしても
1
2
3
4
と縦に並んでしまいます。
基本中の基本なのでしょうが本当に分からないのでどなたか教えてください。
お願いします。
0179デフォルトの名無しさん
2006/02/02(木) 00:15:03このプログラムってどう思う?
素直な意見をきかせてくれ。
0180デフォルトの名無しさん
2006/02/02(木) 00:16:10System.out.print
System.out.println
0181デフォルトの名無しさん
2006/02/02(木) 00:25:16ハッ・・・・・ですよね、すっかり忘れていました。
どうもありがとうございました。
0182デフォルトの名無しさん
2006/02/02(木) 00:55:570183デフォルトの名無しさん
2006/02/02(木) 01:18:21【 課題 】四則計算(電卓)
【 用語 】
【 期限 】すでにすぎてます・・・
【 Ver 】DOJA4.1
【 補足 】 丸投げです、四則計算は足し算、引き算のみで再現しなさいと条件が付いています
0184121
2006/02/02(木) 03:17:51返答が遅くなって申し訳ございません。
>>151ありがとうございました。
しかし、
private LinkedHashMap<Data, Integer>() distribution = new LinkedHashMap<Data, Integer>();
のところに”<identifier>がありません”というエラーが出てしまいます。
お手数ですが、別の方でも構いませんので、正しく直せる方、よろしくお願いいたします。
0185デフォルトの名無しさん
2006/02/02(木) 03:28:48キーフレームアニメーションを作れ。アニメーションの
ボタン操作などでスピードを変化できるようにすること
【 期限 】2月3日
【 補足 】はっきり言って課題の意味すら良く分かりません。よろしくお願いします
0186ザイン帝國軍帥・伯壬旭(小島露観)
2006/02/02(木) 05:01:58http://www.wikiroom.com/java/index.php?SourcePost___
ここに回答を貼りました。
0187ザイン帝國軍帥・伯壬旭(小島露観)
2006/02/02(木) 05:04:18プログラム引数で読み込みXMLファイル名を指定してください。
実行すると、output.txt に結果が書き込まれます。
0188151
2006/02/02(木) 06:04:37ヴァージョンの指定がなかったので、JDK5.0使ってます。
もう今から外に出るので、自分でなんとかするか人に頼ってください。
0189デフォルトの名無しさん
2006/02/02(木) 07:34:46課題お願いします。
0190168
2006/02/02(木) 07:38:42一晩中やっていましたがどうにもならずにおりました。
>プログラム引数で読み込みXMLファイル名を指定してください。
コマンドプロンプトで
java HW114 test.xml
の入力で大丈夫ですよね?
出力されたtxtには
:ソースコード
とのみ出力されています。
XMLファイルにはclassとかはあります。(以下XMLの最初の方のみ出してます)
<?xml version="1.0" encoding="UTF-8" ?>
- <java-source-program xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="F:\javaML\xml\javaml-2.xsd">
- <java-class-file name="C:/test/sample.java">
<import module="java.io.*" />
- <class name="sample" id="Lsample;" idkind="type">
6時頃からまた悩んでいます。
0191168
2006/02/02(木) 07:41:41>java HW114 test.xml
は
java HW114 sample.xml
の入力間違いです。
0192デフォルトの名無しさん
2006/02/02(木) 10:32:31http://www.wikiroom.com/java/index.php?SourcePost___
を
少し修正したので、もう一度試してみてください。
0193デフォルトの名無しさん
2006/02/02(木) 10:36:34<?xml version="1.0" encoding="UTF-8"?>
<java-source-program name="FirstApplet.java">
<import module="java.applet.*"/>
<import module="java.awt.*"/>
<class name="FirstApplet" visibility="public">
<superclass class="Applet"/>
<method name="paint" visibility="public" id="meth-15">
<type name="void" primitive="true"/>
0194177
2006/02/02(木) 10:46:270195デフォルトの名無しさん
2006/02/02(木) 14:34:46点数の入力の終わりは文字列”END”の入力で示す。
正常でない入力に対しては警告を出す。
【 期限 】できるだけ早くお願いします
初歩ですみませんがお願いします。
購入した入門書では最初に人数を入力する方法しか
載っていなかったので分かりませんでした。
すみませんが、教えてください。
0196ザイン帝國軍帥・伯壬旭(小島露観)
2006/02/02(木) 14:53:28http://www.wikiroom.com/java/index.php?SourcePost___
ここに貼りま
0197デフォルトの名無しさん
2006/02/02(木) 16:23:010.3 0.5 0.2 3
(1.0、0)( 0.4 0.3 0.3 ) ※3は3乗
0.2 0.3 0.5
for文と配列のみで組むこと。
0198デフォルトの名無しさん
2006/02/02(木) 17:11:23http://sourcepost.sytes.net/sourcepost/sourceview.aspx?source_id=26981
0199168
2006/02/02(木) 17:20:42193さんが出来ていますので、私のJavaMLの設定が問題かと考えています。
http://paginas.fe.up.pt/~aaguiar/javaml/javaml-2.0-RC5.zip
をダウンロードし、jikes.exeと
cygwinのcygwin1.dllをクラスパスのある同じフォルダに入れて、そのフォルダの中でjikes.exe +ux FirstTest.java
を行い、出来たXMLファイルをコマンドプロンプトから
java HW114 FirstTest.java.xml
と行い、output.txtが出来ます。しかし中を見ると同じ
:ソースコード
となります。
0200195
2006/02/02(木) 17:23:30有難うございました。とても助かりました。
0201デフォルトの名無しさん
2006/02/02(木) 17:36:44すみませんが、XMLファイルをここにコピペしてください。
0202168
2006/02/02(木) 17:37:51http://samurai.pose.jp/java/archives/2004/12/javaml.php
で午後からもう一つやってみたのがこちら(こちらの方が古いようですが)から
http://www.badros.com/greg/JavaML/javaml-for-jikes-1.12.tar.gz
#でもこの中のbadros-javaml-www9.pdfと193さんのXMLが違うようです。
jikes-xmlの設定が必要な様ですがよくわかっていません。以下jikes-xml
#!/bin/sh -
CLASSPATH=$CLASSPATH:/usr/lib/netscape/java/classes/java40.jar:/usr/lib/netscape/473/netscape/java/classes/java40.jar:.; export CLASSPATH
# +ulx is needed to get column information
# +ux for no column information
# +c for comment
JIKES_PATH=$HOME/jikes-1.12/src/jikes
#exec $JIKES_PATH -nowrite +c +B +ulx "$@"
exec $JIKES_PATH -nowrite +B +ux "$@"
また別にjava40.jarが必要なのか?
0203デフォルトの名無しさん
2006/02/02(木) 17:43:39よろしければソースコードを変換した「XMLファイル」をここにコピペしてください。
それで試してみます。
0204デフォルトの名無しさん
2006/02/02(木) 18:05:590205168
2006/02/02(木) 18:10:24小さいのでもこのまま貼り付けると大きいと怒られたので、下記にてお願いします。
http://www.wikiroom.com/java/index.php?plugin=attach&pcmd=open&file=AppletFrame.java.xml&refer=%A5%BD%A1%BC%A5%B9%C5%BD%C9%D5%A4%B1
0206168
2006/02/02(木) 18:12:240207デフォルトの名無しさん
2006/02/02(木) 19:26:09http://www.wikiroom.com/java/index.php?SourcePost___
を
少し修正したので、もう一度試してみてください。
0208デフォルトの名無しさん
2006/02/02(木) 20:03:27人にレス返すときは
>>レス番号
という風に書いてくれ。読みにくい。
0209デフォルトの名無しさん
2006/02/02(木) 20:17:14その値を10進数として表示するプログラム、Sample1.javaを作成しなさい。
なお、try、catchのブロックを付け加え、例外処理も行うこと。
【 期限 】2月6日までにお願いします。
【 補足 】切羽詰ってます。丸投げですいませんがお願いします。
0210デフォルトの名無しさん
2006/02/02(木) 20:27:39// BinaryToDecimal.java
public class BinaryToDecimal {
public static void main(String[] args) {
if( args.length != 1 ) {
System.out.println( "使いかた:java BinaryToDecimal [2進数]" );
return;
}
try {
int binary = Integer.parseInt( args[0], 2 );
System.out.println( binary );
} catch( NumberFormatException nfe ) {
System.out.println( "2進数ではありません:" + args[0] );
}
}
}
0211デフォルトの名無しさん
2006/02/02(木) 20:27:46平均値を求めるプログラムを作成しなさい
7つの数値にはコマンドライン関数を用いること。
【 期限 】2月12日
【 補足 】お手数ですが、どうぞよろしくお願い致します。
0212168
2006/02/02(木) 20:33:48ソースファイル:
クラスの数:1
クラス名:AppletFrame
メソッドの数:2
publicメンバの数:2
メソッド名:startApplet
ステートメントの数:5
メソッド呼出の回数:8
メソッド名:processEvent
ステートメントの数:2
メソッド呼出の回数:2
無事私の方でも出ました。
ご協力いただいた皆様有り難うございました。
0213デフォルトの名無しさん
2006/02/02(木) 20:40:02// AverageDemo.java
import java.util.Arrays;
public class AverageDemo {
public static void main(String[] args) {
if( args.length != 7 ) {
System.out.println( "使いかた:java AverageDemo [数値1] [数値2] ... [数値7]" );
return;
}
double[] numbers = new double[7];
boolean isError = false;
for( int i=0; i<numbers.length; i++ ) {
try {
numbers[i] = Double.parseDouble( args[i] );
} catch( NumberFormatException nfe ) {
System.out.println( "数値ではありません:" + args[i] + "(第" + (i+1) + "引数)" );
isError = true;
}
}
if( isError ) return;
Arrays.sort( numbers );
System.out.println( "最小値:" + numbers[0] );
System.out.println( "最大値:" + numbers[numbers.length-1] );
double sum = 0;
System.out.println( "上記を除いた" );
for( int i=1; i<numbers.length-1; i++ ) {
System.out.println( "・" + numbers[i] );
sum += numbers[i];
}
System.out.println( "の平均は " + (sum/(numbers.length-2)) + " です。" );
}
}
0214デフォルトの名無しさん
2006/02/02(木) 20:43:31ご回答頂いてありがとうございます!!
0215デフォルトの名無しさん
2006/02/02(木) 21:16:37ttp://sourcepost.sytes.net/sourcepost/sourceview.aspx?source_id=26983
・・・結果はこれで合ってるのか??
(0.3050 0.3660 0.3290)
0216177
2006/02/02(木) 21:26:320217デフォルトの名無しさん
2006/02/02(木) 21:52:56(記号 全5種類【◎ ● ○ ▲ ☆ 】)
◎...10%
●・・・50%
○・・・20%
▲・・・13%
☆・・・7% の確立で設定されています
【 期限 】2月12日
【 補足 】面倒な設定で申し訳ございません。どうか宜しくお願い致します!
0218デフォルトの名無しさん
2006/02/02(木) 22:11:11package net._2ch.tech;
import java.util.Random;
public class _217 {
private static final String hoge = "◎◎◎◎◎◎◎◎◎◎●●●●●●●●●●●●●●●●●●●\\
●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●○○○○○○○○○○○○○○○○○○\\
○○▲▲▲▲▲▲▲▲▲▲▲▲▲☆☆☆☆☆☆☆";
private static final Random rnd = new Random( );
public static void main( final String args[] ){
final int n = rnd.nextInt( hoge.length( ));
System.out.println( hoge.substring( n, n + 1 ));
}
}
0219218
2006/02/02(木) 22:12:102個所ある \\改行 は消しといて。
0220デフォルトの名無しさん
2006/02/02(木) 22:27:03>>204
すいません、打ちかた間違えました
0.3 0.5 0.2 3
(1 0 0)( 0.4 0.3 0.3 ) ※3は3乗
0.2 0.3 0.5
1×3行列と3×3行列の掛け算です、すいません。
0221デフォルトの名無しさん
2006/02/02(木) 22:34:12助かります!
どうもありがとうございました!
0222256
2006/02/02(木) 23:00:24遅くなりましたがご回答ありがとうございました。
何とかOKを頂けそうです。
0223デフォルトの名無しさん
2006/02/03(金) 00:13:410224209
2006/02/03(金) 00:25:46ほんとに助かりました。
細かく教えていただいてありがとうございます。
0225デフォルトの名無しさん
2006/02/03(金) 00:32:29【 期限 】今日(3日)です<(_ _)>
一旦プログラム内で512を与え、整数のみのプログラムを書いてみたのですが。(見よう見まねです)
入力された数を使うやり方と整数ではなく実数の範囲で計算するやり方が分かりません。
今の段階が下です。
どこをどう変えるかだけでもかまいません。丸投げ扱いでもかまいません。
お願いします。
0226225
2006/02/03(金) 00:34:06import java.awt.event.*;
public class GUITest implements ActionListener{
public static void main(String args[]){
GUITest test=new GUITest();
}
private TextField field=null;
private GUITest()
{
Frame window=new Frame("GUIからの入力");
Button button=new Button("1/2倍にします");
button.addActionListener(this);
window.add("North",button);
field=new TextField("512");
window.add("Center",field);
window.setSize(200,100);
window.setVisible(true);
}
public void actionPerformed(ActionEvent e)
{
String d=null,s=null;
s=field.getText();
try{
int i=Integer.parseInt(s);
d=Integer.toString(i/2);
}catch(NumberFormatException nfe){
d="入力は変換できません";
}
field.setText(d);
}
}
0227デフォルトの名無しさん
2006/02/03(金) 00:35:24【 課題 】1.Webブラウザを動作させているクライアントのOS
(Windows、Mac、UNIX)を判定して画面に表示するのと、
マウスポインタをMENUのどれかに重ねると、文字が大きくなったり、
文字色や背景が変わったりするもの。
【 期限 】提出期限、平成18年2月15日(16日のAM0:00
【 Ver 】希望なし
【 補足 】OSの判定はできました。しかしマウスオーバーの箇所で画像は大きくできるのですが
問題は文字なので文字を大きくする事ができません。
よろしくお願いします。
0228>>225-226
2006/02/03(金) 01:01:25丸投げ扱いにさせてもらった。
// GUI225.java
package p225;
import javax.swing.*;
import java.awt.*;
import java.awt.event.ActionListener;
import java.awt.event.ActionEvent;
public class GUI225 extends JFrame {
private JTextField txtNumber = new JTextField(10);
private JTextArea taOutput = new JTextArea();
private void btnActionPerformed() {
try {
String numstr = txtNumber.getText();
double half = Double.parseDouble(numstr) /2;
taOutput.append(numstr + "の半分は" + half + "\n");
} catch(NumberFormatException e) {
taOutput.append("数値を入力してください" + "\n");
}
}
private void createAndShowGUI() {
JFrame.setDefaultLookAndFeelDecorated(true);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
setLayout(new BorderLayout());
JPanel jPanel1 = new JPanel(new FlowLayout());
//続く
0229>>225-226
2006/02/03(金) 01:03:58btn.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
btnActionPerformed();
}
});
jPanel1.add(txtNumber);
jPanel1.add(btn);
JScrollPane jScrollPane1 = new JScrollPane(taOutput);
add(jPanel1, BorderLayout.NORTH);
add(jScrollPane1, BorderLayout.CENTER);
Dimension dim = getToolkit().getScreenSize();
setBounds((dim.width-400)/2, (dim.height-300)/2, 400, 300);
setVisible(true);
}
public static void main(String[] args) {
SwingUtilities.invokeLater(new Runnable() {
public void run() {
new GUI225().createAndShowGUI();
};
});
}
}
// コメントや解説がなくて悪いが、以上。
0230225
2006/02/03(金) 01:55:53ありがとうございます、とても参考になりました。
0231デフォルトの名無しさん
2006/02/03(金) 03:50:41>>マウスポインタをMENUのどれかに重ねると
MENUとは具体的に何を指すのか教えてください。
0233デフォルトの名無しさん
2006/02/03(金) 05:02:155.9999....E120 とかいう表示になってしまいます。有効数字3桁で丸めたいの
ですが、倍精度浮動小数点をうまいこと四捨五入できるアルゴリズムって
ないでしょうか?
0234デフォルトの名無しさん
2006/02/03(金) 07:27:590235デフォルトの名無しさん
2006/02/03(金) 07:56:01っていうか浮動小数点で扱ってるのに BigDecimal って アフォ ですか?
浮動小数点って何か分かってますか?
0236デフォルトの名無しさん
2006/02/03(金) 08:02:54業務系しかやったことない人間もいる。察してやれ。
0237デフォルトの名無しさん
2006/02/03(金) 08:13:05BigDecimal調べたんだろうな?
0238デフォルトの名無しさん
2006/02/03(金) 08:37:020239デフォルトの名無しさん
2006/02/03(金) 08:44:460240デフォルトの名無しさん
2006/02/03(金) 08:58:10科学技術演算なら固定小数点で済ますのはちょっと無理がある
そういえば任意精度固定小数点のクラスはあるのに浮動小数点版はないのな
まぁ多言語も科学技術演算はほとんど別ライブラリか
0241デフォルトの名無しさん
2006/02/03(金) 09:10:57仮数部を自分で丸めてはどうか。実数を有効桁指定で丸めるのは C やってた頃に
よくやってた気がするんだが、もう忘れたw 俺も思い出したい。誰か知ってたらヨロ
0242デフォルトの名無しさん
2006/02/03(金) 09:17:020243デフォルトの名無しさん
2006/02/03(金) 09:17:120244デフォルトの名無しさん
2006/02/03(金) 09:36:08四捨五入でよければ、0.5を足して int にキャストをする(小数点以下切捨て)。
というのはどうでしょうか。
0245244
2006/02/03(金) 09:37:39みんなゴメンね
0246デフォルトの名無しさん
2006/02/03(金) 10:24:25実数値 f、仮数部 a、指数部 b とする。
f = 0 の時は特殊解として省略。b が発散する。
f = a×10^b ここで b は整数、1≦a<10 とする
両辺の対数を取って log f = b + log a → b = log f - log a
0≦log a<1 より、log f≦log f - log a<1 + log f → floor(log f) = floor(log f - log a)
b は整数より floor b = b
従って b = floor(log f)、a = f ÷ 10^b
後は仮数部 a を 1000 倍して四捨五入して元に戻せば有効数字 3 桁で丸めの
誤差を消せるだろう。まぁ有効数字 3 桁程度なら log 使っても影響はないだろうし。
だがまた double 型に戻すと丸めで同じことになるかもしれないので、このまま
仮数と指数に分けた状態でグリッドに乗せてやるのが良い。
0247デフォルトの名無しさん
2006/02/03(金) 10:28:17×log f≦log f - log a<1 + log f → floor(log f) = floor(log f - log a)
○log f≧log f - log a>-1+log f → ceil(log f) = ceil(log f - log a)、ceil b = b = ceil(log f)
だな。
0248デフォルトの名無しさん
2006/02/03(金) 10:32:490249デフォルトの名無しさん
2006/02/03(金) 10:39:44大学の期末課題で表計算プログラムを書けというものが出たのですが、ほかのセルに入っている式を
参照する機能がありそれを調べて計算しなおすのにトポロジカルソートを使うようにという事なのですが、ネット、本等で調べても
あまり良くわからず、困っています。何となくの実装の指針だけでも結構ですので教えていただけるとありがたいです。
0250デフォルトの名無しさん
2006/02/03(金) 10:43:50テンプレで書いて丸投げするか、質問スレ行ったら?
【初心者】Java質問・相談スレッド80【大歓迎】
http://pc8.2ch.net/test/read.cgi/tech/1138455638/
0251デフォルトの名無しさん
2006/02/03(金) 17:26:44【 期限 】できれば今日中でお願いします。
【 補足 】つくっていただけるとなんでもよいのですが、下のような感じにしていただけると大変助かります。
import java.awt.*;
import java.awt.event.*;
class aiu
{
public static void main(String [] args)
{
double a[][] = {正方行列の宣言}
double b[][] = {正方行列の宣言}
//逆行列を求める。
static void inv(double a[][])
{
逆行列をもとめる
}
//求めた逆行列とほかの行列の掛け算をする。
static void kakezan(double a[][], double b[][])
{
行列の掛け算をする。
}
}
よろしくおねがいします
0252デフォルトの名無しさん
2006/02/03(金) 17:35:28【 課題 】逆行列を求め、その逆行列とほかの行列の掛け算をするプログラムを作成しなさい。
【 期限 】できれば今日中でお願いします。
【 補足 】つくっていただけるとなんでもよいのですが、下のような感じにしていただけると大変助かります。
class aiu
{
public static void main(String [] args)
{
double a[][] = {正方行列の宣言}
double b[][] = {正方行列の宣言}
gyaku(a)
kake(a,b)
}
//逆行列を求める。
static void gyaku(double a[][])
{
逆行列をもとめる
}
//求めた逆行列とほかの行列の掛け算をする。
static void kake(double a[][], double b[][])
{
行列の掛け算をする。
}
}
よろしくおねがいします
0253?デフォルトの名無しさん
2006/02/03(金) 18:23:06もので、MathExpression.javaは表に入力された式を解析し計算するものです。
今回わからないのは、主に、TechCalc内のrefreshメソッドの改善とそれに付随するメソッドの作成です。
この表計算のプログラミングには、通常のExcel同様、セルの参照機能があります。
なのである表が書き換えられたときにそれを参照しているセルの計算結果も変更したいのですが、そのときにこのままのやり方ですとあまりに手間がかかってしまいます。
そこで、教授曰くトポロジカルソートなるものを使えとのことなんですが、どうにも理解できません。多少の変更、実際にそのまま実装できるか等はあまり気にしません。
自分で理解して書き直すつもりですので、ある程度の指針だけでも示していただければと思います。
可読性の乏しいプログラムですが、よろしくお願いします。
0254デフォルトの名無しさん
2006/02/03(金) 18:30:170255249
2006/02/03(金) 18:40:15http://sourcepost.sytes.net/sourcepost/sourceview.aspx?source_id=26988
MathExpression.java
http://sourcepost.sytes.net/sourcepost/sourceview.aspx?source_id=26989
0256デフォルトの名無しさん
2006/02/03(金) 19:26:02まずはテンプレの必要性を理解してくれ
0257249
2006/02/03(金) 19:46:24テンプレとは何なんでしょうか?
0258249
2006/02/03(金) 19:48:22テンプレとは何なんでしょうか?
0259デフォルトの名無しさん
2006/02/03(金) 19:49:41>>258
>>1
0260249
2006/02/03(金) 20:46:44以下の機能を実現しなさい。
・セルに数式が入力され、その数式が計算可能な場合には表に計算結果を記載すること。
・入力された数式に文法上の誤りがあった場合には、エラーがあった旨を分かりやすく表示し、表のセルには「?」と表示すること。誤った入力の内容を保持し、メニュー直下の入力覧を用いて修正できるような仕組みは優秀なユーザインタフェイスです。
エラーメッセージは、GUIを拡張して、エラーメッセージを表示するエラー表示領域に出力するとよいでしょうね。標準エラー出力を使っても構いません(ショボイですが)。エラーが発生するごとにメッセージウィンドウを表示する方法も考えられますが、欝陶しいでしょうね。
・文法的に正しい数式が入力されたが、その数式が空のセルを参照したために評価時にエラーが発生する場合には、その数式の入力を許し、表には「?」と記載して下さい。赤くなくて構いません。
・入力された数式が文法的には正しいけれども、その数式が循環的な参照を含んでいて評価できないことがあります。その場合には、その数式の入力を許し、表には「?」と記載して下さい。赤くなくて構いません。
・セルの数式が直接的にあるいは間接的にそのセル自身を参照することを自己参照します。
・自己参照しているセルを直接的にあるいは間接的に参照するセルは循環的な参照を含んでいます。
・セルに数式が入力され、その数式が計算可能な場合には、その数式を直接的にあるいは間接的に参照するセルのうち計算可能なものすべてについて、
必要であれば再計算をして、正しい計算結果を表に記載すること。
・自己参照をするセルの数式が更新され、その結果、そのセルの自己参照がなくなった場合には、そのセルの計算結果を表に記載すること。
さらに、自己参照がなくなったセルを直接的あるいは間接的に参照するセル(「?」となっているはず)のうち計算可能なものすべてについて、再計算して正しい計算結果をセルに記載してください。
・十分に実用的な速度で計算できるように工夫してください。
【期限】今週中希望です
【補足】>>253
0261デフォルトの名無しさん
2006/02/03(金) 21:08:05上のプログラムは棒グラフを表示するものなのですが、27行目の
private LinkedHashMap<Data, Integer>() distribution = new LinkedHashMap<Data, Integer>();
のところに”<identifier>がありません”というエラーが出てしまいます。
お手数ですが、正しく直せる方、よろしくお願いいたします。
0262デフォルトの名無しさん
2006/02/03(金) 21:17:53ttp://www.wikiroom.com/java/index.php?SourcePost____#le5d83b4
>252の
>下のような感じ
は無視してます。
>261
それ俺が>121-122の返事として
ttp://www.wikiroom.com/java/index.php?SourcePost___#x18a7713
に貼ったやつじゃん。JDK5.0使ってるからそれ入れて。
0263262
2006/02/03(金) 21:38:500264262
2006/02/03(金) 21:49:35→private LinkedHashMap distribution = new LinkedHashMap();
(2) init()メソッド内のdistribution.put()第2引数の整数
→new Integer()でくるむ。
例)distribution.put( new Data(COMPANY_A, TERM_NEW, false), new Integer(95) );
(3) int width = distribution.get(key) * 2;
→int width = ((Integer)distribution.get(key)).intValue() * 2;
今度からはバージョンの指定してくれ。
0265デフォルトの名無しさん
2006/02/03(金) 22:07:45JDK のバージョンは割と必須項目かも…?
0266デフォルトの名無しさん
2006/02/04(土) 00:07:14燃料タンクの取得とするプログラムを作成しなさい.
また、同様にUmiServerを変更し,座標(0,0)-(10,10)の正方形内に入ったとき,
最も近くの燃料タンクの半径50以内に移動するプログラムを作成しなさい.
さらに同様にUmiServerを変更し,サーバの入出力を全てファイルにログ出力するプログラムを作成しなさい.
【 期限 】2月9日
【 補足 】ttp://sourcepost.sytes.net/sourcepost/sourceview.aspx?source_id=26994
ここに元となるUmiserverがありますのでよろしくお願いします。
0267デフォルトの名無しさん
2006/02/04(土) 00:12:32他人の勉強は自分の勉強。
0268デフォルトの名無しさん
2006/02/04(土) 00:13:52encode何だ?
Shift-JISでもEUCでもマトモに読めないんだが・・・
0269266
2006/02/04(土) 00:54:25すんません、ちょっとめんどくさいのですが
ttp://49uper.com/up-s/index.php?mode=list
ここのファイル一覧で表示させれば
109462.zip UmiServer 3kb nanasida 2006.02.04(00:51)
のファイルが出てくるのでそこでダウンロードしてみてくれませんか?
0270266
2006/02/04(土) 00:58:42たびたびすんません、ここです。
0271デフォルトの名無しさん
2006/02/04(土) 03:52:21できれば、数式の文法について(セル指定の構文など)
教えてくだされ
ソースから読み取るのは、かなり辛いです。。。
0272>251-252
2006/02/04(土) 12:58:40ありがとうございます。
Matrix.javaの15行目を少し直すと無事使うことができました。
0273260
2006/02/04(土) 13:12:30私が今から書くことが果たして答えになっているかどうかはわかりませんが、
あとこれのほかに、Parse.javaというものがあります。これは式を、解析して
MathExpression.java内のどこで計算すればよいのかをわかるようにします。
そして、解析した引数の数によって、そして関数なのか演算子による演算なのかのよって
各々のevaluateメソッドによって振り分けられその場所場所で計算します。
セル参照についてですがMathExpression内のReferenceというクラスで、定義・計算されています。
不十分でしたら随時お知らせください。お願いします。
0274デフォルトの名無しさん
2006/02/04(土) 13:30:16正直な話、途中までできてるものをカスタマイズするという課題だと
動くものを提供してくれないと手が打ちづらいんだわ。
中途半端にモノをもらっても困る。
自分がもし>255のTechCalc.javaとMathExpression.javaだけ与えられて
>260の課題を解こうとしたときにできると思う?
0275デフォルトの名無しさん
2006/02/04(土) 13:43:54インストラクション:
ダイヤル式金庫クラスを作成。(開けるコードも)
コンストラクタ
金庫の中身の金額,開く右回転左回転のパターンの配列
メソッド (public)
「金庫ドアノブ」引数なし,戻り値,中身の金額
「ダイヤルを右に回しn目盛へ」引数,int n;何目盛にあわす
「ダイヤルを左に回しn目盛へ」引数,int n;何目盛にあわす
フィールド (private)
中身の金額
金庫が開く右回転,左回転のパターンの配列
現在の位置とどのステップまで進んだかの状態
お願いします
0276260
2006/02/04(土) 13:45:03それまでお待ちいただければと思います。
0277デフォルトの名無しさん
2006/02/04(土) 13:49:5710進数を書いてもらったのですけど8進数で出力のやり方教えてもらえませんか?
0278デフォルトの名無しさん
2006/02/04(土) 14:14:460279デフォルトの名無しさん
2006/02/04(土) 14:31:46すみませんよくわかりませんどこに入れたらいいんですか?
0280デフォルトの名無しさん
2006/02/04(土) 14:42:090281デフォルトの名無しさん
2006/02/04(土) 17:58:14ttp://www.wikiroom.com/java/index.php?SourcePost____#n317855e
綺麗なソースじゃないけど。
動作報告よろしく。
0282デフォルトの名無しさん
2006/02/04(土) 22:56:230283デフォルトの名無しさん
2006/02/04(土) 22:56:560284デフォルトの名無しさん
2006/02/04(土) 23:14:39awtとswingって何が違う?
っていうかこんな質問してダイジョウブ化俺?
0285デフォルトの名無しさん
2006/02/04(土) 23:57:05こっちは宿題スレ。宿題以外の質問は↓で
【初心者】Java質問・相談スレッド80【大歓迎】
http://pc8.2ch.net/test/read.cgi/tech/1138455638/
0286デフォルトの名無しさん
2006/02/05(日) 01:02:36インスタンスを作れるように書き換えなさい。
さらにクラスの動作をテストするmainメソッドを追加し、
動作を確認しなさい。
【 期限 】2月5日(ギリギリですみません)
【 補足 】与えられているソースを下は貼ります。
課せられている実行結果は以下です
[実行結果]
年齢は15歳
Age is 15 years old
こう見えても疲れまんねん
I am tired even if I am seen this way
0287286
2006/02/05(日) 01:04:37public void 走る();
public int 年齢();
}
interface English{
public void run();
public int age();
}
class Bilingual implements Japanese,English{
public void 走る(){
System.out.println("こう見えても疲れまんねん");
}
public int 年齢(){
return age();
}
public void run(){
System.out.println("I am tired even if I am seen this way");
}
public int age(){
return 20;
}
}
0288デフォルトの名無しさん
2006/02/05(日) 01:47:36Bilingal内に以下を付け加えたらよろし。
int age;
public Bilingual(int old){
this.age = old;
}
public static void main(String[] args) throws IOException {
try {
BufferedReader buf = new BufferedReader(new InputStreamReader(System.in));
System.out.println("年齢を入力してください");
int num = Integer.parseInt(buf.readLine());
Bilingual bil = new Bilingual(num);
System.out.println("年齢は" + bil.年齢() + "歳");
System.out.println("Age is " + bil.age() + "years old.");
bil.走る();
bil.run();
} catch (NumberFormatException e) {
System.out.println("数字を入力してください");
}
}
0289286
2006/02/05(日) 02:56:34Bilingual.java:17: シンボルを見つけられません。
シンボル: クラス InputStreamReader
場所 : Bilingual の クラス
BufferedReader buf = new BufferedReader(new InputStreamReader(System.in));
というエラーが出てしまいました。いろいろ試してみたのですがどこを直せば良いのでしょうか。
お願いします。
0290デフォルトの名無しさん
2006/02/05(日) 03:10:13import した?
0291286
2006/02/05(日) 03:24:18よく分からず下の3つimportで実行はできたのですが
import java.awt.*;
import java.awt.event.*;
import java.io.*;
>>286
の下から3行目で20が戻されて表示が20歳で出てしまいます。
age()を入れるのかと試したらループのような表示がでました。
すみません教えてください。
0292286
2006/02/05(日) 03:32:21ageいれたらできました。有難うございました。
importについてはこれで大丈夫でしょうか
0293デフォルトの名無しさん
2006/02/05(日) 04:11:11問題ない。
# 個人的な信念としてはクラス別にimportしてる
# どのクラスインポートしてるか分かるじゃん
0294デフォルトの名無しさん
2006/02/05(日) 11:19:0110秒ごとに画面に * を出力するプログラムを作成。
2つの値が入力されたら、2つを足した値を画面に出力し終了する。
お願いします
0295デフォルトの名無しさん
2006/02/05(日) 15:38:23とりあえず、日本語みたいなところは文字化けしてんな
一応ソースは見れるようだ
0296デフォルトの名無しさん
2006/02/05(日) 17:38:01ttp://www.wikiroom.com/java/index.php?SourcePost____#q7634fc4
0297デフォルトの名無しさん
2006/02/05(日) 21:53:47import java.awt.*;
import java.awt.event.*;
public class MyFrame2 extends Frame{
static public void main(String args[]){
Frame window=new MyFrame2();
window.setSize(300,120);
window.setVisible(true);
}
public void paint(Graphics g){
g.setColor(Color.blue);
g.setFont(g.getFont().deriveFont(Font.PLAIN,50.0f));
g.drawString("Hello World",10,80);
}
public MyFrame2(){
Control control=new Control();
addWindowListener(control);
Button button=new Button("終了");
button.addActionListener(control);
add("South",button);
}
class Control extends WindowAdapter{
public void windowClosed(WindowEvent e){
System.exit(0);
}
public void windowClosing(WindowEvent e){
dispose();
}
}
}
おねがします。
0298デフォルトの名無しさん
2006/02/05(日) 22:03:06現状だとコンパイルエラーになっている
button.addActionListener(control);
を以下の5行で書き換える。
button.addActionListener( new ActionListener() {
public void actionPerformed(ActionEvent ae) {
System.exit(0);
}
});
0299297
2006/02/05(日) 22:16:50なるほど、そのような使い方があるのですね。
まだ全然分からなくて助かりました。有難うございます。
0300デフォルトの名無しさん
2006/02/06(月) 00:10:39キーボードから1行づつ文字を入力する
1行入力したら別のスレッドでa.txtというファイルにその1行を書き出す
プログラム実行中はファイルをひらきっぱなし
と いうプログラムを作成
余裕がある人は,配列やvectorなしで,連続に書き出された場合でも正しく
スレッドが起動され,正しく順番どおりに書き出されるようにすること
お願いします
0301デフォルトの名無しさん
2006/02/06(月) 07:16:31すべて表示されるようにすること。
【 期限 】2月7日
【 Ver 】1.4、1.5
【 補足 】一応、途中まで組んではみたのですが、素数の最初である「2」が表示されません。
ttp://sourcepost.sytes.net/sourcepost/sourceview.aspx?source_id=27003
よろしくお願いします。
0302301
2006/02/06(月) 07:19:36if (inputNum <= 2) {
System.out.print("2以上の数値を入力してください。");
の所で、2以下を入力するとまた入力画面に戻したいのですが、
こういう場合はfor文を使った方が良いのでしょうか?
0303301
2006/02/06(月) 09:07:26二つのクラスを用いてプログラムを書けとのことです。
入力するところまでをメインのクラスに、素数の計算を別のクラスでやるみたいで、
コンストラクターが混ざってくるみたいです。こうなってくるとお手上げ状態なので、
丸投げでよろしくお願いします。
一応、課題を書き直しておきます。
【 課題 】入力した数値の素数を求めるプログラムを組みなさい。
例えば100と入力した場合、2〜97、10000と入力した場合、2〜9973と
すべて表示されるようにすること。
(※)課題にはここで、素数の例が書かれています。
注意)最低でも二つのクラスを用いてプログラムを組むようにする事。
クラスがひとつの場合はプログラムが正しく動作をしても評価をつけることが出来ません。
0304デフォルトの名無しさん
2006/02/06(月) 10:34:04/* AnimeFrame.java */
import java.awt.*;
import javax.swing.*;
class AnimeFrame extends JFrame
{
private AnimePanel animePanel;
public AnimeFrame()
{
super();
Toolkit tk = Toolkit.getDefaultToolkit();
Image[] images = new Image[10];
for (int i = 0; i < 10; i++)
{
images[i] = tk.getImage("anime" + i + ".gif");
}
AnimePanel animePanel = new AnimePanel(images);
FlowLayout flow = new FlowLayout();
animePanel.setLayout(flow);
getContentPane().add(animePanel);
}
}
0305304
2006/02/06(月) 10:40:25import java.awt.Color;
import java.awt.Dimension;
import java.awt.Graphics;
import java.awt.Image;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.JPanel;
import javax.swing.Timer;
public class AnimePanel extends JPanel
implements ActionListener
{
private Image[] images;
private Timer timer;
public int x,y;
private int joutai = 0;
0306304
2006/02/06(月) 10:42:07public AnimePanel(Image[] images)
{
super();
setBackground(Color.white);
setPreferredSize(new Dimension(640, 480));
this.images = images;
timer = new Timer(2000, this);
timer.start();
}
public void paintComponent(Graphics g)
{
super.paintComponents(g);
if(joutai < 10){
g.drawImage(images[joutai], x, y, this);
joutai++;
}
}
public void actionPerformed(ActionEvent e) {
repaint();
}
}
0307304
2006/02/06(月) 10:43:38class AnimeFrameApp{
public static void main(String[] args) {
AnimeFrame x = new AnimeFrame();
x.setSize(200, 300);
x.setLocation(10, 10);
x.setVisible(true);
}
}
以上です。おながいします……。
0308デフォルトの名無しさん
2006/02/06(月) 10:50:57http://www.wikiroom.com/java/index.php?SourcePost____#content_1_0
0309301
2006/02/06(月) 14:13:42ありがとうございます。こういう風に記述すれば良いのですね。
0310デフォルトの名無しさん
2006/02/06(月) 17:05:40class DedLocka
{
DedLockb b;
public synchronized void fn1(int c)
{
System.out.println("fn1"+c);
try { Thread.sleep(1000); } catch(Exception e) {}
if(c == 1) b.fn2(0);
}
}
---------------------------------------------
続く
0311デフォルトの名無しさん
2006/02/06(月) 17:06:51class DedLockb
{
DedLocka a;
public synchronized void fn2(int c)
{
System.out.println("fn2"+c);
try { Thread.sleep(1000); } catch(Exception e) {}
if(c == 1) a.fn1(0);
} }
class Th1 extends Thread {
DedLocka obj;
public Th1(DedLocka c) { obj = c; }
public void run() { obj.fn1(1); }
}
class Th2 extends Thread
{
DedLockb obj;
public Th2(DedLockb c) { obj = c; }
public void run() { obj.fn2(1); }
}
class test {
public static void main(String av[])
{
DedLocka a = new DedLocka();
DedLockb b = new DedLockb();
a.b = b;
b.a = a;
Th1 t1 = new Th1(a); Th2 t2 = new Th2(b);
t1.start(); t2.start();
}}
0312デフォルトの名無しさん
2006/02/06(月) 17:10:06【期限】2月7日17時まで
よろしくお願いします。
0313007
2006/02/06(月) 18:31:38主人一人で頭を刈る小さな床屋がある。1時間当たり平均λ(人)の客がランダムに床屋に到着する。
1時間当たり平均μ(人)の指数サービスに従う。待合室は1人だけ入ることができる。満員のときは客
は帰ってしまう。
�@この待ち行列系はケンドールの記号で表すとどのような系か?
�Aλ=0.8、μ=1のとき、この床屋で客が待たされる確率を計算せよ。
�Bこの床屋には平均何人の客がいることになるか計算せよ。
プログラムじゃないけどこの問題を解いてください。
お願い!助けて!!!! 留年がかかってます!
0314デフォルトの名無しさん
2006/02/06(月) 18:32:08マルチツね
0315007
2006/02/06(月) 18:33:35わかりますか!?おねがいします!
0316デフォルトの名無しさん
2006/02/06(月) 19:11:30いや、ここJAVAの宿題やるところだから別行けよ
てか>>314のはマルチポストでぐぐって意味が分かったらもう来るな
0317デフォルトの名無しさん
2006/02/06(月) 20:42:59コマンドラインで指定したファイルをコピーするプログラムを作成しなさい。
・コピー元ファイル名およびコピー先ファイル名は必須項目である。
・指定する順序はどちらでもよい。
【期限】2月8日まで
「ここ」と書いてある場所がわかりません。よろしくお願いします。
import java.io.*;
public class Ec{
public static void main(String[] args){
BufferedWriter bw=null;
BufferedReader br=null;
String in="";
String out="";
String line;
for(int i=0;i<args.length;i++){
if(args[i].equals(args(ここ)){
in=args[ここ];
}else if(args[i].equals(args[ここ])){
out =args[ここ];
}
}
0318317の続き
2006/02/06(月) 20:43:51System.out.println("Usage:");
System.out.println("-iコピー元ファイル名");
System.out.println("-oコピー先ファイル名");
System.exit(1);
}
try{
br=new BufferedReader(new ここ(in));
bw=new BufferedWriter(new ここ(out));
while((line=br.ここ)!=null){
bw.write(line);
bw.ここ;
}
}catch(FileNotFoundException fnfe){
System.out.println("指定したファイルは存在しません");
}catch(IOException ioe){
System.out.println("ファイル乳sh靴緑エラー"+ioe);
}finally{
try{
if(br !=null){br.close();}
if(bw !=null){bw.close();}
}catch(Exception e){
}}}}
0319デフォルトの名無しさん
2006/02/06(月) 21:00:44import java.io.*;
class A017 {
public static void main(String[] args) {
if (args.length < 2) {
System.out.println("パラメーターを入力してください。 [コピー元] [コピー先]");
return;
}
try {
InputStream in = new FileInputStream(args[0]);
OutputStream out = new FileOutputStream(args[1]);
try {
byte[] buff = new byte[4096];
int f = 0;
while ((f = in.read(buff)) != -1) {
out.write(buff, 0, f);
}
} finally {
in.close();
out.close();
}
} catch (FileNotFoundException fie) {
System.out.println("ファイルが見つかりません。");
} catch(IOException ie) {
System.out.println("コピーできません。");
}
}
}
0321>>300
2006/02/06(月) 21:47:18// HW300.java
import java.io.*;
public class HW300 extends Thread {
private static final String PATH = "a.txt";
private String data;
private static PrintWriter pw;
HW300(String str) { data = str; }
public void run() {
if (pw == null) {
try { pw = new PrintWriter(new FileWriter(new File(PATH))); }
catch (IOException e) { e.printStackTrace(); }
}
pw.println(data); pw.flush();
}
public static void main(String[] args) {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
try {
for (String str = null; (str = br.readLine()) != null;) {
if ("".equals(str)) break;
new HW300(str).start();
} }
catch (IOException e) { e.printStackTrace(); }
}
}
// Writerってスレッドセーフ? 教えて!偉い人!!
0322デフォルトの名無しさん
2006/02/06(月) 22:05:52package net._2ch.tech;
import java.io.*;
public class _300 {
private static PrintWriter writer;
private static class Cuckoo implements Runnable {
private final String toWrite;
Cuckoo( final String s ) {
this.toWrite = s;
}
public void run( ) {
writer.println( toWrite );
}
}
public static void main( final String args[] ) throws Exception {
final BufferedReader br = new BufferedReader( new InputStreamReader( System.in ));
writer = new PrintWriter( new FileWriter( "a.tst" ));
while( true ) {
final String s = br.readLine( );
if( s == null ) break;
final Thread th = new Thread( new Cuckoo( s ));
th.start( );
th.join( );
}
br.close( );
writer.close( );
}
}
0324317
2006/02/06(月) 22:24:32>>317-318の「ここ」って書いてあるところを穴埋めして欲しかったのですが・・・
できればでいいですのでよろしくお願いします
0325デフォルトの名無しさん
2006/02/06(月) 22:54:47http://i.yimg.jp/images/main13.gifをmain13.gifという名前でファイルに保存するプログラムを作成
お願いします。
ちなみにhttp://i.yimg.jp/images/main13.gifはyahooのtopのやつです
0326デフォルトの名無しさん
2006/02/06(月) 23:11:41package net._2ch.tech;
import java.io.*;
import java.nio.channels.*;
import java.net.*;
public class _325 {
public static void main( final String args[] ) throws Exception {
final URLConnection srcURL = new URL( "http://i.yimg.jp/images/main13.gif" ).openConnection( );
final int len = srcURL.getContentLength( );
final FileChannel dst = new FileOutputStream( "main13.gif" ).getChannel( );
final InputStream is = srcURL.getInputStream( );
final ReadableByteChannel src = Channels.newChannel( is );
dst.transferFrom( src, 0, len );
src.close( );
dst.close( );
}
}
0327デフォルトの名無しさん
2006/02/06(月) 23:32:04ありがとうございます。
正常に動作し、課題を提出することが出来ました
0328デフォルトの名無しさん
2006/02/07(火) 00:22:21java JavaCopy a.txt b.txt
とすれば,a.txtというファイルを b.txtにコピーする
JavaCopyクラスを作成してください。
※コピーできるのは,テキストファイルだけでOK(バイナリファイルはコピーできなくても良いです。)
【期限】今週水曜日
お願いします
0329デフォルトの名無しさん
2006/02/07(火) 00:46:54>>317
同じ学校?
0330デフォルトの名無しさん
2006/02/07(火) 08:40:08コマンドライン引数として2進数を1つ受け取りその値を10進数として
表示するプログラムを作成せよ。
正の2進数のみを考慮すればよい
【期限】
2月8日まで
お願いします。
0331デフォルトの名無しさん
2006/02/07(火) 08:56:350332デフォルトの名無しさん
2006/02/07(火) 09:32:15画像用意してくれないとやる気起きないっすわー。
0333デフォルトの名無しさん
2006/02/07(火) 09:59:07import java.io.*;
public class JavaCopy {
public static void main(String[] args){
if( args.length != 2 ) {
System.out.println( "使いかた:java JavaCopy [入力ファイル名] [出力ファイル名]" ); return;
}
BufferedReader br = null; BufferedWriter bw = null;
try {
if( !new File(args[0]).exists() ) {
System.out.println( "コピー元のファイルが存在しません。" ); return;
}
if( new File(args[1]).exists() ) {
System.out.println( "コピー先のファイルは既に存在しています。\n上書きしますか?[Y/n]" );
BufferedReader keyInput = new BufferedReader( new InputStreamReader(System.in) );
if( !keyInput.readLine().equals("Y") ) return;
}
br = new BufferedReader( new FileReader(args[0]) );
bw = new BufferedWriter( new FileWriter(args[1]) );
for( String line; (line=br.readLine()) != null; ) {
bw.append( line + "\n" ); bw.flush();
} System.out.println( "コピーしました。" );
} catch( FileNotFoundException fnfe ) {
fnfe.printStackTrace();
} catch( IOException ioe ) {
ioe.printStackTrace();
} finally {
try {
if( bw != null ) bw.close();
if( br != null ) br.close();
} catch( IOException ioe ) {}
}}}
0334デフォルトの名無しさん
2006/02/07(火) 10:01:14>209で既出。
>210に答えあり。
0335デフォルトの名無しさん
2006/02/07(火) 10:43:03ログ読んでなくてすみません。
0336デフォルトの名無しさん
2006/02/07(火) 13:20:14五目並べのプログラム。
マスは10×10。
禁じ手は考慮しない。
GUIで作成。
【期限】今週水曜日
お願いします。
0337デフォルトの名無しさん
2006/02/07(火) 13:23:41> GUIで作成。
少しばかりの恐怖を感じた
0338デフォルトの名無しさん
2006/02/07(火) 14:26:11グリッド10,10で
ボタン100個並べればいいんでない?
0339デフォルトの名無しさん
2006/02/07(火) 14:27:110340デフォルトの名無しさん
2006/02/07(火) 14:44:430341デフォルトの名無しさん
2006/02/07(火) 14:49:23M$が改造しまくって、挙句にjava非互換の烙印を押された悪魔です
0342デフォルトの名無しさん
2006/02/07(火) 15:10:15非互換ってことはJavaのソース使えないの?
まさかVMで動かないとか・・・
0343デフォルトの名無しさん
2006/02/07(火) 15:26:51そういえばJ#とか、javaVMじゃないからjava互換じゃないんだよなぁ
0344デフォルトの名無しさん
2006/02/07(火) 15:31:490345デフォルトの名無しさん
2006/02/07(火) 15:33:250346デフォルトの名無しさん
2006/02/07(火) 18:27:340347syosinsya
2006/02/07(火) 22:01:42教えてください
大変困っています。
サーバサイドプログラミングで、
サーバ側のWEBアプリから、クライアントのEXEを起動しようと試みています。
環境
サーバ
OS:windows
アプリ:WEBアプリ(Struts)
ブラウザ:IE6
クライアント
OS:windows
アプリ:.NETアプリ(EXEファイル)
処理としては、クライアントからWEBアプリ(Struts)にアクセスして、
Aというリンク文字列をクリックすると、ローカルにインストールしてある
.NETで開発したEXEを起動するといったものです。
クライアントの、EXEパスは絶対パスでOKです。
サーバのWEBアプリから、アクセスしてきたクライアントのEXEを起動はできますでしょうか?
どのようにすればよいでしょうか?
できれば、JAVAで制御しようと思っているのですが、
JAVAで無理であれば、JavaScript・VBScriptの何れかでも結構です。
ご教授いただきたいのですが、よろしくお願いします。
0348デフォルトの名無しさん
2006/02/07(火) 22:02:530349デフォルトの名無しさん
2006/02/07(火) 22:10:27ttp://www.wikiroom.com/java/index.php?SourcePost____#c8f5b85e
JDK5.0使ってます。
時間ないのでテストが不十分です。
0350デフォルトの名無しさん
2006/02/08(水) 04:02:44JAVAアプレットにて動作させるという課題なのですが、
プログラミングが苦手で、正直どうしていいかわかりません。。。
課題としては、
リアルタイム処理時計表示付き電卓(四則演算のみでよい)
じゃんけんゲーム(プレイヤー VS CPU)
ストップウオッチ(停止・開始・リセットボタンが必要)
の3つなのですが、最低限の表示でいいので、極力簡単なソースで
お願いできないでしょうか?
身勝手な丸投げですが、よろしくお願いいたします・・・・
0351デフォルトの名無しさん
2006/02/08(水) 04:08:52osはwindows
コンパイラは、LSIコンパイラです。
実行すると、JAVAアプレット画面が開き、そこから操作が出来る物を
作成しろとの事です。。
大変申し訳ないのですが、よろしくお願いいたします。
期限はほとんどありません・・・
0352デフォルトの名無しさん
2006/02/08(水) 06:07:12>1のテンプレ使え。
じゃないと誰も答えてくれません。
じゃんけんは昔作った。wikiにあるはず。
0353デフォルトの名無しさん
2006/02/08(水) 09:37:21【 課題 】�@ジャンケンゲーム。
�A時計表示機能付き電卓。
�Bストップウオッチ
【 用語 】なし
【 期限 】来週水曜日(2/15)
【 Ver 】なし
【 補足 】JAVAアプレットにて表示・動作するものを作成。
osはwindows
�@時刻は秒まで表示しリアルタイムで更新。計算機能は四則演算のみ
�Aスタート・ストップ・リセットの機能を有したアプレット。計測単位は1/10秒単位まで
�Bコンピューター対戦型で、あいこの判定もできるもの。
こんな感じです。。。よろしくお願いいたします・・・
0354デフォルトの名無しさん
2006/02/08(水) 10:53:21binaryfile(matome)を作るプログラムを作っています。
どう組むかの案として以下の2つがあります。
案1 binaryfileを書き換える度に、binaryfile(matome)に書き込む。
案2 書き換えた複数のbinaryfileをbyte配列にまとめておき最終的に
binaryfile(matome)に書き込むようにする。
この二つを考えているのですが、できればスタンダードな方法を取りたい
どの案がいいと思いますか、どっちでもよいという意見でも
いいので教えてください。
0355デフォルトの名無しさん
2006/02/08(水) 10:57:00>>1嫁
宿題以外は↓で
【初心者】Java質問・相談スレッド80【大歓迎】
http://pc8.2ch.net/test/read.cgi/tech/1138455638/
0356デフォルトの名無しさん
2006/02/08(水) 10:57:02>できればスタンダードな方法を取りたい
binaryfile(matome)なんてファイルは「作らない」
これがスタンダード
0357354
2006/02/08(水) 11:05:17意味不明
0358デフォルトの名無しさん
2006/02/08(水) 11:12:46(整合性をとる必要のある)冗長はデータは作らない。
是、プログラミングの常識ね。
逆に、どうして binaryfile(matome) なるものが必要なのか、
合理的に説明できるか?
単純に複数の binaryfile があるだけで事足りるのでは?
0359デフォルトの名無しさん
2006/02/08(水) 11:17:23続きはhttp://pc8.2ch.net/test/read.cgi/tech/1138455638/728-で
0360デフォルトの名無しさん
2006/02/08(水) 15:54:44【 補足 】MST_USER(ユーザテーブル)引数user,pass
【期限】2月9日9時まで
自分なりには
strSQL ="SELECT * FROM MST_USER WHERE USER_ID =" + user.id + " and USER_PASSWORD =" + pass + ";";
だと思っていたのですが動かないのでお助けください。
0361デフォルトの名無しさん
2006/02/08(水) 16:26:06";"が不要なのでは?
エラーログを見てみては?
0362360
2006/02/08(水) 16:59:58Exception in thread "main" java.lang.NullPointerException
at DBC.S_User(DBC.java:185)
at Log.login(Log.java:35)
at DBSAMPLE19.getLOG(DBSAMPLE19.java:78)
at DBSAMPLE19main(DBSAMPLE19.java:29)
0363デフォルトの名無しさん
2006/02/08(水) 17:03:26userって何クラスなのよ? user.idと書いてるのを見るとStringじゃないだろうし。
0364デフォルトの名無しさん
2006/02/08(水) 17:13:21DBC.javaの185行目にnullを参照してる所があるのでは?
0365デフォルトの名無しさん
2006/02/08(水) 22:02:19受け取った引数の数も表示しなさい。引数がない場合、1〜10以外の整数の場合はエラーメッセージを出力してプログラムを終了しなさい。
英語の文字列はString型配列に格納。
【 期限 】2月9日中
【 補足 】丸投げです。よろしくお願いします。
0366デフォルトの名無しさん
2006/02/08(水) 22:30:06public class Number{
static String num[] = {"one","two","three","four","five","six","seven","eight","nine","ten"};
public static void main(String args[]){
if(args.length > 0){
try{
for(int i = 0; i < args.length; i++){
int n = Integer.parseInt(args[i]);
if(n >= 1 && n <= 10) System.out.println("引数:" + n);
System.out.println("単語:" + num[n - 1]);
}
}catch(Exception e){
System.out.println("不正な引数です。");
System.exit(-1);
}
}
}
}
0367360
2006/02/08(水) 22:31:57え〜っと185行目が
strSQL ="SELECT * FROM MST_USER WHERE USER_ID =" + user.id + " and USER_PASSWORD =" + pass + ";";
です。
0368デフォルトの名無しさん
2006/02/08(水) 22:37:48その user か、user.id か、 pass のどれかに null が入っているんじゃねーの?
0369デフォルトの名無しさん
2006/02/08(水) 22:52:27ストップウォッチだけ自分が書いたことなかったのでやってみた。
ttp://www.wikiroom.com/java/index.php?SourcePost_____#r0200876
JDK5.0です。動作報告よろしく。
デジタル時計と電卓はこのスレでは頻出。
私はいまさらやる気は出ませんでした。
0370360
2006/02/08(水) 23:35:23指摘の通りなおしていったらSQL文は通りましたありがとうございます。
次の問題で、取得した値でユーザーを作成。とあるのですが、
while(result.next())
{
// 取ってきたデータを取得
/*JavaAPIを使用し、取得した値を変数に格納*/
iUser_Id=result.getInt("USER_ID");
strUser_Name=result.getString("USER_NAME");
iUser_Pass=result.getInt("USER_PASSWORD");
// ユーザーを作成
//問6 取得した値でユーザーを作成
user.id=iUser_Id;
user.name=strUser_Name;
user.password=iUser_Pass;
}
sta.close();
return user;
こんな感じで当ているのでしょうか?前回のが通ったあとにここら辺でエラーが出ました。
0371デフォルトの名無しさん
2006/02/09(木) 00:27:56[2] 問題文 テーブル「A1」「A2」「A3」に登録されているデータを奇数・偶数に分けて、昇順・降順にソートし、
奇数は昇順の配列で「B」テーブルに、偶数は降順の配列で「C」テーブルに格納する。
ただし、main関数より下位関数にパラメータを渡す場合は、共通の構造体に格納し、その構造体のポインタを渡すようにする。
下位関数よりさらに下位の関数にパラメータを渡す場合はこの限りではない。
[3] 環境
[3.1] OS:winXP
[3.2] コンパイラ名とバージョン: BCC
[3.3] 言語: (C/C++/どちらでも可 のいずれか)
[4] 期限:2006/02/10
[5] その他の制限:使用可能なのはstdio.hくらいです。
現状としては、ソートをしてB・Cの配列に格納するということはできてます。ですが、まだ構造体の扱いになれていないので、パラメーターを一つの構造体にまとめて構造体に対するポインタを
渡すという方法がいまいちわかりません。
大変申し訳ありませんが、どなたかご教授いただけませんでしょうか?
コンパイルエラーがでてしまいますが、書きかけのソースを書きのURLにアップさせていただきました。
http://proxy.f2.ymdb.yahoofs.jp/bc/74d693f8/bc/41d4/datasort.c.c?bcVQh6DBKw9.VknJ
デバッグライトの挿入のしすぎで少し醜いかと思われますが、ご容赦くださいペコリ(o_ _)o))
0372デフォルトの名無しさん
2006/02/09(木) 00:42:01マルチ乙
# いや、C++宿題スレの誤爆なのだろうけどw
0373365
2006/02/09(木) 02:00:45と表示されました。
0374デフォルトの名無しさん
2006/02/09(木) 02:18:34それぐらいの動作確認、サルでもできるだろ
日 本 語 が 読 め な い の か
0375デフォルトの名無しさん
2006/02/09(木) 02:54:51>>366のソースをNumber.javaに保存してコンパイル
0376365
2006/02/09(木) 03:00:18いや、本当に申し訳ありません。動作確認をということで適当なファイルにぶちこんで試して脊髄反射で報告を投稿していました。
>>375
わざわざ、そんなところまで教えていただきありがとうございます。
0377デフォルトの名無しさん
2006/02/09(木) 03:06:09( ´Д`) こんなところにもう一人の俺が・・・
0378デフォルトの名無しさん
2006/02/09(木) 13:29:59userのインスタンス(例 User user = new User() )が作られていますか?
nullであった場合同様の例外が↓で発生します
user.id=iUser_Id;
0379365
2006/02/09(木) 13:33:56確認してみたところエラーは出ないのですが、引数がない、範囲外の引数が入力された時エラーメッセージが出力されないままプログラムが終了しました。
0380デフォルトの名無しさん
2006/02/09(木) 15:19:38タイマーの表示する数字(0〜9の10種類)は画像ファイルを用いること(Webのアクセスカウンターで利用する画像などを流用してもよいが著作権には注意すること)
タイマーの動作は100msec以下の桁で表示してカウントダウンすること(スレッドの動作タイミングなどを確かめながら、なるべく正確に表示されるか調整すること)
上記の指定条件以外の動作や見た目は各自の自由にしてよい(ウィンドウの形や大きさ、GUIパーツの利用など見た目やユーザインタフェースのほか、カウンターがゼロになった際の動作についてなどは自由!)
ソースコードの中身について
アプリケーションの動作や操作方法に関する説明をコメント(//)として記述すること
他人がプログラムの処理内容を解釈し易いよう、随所にコメントで注釈を書くこと
【期限】
できるだけ早くお願いします
0381デフォルトの名無しさん
2006/02/09(木) 20:22:36画像くれ。探すのめんどくさい。
ってゆーかそもそも何をするプログラムを作るのかって書いてなくね?
0382デフォルトの名無しさん
2006/02/09(木) 23:35:090383デフォルトの名無しさん
2006/02/09(木) 23:36:32【補足】sql操作でuserを返したいのですがNullPointになってしまいます。おかしな部分がありましたら直していただきたいです。
/*引数:id:IDpass:パスワード戻り値:なし*/
public User Select_User(int id,int pass){
User user = new User();
// sql文格納文字列
String strSQL = "";
try{
// ステートメントを生成
Statement sta = connect.createStatement();
// SQL文を生成
//ユーザーDBから引数で渡された値をキーにし、ユーザーの全情報を取得するSELECT文を記述してください。*/
strSQL ="SELECT * FROM USER WHERE USER_ID =" + id + " and USER_PASSWORD =" + pass;
ResultSet result = sta.executeQuery(strSQL);
while(result.next()){
// 取ってきたデータを取得
//JavaAPIを使用し、取得した値を変数に格納
iUser_Id=result.getInt("USER_ID");
strUser_Name=result.getString("USER_NAME");
iUser_Pass=result.getInt("USER_PASSWORD");
strUser_Name = DbStringTrim(strUser_Name);
//取得した値でユーザーを作成。
user.id=iUser_Id;
user.name=strUser_Name;
user.password=iUser_Pass;
}
sta.close();
return user;
}catch(SQLException sqle){
System.out.println("ユーザーの取得に失敗。");
return null;
}}
0384デフォルトの名無しさん
2006/02/10(金) 01:49:40【 期限 】来週月曜日(2/13)
【 補足 】変換過程で合計(金額の3行目以下の合計)と残金(金額の2行目から合計を引いたもの)を出力するみたい。
入力
suitou.csv
摘要,金額,備考
元金,5000,
飲食費,560,ジュース、パン
交通費,450,電車
以下省略
出力イメージ
suitou.xml
<出納>
<項目>
<摘要>元金</摘要><金額>5000</金額><備考 />
</項目>
<項目>
<摘要>飲食費</摘要><金額>560</金額><備考>ジュース、パン</備考>
</項目>
<項目>
<摘要>交通費</摘要><金額>450</金額><備考>電車</備考>
</項目>
途中省略
<項目>
<摘要>合計</摘要><金額>4750</金額><備考 />
</項目>
<項目>
<摘要>残金</摘要><金額>250</金額><備考 />
</項目>
</出納>
0385デフォルトの名無しさん
2006/02/10(金) 02:24:12http://www.jx-gluck.jp/D3pF/D3p011.html
作るのめんどいから、↑を参考にしれ。
0386384
2006/02/10(金) 02:28:53そんなこと言わないでYoヽ(`Д´)ノウワーン
でも参考先は[java csv xml]をキーにググったときにも引っかからなかったからありがとう。
また試してみる。
0387教えて下さい
2006/02/10(金) 08:28:22Complete the Square class by implementing it as specified by the documentation provided. Run the SquareTester class to test your Square class
0388デフォルトの名無しさん
2006/02/10(金) 10:19:08まずは、英語教育スレ(あるかわからんが)に逝け
0390デフォルトの名無しさん
2006/02/10(金) 12:11:55あきらめたらそこで試合終了ですよ
0391デフォルトの名無しさん
2006/02/11(土) 01:53:46public class Suitou {
private String tekiyou = "";
private String kingaku = "";
private String bikou = "";
public String getBikou() {
return bikou;
}
public void setBikou(String bikou) {
this.bikou = bikou;
}
public String getKingaku() {
return kingaku;
}
public void setKingaku(String kingaku) {
this.kingaku = kingaku;
}
public String getTekiyou() {
return tekiyou;
}
public void setTekiyou(String tekiyou) {
this.tekiyou = tekiyou;
}
}
0392デフォルトの名無しさん
2006/02/11(土) 02:15:18import java.io.BufferedReader;
import java.io.FileOutputStream;
import java.io.FileReader;
import java.util.ArrayList;
import org.w3c.dom.DOMImplementation;
import org.w3c.dom.Document;
import org.w3c.dom.Element;
import org.w3c.dom.ls.DOMImplementationLS;
import org.w3c.dom.ls.LSOutput;
import org.w3c.dom.ls.LSSerializer;
import com.sun.org.apache.xerces.internal.dom.DOMImplementationImpl;
public class Kadai384 {
public static void main(String[] args) throws Exception {
toXml(toSuitous(args[0]));
}
0393デフォルトの名無しさん
2006/02/11(土) 02:17:33private static void toXml(Suitou[] suitous) throws Exception {
Suitou head = suitous[0];
DOMImplementation domImpl = new DOMImplementationImpl();
DOMImplementationLS domImplLS = (DOMImplementationLS) domImpl.getFeature("LS", "3.0");
Document doc = domImpl.createDocument(null, "出納", null);
Element suiElem = doc.getDocumentElement();
for (int i = 1; i < suitous.length; i++) {
suiElem.appendChild(doc.createTextNode("\n"));
Element koElem = doc.createElement("項目");
koElem.appendChild(doc.createTextNode("\n"));
suiElem.appendChild(koElem);
Element tekiElem = doc.createElement(head.getTekiyou());
tekiElem.appendChild(doc.createTextNode(suitous[i].getTekiyou()));
koElem.appendChild(tekiElem);
Element kinElem = doc.createElement(head.getKingaku());
kinElem.appendChild(doc.createTextNode(suitous[i].getKingaku()));
koElem.appendChild(kinElem);
Element biElem = doc.createElement(head.getBikou());
biElem.appendChild(doc.createTextNode(suitous[i].getBikou()));
koElem.appendChild(biElem);
koElem.appendChild(doc.createTextNode("\n"));
}
suiElem.appendChild(doc.createTextNode("\n"));
LSOutput lsOutput = domImplLS.createLSOutput();
LSSerializer lsSerializer = domImplLS.createLSSerializer();
FileOutputStream fos;
fos = new FileOutputStream("suitou.xml");
lsOutput.setByteStream(fos);
lsSerializer.write(doc, lsOutput);
fos.close();
}
0394デフォルトの名無しさん
2006/02/11(土) 02:18:33private static Suitou[] toSuitous(String csv) throws Exception {
BufferedReader br = new BufferedReader(new FileReader(csv));
ArrayList list = new ArrayList();
String s = null;
while ((s = br.readLine()) != null) {
String[] l = s.split(",");
Suitou suitou = new Suitou();
suitou.setTekiyou(l[0]);
suitou.setKingaku(l[1]);
if (l.length > 2)
suitou.setBikou(l[2]);
list.add(suitou);
}
return (Suitou[]) list.toArray(new Suitou[list.size()]);
}
}
0395391
2006/02/11(土) 02:27:470396デフォルトの名無しさん
2006/02/11(土) 08:49:34彼女をつくれ
【期限】2月14日
【Ver 】1.4
全然出来なくて困ってます
以前にも質問しましたが、期限が短すぎるという事で駄目でした。
どなたかよろしくお願いします
0397デフォルトの名無しさん
2006/02/11(土) 08:54:120399デフォルトの名無しさん
2006/02/11(土) 12:23:39Kadai384.javaの方をコンパイルすれば勝手にSuitou.javaもコンパイルされる
0400384
2006/02/11(土) 13:41:01ありがとう。
コンパイルしてからKadai384.classやSuitou.classと同じディレクトリにsuitou.csvをおいて
java Kadai384 suitou.csv
と打ったら、以下のエラーっぽいのが出た。
Exception in thread "main" org.w3c.dom.DOMException: INVALID_CHARACTER_ERR: An i
nvalid or illegal XML character is specified.
at com.sun.org.apache.xerces.internal.dom.CoreDocumentImpl.createElement
(Unknown Source)
at Kadai384.toXml(Kadai384.java:33)
at Kadai384.main(Kadai384.java:18)
そういえば、コンパイルするときにも以下のものが。意味がわからなかった。
K:\java\suitoujava>javac Kadai384.java
注: Kadai384.java の操作は、未チェックまたは安全ではありません。
注: 詳細については、-Xlint:unchecked オプションを指定して再コンパイルしてくださ
い。
K:\java\suitoujava>javac -Xlint:unchecked Kadai384.java
Kadai384.java:67: 警告: [unchecked] raw 型 java.util.ArrayList のメンバとしての
add(E) への無検査呼び出しです。
list.add(suitou);
^
Kadai384.java:70: 警告: [unchecked] raw 型 java.util.ArrayList のメンバとしての
<T>toArray(T[]) への無検査呼び出しです。
return (Suitou[]) list.toArray(new Suitou[list.size()]);
^
警告 2 個
0401デフォルトの名無しさん
2006/02/11(土) 13:53:34入力しているXMLは本当にXMLか?
0403デフォルトの名無しさん
2006/02/11(土) 14:04:290404デフォルトの名無しさん
2006/02/11(土) 14:14:38とりあえず、「無検査呼び出しです」でぐぐれば?
オウム返しの質問じゃ、答える側がかわいそうです。
そんなことは分かってるよっ、というなら、話は別ですがね。
0405デフォルトの名無しさん
2006/02/11(土) 14:17:58例外が発生したのは入力データ(suitou.csv)のエンコードのせいだと思う
コンパイル時の警告はJava2 5.0 TigerのArrayやList等でジェネリクスに
よる明示的な型指定がされてないよって言ってるだけだと思う
0406デフォルトの名無しさん
2006/02/11(土) 14:26:40バージョンの記入は必須にしようよ。
5.0云々のやりとりは流石にもう飽きた。
0407405
2006/02/11(土) 14:28:02この行を→BufferedReader br = new BufferedReader(new FileReader(csv));
String encoding="EUC-JP"; // ここはsuitou.csvのエンコーディングにあわせる
FileInputStream fis = new FileInputStream(csv);
BufferedReader br = new BufferedReader(new InputStreamReader(fis, encoding));
に変えてみれ。
0408384
2006/02/11(土) 14:32:24おっしゃるとおりググって、
javac -source 1.4 -Xlint:unchecked Kadai384.java
と入力したら、問題ありませんでした。コードのバージョンが違うみたいですね。
知りませんでした。
>>405
suitou.csvの文字コードを「UTF-8 CR+LF」から「SJis CR+LF」にかえたら
うまくいき、suitou.xmlが出力されました。(suitou.xmlの文字コードは「UTF-8 LF」になってます。どうしてだろ。)
>>391-395
ありがとう
0409384
2006/02/11(土) 14:36:57間違えました。
誤:suitou.xmlの文字コードは「UTF-8 LF」になってます。
正:suitou.xmlの文字コードは「UTF-8N LF」になってます。
・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・↑
0410405
2006/02/11(土) 14:56:20suitou.xmlの文字コードを変えたかったら
この行の後に→lsOutput.setByteStream(fos);
lsOutput.setEncoding("Shift_JIS"); // Shift_JISにしたい場合
を入れればいい
JavaのioのデフォルトエンコーディングはUnicodeだべ?
0411デフォルトの名無しさん
2006/02/11(土) 15:03:280412デフォルトの名無しさん
2006/02/11(土) 15:12:320413デフォルトの名無しさん
2006/02/11(土) 15:25:01> 連立常微分方程式を使ったr=10,l=0.1,c=0.001,q=0.1の時の
> r*dq/dt+l*d^2q/dt^2+q/cのプログラムを教えていただけませんか?
dt≒Δtとおくと
r*dq/dt+l*d^2q/dt^2+q/c=0
⇔ r*Δq/Δt+l*Δ(Δq/Δt)/Δt+q/c=0
⇔ 0+0+0.1/0.001=0
となるんだが…
0414デフォルトの名無しさん
2006/02/11(土) 15:28:150415デフォルトの名無しさん
2006/02/11(土) 15:43:490416デフォルトの名無しさん
2006/02/11(土) 15:46:11っ[諦めろ]
0417デフォルトの名無しさん
2006/02/11(土) 15:53:440418デフォルトの名無しさん
2006/02/11(土) 19:29:120419デフォルトの名無しさん
2006/02/11(土) 19:34:09何の話?
0420デフォルトの名無しさん
2006/02/11(土) 19:42:460421391
2006/02/11(土) 19:51:30public class Suitou {
private String tekiyou = null;
private String kingaku = null;
private String bikou = null;
public Suitou() {
}
public Suitou(String tekiyou, String kingaku, String bikou) {
this.tekiyou = tekiyou;
this.kingaku = kingaku;
this.bikou = bikou;
}
public String getBikou() {
return bikou;
}
public void setBikou(String bikou) {
this.bikou = bikou;
}
public String getKingaku() {
return kingaku;
}
public void setKingaku(String kingaku) {
this.kingaku = kingaku;
}
public String getTekiyou() {
return tekiyou;
}
public void setTekiyou(String tekiyou) {
this.tekiyou = tekiyou;
}
}
0422391
2006/02/11(土) 19:53:47import java.io.BufferedReader;
import java.io.FileOutputStream;
import java.io.FileReader;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
import org.w3c.dom.DOMImplementation;
import org.w3c.dom.Document;
import org.w3c.dom.Element;
import org.w3c.dom.ls.DOMImplementationLS;
import org.w3c.dom.ls.LSOutput;
import org.w3c.dom.ls.LSSerializer;
import com.sun.org.apache.xerces.internal.dom.DOMImplementationImpl;
public class Kadai384 {
public static void main(String[] args) throws Exception {
Suitou[] suitous = toSuitous(args[0]);
int gankin = sumGankin(suitous, "元金");
int shuppi = sumShuppi(suitous, "費");
suitous = addSuitou(suitous, new Suitou("合計", String.valueOf(shuppi),
null));
suitous = addSuitou(suitous, new Suitou("残金", String.valueOf(gankin
- shuppi), null));
toXml(suitous);
}
0423391
2006/02/11(土) 19:54:47private static Suitou[] addSuitou(Suitou[] suitous, Suitou suitou) {
List<Suitou> list = new ArrayList<Suitou>(Arrays.asList(suitous));
list.add(suitou);
return (Suitou[]) list.toArray(new Suitou[list.size()]);
}
private static int sumGankin(Suitou[] suitous, String tekiyou) {
int gankin = 0;
for (int k = 0; k < suitous.length; k++)
if (suitous[k].getTekiyou().equals(tekiyou))
gankin += Integer.parseInt(suitous[k].getKingaku());
return gankin;
}
private static int sumShuppi(Suitou[] suitous, String endWithOfTekiyou) {
int shuppi = 0;
for (int m = 0; m < suitous.length; m++)
if (suitous[m].getTekiyou().endsWith(endWithOfTekiyou))
shuppi += Integer.parseInt(suitous[m].getKingaku());
return shuppi;
}
0424391
2006/02/11(土) 19:59:28private static void toXml(Suitou[] suitous) throws Exception {
Suitou head = suitous[0];
DOMImplementation domImpl = new DOMImplementationImpl();
DOMImplementationLS domImplLS = (DOMImplementationLS) domImpl.getFeature("LS", "3.0");
Document doc = domImpl.createDocument(null, "出納", null);
Element suiElem = doc.getDocumentElement();
for (int i = 1; i < suitous.length; i++) {
suiElem.appendChild(doc.createTextNode("\n"));
Element koElem = doc.createElement("項目");
koElem.appendChild(doc.createTextNode("\n"));
suiElem.appendChild(koElem);
Element tekiElem = doc.createElement(head.getTekiyou());
tekiElem.appendChild(doc.createTextNode(suitous[i].getTekiyou()));
koElem.appendChild(tekiElem);
Element kinElem = doc.createElement(head.getKingaku());
kinElem.appendChild(doc.createTextNode(suitous[i].getKingaku()));
koElem.appendChild(kinElem);
Element biElem = doc.createElement(head.getBikou());
biElem.appendChild(doc.createTextNode(suitous[i].getBikou()));
koElem.appendChild(biElem);
koElem.appendChild(doc.createTextNode("\n"));
}
suiElem.appendChild(doc.createTextNode("\n"));
LSOutput lsOutput = domImplLS.createLSOutput();
LSSerializer lsSerializer = domImplLS.createLSSerializer();
FileOutputStream fos = new FileOutputStream("suitou.xml");
lsOutput.setByteStream(fos);
lsOutput.setEncoding("Shift_JIS");
lsSerializer.write(doc, lsOutput);
fos.close();
}
0425391
2006/02/11(土) 20:01:03private static Suitou[] toSuitous(String csv) throws Exception {
BufferedReader br = new BufferedReader(new FileReader(csv));
ArrayList<Suitou> list = new ArrayList<Suitou>();
String s = null;
while ((s = br.readLine()) != null) {
String[] l = s.split(",");
Suitou suitou = new Suitou();
switch (l.length) {
case 3:
suitou.setBikou(l[2]);
case 2:
suitou.setKingaku(l[1]);
case 1:
suitou.setTekiyou(l[0]);
}
list.add(suitou);
}
return (Suitou[]) list.toArray(new Suitou[list.size()]);
}
}
0426384
2006/02/11(土) 22:00:33合計と残金の出力の分も作ってくれてありがとう。(なおかつ、コードを5.0にしてくれて)
XSLでごりごりやってたけど、こっちのほうがきれいで良いです。
もうそろそろ寝れそうです。目が痛いや。
ただ、実行してみると合計の値と残額の値とが逆に出力されます。
>>422のshuppiとgoukeiの部分に問題があるのかと思い、
いろいろ書き換えてみたけれど、ソースの意味がわからないので…orz
今のところ根本的には解決できていません。(表示だけなら何度かできています。)
0428391
2006/02/11(土) 22:18:57>【 補足 】変換過程で合計(金額の3行目以下の合計)と残金(金額の2行目から合計を引いたもの)を出力するみたい。
これって、
合計=出費の全額
残金=元金-合計
って意味じゃないの?
0429384
2006/02/11(土) 22:42:03長い間お付き合いありがとうございます。もうしばらくお付き合いお願いします。
>合計=出費の全額
>残金=元金-合計
確かに、そのとおりです。
いま、もう一度>>421-425までのソースを新たにファイルを作り実行しましたが、
出力されるsuitou.xmlでは合計、残金ともに違ってました。
以下に入力ファイルと出力ファイルの内容を記します。
0430384
2006/02/11(土) 22:44:26文字コード:Shift_Jis
摘要,金額,備考
元金,5000,
飲食費,560,ジュース、パン
交通費,450,電車
振込,2180,
手数料,70,
貯金,1000,
0431384
2006/02/11(土) 22:45:36文字コード:Shift_Jis
<?xml version="1.0" encoding="Shift_JIS"?>
<出納>
<項目>
<摘要>元金</摘要><金額>5000</金額><備考/>
</項目>
<項目>
<摘要>飲食費</摘要><金額>560</金額><備考>ジュース、パン</備考>
</項目>
<項目>
<摘要>交通費</摘要><金額>450</金額><備考>電車</備考>
</項目>
<項目>
<摘要>振込</摘要><金額>2180</金額><備考/>
</項目>
<項目>
<摘要>手数料</摘要><金額>70</金額><備考/>
</項目>
<項目>
<摘要>貯金</摘要><金額>1000</金額><備考/>
</項目>
<項目>
<摘要>合計</摘要><金額>1010</金額><備考/>
</項目>
<項目>
<摘要>残金</摘要><金額>3990</金額><備考/>
</項目>
</出納>
0432391
2006/02/11(土) 23:03:21適用=××費ならば出費
で見てたけど、そうじゃないのね。了解。
ところで、CSVの中にある貯金って出費扱いでいいの?
んでもって、3行目以降は全て出費扱いでOK?
それとも、3行目以降に入金と出費が混在する?
混在するなら入金と出費の判別が必要だから、
何かしらルール(+−とか▲とか)が必要になるよ。
0433デフォルトの名無しさん
2006/02/11(土) 23:09:170434384
2006/02/11(土) 23:27:18>>384などでの説明が足らず誤解させてしまってすみません。
この場合、csvファイルの3行目以降はすべて出費扱いでお願いします。
0435デフォルトの名無しさん
2006/02/11(土) 23:29:01【 期限 】2月13日
【 補足 】丸投げです。
画面サイズ240x320
顧客情報として
名前(ローマ字表記)、メールアドレス、会員番号(数字5桁)
を画面上の英数字ボタンで入力する。
ダウンロードサービス対象曲は3つ以上のカテゴリーでそれぞれ20曲とする。
ダウンロードしたい曲の指定は画面上のボタンで操作する。
サービス利用の確認画面を用意する。
操作の取り消し機能は必要ない。
0436391
2006/02/12(日) 00:06:42じゃあ、Kadai384.javaをこんな風に書き換えて。
int shuppi = sumShuppi(suitous, "費");
を
// int shuppi = sumShuppi(suitous, "費");
にするか、削除して。
で、
private static int sumShuppi(Suitou[] suitous) {
int shuppi = 0;
for (int m = 2; m < suitous.length; m++)
shuppi += Integer.parseInt(suitous[m].getKingaku());
return shuppi;
}
を追加して。
あと、
private static int sumShuppi(Suitou[] suitous, String endWithOfTekiyou)
を削除するか、コメントアウトするか、前に、
@SuppressWarnings("unused")
を追加して。
駄目だったらKadai384.javaをもう一度貼るから言って。
0437391
2006/02/12(日) 00:09:55int shuppi = sumShuppi(suitous);
を追加して。
0438384
2006/02/12(日) 00:44:29うまくいきました。入力ファイルを変えても、合計も残金もぴったり合いました。
>>391何度も時間を割いてくれて本当にありがとう。
これでようやく眠れます。二日分寝てきますね。
では風呂に入ってきます。
0439デフォルトの名無しさん
2006/02/12(日) 00:46:08はぁ?
0440デフォルトの名無しさん
2006/02/12(日) 01:54:20途中までやった。眠ぃので寝ます。
ttp://www.wikiroom.com/java/index.php?SourcePost_____#ecdc9277
0442デフォルトの名無しさん
2006/02/12(日) 13:04:33【問題】
コマンドラインで指定したファイルをコピーするプログラムを作成しなさい。
・コピー元ファイル名およびコピー先ファイル名は必須項目である。
・指定する順序はどちらでもよい。
【補足】
?の穴埋めです。実は>>317-318で同じ事を質問し>>319-320さんが答えてくれましたが、
学校のほうで「穴埋めでなければ不可である」ときました。
本当に困っています。どうかよろしくお願いします。
【期限】
2月13日までです。
import java.io.*;
public class Ecopy{
public static void main(String[] args){
BufferedWriter bw=null;
BufferedReader br=null;
String in="";
String out="";
String line;
for(int i=0;i<args.length;i++){
if(args[i].equals( ? )){
in=args[ ? ];
}else if(args[i].equals( ? )){
out =args[ ? ];
}
}
0443442の続きです
2006/02/12(日) 13:05:20System.out.println("Usage:");
System.out.println("-iコピー元ファイル名");
System.out.println("-oコピー先ファイル名");
System.exit(1);
}
try{
br=new BufferedReader(new ? (in));
bw=new BufferedWriter(new ? (out));
while((line=br.readLine())!=null){
bw.write(line);
bw. ? ();
}
}catch( ? ){
System.out.println("指定したファイルは存在しません");
}catch(IOException ioe){
System.out.println("ファイル入力エラー"+ioe);
} ? {
try{
if(br !=null){br.close();}
if(bw !=null){bw.close();}
}catch(Exception e){
}
}
}}
0444デフォルトの名無しさん
2006/02/12(日) 13:25:16一度やろうとしたけど意味が分からなかったところがあってやめた記憶があります。
>317のときは
for(int i=0;i<args.length;i++){
if(args[i].equals(args(ここ)){
in=args[ここ];
}else if(args[i].equals(args[ここ])){
out =args[ここ];
}
}
って書いてあるから意味が分からなかった。
>442だと
for(int i=0;i<args.length;i++){
if(args[i].equals( ? )){
in=args[ ? ];
}else if(args[i].equals( ? )){
out =args[ ? ];
}
}
に直ってるからなんとかできそうかも。ちょっと待て。
0445デフォルトの名無しさん
2006/02/12(日) 13:30:12ゾロ目おめ
俺は諦めた
0446444
2006/02/12(日) 13:33:16// Ecopy.java
import java.io.*;
public class Ecopy {
public static void main(String[] args) {
BufferedWriter bw = null;
BufferedReader br = null;
String in = "";
String out = "";
String line;
for (int i = 0; i < args.length; i++) {
if (args[i].equals("-i")) {
in = args[i + 1];
} else if (args[i].equals("-o")) {
out = args[i + 1];
}
}
if (in.length() == 0 || out.length() == 0) {
System.out.println("Usage:");
System.out.println("-i コピー元ファイル名");
System.out.println("-o コピー先ファイル名");
System.exit(1);
}
try {
br = new BufferedReader(new FileReader(in));
bw = new BufferedWriter(new FileWriter(out));
while ((line = br.readLine()) != null) {
bw.write(line + "\n");
bw.flush();
}
} catch (FileNotFoundException fnfe) {
System.out.println("指定したファイルは存在しません");
0447444
2006/02/12(日) 13:35:22つづき
} catch (IOException ioe) {
System.out.println("ファイル入力エラー" + ioe);
} finally {
try {
if (br != null) br.close();
if (bw != null) bw.close();
} catch (Exception e) {}
}
}
}
嫌だったところがあったので穴埋めじゃないところも2箇所いじりました。
1)
System.out.println("-i コピー元ファイル名");
System.out.println("-o コピー先ファイル名");
→オプションとファイル名の間に半角スペースを入れた。
2)
bw.write(line + "\n");
→改行するようにした。
0448441-442
2006/02/12(日) 14:30:40御早い返事で大変助かりました。
前回は半端に自分で埋めてしまった所があって問題だったのですね。気をつけます。
何はともあれ、本当に感謝の言葉もありません。
それでも、文面のみの粗野ながらも感謝の言葉をば
本当にありがとうございました。
0449デフォルトの名無しさん
2006/02/12(日) 20:28:48BM法を用いて、文字列の出現位置をすべて表示するプログラムを作りなさい。
なお、出現位置を保持するために、「ArrayList」を使用しなさい。
【 期限 】2月13日 10時
期限まであまり無いですが、よろしくお願いします。
0450デフォルトの名無しさん
2006/02/12(日) 20:43:500451デフォルトの名無しさん
2006/02/12(日) 21:24:400452デフォルトの名無しさん
2006/02/12(日) 22:01:030453デフォルトの名無しさん
2006/02/13(月) 22:22:09http://www.pc-view.net/Solution/040120/page74.html
0454デフォルトの名無しさん
2006/02/13(月) 22:23:32残念だ、日曜日に見ていれば作ったかも知れなかったが・・・
0455デフォルトの名無しさん
2006/02/14(火) 00:54:58の課題を書き込んだ者です。
提出期限もあったので、課題は中途半端な状態で提出しました。
しかし、今後のためにも、是非理解したいので、ご教授お願いできますか?
提出したものは、
↓のような感じです。
http://sourcepost.sytes.net/sourcepost/sourceview.aspx?source_id=27101
入力データをそのまま掲示板に貼り付けるわけにはいかないので、
↓のようなサンプルのCSVでお願いします。
http://www.post.japanpost.jp/zipcode/dl/kogaki/lzh/ken_all.lzh
0456デフォルトの名無しさん
2006/02/14(火) 11:48:27修正Verを貼ってみました
http://sourcepost.sytes.net/sourcepost/sourceview.aspx?source_id=27107
複数回探索するために、探索開始インデックスを引数に追加してます。
また、元のソースの
while (txt.charAt(pt) == pat.charAt(pp)) {
if (pp == 0)
//return pt; // 探索成功
pp--;
pt--; //////*(A)*///////
}
pt += skip[txt.charAt(pt)]; //////*(B)*///////
部分一致したが完全一致ではなかった場合、
(A)の部分で変化したptを(B)の部分でも利用しているため、判定に余計な時間がかかる可能性があります。
(BM法の仕様から外れてしまう)
そこで完全一致判定のところで別の変数を使っています。
0457デフォルトの名無しさん
2006/02/14(火) 12:28:54ご返答ありがとうございます。
自宅に帰ってから、しっかり理解したいと思います。
本当にありがとうございました。
0458デフォルトの名無しさん
2006/02/19(日) 16:27:35でもCの宿題スレは進んでるし…
0459名無し子
2006/02/19(日) 16:28:58昨日も書いたけど消してもらえないし
自分の昔作ったホムペなんですがIDやパスワードを再発行してもらおうとしましたが
本人確認を出せと言われるし
私は消して欲しいだけなのです
ネットのゴミなので恥ずかしいし
もう過去は消したくて・・・
どなたか知識のある方お願いします。
昔のライコスで作ってあります。
登録情報も覚えていなくてメアドも変わっていてどうにもなりません
掲示板などは何とか消せました。
お願いします!!!!!
http://tama_kyuusoku.at.infoseek.co.jp/
0460デフォルトの名無しさん
2006/02/20(月) 03:48:19表示の順番は画像の一番左上から右下にかけて、横順と縦順の2通り作成せよ。
【期限】2月21日(火)朝10時まで
丸投げです、すいません。
画像を扱うプログラミングは初めてなので全くわかりません。
よろしくお願いします。
0461デフォルトの名無しさん
2006/02/20(月) 16:05:07teacher, teaching assistant, low grade exception の三つのクラスを用いて、以下の仕様のプログラムを組みなさい。
・Teacherクラスがメインクラスとする。
・成績の悪い生徒に送られるメッセージは疑似メッセージとして、JOptionPane.showMessageDialogを利用し出力する事。詳しくはサンプルアウトプットを参照。
・TeachingAssistantクラスは、生徒の成績を一括して付ける事。
・Teacherクラスは、付けられた成績を受けて、それをLowGradeExceptionに流す事。
・LowGradeExceptionクラスは、出力する情報をまとめて、Teacherクラスに戻す事。
・student name を入力する項目で、exit が入力された場合、終了させる事。
・try,catch,throwing Exceptionの練習課題なので、これらが使われていない場合は採点されない。
・クラスが三つ以下、getメソッドが使われていない場合も採点されない。
サンプル入力、出力の結果。
ttp://www.imgup.org/iup166180.jpg.html
ttp://www.imgup.org/iup166181.jpg.html
【 期限 】2月22日
【 Ver 】1.4〜1.5
【 補足 】自分で書いたソースです。
ttp://sourcepost.sytes.net/sourcepost/sourceview.aspx?source_id=27166
ttp://sourcepost.sytes.net/sourcepost/sourceview.aspx?source_id=27167
ttp://sourcepost.sytes.net/sourcepost/sourceview.aspx?source_id=27168
よろしくお願いします。
0462デフォルトの名無しさん
2006/02/20(月) 16:05:37を入れるゲームを作れ。ただし、ボールはゴールを外れてx=0になったらボール
は再び元の位置に戻る。ピクセルは800×800ボールの速さは自由とする。
スタートボタンも作れ。
【期限】2月22日まで
俺も丸投げです。結構自由なのでお任せします、おね願いします。
0463461
2006/02/21(火) 14:48:34先生、助手、点数が悪かった人用のエクセプションという3つのクラスを作り、
先生のクラスで、助手を雇い(雇った助手はインスタンスメソッドで生成されます。)
、助手が生徒の名前、生徒の点数を出します。
また、生徒の名前を入力する時に、exitと入力すると終了するようにします。
そして、助手は所詮助手なので、コースの名前、セクション番号を決める事は出来ないので、
先生のクラスでこの二つを入力して、助手の暮らすに受け渡すという方法を使うそうです。
また、先生のクラスで宿題の名前、赤点設定点(LowGrade)を入力し、これも助手のクラスに流すそうです。
生徒の点数が、赤点より低かった場合、点数が悪かった人用のエクセプションにthrowされ、
それを先生のクラスが受けて、ttp://www.imgup.org/iup166181.jpg.html のような出力をするそうです。
昨日からずっとやっているのですが、いまだにごちゃごちゃで分かりません…。
0464デフォルトの名無しさん
2006/02/21(火) 15:53:36getメソッドってどのクラスのメソッド?
0465461
2006/02/21(火) 16:04:07レスありがとうございます。
ゲットは、先生クラス、点数が悪かった人用のエクセプションクラスで使うみたいです。
//先生クラス
while(!done){ //すべてが終わったらここに行く
try{
done = teachinAssistant.grade();
}catch (LGE lge){
studentName = lge.getStuName(){
}
と
//点数が悪かった人用のエクセプション(LowGradeException) クラス
Class LGE extends Exception{
private String name;
public String getStuName(){
return name;
}
という風にするらしいです。
0466デフォルトの名無しさん
2006/02/21(火) 22:19:26http://kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/1662.txt
0467461
2006/02/22(水) 01:35:49ありがとうございます。
cutoff scoreに50、Enter scoreに49と入力しても、もう一度、
Enter student name; type 'exit' if done:
を訪ねてきて、JOptionPane.showMessageDialogに飛ばないのですが、
どのようにすれば良いのでしょうか?
0468デフォルトの名無しさん
2006/02/22(水) 02:28:48入力の度にチェックするの?
全部入力が終わってexitを入力されたらまとめてダイアログ出すようにしてあるけども
とりあえず1回の入力毎にチェック(TeachingAssistクラスのみ編集)
http://kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/1663.txt
0469461
2006/02/22(水) 02:37:27コンパイルをしてみたのですが、
Enter score: の後に出る、Enter student name; type 'exit' if done: で
exitと入力をし、点数が赤点以上、赤点以下でもその場で終わってしまいます。
0470461
2006/02/22(水) 02:39:38赤点以下なら、JOptionPane.showMessageDialogが表示されないと
おかしいはずなのに、赤点以上同様その場で終わってしまいます。
寝不足で日本語がおかしくて申し訳ありません・・・。
0471461
2006/02/22(水) 03:01:08ご迷惑をおかけして申し訳ありませんでした。ありがとうございました。
しかしながら、どのように練習?をすればこんなに綺麗なソースを書けるようになるのでしょうか?
自分の書いたソースと、466さんの書いたソースの明解度の違いに驚きました。
0472デフォルトの名無しさん
2006/02/23(木) 09:28:42・登録用配列を作り数値を確認用に使う(例、String[] listData = {"1", "2"〜"10"};)
・色配列を作っておき(例、String[] colorData = {"aka","midori", "ao", "kuro"};など)
また、リストからクリックした色(文字)を履歴に追加する
・履歴配列で今までの履歴を見る(arrayでもいいです。)
・画面の順番
1・開始画面(入力用リスト(数値入力)・確認用ボタン(リストに入力されていた数値が登録されていたらトップページへ))
2・トップページ(ボタン(色画面へ)・ボタン2(履歴へ))
3・色画面(リスト(色数件)・ボタン(履歴に追加+トップに戻る))
4・履歴画面(リスト(色画面で追加された今までの色を表示)・ボタン(トップページに戻る))
【 期限 】2月28日
【 補足 】すいませんが丸投げです。
0473デフォルトの名無しさん
2006/02/23(木) 13:37:530474デフォルトの名無しさん
2006/02/23(木) 17:28:060475デフォルトの名無しさん
2006/02/27(月) 14:33:50次のコードは自然数nを初期設定し、数列1/1*1,1/2*2,,,,,,,,,1/k*k,,,,,,,,,,,,,1/n*nの
値及びπ^2との比を、k=nまで500おきに1行ずつ表示するプログラムである。空欄を埋めよ。
public class sum {
public static void main(String[] args) {
int n = 10000;
int k, skip = 500;
( �@ )
double sum = 0.0;
for(k=1; k<=n; k++){
sum = sum + 1.0/(k*k);
if( �A )
( �B ) r = Math.( �C )*Math. ( �D )/sum;
system.out.print("k="+k+"\t: "+sum);
System.out.println("\t"+r);
}
}
}
}
<<実行結果>>
◎_n=_10000_までの和_◎
k=100 : ...........
【 期限 】3/2
【 補足 】お願いします。
0476デフォルトの名無しさん
2006/02/27(月) 21:02:19�@System.out.println("◎_n=_10000_までの和_◎");
�An%skip == 0
�Bdouble
�C�D PI
あと�Aの右に{がいるかな
0477おし
2006/02/27(月) 23:40:33次のクラスが定義されている時
package exercise;
public class Point {
private int x, y;
int getX() {return x;}
public int getY() {return y;}
public Point(int x0, int y0){
x = x0;
y = y0;
}
}
1、次のクラスの中にアクセス制限に違反しているメソッド呼び出しはどれか?
package question;
import exercise.Point;
public class Q1{
static void main(String[] args){
Point p = new Point(3, 4);
System.out.println(p.getX());
System.out.println(p.getY());
}
}
0478おし
2006/02/27(月) 23:41:54package execise;
class Point3D extends Point {
private int z;
int getZ() {return z;}
void moveX(int dx){ x += dx;}
Point3D(int x0, int y0){
super(x0, y0);
}
}
3、下のクラス定義の中で、アクセス制限に違反しているメソッドの定義を答えよ
package question;
import exercise.Point;
public class ColorPoint extends Point{
private String color;
public String getColor() {return color;}
public int xpos() {return getX(); }
public int ypos() {return getY(); }
public ColorPoint(int x0, int y0, String c) {
super(x0, y0);
color = c;
}
}
0479デフォルトの名無しさん
2006/02/27(月) 23:42:070480デフォルトの名無しさん
2006/02/28(火) 00:12:491、次のクラスの中にアクセス制限に違反しているメソッド呼び出しはどれか?
System.out.println(p.getX());
2、下のmoveXメソッドの定義はアクセス制限に違反しているか否かか答えよ
違反している (xがprivate)
3、下のクラス定義の中で、アクセス制限に違反しているメソッドの定義を答えよ
public int xpos() {return getX(); }
どの設問も [ x ]絡みのアクセス装飾子の問題ですね
public , protected , デフォルト , private の関係をもう一度復習してみてください
0481おし
2006/02/28(火) 00:31:48>>480 ありがとうございます
0482デフォルトの名無しさん
2006/02/28(火) 15:32:22【 期限 】3/2
【補足】ArrayListの中身は、
list.No(1,2,3・・・10)
list.Id(100,200.300・・・1000)
list.color(青、赤、緑・・・などの10色)
すいませんがお願いいたします。
0483デフォルトの名無しさん
2006/02/28(火) 19:00:23String text = javax.swing.JOptionPane.showInputDialog(null);
if (text != "yes")
System.out.println("Cancel");
else
System.out.println("OK");
System.exit(0);
0484デフォルトの名無しさん
2006/02/28(火) 19:02:59public class Exercise1{
public void run(){
drawPolygon(50, 200, 100);
drawPolygon(150, 200, 100);
//ここにdrawPolygonメソッドの定義を書く//
public static void main(String[] args){
Exercise1 ex1 = new Exercise1();
ex1.run();
}
}
}
ヒント:drawPolygonの定義は次のようになる。
Public void drawPolygon(int x, int y, int length){
ここを埋める
}
0485デフォルトの名無しさん
2006/02/28(火) 19:03:58String[] s = new String[3];
s[0] = “Delphi”;
0486デフォルトの名無しさん
2006/02/28(火) 19:06:00java Calc 4 – 3
とコマンド行引数を与えて実行すると、4 - 3 の計算結果を表示するようにせよ。演算の種類は加減乗除の4種類でよい。
ヒント: 問題文の例ではargs[0]の値は“4”、args[1]の値は“−”、args[2]の値は”3“となる。すべて文字列なので、Integer.parseIntを使ってint型の値に変更しなければならない。
0487デフォルトの名無しさん
2006/02/28(火) 19:07:01public class Point{
public int x;
public int y;
public static void scale(int s){
x *= s;
y *= s;
}
public static void scale(Point p, int s){
p.x *= s;
p.y *= s;
}
}
0488デフォルトの名無しさん
2006/02/28(火) 19:10:42> if (text != "yes")
textと"yes"が違うインスタンスなので、常に正だから
>>484 >>485
シラネ
>>486
switch()でゴリゴリかけるのでパス
>>487
xとyはインスタンス変数なのにscale(int)では(ry
0489前半
2006/02/28(火) 19:12:33/* Point.java に保存
*/
public class Point {
public int x, y;
public Point(int x0, int y0){
x = x0;
y = y0;
}
}
/* Rect.javaに保存
*/
public Point upperLeft; //左上隅の座標
public int width;
public int height;
0490後半
2006/02/28(火) 19:13:42public Rect (int x0, int y0, int w, int h){
upperLeft = new Point(x0, y0);
width = w;
height = h;
}
public Point getLowerRight() { // 右下隅の座標を返す
return new Point(upperLeft.x + wodth,
upperLeft.y + height);
}
public static void main (String[] args) {
Rect r = new Rect(5, 10, 15, 20);
Point p = r.getLowerRight();
System.out.println(p.x + “ “ + p.y);
}
}
0491後半
2006/02/28(火) 19:17:25次のプログラムは誤っている。どこが誤っているか指摘せよ。
String[] s = new String[3];
s[3] = “Delphi”;
0492デフォルトの名無しさん
2006/02/28(火) 19:39:39なんかよく分からないんですがJAVAが実行できなくなってしまったんですが。
どうすればいいんでしょうか。コンパイルはできるんですけど。
0493デフォルトの名無しさん
2006/02/28(火) 19:50:040494デフォルトの名無しさん
2006/02/28(火) 19:50:141 PC投げる
2
0495デフォルトの名無しさん
2006/02/28(火) 19:55:150496デフォルトの名無しさん
2006/02/28(火) 20:20:20String[] s = new String[3];
で確保されるのは、
s[0],s[1],s[2]
0497デフォルトの名無しさん
2006/02/28(火) 21:47:27ダブルクォートが全角
0498デフォルトの名無しさん
2006/02/28(火) 21:54:13public class Rect extends Point{
public int width;
public int height;
public Rect (int x0, int y0, int w, int h){
x = x0;
y = y0;
width = w;
height = h;
}
public Point getLowerRight() { // 右下隅の座標を返す
return new Point(x + width, y + height);
}
public static void main (String[] args){
Rect r = new Rect(5, 10, 15, 20);
Point p = r.getLowerRight();
System.out.println(p.x + " " + p.y);
}
}
0499デフォルトの名無しさん
2006/02/28(火) 22:09:07public class Calc{
public static void main(String args[]){
if(args.length != 3) System.out.println("コマンドライン引数の数が不正です");
else calc(args);
}
static void calc(String args[]){
int a, b, r;
try{
a = Integer.parseInt(args[0]);
b = Integer.parseInt(args[2]);
if(args[1].equals("+")){
r = a + b;
}else if(args[1].equals("-")){
r = a - b;
}else if(args[1].equals("*")){
r = a * b;
}else if(args[1].equals("/")){
r = a / b;
}else{
System.out.println("不正な演算子です");
return;
}
System.out.println(r);
}catch(Exception e){
System.out.println("数値の入力が不正です");
}
}
}
0500
2006/03/01(水) 14:09:06実行できました
0501デフォルトの名無しさん
2006/03/01(水) 14:10:270502デフォルトの名無しさん
2006/03/01(水) 16:09:410503デフォルトの名無しさん
2006/03/01(水) 16:29:35問題の意味がわからない
なんでString配列とVectorの二つに追加するの?
何をどう追加するの?
list.Noって何?メソッド?変数?型は?
list.Id,list.colorも同様
()の中に値があるが引数なの?青とか赤とか""で囲まれてないけどStringじゃないの?
色って何?色自体を表示するの?色の名前を表示するの?
てことで意味不明
0504デフォルトの名無しさん
2006/03/01(水) 21:35:51ホントにかけ算も実行できたのかと。
0505デフォルトの名無しさん
2006/03/01(水) 22:22:15StringToken.java
import java.io.BufferedReader;
import java.io.FileNotFoundException;
import java.io.FileReader;
import java.io.IOException;
import java.util.StringTokenizer;
public class StringToken {
public static void main(String[] args) {
String str = "";
try {
BufferedReader br = new BufferedReader(new FileReader("token.txt"));
while( (str = br.readLine()) != null) {
StringTokenizer st = new StringTokenizer(str);
while (st.hasMoreTokens()) {
System.out.println(st.nextToken());
}
}
} catch (FileNotFoundException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
}
}
0506デフォルトの名無しさん
2006/03/02(木) 00:22:33mysql-connector-java-3.0.8-stable-bin.jarというファイルが欲しいのですが、mySQLのサイトで無いように思われます。
どなたか、保管しているサイトを知っておりましたら、誘導をお願いします。
0507デフォルトの名無しさん
2006/03/02(木) 02:29:55(1)下は実行列X(配列名x)実ベクトルy、z(配列名y、z)
が与えられたときに、ベクトルXy−zを計算してベクトルw(配列名w)に
格納するメソッドの一部である。( )を埋めよ。
public static void Xy_mns_z(
double[][]x, double[]y, double[]z, double[]w ) {
double wj;
int m=x.length;
int n=x[0].length;
for( 1 )
wj=( 2 )
for( 3 )
( 4 )
w[j]=wj;
}
}
(2)ベクトルy=Ax−bを計算するために(1)のメソッドをmainで呼び出すときの
文を書け。ただしy、A、x、bとする。
【期限】
3/2
【補足】
お願いします。
0508507
2006/03/02(木) 02:31:280509507
2006/03/02(木) 02:32:31まじですいません。
0510デフォルトの名無しさん
2006/03/02(木) 06:42:22(1)
public static void Xy_mns_z(
double[][] x, double[] y, double[] z, double[] w){
double wj;
int m=x.length;
int n=x[0].length;
for(int j=0;j<m;j++){
wj = -z[j];
for(int i=0;i<n;i++)
wj += x[j][i]*y[i];
w[j] = wj;
}
}
(2)
Xy_mns_z(A,x,b,y);
0511デフォルトの名無しさん
2006/03/02(木) 10:44:00>mysql-connector-java-3.0.8-stable-bin.jar
確かにそのバージョンにこだわるのであればMySQLのサイトに無いですねぇ
ただ、単純にJDBCドライバを使われるのであればリリースされている
3.1.12とかのバージョンじゃダメなんですかね?
外してたらすみません。
0512デフォルトの名無しさん
2006/03/02(木) 10:51:03ゴメソ br.close();抜けてた。適当に入れておいて
0513デフォルトの名無しさん
2006/03/02(木) 20:13:30あ、なるほど。調べてみましたら、同じ効力のファイルのようです。
こちらをダウンロードしてみることにします。
ありがとうございました。
0514507
2006/03/02(木) 23:44:54(1)、それと同じ回答あるんだけど完全に不正解とされてるんだよね・・・
もしかしたらx[0].length→y.length かもしれない。
誰か分かりそうな人いませんか?お願いします・・・
あと、(2)については理解できました。ありがとうございます。
0515デフォルトの名無しさん
2006/03/02(木) 23:56:46import java.io.*;
public class Approx {
public static void main (String[] args) {
int i, n=1000000, k=0; double x, y, ds, ap; PrintWriter fo; long tb, te;
try {
fo=new PrintWriter(
new BufferedWriter(
new FileWriter(
args[0])));
tb=System.currentTimeMillis();
for (i=0; i<n; i++) {
x=2*Math.random()-1;
y=2*Math.random()-1;
if ((x-1)*(y-1)>1) k++;
}
te=System.currentTimeMillis();
long dm=te-tb;
ds=dm/1000.0;
ap=4.0*k/n;
fo.println(ds+"秒\n"+"近似値 ="+ap);
fo.close();
}
catch(Exception e) {
System.out.println("書き込みエラー: "+e);
}}}
(1)dmでは何を計算しているか。
(2)apを次式で計算した場合の格値とその理由を説明せよ。
(i)ap=k/n*4.0;
(ii)ap=4*k/n;
【期限】過ぎてます・・・
0516デフォルトの名無しさん
2006/03/03(金) 00:27:05(1)dmでは何を計算しているか。
forループ部分の処理時間(ミリ秒)の計算結果を格納している
(2)
2)apを次式で計算した場合の格値とその理由を説明せよ。
(i)ap=k/n*4.0;
→0.0 理由:k/nの計算結果がint型の結果となるためその後0*4.0で結果は0.0
(ii)ap=4*k/n;
→1.0 理由:上記に似ているが、4*kの結果がint型で/nの結果もint型になるため結果は1で
apがdouble型のため暗黙のキャストで1.0
ってこんなんじゃだめ?
0517515
2006/03/03(金) 00:31:57なるほど・・・
dmの単位はミリ秒だということまで!ありがとう!
(2)の計算結果も実際実行させてみたらそうなってました〜。
本当にありがとうございました。
0518デフォルトの名無しさん
2006/03/03(金) 00:34:120519デフォルトの名無しさん
2006/03/03(金) 00:38:12http://pc8.2ch.net/test/read.cgi/tech/1140878286/356-357
0520デフォルトの名無しさん
2006/03/03(金) 01:08:43ありがとうございます!
0521デフォルトの名無しさん
2006/03/03(金) 08:52:34地球温暖化による温度上昇を2010年より10年ごとにもとめよ
また、それぞれどのような影響が出るかとどのように対処するかを出力せよ。
【期限】
やばくなるまえに
【補足】
どこの地域の温度でもいいです。
0522デフォルトの名無しさん
2006/03/03(金) 09:42:490523デフォルトの名無しさん
2006/03/03(金) 10:41:570524デフォルトの名無しさん
2006/03/03(金) 12:37:470525デフォルトの名無しさん
2006/03/03(金) 13:33:300526デフォルトの名無しさん
2006/03/03(金) 15:04:00日本語使うと2バイトになるだろ。
場合によっては4バイトになる。
0527デフォルトの名無しさん
2006/03/03(金) 21:05:051文字ったってchar型なら2バイトじゃない?違ったらスマソ
まぁ、当の522は聞き逃げ厨な様だが
0528デフォルトの名無しさん
2006/03/04(土) 00:00:140529デフォルトの名無しさん
2006/03/04(土) 00:05:56【課題】
起動されると文字入力待ちとなる。
何らかの文字列が入力され、Enterが押されたら
入力された文字列を画面上に表示し、再度文字入力待ちとなる。
入力された文字が「q」 一文字の場合は画面には表示せず終了する。
public class WaitingAgain {
public static void main(String[] args) {
for (int i = 0; i < args.length; i++) {
BufferedReader reader = new BufferedReader(new InputStreamReader(System.in));
try{
String line = reader.readLine();
System.out.println(line);
if (line = reader.readLine() equals('q')) {
System.out.println();
}
} catch (IOException e) {
System.out.println(e);
}
}
}
}
0530529
2006/03/04(土) 00:10:445つ程残っていまして、他にも課題があるため少々焦っている次第です。
上のソースがうまく改行されずに見にくく申し訳ありません。
0531デフォルトの名無しさん
2006/03/04(土) 00:31:56import java.io.*;
public class WaitingAgain {
public static void main(String[] args) {
BufferedReader reader = new BufferedReader(new InputStreamReader(System.in));
String line;
try{
while(!(line = reader.readLine()).equals("q")){
System.out.println(line);
}
} catch (IOException e) {
System.out.println(e);
}
}
}
0532デフォルトの名無しさん
2006/03/04(土) 17:15:04また、文章を入力する画面で、「quit」と入力したらプログラムを終了させるようにしなさい。
Eggy : 母音(a,i,u,e,o)が入力されたら、その前に egg と表示。例:dog → deggog
Ava : 入力した単語の最初の文字を最後に移動し、ava と表示。例:I like a dog → Iava ikelava aava ogdava
Shift: String N のポジションに文字列をずらします。例:Nが3の場合。 dog → fqi
出力例: http://kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/1678.txt
【 期限 】3/6
【 Ver 】1.4
よろしくお願いします。
0533デフォルトの名無しさん
2006/03/05(日) 00:30:32正直俺も勉強しながら作ったんでソースは汚いけど、とりあえず仕様通りには動いたyp
参考にならなかったらスマソ
conv.java(main)
ttp://sourcepost.sytes.net/sourcepost/sourceview.aspx?source_id=27257
Ava.java
ttp://sourcepost.sytes.net/sourcepost/sourceview.aspx?source_id=27254
Conversion.java
ttp://sourcepost.sytes.net/sourcepost/sourceview.aspx?source_id=27251
Eggy.java
ttp://sourcepost.sytes.net/sourcepost/sourceview.aspx?source_id=27255
Shift.java
ttp://sourcepost.sytes.net/sourcepost/sourceview.aspx?source_id=27256
0535デフォルトの名無しさん
2006/03/05(日) 00:39:01フルカラーを64色ぐらいまで落としたいのですが。
0536デフォルトの名無しさん
2006/03/05(日) 05:46:190537532
2006/03/05(日) 14:27:03533さん、ありがとうございました。
ちょっと出力で質問があるのですが、
何番で文章をコンバートしますか?
3
あなたの文章は、
文章を何行ずらすか、選択してください。(ASCII表参照):2
出力された文字
文章(英語のみ)を〜
といった風に出力されてしまうのですが、3を選んだ場合は、
「文章を何行ずらすか、選択してください。(ASCII表参照):」を入力した後に
「あなたの文章は、」 が来るようにしたいのですが、どうすれば良いのでしょうか?
0538デフォルトの名無しさん
2006/03/05(日) 14:51:50>533ではないが。
conv.javaの
System.out.println("あなたの文章は");
AL = con.getData();
を入れ換えて、
AL = con.getData();
System.out.println("あなたの文章は");
にする。
0539532
2006/03/05(日) 16:00:41ありがとうございました。
0540デフォルトの名無しさん
2006/03/07(火) 16:43:31テキストを読み込んで
'▼'の次の行から'▲'の前の行までをString[]に入れるにはどうすればよいのでしょうか?
いろいろやってみたのですが型変換がうまくできません
0541デフォルトの名無しさん
2006/03/07(火) 16:49:00ソースコピペしる。
0542デフォルトの名無しさん
2006/03/08(水) 12:37:341.すでに存在する文字列(strings)を大文字から小文字に変換するプログラムを製作しなさい。
ヒント: ‘A’(65) は ‘a’ (97) ‘Z’(90)は ‘z’(122)(※()内はアスキー表番号)
2.利用者に入力させたstr1 と str2があり、もし同じ文字(String)なら「Yes」、違うなら「No」と出力されるプログラムを製作しなさい。
【 期限 】3月8日 午後7時
よろしくお願いします。
0543デフォルトの名無しさん
2006/03/08(水) 13:23:55課題1
import java.io.BufferedReader;
import java.io.InputStreamReader;
public class Kadai1 {
public static void main(String[] args) {
try {
BufferedReader input = new BufferedReader(new InputStreamReader(
System.in));
System.out.print("文字を入力してください : ");
String str = input.readLine();
System.out.println("入力した文字は : " + str);
System.out.println("大文字から小文字に変換させます・・・");
int length = str.length();
0544課題1の続き
2006/03/08(水) 13:24:29for (int i = 0; i < length; i++) {
char c = str.charAt(i);
if (c >= 'A' && c <= 'Z') {
char castChar = (char)(c + 32);
sBuf.append(castChar);
}else{
sBuf.append(c);
}
}
System.out.println("変換しました : " + sBuf);
} catch (Exception e) {
e.printStackTrace();
}
}
}
0545課題2
2006/03/08(水) 13:29:57import java.io.InputStreamReader;
public class Kadai2 {
public static void main(String[] args) {
try {
BufferedReader input = new BufferedReader(new InputStreamReader(
System.in));
String str1 = null;
String str2 = null;
for (;;) {
System.out.print("文字1を入力してください : ");
str1 = input.readLine();
if (str1.equals("") == false) {
break;
}
}
0546課題2の続き
2006/03/08(水) 13:30:30System.out.print("文字2を入力してください : ");
str2 = input.readLine();
if (str2.equals("") == false) {
break;
}
}
System.out.println(str1.equals(str2) ? "Yes" : "No");
} catch (Exception e) {
e.printStackTrace();
}
}
}
0547デフォルトの名無しさん
2006/03/08(水) 14:27:29toLowerCase、str1.equal(str2) 使った方が分かりやすくね?
0548デフォルトの名無しさん
2006/03/08(水) 14:29:350549コード書いた人
2006/03/08(水) 14:31:511.すでに存在する文字列(strings)を大文字から小文字に変換するプログラムを製作しなさい。
ヒント: ‘A’(65) は ‘a’ (97) ‘Z’(90)は ‘z’(122)(※()内はアスキー表番号)
問題でアスキー表番号を提示してるってことは、それを使うことを期待している問題かなぁと思って。
0550デフォルトの名無しさん
2006/03/08(水) 14:46:57なるほどな。でしゃばってスマン。
0551コード書いた人
2006/03/08(水) 14:50:21標準APIでわざわざ用意してくれるんだから。
>>542は先生に、「toLowerCaseメソッドを使ったほうが簡単じゃないですか?(`Д´)」
って聞いてみて。課題提出するときにでも
0552デフォルトの名無しさん
2006/03/08(水) 16:07:490553デフォルトの名無しさん
2006/03/09(木) 23:11:18public class do2 {
public static void main(String[] args) {
int index = 0;
int[] i = new int[20];
i[0] = 0;
i[1] = 1;
do{
System.out.println(i[index+1]);
i[index+2] = i[index] + i[index+1];
index++;
}while(index <= 14);
}
}
こういうのでも問題ないですか?
0554デフォルトの名無しさん
2006/03/09(木) 23:32:26配列の初期化でなぜ20?
0555デフォルトの名無しさん
2006/03/10(金) 01:40:25個人的には、表示しつつ数列を求めるのではなく、
�@数列を求める
�A求めた数列を表示する
と分けるのが好きです。
# 2度も走査できないような、長い数列の場合は別ですが。
こんな感じです:
ttp://sourcepost.sytes.net/sourcepost/sourceview.aspx?source_id=27274
0556デフォルトの名無しさん
2006/03/11(土) 04:18:50指定された間隔で指定された回数httpリクエストを送信する機能を持った
httpクライアントプログラムを作りなさい。
よろしくお願いします。
0557デフォルトの名無しさん
2006/03/11(土) 04:20:41舐められたもんだ
0558デフォルトの名無しさん
2006/03/11(土) 05:07:41そういう意図ではないのですが、あまりにバカバカしい質問だったでしょうか?
プログラミングは超初心者で全然駄目なので、このような問題でも
私にとっては難解です。すいません。
0559デフォルトの名無しさん
2006/03/11(土) 05:14:010560デフォルトの名無しさん
2006/03/11(土) 05:20:120561デフォルトの名無しさん
2006/03/11(土) 14:04:130562デフォルトの名無しさん
2006/03/12(日) 01:32:01N=0の時
0563デフォルトの名無しさん
2006/03/12(日) 01:37:21Stringオブジェクトのサイズ?
0564デフォルトの名無しさん
2006/03/12(日) 02:06:48暇なんだけど
0565デフォルトの名無しさん
2006/03/12(日) 04:18:390567デフォルトの名無しさん
2006/03/12(日) 08:03:50べつにそれって宿題じゃ無いんでしょ?
正直>>556の様な宿題を出す学校なら品位を疑う。
0568デフォルトの名無しさん
2006/03/12(日) 12:37:25宿題の出題者を恨みなさい。
あなたを疑うことと、ものを提示することどちらが悪か。
悪に加担する可能性がある以上、
どうしても必要に駆られるならあなたが作るしかないじゃない。
0569デフォルトの名無しさん
2006/03/12(日) 18:16:41public static void main(String[] args) {
float sum = 0;
for(int index = 0; index < 10; index++){
float weightarray[] = new float[10];
float weight = (float)(Math.random() * 9 + 1);
weightarray[index] = weight;
System.out.println("岩石" + (index+1) + "の重さは" + weightarray[index] + "です。");
sum = sum + weightarray[index];
}
System.out.println("岩石の合計の重さは" + sum + "です。");
}
}
これをオブジェクトを作成する方法に書き換えるにはどうしたらいいの?
0570デフォルトの名無しさん
2006/03/12(日) 19:45:34質問の意図がイマイチ汲み取れないんだが…
こんなんでいいってこと?
単純に他のクラスで書いただけなんだが
public class Class12 {
public static void main(String[] args) {
Rock R = new Rock();
System.out.println("岩石の合計の重さは" + R.getSum() + "です。");
}
}
class Rock {
public float getSum() {
float sum = 0;
for(int index = 0; index < 10; index++){
float weightarray[] = new float[10];
float weight = (float)(Math.random() * 9 + 1);
weightarray[index] = weight;
System.out.println("岩石" + (index+1) + "の重さは" + weightarray[index] + "です。");
sum += weightarray[index];
}
return sum;
}
}
0571デフォルトの名無しさん
2006/03/12(日) 22:46:33Rock クラスを2つに割って、こんな感じでどうかな?
ttp://sourcepost.sytes.net/sourcepost/sourceview.aspx?source_id=27297
0572デフォルトの名無しさん
2006/03/14(火) 03:36:19【 期限 】今週末まで。なるべく早くできれば助かります。
【 補足 】たぶん簡単なメッセンジャーのような物を作れと言われてるんだと思います。
よろしくお願いします。
0573デフォルトの名無しさん
2006/03/14(火) 16:23:16【 課題 】
起動すると文字入力待ち状態に→※ファイル名入力(恐らく同じディレクトリ内のもの)→
ファイルの内容が表示される(→適切に表示されれば、また文字入力待ちに)→
要求したファイルが無い場合、「ファイル○○○がありません」と表示
ファイルがあっても読み込みできない場合、「ファイル○○○が読み込めません」と表示
※"q"が入力されると、プログラム自体が終了
【期限】まだ大丈夫ですがこれ以外に幾つか残っておりまして、
内容的にこれ等ができないと先に進めない状況です。
【補足】例外について、ファイル自体が無い場合はFileNotFoundExceptionが
あるのに、読み込みができない場合のものはないのか?というか、今使っている
参考書でさがしても見当たらない…という感じです。
0574573
2006/03/14(火) 16:31:21public class DisplayOfFiles2 {
public static void main(String[] args) {
System.out.println("ファイル名を入力してください");
String filename = args[line];
try {
BufferedReader reader = new BufferedReader(new FileReader(filename));
String line;
while (!(line = reader.readLine()).equals("q")) {
System.out.println(line);
}
reader.close();
} catch (FileNotFoundException e) {
System.out.println("指定されたファイル" + filename + "がありません" + e);
} catch (IOException e) {
System.out.println("IOエラー:" + e);
}
}
}
0575573
2006/03/14(火) 16:33:36今のところ一つです。その中で、6行目のString〜args[]のところの
「シンボルを見つけられません。」といったエラーは出続けています。
お手数をおかけしますが、宜しくお願いします。
0576デフォルトの名無しさん
2006/03/14(火) 16:50:15の line ってどこで定義している?
0577デフォルトの名無しさん
2006/03/14(火) 17:25:13に書き出す。さらに、random.txtを読み込み、配列を用いて小さい順に並べ替えて
order.txtとして書き出す。
【期限】明日の夕方くらいまで
【補足】丸投げです。お手数ですがよろしくお願いします。
0578デフォルトの名無しさん
2006/03/14(火) 18:40:12// JDK5使用 適当です、確認お願いします。
import java.io.*;
import java.util.*;
public class T55_577 {
public static void main(String[] args) throws IOException {
// 生成
int[] random = new int[100];
for (int i = 0; i < 100; i++) random[i] = i + 1;
for (int i = 0; i < 100; i++) {
int j = (int) (Math.random() * 100);
int k = random[j];
random[j] = random[i];
random[i] = k;
}
// 出力
PrintWriter out = new PrintWriter("random.txt");
for(int i=0; i<10; i++) out.println(random[i]);
out.close();
// 入力
int[] order = new int[10];
Scanner in = new Scanner(new File("random.txt"));
for(int i=0; i<10; i++) order[i] = in.nextInt();
in.close();
// ソート
Arrays.sort(order);
// 出力
out = new PrintWriter("order.txt");
for(int i=0; i<10; i++) out.println(order[i]);
out.close();
}
}
0579デフォルトの名無しさん
2006/03/14(火) 18:48:060580デフォルトの名無しさん
2006/03/14(火) 18:59:19適当です、動作確認お願いします。
import java.io.*;
public class T55_573 {
public static void main(String[] args) throws IOException {
System.out.println("ファイル名を入力してください");
BufferedReader in = new BufferedReader(new InputStreamReader(System.in));
String line;
while ((line = in.readLine()) != null) {
if (line.equals("q")) break;
File file = new File(line);
if (file.exists()) {
try {
BufferedReader fileReader = new BufferedReader(new FileReader(file));
while ((line = fileReader.readLine()) != null) System.out.println(line);
fileReader.close();
} catch (IOException ioe) {
System.out.println("指定されたファイル" + file + "が読み込めません");
}
} else {
System.out.println("指定されたファイル" + file + "がありません");
}
}
in.close();
}
}
>>579 マンドクサw 出題された用件を満たせば良いのさww
0581577
2006/03/14(火) 19:10:33まずは作成ありがとうございます。
しかしコンパイルできませんでした。jdk1.3.1_17を使用しているからでしょうか。
全くの無知で申し訳ありません。。
0582デフォルトの名無しさん
2006/03/14(火) 19:13:38せめて1.4入れてきて
0583577
2006/03/14(火) 20:01:24本当にありがとうございました。
0584573
2006/03/14(火) 20:09:57コンパイルは成功し、正常に実行されました。
ただ、気になったのですが、「ファイルが読み込めません」と表示され得る場合は
どういったミス入力等が考えられるのでしょうか(とりあえず適当に打ってみても
「〜ファイルがありません」ばかりなので)。
0585デフォルトの名無しさん
2006/03/14(火) 20:40:51たとえば読み込もうとしたファイルがロックされてる場合とか…
よくわからずに作っているので、ロックしようとしたファイルの内容が消えるかもしれません。
適当なファイルで試してください。
import java.io.*;
import java.nio.channels.*;
public class T55_573_LockTest {
public static void main(String[] args) throws Exception {
BufferedReader in = new BufferedReader(new InputStreamReader(System.in));
FileLock lock = null;
while (true) {
if (lock == null) {
System.out.println("ロックするファイル名を入力してください");
String line = in.readLine();
if (line.equals("q")) break;
FileChannel channel = new FileOutputStream(line, true).getChannel();
lock = channel.lock();
} else {
System.out.println("改行でロック解除");
in.readLine();
lock.release();
lock.channel().close();
lock = null;
System.out.println("ロック解除しました");
}
}
}
}
0586デフォルトの名無しさん
2006/03/14(火) 21:22:41しかし、このメソッドは、ディレクトリ内にファイルがあると削除することができない。
ではディレクトリ内にファイルが存在していても、ディレクトリを削除するにはどうしたらいいでしょう?
こんなことも判らんプログラマです。
0587デフォルトの名無しさん
2006/03/14(火) 21:35:52ディレクトリ内にあるファイルをすべて削除すれば良いじゃない…と適当なことを言ってみる
public static boolean delete(File file) {
if (file.isDirectory())
for (File f : file.listFiles()) delete(f);
return file.delete();
}
0588デフォルトの名無しさん
2006/03/14(火) 21:43:49なるほど。
大いに納得致しました。逝ってきます。
0589デフォルトの名無しさん
2006/03/14(火) 22:17:00http://human5.2ch.net/test/read.cgi/ms/1141694640/
8 名前:可愛い奥様[] 投稿日:2006/03/07(火) 11:05:23 ID:8dtluKkp
夫の歯ブラシで洗面所の排水溝掃除。
洗面所をビショビショに汚した罰だ。
20 名前:可愛い奥様[age] 投稿日:2006/03/08(水) 00:40:17 ID:pRrk6A21
前に頭きた時あって
1度だけ歯ブラシで肛門カキカキしちゃった
22 名前:可愛い奥様[] 投稿日:2006/03/08(水) 01:27:12 ID:gU5mHc7J
よかった。どこのお宅も同じようなことしてて。
24 名前:可愛い奥様[] 投稿日:2006/03/08(水) 01:36:35 ID:SSSFsTqE
そうそう、ヘンなモノはダンナのお皿へ直行だよね。
41 名前:可愛い奥様[] 投稿日:2006/03/08(水) 11:55:18 ID:sjj+/60Q
見てるだけで気が晴れるな!
皆さん、頑張ってね!
42 名前:可愛い奥様[sage] 投稿日:2006/03/08(水) 20:33:51 ID:Ju2N1s7+
年金分割が楽しみじゃのう
63 名前:可愛い奥様[] 投稿日:2006/03/10(金) 08:55:20 ID:qLfJYpJR
家族で密かにはぶっている。
男性は肉体が汚く、精神が美しい傾向がある。(気に入らない相手に肉体的攻撃を加える⇒精神的攻撃も加える男は猛者)
女は肉体が美しく、精神が汚い傾向がある。(気に入らない相手に精神的攻撃を加える⇒肉体的攻撃も加える女は猛者)
女は隠れて悪事をする。気に入らない女子を便所でボコったり、便器舐めさせたり、男の友人を使ってレイプ、仲間外れにしたり。陰口、嫉妬。
女は対人関係において、この汚い性格を隠そうとするため、外面が非常によくなる。(猫かぶり)
男性諸君は外面に騙されないように気を付けて下さい。
0590デフォルトの名無しさん
2006/03/14(火) 23:38:27>>580
センスを疑う
面倒なら回答しなければいい
回答するならそれなりにきちんとした回答せよ
0591デフォルトの名無しさん
2006/03/15(水) 00:03:48じゃあてめー一人でヤッテロ禿
0592デフォルトの名無しさん
2006/03/15(水) 00:13:40どうした
まともな回答できないから暴言か
0593デフォルトの名無しさん
2006/03/15(水) 00:16:36お前がまともな解答した所見たこと無いんだけど?
てめーのセンスなんて所詮自己満足のオナニーだろ
0594デフォルトの名無しさん
2006/03/15(水) 00:21:01あなたは、私をどのように特定しているの?
なんの根拠もなしに「お前がまともな解答した所見たこと無いんだけど?」発言ですか
ほんと、ナンセンスですよ、あなたは。
0595デフォルトの名無しさん
2006/03/15(水) 00:24:05そんなにセンスがあるという自負があるなら固定になって回答してみろよチキン
0596デフォルトの名無しさん
2006/03/15(水) 00:39:46データグラムを使った簡単なメッセンジャーのようなものを作ってみた。
動作確認と報告よろしく。
使い方わからんかったら言ってくれ。
http://sourcepost.sytes.net/sourcepost/sourceview.aspx?source_id=27311
0597デフォルトの名無しさん
2006/03/15(水) 02:23:16ありがとうございます。
"クラス T55_572 は public であり、ファイル T55_572.java で宣言しなければなりません。
"というエラーが出ました。
新しくクラスファイルと作らないといけないんでしょうか?
0598デフォルトの名無しさん
2006/03/15(水) 09:40:22やるじゃん
0599まだまだビギナ
2006/03/15(水) 14:08:49【課題】:カレントディレクトリ内のファイル内容表示
【期限】とりあえず大丈夫です
import java.io.*;
public class ShowFile1 {
public static void main(String[] args) {
if (args.length != 1) {
System.out.println("文字ファイル:exp05.txt");
System.exit(0);
}
String filename = args[0];
try{
BufferedReader reader = new BufferedReader(new FileReader(exp05.txt));
String line;
While ((line = reader.readLine()) != null) {
System.out.println(line);
}
reader.close();
} catch (FileNotFoundException e) {
System.out.println("exp05.txtが見つかりません。");
} catch (IOException ioe) {
System.out.println("exp05.txtが読み込めません。");
}
}
}
【補足】参考書を見ながらやったのですが、
何故か、13行目「';'がありません。」というエラーが出ました。
0600デフォルトの名無しさん
2006/03/15(水) 14:12:52While のWが大文字
whileが正解
0601デフォルトの名無しさん
2006/03/15(水) 14:17:500602まだまだビギナ
2006/03/15(水) 14:23:19小さな所まで発見して頂いてありがとうございます。
確かに。前後のが大文字でつい…かと思われます。
ただ、コンパイルがこれで通ると思ったのですが、11行目で
「シンボルを見つけられません。」シンボル:変数exp05
というエラーが出てしまいました。実はこの類のエラー、
以前も違う課題でずっとでてて、未だに意味が分かりません。
(そもそも、シンボルというのは変数の別称か?と思っていたりで)
0603デフォルトの名無しさん
2006/03/15(水) 14:27:560604まだまだビギナ
2006/03/15(水) 14:49:07たびたび指摘下さりありがとうございます。おかげでコンパイル出来ました。
ただ、「たびたび」で何とも恐縮なのですが、コンパイル後実行したところ、
「文字ファイル:〜」と表示されってしまい、ファイル内容の表示は失敗しました。
これは根本的にソースの構成が問題なのでしょうか?それとも、
実行時の問題も考えられますでしょうか?
0605デフォルトの名無しさん
2006/03/15(水) 14:56:09↑この続きが見たい。
0606デフォルトの名無しさん
2006/03/15(水) 14:57:42System.exit(0);
これって何の為にあるの?
0607デフォルトの名無しさん
2006/03/15(水) 14:58:35実行時のVMに引数が与えられていない。
java ShowFile1 exp05.txt
このとき、ShowFile1.classがあるフォルダにexp05.txtを用意してあげてな。
0608606
2006/03/15(水) 14:59:01String filename = args[0];
これも。
0609普通に考えるとこうだな
2006/03/15(水) 15:02:01↓
BufferedReader reader = new BufferedReader(new FileReader(filename));
0610まだまだビギナ
2006/03/15(水) 15:19:43printlnの引数がそのまま表示されてしまってたんです。
>>607
ジャストミートでしたぁっ!m(__)m
>>606
まだまだ、みようみまねでやっていて・・・
606の辺りは、「引数が何も指定されなかったときのエラー表示です。」
とテキストに書いてありましたが。
608の辺りは「引数の文字列を変数に代入しています。」となっています。
勿論、filenameをexp05に直してコンパイルしたわけですが。
自分が今使っているテキストの場合、分かりやすくさらっと書いてある
説明書きが自分には「何を言いたいんだか分からない」と思う箇所が
ぼちぼちあります。ま、他のもあたってみようかなと思います。
0611606
2006/03/15(水) 15:29:26いや…俺が言いたかったのは
BufferedReader reader = new BufferedReader(new FileReader("exp05.txt"));
の様に直接ソース内でファイル名を指定するなら
>>606 も >>608 も要らないんじゃないかと思ってね。
まぁ、出来たなら良かった。
0612デフォルトの名無しさん
2006/03/15(水) 23:30:530613デフォルトの名無しさん
2006/03/16(木) 01:15:29throw new YourQuestion ();
0614デフォルトの名無しさん
2006/03/16(木) 01:22:41>>612
>>613
} catch (RuntimeException e) {
System.err.println("配列が得意ってなんだよー");
throw e;
}
0615デフォルトの名無しさん
2006/03/16(木) 11:51:09クライアントとサーバーの間に中継サーバーとして配置し、
データをそのまま中継するだけのサーバーを作りなさい。
0616デフォルトの名無しさん
2006/03/16(木) 12:45:42参加者キボンヌ!金持ちになろう!
★★★自動売買ソフトを作ろうぜ★★★ Part3
http://live19.2ch.net/test/read.cgi/stock/1141718486/l50
0617http://www.vector.co.jp/soft/win95/util/se072729.html
2006/03/18(土) 19:42:42もしくは64bitにネイティブ対応したテキスト置換ソフトありますか?
0618デフォルトの名無しさん
2006/03/20(月) 20:20:531.ローカルでオープンしているポートを画面に一覧表示させる
2.ポートに対する一般名称を「ポート番号(名称)」も表示するように修正する
3.ファイルにも一覧を出力する(2.で修正した一覧であること。ファイル名は任意)
以上お願いします
0619さくら
2006/03/20(月) 22:54:07ただし、int i=1;double d=1.0;boolean b=fales;と初期化されている。
【 回答 】
(1) i+=3; → i=( )
(2) d++; → d=( )
(3) b=(1.0!=1.0); → b( )
(4) d=( (1.0<-1.0 ? 1.0 : -1.0); →d( )
(5)i<<=1; →i( )
よろしくお願い致します。
0620デフォルトの名無しさん
2006/03/20(月) 23:08:090621デフォルトの名無しさん
2006/03/20(月) 23:13:55わかんないなら実行すりゃいいだろ、釣りか?
0622デフォルトの名無しさん
2006/03/20(月) 23:54:50(1) i = 4
(2) d = 2.0
(3) b = false
(4) d = -1.0
(5) i = 8
0623774
2006/03/21(火) 00:10:53ってやったらaに0が入るのは何でですか?
俺の考えだと、
1.-1/5は-0.2
2.int/intだからintにキャスト
3.(int)-0.2だから-1
4.aに-1が入る
どこで間違えてる?
商が求まる時点で整数になってるとか?
0624デフォルトの名無しさん
2006/03/21(火) 00:13:070625デフォルトの名無しさん
2006/03/21(火) 01:07:21その数字以下で最大の整数にするんじゃなくて、
数字部分で切捨てじゃなかったっけ?
0626623
2006/03/21(火) 01:14:12すいませんでした。
0627デフォルトの名無しさん
2006/03/21(火) 08:06:460628デフォルトの名無しさん
2006/03/21(火) 08:08:290629デフォルトの名無しさん
2006/03/21(火) 08:20:230630デフォルトの名無しさん
2006/03/21(火) 08:46:28この場合は-1足してからキャスト
0631デフォルトの名無しさん
2006/03/23(木) 01:44:45プログラムに引数で与えられたファイル名でファイルのコピーを行う
例)exp01 コピー元ファイル名 コピー先ファイル名
指定したコピー元ファイルが無い場合は
「指定されたコピー元ファイル〇〇〇がありません」
指定したコピー元ファイルがあるが、読み込み不可の場合は
「指定されたコピー元ファイル〇〇〇が読み込めません」
と画面に表示し例外を投げて終了。
指定したコピー先ファイルがすでに存在する場合は、
「指定されたコピー先ファイル〇〇〇が存在します」
と画面に表示し例外を投げて終了。
【期限】:まだ一応大丈夫です。
【補足】最初は課題文を読んでも、何をすればよいのか分かりませんでした
(今でも同じような感じですが)。例外が3つにも及ぶので、ここまでくると
ソースが複雑になりそうで、今の自分の力ではとても負えないなという印象が
正直なところ。そもそも、参考書でFileReaderやWriterのところは目を通したのですが
「ファイルのコピーってできるの?」という風な疑問です。
皆さんの的確且つ有効なアドバイスを頂けると有難いです。
0632デフォルトの名無しさん
2006/03/23(木) 02:02:04> 「ファイルのコピーってできるの?」という風な疑問です。
コピー元ファイルから一定量ずつ読みだしてはコピー先に書きだしていく
というのを残りがなくなるまで繰り返すとコピーになるよ。
0633デフォルトの名無しさん
2006/03/23(木) 03:42:07// 引数が無い場合の処理などは入れてません。
// 動作確認お願いします。
import java.io.*;
import java.nio.channels.*;
public class T55_631 {
public static void main(String[] args) throws IOException {
File src = new File(args[0]);
File dst = new File(args[1]);
if (!src.exists()) {
System.out.println("指定されたコピー元ファイル "+src+" がありません");
throw new IOException();
}
if (!src.canRead()) {
System.out.println("指定されたコピー元ファイル "+src+" が読み込めません");
throw new IOException();
}
if (dst.exists()) {
System.out.println("指定されたコピー先ファイル "+dst+" が存在します");
throw new IOException();
}
FileChannel in = new FileInputStream(src).getChannel();
FileChannel out = new FileOutputStream(dst).getChannel();
in.transferTo(0, src.length(), out);
in.close();
out.close();
}
}
0634631
2006/03/23(木) 13:22:33なるほど、確かにそれならば。流石、視点が違いますね。
では、例えばFileCopyといった感じのメソッドはないのですね・・・
>>633
おぉ、なんだか凄いものができてますね。ちなみに、
import宣言の2行目はどういう意味なのでしょうか?
あと、Fileクラスのとこの変数src、dstは任意のものですか?
0635デフォルトの名無しさん
2006/03/23(木) 15:40:16並び替えたデータを別のファイルに書き込む。
*数値例 7989
98851
47986
・・・
【 期限 】本日中です。申し訳ありません。
【 補足 】並び替え方法は、2種類より選択可能とする。1つはバブルソートで行い、もう一つはバブルソート以外の方法で行う。
よろしくおねがいします。
0636デフォルトの名無しさん
2006/03/23(木) 18:19:32結果が出るようにせよ
http://read.kir.jp/file/read41186.lzh
【期限】明日のお昼
【補足】Acceptor Visitor Table TableData TableEntry TableTest2
CellCountVisitorをjavacで実行
TableTestとColorVisitorの自力で出来ましたが
TableTest2の、テーブルのセル数 = 0 これがTableTest2.htmlのようにカウン
トさせて表示させることが出来ません。
よろしくお願いします。
0637デフォルトの名無しさん
2006/03/23(木) 19:09:470638636
2006/03/23(木) 20:18:19テーブルのセル数は色の着いた部分のみを数えます
0639631
2006/03/24(金) 00:18:52import宣言の2行目については、先ほど、
version1.4以降の拡張された要件云々であることが一応分かりました。
少しお騒がせしましてすいません。
追加の質問で恐縮なのですが…、文字入力待ちの処理のためのソースは
BufferedReader reader = new BufferedReader(new InputStreamReader(Syatem.in));
を使えばよいと思うのですが、複数行入力できるようにするには
どうすればよいでしょうか?一つのキーとしてループさせればよいかもしれない
というアドバイスは違うところから頂いているのですが、それだとその都度複数行可能かなと
思ってしまいます。
何度もご迷惑をおかけします。申し訳ありません…
0640デフォルトの名無しさん
2006/03/24(金) 00:19:590641デフォルトの名無しさん
2006/03/24(金) 07:30:17class SuperReader {
private BufferedReader in;
SuperReader(BufferedReader br) {
this.br = br;
}
String[] readSuper(int n) {
String[] s = new String[n];
for (int i = 0; i < n; i++) {
s[i] = br.readLine();
}
}
}
0642774
2006/03/24(金) 07:46:31http://news18.2ch.net/test/read.cgi/news4plus/1143149170/
0643デフォルトの名無しさん
2006/03/24(金) 10:43:14スレ違いながら、改めて韓国人への怒りが増した今日この頃であった。。。
韓国人は心底腐ってる
0644636
2006/03/24(金) 13:27:310645普通に考えるとこうだな
2006/03/24(金) 19:12:49http://life7.2ch.net/test/read.cgi/live/1143191543/
0646532
2006/03/26(日) 02:36:03ただし、以下の条件に当てはまるように製作する事。
1.最低でもJTextFieldを1つ、JButtonを4つ使用する事。
2.使用者が文章入力欄を空白のままで、JButtonを押した場合、
エラーメッセージを表示する事。(ヒント:JOptionPane)
3.終了ボタン(前回のquit)を製作し、それを押すと「お疲れ様でした。」
と表示されるようにする事。(ヒント:JOptionPane)
【 期限 】3月27日
【 補足 】>>532の説明で、Shiftの所を勘違いしていて、普通よりも1つ多くシフトしていた為、
前回の課題の解答と出力例の画像を先生に頂いたので、あげておきます。
課題の解答:ttp://kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/1710.txt
出力例1:ttp://www.nigauri.sakura.ne.jp/src/up4720.jpg.html
出力例2:ttp://www.nigauri.sakura.ne.jp/src/up4721.jpg.html
途中までソースは書いた事は書いたのですが、他人のソースを読んでそれを修正する、というのは
一から書くよりもしんどいから辞めた方が良い と他のスレでアドバイスを頂いたので、
丸投げでよろしくお願いします。
0647532
2006/03/26(日) 14:19:262.をどうしても組むことが出来ません。
先生にメールを送って聞いたところ、エラーメッセージを表示ではなく、
JTextFieldが空欄の状態でボタンを押した時に何も起きなければ良い と言われました。
JTextFieldに何か文字が書かれている時にボタンが押されたら、通常のコンバート処理を行え との事です。
ttp://sourcepost.sytes.net/sourcepost/sourceview.aspx?source_id=27391
00120: の所に、try-catchの文を挿入してみたのですがどうしても上手くいきません。
それ以外はきちんと動いていると思うのですが、最終的に書きかけのソースを表示してしまい、
申し訳ありません。
0648デフォルトの名無しさん
2006/03/26(日) 17:00:47それをGUIから呼ぶだけだろ?
なにが難しい?
0649532
2006/03/26(日) 17:11:31空だったら何もしない、という処理の組み方がわからないんです…orz
0650デフォルトの名無しさん
2006/03/26(日) 17:12:26GUIのオブジェクトを作る→できてる
イベントに応じてGUIオブジェクトが文字列変換オブジェクトを呼ぶ
0651532
2006/03/26(日) 17:18:31と仰いますと、エラーを検出するコードを書かないで、
このままの状態でも問題ないのでしょうか?
0652デフォルトの名無しさん
2006/03/26(日) 21:07:59考え方のヒントなんだけど、
temp(inputLine1.getText() が返す値)と ""(空白文字列) を equals() で比較してみる
というような分岐処理を入れてみたら、どうなると思う?
0653デフォルトの名無しさん
2006/03/26(日) 21:19:57各文字列変換メソッドがpublic staticで書かれていてるんだ…
なんかJAVAというよりVBのコード見てるみたい。
変換用のクラス使ってGUIの出力にあわせて継承すればいいのに
0654533
2006/03/27(月) 01:15:51反省を活かしつつGUI用にちょこっと作り変えてみた。
GUI部分はほぼ532さんのを使用
参考にならなかったらスマソ
ttp://kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/1713.zip
0655573
2006/03/27(月) 14:29:19【課題】
起動後、入力待ちとなる。複数行入力可能。
画面から1文字 w が入力されると出力先ファイル名(恐らく課題の上では
.txtファイルでいいのではないかと思いますが)を聞くメッセージを表示し、
入力されたファイル名にてファイルに書き出し処理をして終了する。
ただし、以下の条件を満たすように。
ファイル名入力時に未入力でEnterされた場合はファイルに書かず処理を終了する。
入力されたファイル名のファイルが既にある場合、その旨メッセージを表示して
別のファイル名入力を待つ。
【期限】今月中
【補足】これと同じ問題で条件が更に付け加えられたバージョンがあるのですが、
それは今の自分には難しすぎるので、とりあえず上記でお願い致します。
最近卒業式等で落ち着きませんでしたが、自分なりにソース作ってみました。以下に↓
0656573
2006/03/27(月) 14:37:46import java.util.*;
public class kadai9 {
public static void main(String[] args) {
ArrayList<String> list = new ArrayList<String>();
BufferedReader reader = new BufferedReader(new InputStreamReader(System.in));
while (true) {
String line = reader.readLine();
if((line = reader.readLine()).equals("w")) {
break;
System.out.println("ファイル名を入力して下さい");
}
}
String filename = args[0];
try {
PrintWriter writer = new PrintWriter(new BufferedWriter(new FileWriter(filename)));
String line;
while ((line = reader.readLine()) != null) {
writer.println(line);
if("filename".exists()) {
System.out.println("ファイル名:"+filename+"は既に存在します。");
}
}
writer.close();
} catch (IOException e) {
System.out.println(e);
}
}
}
0657573
2006/03/27(月) 14:38:33「シンボル:メソッドexists()」といったエラーが出ています。
ただ、コレクションがいまいちよく分からないためその箇所に自信がなく、
21のエラーをクリアしたとしても、次はコレクションで引っかかるのでは
という気がしますが・・・
長くなり&読みにくく、ごめんなさい。
0658デフォルトの名無しさん
2006/03/27(月) 14:48:26整数化して小さい順に表示するプログラム。
【補足】ホントに初歩的なことですいません;一応分かるととこまで
記載します。
public class CondNest {
public static void main(String[] args) {
int x, y, z;
x = Integer.parseInt(args[0]);
y = Integer.parseInt(args[1]);
z = Integer.parseInt(args[2]);
0659デフォルトの名無しさん
2006/03/27(月) 16:01:01public static void main(String[] args) {
int x, y, z;
x = Integer.parseInt(args[0]);
y = Integer.parseInt(args[1]);
z = Integer.parseInt(args[2]);
int []a = new int[]{x,y,z};
java.util.Arrays.sort(a);
System.out.println(a[0]+" "+a[1]+" "+a[2]);
}
}
0660デフォルトの名無しさん
2006/03/27(月) 16:31:08exitsts()ってなんだよ
0661デフォルトの名無しさん
2006/03/27(月) 16:34:550662デフォルトの名無しさん
2006/03/27(月) 16:58:11まず、おかしいのここ。
if("filename".exists()) {
0663662
2006/03/27(月) 17:02:25っていうインスタンス・メソッドは無いよ
と言われているのと同じ。
0664658
2006/03/27(月) 17:42:26ありがとうございました^^
0665デフォルトの名無しさん
2006/03/28(火) 00:21:50ttp://sourcepost.sytes.net/sourcepost/sourceview.aspx?source_id=27401
0666デフォルトの名無しさん
2006/03/28(火) 05:53:06うちのゼミは、
ttp://www.amazon.co.jp/exec/obidos/ASIN/4797331828/qid=1143492545/sr=8-2/ref=sr_8_xs_ap_i2_xgl14/503-7217263-6442334
ttp://www.amazon.co.jp/exec/obidos/ASIN/4797331836/qid=1143492587/sr=1-3/ref=sr_1_10_3/503-7217263-6442334
ttp://www.amazon.co.jp/exec/obidos/ASIN/477412222X/ref=pd_sim_dp_2/503-7217263-6442334
を使っているよ。
0667デフォルトの名無しさん
2006/03/28(火) 07:26:310668デフォルトの名無しさん
2006/03/28(火) 11:49:53【 課題 】
class A {
protected int x = 0; // x の初期値を 0 とする。
void f(int y) {
x = 2 * y; // y を 2 倍した値を x に代入
}
void g(int z) {
f(z + 1); // z に 1 足した数を引数に渡して f() を呼び出す。
}
}
class B extends A {
void f(int y) {
x = 3 * y; // y を 3 倍した値を x に代入
}
}
―――――――――――――――――――――――――
A a = new A();
B b = new B();
a.g(2);
b.g(2);
0669デフォルトの名無しさん
2006/03/28(火) 11:50:38Q1.上のコードを実行した直後、変数 a のインスタンス変数 x の値はいくつになっているでしょうか。また、x がその値になるまでの間、a が参照するインスタンスに対して、どのクラスのどのメソッドが呼び出されたかを順に示してください。
インスタンス変数 x の値: x =
呼び出されるメソッド(呼び出される順に)
1:
2:
Q2.上のコードを実行した直後、変数 b のインスタンス変数 x の値はいくつになっているでしょうか。また、x がその値になるまでの間、b が参照するインスタンスに対して、どのクラスのどのメソッドが呼び出されたかを順に示してください。
インスタンス変数 x の値: x =
呼び出されるメソッド(呼び出される順に)
1:
2:
【 期限 】明日には郵送で贈らなければいけないので早めだと嬉しいです。
【 補足 】丸投げです。まったくわからないので力を貸してください;長くて申し訳ないです;
0670デフォルトの名無しさん
2006/03/28(火) 13:47:07swingでコンポーネントのフォーカスをロストすることができます?
0671デフォルトの名無しさん
2006/03/28(火) 13:48:48x = 6
1: a#g(2)
2: a#f(3)
Q2
x = 9
1: a#g(2)
2: b#f(3)
0672デフォルトの名無しさん
2006/03/28(火) 13:50:04うん
スレ違いだから死んで
0673デフォルトの名無しさん
2006/03/28(火) 13:51:45Java低速GUI Swing 4
http://pc8.2ch.net/test/read.cgi/tech/1140533866/
0674655
2006/03/28(火) 13:52:37>>665
どうも、わざわざすいません。ありがとうございます。
分からないところ一部ありますが、参考にさせて頂きます。
0675670
2006/03/28(火) 13:55:50おまいらほんとに使えませんな(プグラ
0676デフォルトの名無しさん
2006/03/28(火) 15:47:57自己解決しました。
おまいらほんとに使えませんな(プグラ
297 名前:670[sage] 投稿日:2006/03/28(火) 13:55:18
誤爆スマソ
超絶バカ発見w
0677デフォルトの名無しさん
2006/03/28(火) 16:27:23ありがとうございます!!
本当に早くて嬉しいです!!
0678デフォルトの名無しさん
2006/03/28(火) 16:56:02http://pc8.2ch.net/test/read.cgi/tech/1140533866/296
296 名前:670[sage] 投稿日:2006/03/28(火) 13:54:43
自己解決しました。
おまいらほんとに使えませんな(プグラ
Java低速GUI Swing 4
http://pc8.2ch.net/test/read.cgi/tech/1140533866/297
297 名前:670[sage] 投稿日:2006/03/28(火) 13:55:18
誤爆スマソ
Java低速GUI Swing 4
http://pc8.2ch.net/test/read.cgi/tech/1140533866/298
298 名前:デフォルトの名無しさん[sage] 投稿日:2006/03/28(火) 14:50:42
偉そうな誤爆、か・・・
新機軸だね
ワロ
0679デフォルトの名無しさん
2006/03/28(火) 17:11:460680デフォルトの名無しさん
2006/03/28(火) 17:16:170681532
2006/03/29(水) 14:15:03レスが遅れて申し訳ありません。
作って頂いたソースですが大変参考になりました。
533さんのソースを元に、自分で書いたソースに少し味付けし、提出する事が出来ました。
本当にありがとうございました。
0682デフォルトの名無しさん
2006/03/30(木) 10:31:41ホテルに泊まっている客の情報を元に、以下の情報を出力せよ。
・何人の客が現在泊まっているか。
・客の平均年齢(doubleを使用して小数点まで求めよ)
・一番年を取っている客の名前と名字
・一番若い客の名前と名字
・18歳以下の客の数
・55歳以上の客の数
・使用者が入力した文字が名字の頭文字である客の数
(例, aと入力したら akagi, aoki などの名字の人がピックアップされ、それの合計数を出力する。)
<採点条件※これらのメソッドを必ず含ませる事。>
・すべての客の平均年齢を求めるメソッド
・一番年を取っている客の名前と名字を求めるメソッド
・一番若い客の名前と名字を求めるメソッド
・18歳以下の客の数を求めるメソッド
・55歳以上の客の数を求めるメソッド
・使用者が入力した文字が名字の頭文字である客の数を求めるメソッド
・プログラムを走らせた時、客の情報は毎回違う情報にする事。(異なる名前、年、合計宿泊客数など)
・最低でも一人の客はかならず並列リストに含まれている事。
・src.zip(客のリストクラス(Person.java)、並列クラス(A5Arrays.java)、メインクラス(Main.java))をダウンロードし、
その中に含まれているメインクラス(Main.java)にコースを追加してプログラムを動くようにする事。
→ ttp://n.limber.jp/n/fWC1aihFb パスは java です。
【 期限 】3月31日
丸投げですが、よろしくお願いします。
0683デフォルトの名無しさん
2006/03/30(木) 15:48:12複数のインターフェースを宣言し、それらを様々なクラスに実装する次のようなアプリケーションを作成せよ。
まず、インターフェースAntiLockBrakes、CruiseControl、PowerSteeringで、自動車のオプション機能を宣言する。
各インターフェースにはインターフェースと同じ名前のメソッドを1つだけ宣言する。
Model1、Model2、Model3クラスは、抽象クラスAutoを拡張する。
Model1オブジェクトでは、パワーステアリングを使用できる。
Model2オブジェクトではABSとクルーズコントロールを使用できる。
これらのクラスをインスタンス化し、メソッドの動作をテストせよ。
【 期限 】3月31日まで
長い上に丸投げで期限も短くて申し訳ありませんが、皆さんのお力を是非お貸しください。
0684デフォルトの名無しさん
2006/03/30(木) 16:40:17鉄アレイのプログラムかと思った。
並列? それはシリアルと呼ぶのではないか?
アレイといったら配列のことだと思うのだが。
0685デフォルトの名無しさん
2006/03/30(木) 16:42:37簡単じゃねえか。Personクラスにそれぞれ必要な情報とgetter/setterメソッド追加して
ホテルに相当するクラスに何人止まっているかをPerson[]で調べる。
Person[]よりもList<Person>のほうがええかな。
0686デフォルトの名無しさん
2006/03/30(木) 16:44:41> 【 課題 】
> 複数のインターフェースを宣言し、それらを様々なクラスに実装する次のようなアプリケーションを作成せよ。
> まず、インターフェースAntiLockBrakes、CruiseControl、PowerSteeringで、自動車のオプション機能を宣言する。
なんか凄い見覚えがあるな。富士ソフトABCの研修課題か?
そのネタ実は、「独習Java」にすべての答えが載っているぞ。
簡単だからやってみ。
あの会社は研修に毎年「独習Java」を使っているらしいからな。
富士ソフトABCに入社するなんてご愁傷様だが。
0688デフォルトの名無しさん
2006/03/30(木) 17:56:22ttp://www.google.com/search?hl=ja&lr=lang_ja&ie=SJIS&oe=SJIS&num=100&q=AntiLockBrakes+CruiseControl+PowerSteering
0689デフォルトの名無しさん
2006/03/30(木) 18:20:070690683
2006/03/30(木) 18:54:45いや、違いますけど、そんな有名な問題なんですかね?
しかし、教えてくださってありがとうございます。
>>688
vぬをんヴおwんじsbjh
マジリスペクトです。ありがとうございます。
みなさん親切ですね。
ホントピンチだったので、助かりました。
お世話になりました。
0691682
2006/03/30(木) 18:56:030692655
2006/03/30(木) 19:48:47”エラー続き”といっても、ようやく、あと一つか二つと思っていたのです。
しかし新たに(下のソースの)下の辺りののexists()メソッドの箇所の
変数についてエラーが出てしまいました。
講師への質問で昼過ぎに返答が来て「色々と問題箇所があるので時間がありません。
ファイルを添付するので参考にして下さい」といった思いもしない感じの返事が来ました。
課題欄に事情を連ねるのもなんですが、時間ないといっても、下のソースと大体同じものを
3,4日程前に別の質問の為に添付しており(勿論”エラー続き”のように、手直しを継続中なので
部分的には都度違いますが)、講師の人は既に知っていたはずなので、もし全体的に修正の必要ありなら
その時点で指摘して欲しかったという状況です。
【期限】
今月中(でも1日までなら大丈夫です)。技術研修はまだ始まらないので幾分か猶予がありますが、
式&初期研修の関係で地方に遠征するので、そもそもネットに接続可な環境あるかという
不安材料あり。
【補足】
もしかしたら全体的に変えなければならないのか否か自分には分かりませんが、
何とか今のものを手直しする形で完成できればと思う次第です。
No.655と同じ内容で別問題として、入力行数&各行文字数を任意に設定して
その制限を超えた場合にメッセージ表示と共にその文削除する問題があります。
それに関して参考になる書籍やサイト等、もしご存知な場合も宜しくお願い
できないでしょうか。
0693655
2006/03/30(木) 19:53:32import java.util.*;
import java.io.File;
public class ShortEditor {
public static void main(String[] args) {
ArrayList list = new ArrayList();
BufferedReader reader = new BufferedReader(new InputStreamReader(System.in));
String line = null;
while (true) {
line = reader.readLine();
if(line.equals("w")) {
break;
}
list.add(line);
}
改行エラーが出たので2つに分けさせて頂きます。
見にくくなり申し訳ありません。
0694655
2006/03/30(木) 19:54:50try {
File file = new File(filename);
while (true) {
System.out.println("ファイル名を入力して下さい");
filename = reader.readLine();
if (filename.equals("")) {
return;
}
}
PrintWriter writer = new PrintWriter(new BufferedWriter(new FileWriter(filename)));
while ((line = reader.readLine()) != null) {
writer.println(line);
}
writer.close();
} catch (IOException e) {
if (file.exists()) {
System.out.println(filename + "は既に存在します。");
}
}
}
}
何分お手数をおかけしますが、宜しくお願い申します。
0695デフォルトの名無しさん
2006/03/30(木) 20:32:15>>665のじゃ仕様を満たしてないのか?
0696682
2006/03/31(金) 00:32:51誰ですか…。自己解決していません…orz
0697デフォルトの名無しさん
2006/03/31(金) 03:27:44なんだこのヒドいソースは・・・
0698682
2006/03/31(金) 08:22:46http://sourcepost.sytes.net/sourcepost/sourceview.aspx?source_id=27415
http://sourcepost.sytes.net/sourcepost/sourceview.aspx?source_id=27414
何がいけないのでしょうか?
0699デフォルトの名無しさん
2006/03/31(金) 09:59:13>メインクラス(Main.java)にコース (??) を追加してプログラムを動くように
なんでPersonをいじってるんだ。 触る必要は皆無。 むしろ触るな。
平均年齢とかの情報を個人に持たせてどうする。 どんなPersonだそりゃ。
「必ず含ませる事」になってる最低7個のメソッドをMainに書くだけだ。
平均年齢ならこんな幹事
public int getAverage(Person[] persons) {
int total = 0;
for (int i=0; i < persons.length; i++) {
total += persons[i].getAge();
}
return total / persons.length;
}
0700699
2006/03/31(金) 10:01:280701682
2006/03/31(金) 10:35:17レスありがとうございます。
http://sourcepost.sytes.net/sourcepost/sourceview.aspx?source_id=27416
のように書いてみました。名字と名前を求める時はどのようにすれば良いのでしょうか?
また、return で結果を出力するにはどうすれば良いのでしょうか?
初心者で申し訳ありませんorz
0702デフォルトの名無しさん
2006/03/31(金) 11:00:46どうせならどう事故解決できたのかかけばいいのに
0703デフォルトの名無しさん
2006/03/31(金) 11:44:14>>696見ろよ
0704デフォルトの名無しさん
2006/03/31(金) 13:03:15Personクラスを見てみな。 コンストラクタで lastName firstName age を渡してるだろ。
取り出すのは、getLast() getFirst() でいける。
返り血を出力するには
System.out.println("Avarage age is " + myPeople.aAge); とかを
System.out.println("Avarage age is " + getAverage(myPeople));
にすりゃいいんだよ。
0705655
2006/03/31(金) 13:22:32では、最初から、一から書き直したほうがよいですか?
どうでしょうか?
0706682
2006/03/31(金) 13:44:07ありがとうございます。出力は出来ました。
http://sourcepost.sytes.net/sourcepost/sourceview.aspx?source_id=27418
しかし、
・一番年を取っている客の名前と名字
・一番若い客の名前と名字
・18歳以下の客の数
・55歳以上の客の数
・使用者が入力した文字が名字の頭文字である客の数
の部分がまったく動きません…orz
0707デフォルトの名無しさん
2006/03/31(金) 13:52:49Java始めたばっかりだから間違ってたら許してくれ(697じゃない)
>>693
1行目にimport java.io.*;って書いてるから3行目のimport java.io.File;っていらないと思うんだが。
>>694
1行目のString filename = args[0];は何を意味してるの?ファイル名与えて実行すんの?
それでファイル名取得してもあとで「ファイル名を入力してください」ってあるから意味なくね?
講師が「色々と問題箇所があるので時間がありません。」といったのはそのへんだと思うよ
あと「ファイルを添付するので参考にして下さい」ってあるけど見てみたの?
0708デフォルトの名無しさん
2006/03/31(金) 14:24:09そりゃ動かねーよ。 そういうふうに条件判断するように書かなきゃ。
まだ実装途中なのかと思った。
考え方のサンプルとしてこんな幹事
public static int getOldestAge(Person[] myPeople) {
int oldestAge = -1; // 有り得ない最低値をセットしといて
for (int i=0; i <myPeople.length; i++){
int age = myPeople[i].getAge(); // いらんけど見やすくなるので今回だけ
if (age > oldestAge) {
// Personの年齢がoldestより多ければoldestをその年齢で更新
oldestAge = age;
}
}
return oldestAge;
}
入力関係はまずはググれ。いくらでも出てくる。
0709708
2006/03/31(金) 14:33:06Comparatorでソートしちゃえば早いんだけど、しょーがねーから書いてみる。
さっきのメソッドで拾った年齢のPersonを、配列から探し出して返す。
いなけりゃnullだ。 同じ配列を渡せば通常は居ないはずはないが、一応nullチェックはするように。
public static final Person getPersonByAge(Person[] persons, int age) {
for (int i=0; i < persons.length; i++) {
if (persons[i].getAge() == age) {
return persons[i];
}
}
return null;
}
で、こっから帰ってきたPersonから getLast() getFirst() で氏名を取得しろ。
0711デフォルトの名無しさん
2006/03/31(金) 14:48:050712デフォルトの名無しさん
2006/03/31(金) 14:52:520713708
2006/03/31(金) 15:06:18クセ。 つかstaticメソッドを継承することって有り得ないでしょ?
0714デフォルトの名無しさん
2006/03/31(金) 15:21:46継承されるぞ。
絶対変更されるわけには行かないという
変数・メソッド以外はfinal宣言は避けるべき。
0715708
2006/03/31(金) 15:31:35継承じゃなくてオーバーライドだった or2 =3
で、そうだね、その通りだと思う。 俺もstatic以外でのfinal宣言には気を使ってる。
effective java でもそんな事書いてあった希ガス。
個人的にはstaticをfinal宣言しないのは気持ち悪いけど・・・ クセだから直そう。
スレ違い失礼
0716デフォルトの名無しさん
2006/03/31(金) 22:08:02ここから、大きさもランダムで、色もスクリーンの幅で変わるような
プログラムを書かなくちゃいけないのですが、さっぱりわかりません。。。
あと7つの丸は全部、スクリーンの1辺でもいいので当たらなければなりません。
ちょっと説明不足かもしれないんですけど、だれか教えてくれるかた居ますでしょうか?
ifとかelse ifとか難しいよぉ。。。
0717デフォルトの名無しさん
2006/03/31(金) 22:25:190718デフォルトの名無しさん
2006/03/31(金) 22:43:280719682
2006/03/32(土) 13:26:06色々やったのですが、どうしても上手くいきません…。
点数は引かれてしまうのですが、提出日を月曜日にしてもらいました。
自分で組んでみたのですが、Oldest age は常に101のままで、
名前も[La5.Person;@1add2ddと表示されるだけです。
0720682
2006/03/32(土) 16:26:37http://sourcepost.sytes.net/sourcepost/sourceview.aspx?source_id=27432
0721デフォルトの名無しさん
2006/03/32(土) 16:33:49もう答え全部書いてやれよ、、、
かなりの初心者だぞ>682
getLast() getFirst() で氏名を取得 を違うクラスから取得してやがる
0722デフォルトの名無しさん
2006/03/32(土) 17:11:09宿題ってもしかして会社の研修課題?なんか怖いな
0724デフォルトの名無しさん
2006/03/32(土) 17:44:380725682
2006/03/32(土) 17:52:03???どういう意味でしょうか?
0726デフォルトの名無しさん
2006/03/32(土) 19:40:09724では無いが、あなたのソースは手続き志向プログラミングだよ ってこと
オブジェクト指向プログラミングを少しは勉強したらどうかと。
0727デフォルトの名無しさん
2006/03/32(土) 19:40:40~~~~~~~~~~~~~~~~~~~~~~~~~~~~
あなたの今後のネット収益を倍増するスキルがあります。
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
それを知りたい方は、他にいませんか?
アフィリエイトを使わずにホームページとEメールだけで3,000万以上稼いだ
インターネット・マーケッターの宮川さんが、
巨大な現金の山を作り出す門外不出の一生涯使えるノウハウを
下記のサイトで公開しています。
その内容をお知りになりたい方は、下記をクリックしてください。
【たったの24時間で あなたの今後のネット収益を倍増するスキルとは? 】
http://infostore.jp/dp.do?af=moneyclick&ip=successpreneur&pd=01
0728682
2006/03/32(土) 20:35:45オブジェクト指向は、全機能は言語の仕様として備わっているから、
後は命令文だけ書けば良い といった感じで認識しているのですが、
こんな感じで良いのでしょうか?
例えば、ラジオの作り方は知らないけどラジオの操作方法は知っているから、
スイッチをつける、消す、ボリュームをあげる、下げる等々の操作は可能。
プログラムの方は、
http://sourcepost.sytes.net/sourcepost/sourceview.aspx?source_id=27433
まで書いて、
Total guests are 196
Avarage age is 49.392857142857146
Oldest guest name is Nathan Spencer and this guest age is 98
Youngest guest name is Ryan Quaid and this guest age is 14
Minor(Under 18) guests have 14
Senior(Over 55) guests have 98
Typed initial people have
といった感じで出力されるようになりましたが、18歳以下の人数、55歳以上の人数、
入力したアルファベットが頭文字の人の人数はどのように求めたら良いのでしょうか?
0729デフォルトの名無しさん
2006/03/32(土) 20:59:37それ先生に教わったのか?
だったらその先生に馬鹿って言っておいて
0730デフォルトの名無しさん
2006/03/32(土) 21:04:54Java以前だな
現実世界で
ある部屋に見知らぬ人間達と一緒に居てその中の人間の18歳以下の人数,55歳以上の人数
任意の頭文字を持つ人の人数を調べる時はお前はどうするよ?
0731デフォルトの名無しさん
2006/03/32(土) 21:14:280732デフォルトの名無しさん
2006/03/32(土) 21:41:30作る側としての考え方が欠如しとる気がする。
0733682
2006/03/32(土) 22:02:03オブジェクト指向は習っていません。
いきなりJavaの基本から習い始めました。
>>730
現実世界でなら、直接聞くと思います。
0734デフォルトの名無しさん
2006/03/32(土) 22:11:19オブジェクト指向のカプセル化としての考え方はそれでいいけど
他にも色々あるでしょ。継承やら多態性やら。
JAVAを学習していくなら、例え話のラジオを作る側にならなくちゃ
別にツールとして使用するだけの話ならAPI使えれば十分かも知れないが
0735デフォルトの名無しさん
2006/03/32(土) 22:11:550736682
2006/03/32(土) 22:22:10というと、オブジェクト指向をきちんと学ばないと、
Javaは完璧にマスター出来ないという事でしょうか?
>>735
言うなれば、日本語で聞くか、Java言語で聞くかとの違いですよね。
例えば、18歳以下を聞くメソッドですが、
public static int getMinor(Person[] myPeople) {
int minorTotal = 0;
for (int i = 0; i < myPeople.length; i++) {
if (myPeople[i].getAge() < 18) {
minorTotal = myPeople[i].getAge();
}
}
return minorTotal;
}
とあり、最初の変数(トータル人数用)は0に設定しておいて、
次のループ等で18歳以下の人を探したのですが、
minorTotal = myPeople[i].getAge(); のままでは、一番若い客の年齢を求めるのと変わりません。
Javaから現実世界にスイッチしますが、若い客の年齢を求めた後は、それを数えるだけですよね。
Javaに戻って、この場合、もう一度for文を持ってきて数えた結果を出力すれば良いのでしょうか?
0737デフォルトの名無しさん
2006/03/32(土) 22:37:40そのコードしか見てないけど、こんな感じじゃ駄目なのかな?
for (int i = 0; i < myPeople.length; i++) {
if (myPeople[i].getAge() <= 18) { //18歳以下だから18を含める
++minorTotal; //18歳以下でif文を通過したので、人数を一人増やす
}
0738734
2006/03/32(土) 22:56:10「JAVAを完璧にマスターする」というのであれば
オブジェクト指向を学ぶことは避けて通れない道でしょう。
ゴリゴリ手続き指向でも書けなくはないけど
結果的にJAVAを使うメリットが少なくなるかと。
勉強すると目からウロコがあるかもよ
0739デフォルトの名無しさん
2006/03/32(土) 23:23:15やってみた。
ttp://www.wikiroom.com/java/index.php?SourcePost_____#sd0e1d21
>all
空気読めなくてスマソ。
0740デフォルトの名無しさん
2006/04/02(日) 00:05:52継承関係がFoo extends Booでstaticメソッドが次のような定義なら
Foo.bar(){Aと出力}
Boo.bar(){Bと出力}
Foo.bar();はAと出力されるし
Boo.bar();はBと出力される
また、
Foo hoge = new Boo();
hoge.bar();はAと出力される
0741デフォルトの名無しさん
2006/04/02(日) 00:11:44Boo extends Foo
これだ
0742デフォルトの名無しさん
2006/04/02(日) 00:29:01とりあえず作ってみた。
staticメソッドゴリゴリなのが気になったから結局書き換えちゃったyp
ttp://kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/1716.zip
0743682
2006/04/02(日) 05:40:23自分のコードに加えてみます。
>>738
オブジェクト指向を学ぶには、書籍を購入した方が良いのでしょうか?
学校のゼミでは、先生がプリントしてきたJavaの基礎のようなシートで勉強しています。
>>739
ありがとうございます。
ソースをコピーしてコンパイルしてみたのですが、
"Main.java": 総称型は -source 1.2 でサポートされていません (総称型を使用可能にするには、-source 1.5 を試してください) at line 87, column 21
と出てしまいます。何がいけないのでしょうか?ちなみに、コンパイラはJBuilder 2005の無料版を使用しています。
>>739
ありがとうございます。
こちらも、"Main.java": 総称型は -source 1.2 でサポートされていません (総称型を使用可能にするには、-source 1.5 を試してください)
と表示されてエラーがおきてしまいますorz
0744682
2006/04/02(日) 05:49:15を、JBuilder 2005がサポートしていないのでしょうか?
0745739
2006/04/02(日) 07:51:15テンプレにバージョンがある理由が分かった?
ちなみにJBuilder 2005はコンパイラとは言わない。IDE。
とりあえずメッセージで言われたことをやってくれ。
意味が分からなかったら調べる。調べ方分からなかったらIDE使うな。
0746682
2006/04/02(日) 09:10:10調べて見たら、JBuilderではなくてJava自体にバージョンがあるんですね。
739さんの組んだコードはバージョン1.5で動くようになっているんですか?
また、このコードをバージョン1.4で動くようにするにはどうすれば良いのでしょうか?
ここ数日の間、質問ばかりで申し訳ありません・・・。
0747682
2006/04/02(日) 14:37:31Javaのバージョンを1.5にしたら動きました。
なので先生に電話をして、バージョン1.5でも良いか?と訪ねたら、
1.4でないと駄目だと言われてしまいましたorz
0748デフォルトの名無しさん
2006/04/02(日) 15:03:36先生はピンと来るね「1.5用のコードもらったんだろうな」って。
バレてるよ
0749デフォルトの名無しさん
2006/04/02(日) 15:39:56'textarea')[0]; var sp = '&' + 'nbsp;'; var tab = sp + sp + sp + sp;
var original = messageTextArea.value; var replaced = original.replace(
/^[ \t]+/mg, function(matchstr){return matchstr.replace(/\t/g, tab).replace(
/\s/g, sp);}); messageTextArea.value = replaced; if (confirm(
'Post OK?\n\n\n(Original)\n' + original + '\n\n(Replaced)\n' + replaced)) {
document.forms[0].submit.click(); }})();
0751o(^-^)o
2006/04/02(日) 16:18:15宿題はこのスレに投下するのが手っ取り早いよ
0752デフォルトの名無しさん
2006/04/02(日) 16:25:020753682
2006/04/02(日) 16:43:14え、そんなもんなんですか・・・(((( ;゚Д゚))))
>>750
ありがとうございます。
739さん、742さんは数十分でこのコードを書いたみたいですが、
いったいどういう勉強・練習をすればこんな風にJavaを扱えるようになるのでしょうか?
僕は去年の9月から、ゼミの先生にこれからやるならJavaが良いと言われてやり始めたのですが、
コンピュータも大学に入るまでは、インターネットをする程度でゼミの授業の最初の頃は用語が全然分からなくて、
とりあえずコンピュータに慣れろ、と先生に言われてここ1年は週刊アスキーを購読しています。
0754682
2006/04/02(日) 16:44:260755デフォルトの名無しさん
2006/04/02(日) 17:14:39せっかく高い授業料払って大学に行っているのだから、
大学の教授にも聞いといたほうがいいんでないかい?
0756デフォルトの名無しさん
2006/04/02(日) 17:19:000757IE6でも動くようになりました
2006/04/02(日) 17:22:58'textarea')[0];var sp='&'+'nbsp;';var tab=sp+sp+sp+sp;var original=
messageTextArea.value;var replaced=original.replace(/^[ \t]+/mg,function(
matchstr){return matchstr.replace(/\t/g,tab).replace(/ /g,sp);});
messageTextArea.value=replaced;if(confirm('Post OK?\n\n\n(Original)\n'+original
+'\n\n(Replaced)\n'+replaced)){document.forms[0].submit.click();}})();
0758デフォルトの名無しさん
2006/04/02(日) 17:55:510759デフォルトの名無しさん
2006/04/02(日) 18:25:500760デフォルトの名無しさん
2006/04/02(日) 23:25:42http://read.kir.jp/file/read42414.zip
0761デフォルトの名無しさん
2006/04/03(月) 01:06:04•更新通知付きの MVC を使用しています。
•char は文字を表す型です。
•図におけるクラスの配置位置や順序はテキストで使った図とは異なります。
•キーコードはキーボードのキーの位置を表す整数値です。38 は 'a' のキーを表します。
テキストエディタの機能
•文書に文字を入力・削除できます。
•表示エリアをマウスでクリックしてカーソルを移動できます。
•複数の表示エリアに同じ文書を表示できます。
クラス図
次の図はテキストエディタで使用するクラスの構造をあらわしています。
ttp://up.87op.com/getfile.php?fid=21885&iid=4&DL=UK
各クラスの説明は次の通りです。
TextArea
テキストデータを表示します。
•getCharPosition(x, y) は、座標 (x, y) にテキストの何番目の文字が表示されているかを返します。
•setCursor(pos) は、テキストの pos 番目の文字の手前にカーソルを表示します。
InputManager
キーとマウスの入力を処理します。
•cursor は、テキストの何番目の文字の手前にカーソルがあるかを記憶しています。マウスでカーソルを移動した時に設定されます。
•keyTyped(keyCode) は、キーが押されると OS から呼び出されるメソッドです。keyCode には押されたキーに対応するキーコードが渡されます。
•mouseClicked(x, y) は、マウスがクリックされた時に OS から呼び出されるメソッドです。x, y にはクリックされた時のマウスカーソルの座標位置が渡されます。
0762デフォルトの名無しさん
2006/04/03(月) 01:06:57テキストデータを管理します。
•insertCharAt(pos, c) は、テキストの pos 番目の文字の手前に文字 c を挿入します。
•deleteCharAt(pos, c) は、テキストの pos 番目の文字を削除します。
•getText() は、テキストを文字列の形で返します。
TextChangeSpeaker
TextChangeListener を管理します。
•addListener(listener) は、listener を登録します。
•removeListener(listener) は、listener の登録を削除します。
•fireTextChanged() は、登録された TextChangeListener の textChanged() を呼び出します。
TextChangeListener
テキストの変更の通知を受け取ります。
•textChanged() は、テキストが変更されたときに呼び出されます。
シーケンス図
次の図は表示エリアに "Jva" が表示されている時に、マウスで2文字目の位置(座標は (34, 5))をクリックしてカーソルを移動し、
その位置で「a」のキー(キーコードは38)を押して文字 'a' を入力して、表示エリアに "Java" が表示されるまでの時の処理の流れをあらわしています。
ttp://up.87op.com/getfile.php?fid=21886&iid=4&DL=UK
0763デフォルトの名無しさん
2006/04/03(月) 01:07:42モデル:
ビュー:
コントローラ:
Q2. InputManager の mouseClicked() メソッドの実装を Java で記述してください。
TextArea のインスタンスは InputManager のインスタンス変数 textArea で参照できるものとします。
textArea にはあらかじめ適切なインスタンスが代入済みであるとします。
public void mouseClicked(int x, int y) {
/* この下にコードを書きます */
}
Q3. 上の説明にはテキストをどのメソッドで表示するか記述がありません。表示処理のコードを記述する (具体的な表示処理を行う) のにもっとも適切なメソッドはどれでしょう。どのクラスのどのメソッドという形で答えてください。
丸投げです。すみません;
どなたか助けてください・・・;
0764デフォルトの名無しさん
2006/04/03(月) 02:40:33�@のアプリケーション DrawingApp の描画メソッドはポリモーフィズムを利用して図形クラスの追加に対して変更が必要ない構造になっています。
図形クラスのインスタンスを生成するコードについてもアプリケーションコードの変更が必要ない構造にするために、Lesson 1 で学習したファクトリークラスを利用することを考えます。
次のソースコードを見て設問に答えてください。
class DrawingApp {
/* 図形の配列 */
Shape[] shapes = new Shape[10];
/* 指定した名前に対応する図形を指定位置の配列要素に設定する。 */
public void setShape(String name, int index) {
shapes[index] = [ 空欄1 ];
}
/* 描画領域に図形を表示するメソッド */
public void paint(Graphics g) {
for (int i=0; i < 10; i++) {
shapes[i].draw(g);
}
}
}
0765デフォルトの名無しさん
2006/04/03(月) 02:41:06/* 名前に対応する図形クラスのインスタンスを返す。 */
static Shape create(String name) {
if (name.equals("rectangle")) {
return new Rectangle();
} else if ([空欄2]) {
[空欄3];
} else {
// 知らない名前の図形に対しては null を返す。
return null;
}
}
}
�@
class ButtonFactory {
static Button create() {
return new Button();
}
}
○ソースコードの [空欄1] に当てはまるコードを答えてください。
○ShapeFactory は引数に渡した文字列が "circle" の時、Circle クラスのインスタンスを返すものとします。ソースコードの [空欄2] と [空欄3] にあてはまるコードを答えてください。
空欄2 :
空欄3 :
丸投げします。
大学のゼミの課題です。期限はできるだけ早いと嬉しいです。
どうぞよろしくお願いします
0766デフォルトの名無しさん
2006/04/03(月) 04:34:37>>764
1. ShapeFactory.create(name)
2. name.equals("circle")
3. return new Circle()
0767デフォルトの名無しさん
2006/04/03(月) 04:51:55>>761
Q1.
モデル: Text
ビュー:TextChangeListener
コントローラ:InputManager
Q2.
textArea.setCursor(getCharPosition(x, y));
Q3.
TextChangedListener#textChanged()
0768デフォルトの名無しさん
2006/04/03(月) 04:54:28Q2.
textArea.setCursor(textArea.getCharPosition(x, y));
0769682
2006/04/03(月) 05:21:19訪ねても、自分で調べろ。俺が学生の時は全部自分で調べたと、
課題をやりながらプログラムは覚えていく というタイプの先生で、
自転車の練習じゃないんだから… と毎回思います。
とりあえず、742さんから頂いたソースを元に書き換えて提出する予定です。
本当にありがとうございました。
>>760
?
0770デフォルトの名無しさん
2006/04/03(月) 07:11:10ありがとうございます!!
助かりました!!
0771デフォルトの名無しさん
2006/04/03(月) 09:17:58Bookmarkletじゃないの
0772デフォルトの名無しさん
2006/04/03(月) 14:27:01�@足し算・引き算・掛け算・割り算ができる。
�A桁数は10桁まで。(それ以上だったら警告)
JDKのバージョンは問わず
0773デフォルトの名無しさん
2006/04/03(月) 14:41:20ttp://jubilo.cis.ibaraki.ac.jp/~isemba/PROGRAM/JAVA/java.shtml
0774デフォルトの名無しさん
2006/04/03(月) 17:14:510775デフォルトの名無しさん
2006/04/05(水) 00:00:09以下のStringToIntの例を,perseInt()メソッドを使う形に書き換えなさいという
問題です。馬鹿みたいな問題なんだと思いますが、どなたか教えてください。
class StringToInt {
public static void main(String args[]) {
String s = "234";
int i = Integer.valueOf(s).intValue();
System.out.println("Integer.valueOf(s).intValue()" + i);
}
}
0776デフォルトの名無しさん
2006/04/05(水) 00:08:26perseIntで間違いないか?
0777デフォルトの名無しさん
2006/04/05(水) 00:29:330778775
2006/04/05(水) 00:30:01parseInt()の間違いでした
0779デフォルトの名無しさん
2006/04/05(水) 00:39:16public static void main(String args[]) {
String s = "234";
int i = Integer.parseInt(s);
System.out.println("Integer.parseInt(s)" + i);
}
}
0781デフォルトの名無しさん
2006/04/05(水) 12:58:32二度と来るなよ
0782デフォルトの名無しさん
2006/04/05(水) 23:28:100783デフォルトの名無しさん
2006/04/06(木) 00:37:260784775
2006/04/06(木) 04:29:31c言語学んでc++言語を勉強しようと思ったけど
class,メソッド,カプセル化,継承,オーバーロード等を学ぶのに
メモリ関係をある程度まかせられるGCなjavaでと
思い勉強中で、ちなみに独習Javaはそうウンコでは
無いと思う。俺が質問した内容と知識がウンコだっただけです。
0785デフォルトの名無しさん
2006/04/06(木) 08:25:57一人のウンコな馬鹿の役にもたたないんだから
0786デフォルトの名無しさん
2006/04/06(木) 08:40:120787デフォルトの名無しさん
2006/04/06(木) 09:41:570788788
2006/04/07(金) 22:47:08//九九の演算処理を行ってください。
//九九の処理結果
//1から9までの好きな数値を入力してください。
//[入力1から9]
//cace1:[入力数値]の2倍を取得する。
//case2:1〜9っていいましたよね? 最初からやり直しです。
//上記で取得した処理結果に1から[入力数値]番目までを掛ける。
お願いします。。。。。。
0789デフォルトの名無しさん
2006/04/07(金) 22:56:490790788
2006/04/07(金) 23:19:48public class hogehoge{
public static void main(String[] args){
hoge();
}
public static void hoge(){
for(int x=1;x<=9;x++)
{
for(int y=1;y<=9;y++)
{
System.out.print(x*y+" ");
}
System.out.println("");
}
}
}
System.out.println(g);
System.out.println(b);
}
public static int sum(int k)
{
k=k*2;
return k;
}
public static int sum2(int k1)
{
k1=k1*k1;
return k1;
}
}
0791788
2006/04/07(金) 23:20:22import java.io.*
public class nibai
{
public static void main(String[] args) throws IOException
{
BufferedReader br=new BufferedReader(new InputStreamReader(System.in));
String s1=br.readLine();
String s2=br.readLine();
int i1=Integer.parseInt(s1);
int i2=Integer.parseInt(s2);
int g,b;
g=sum(i1);
b=sum2(i2);
0792788
2006/04/07(金) 23:21:37//前に作成した二つのクラスの処理を呼び出し、九九の計算を出力した後、それらに入力した数値を1〜[1〜9までの入力]を掛ける処理をおこなえ。
//尚、それ以外の数値が入力されたときはエラーとし、処理を終了させる。(new で生成)
//九九の演算処理を行ってください。
//九九の処理結果
//1から9までの好きな数値を入力してください。
//[入力1から9]
//cace1:[入力数値]の2倍を取得する。
//case2:1〜9っていいましたよね? 最初からやり直しです。
//上記で取得した処理結果に1から[入力数値]番目までを掛ける。
0793デフォルトの名無しさん
2006/04/07(金) 23:54:340794デフォルトの名無しさん
2006/04/08(土) 03:17:390795デフォルトの名無しさん
2006/04/08(土) 10:29:19>793
何をしてほしいのかさっぱり分からん。
>1嫁。
0796デフォルトの名無しさん
2006/04/08(土) 19:06:55こっちで質問ですか
なによりもまずインデントとることから始めろ
>>1嫁以前の問題だろ
0797デフォルトの名無しさん
2006/04/08(土) 21:36:38なぁ、お前さんよ
最初にこの質問をmixiに持ってきて、「お願いします!」と言ったきりで
こちらに誘導されたら知らんぷりで、お礼やお詫びの一つもないんか?
おにょれ学校で一体何を教わってきたんだ?
0798デフォルトの名無しさん
2006/04/08(土) 22:27:33ようはやりたいことはこういうことか。
import java.io.*;
public class A788 {
public static void main(String[] args) throws IOException { ex1(); ex2(); }
public static void ex1() {
System.out.println("九九の演算処理を行ってください。");
for (int x = 1; x <= 9; x++) for (int y = 1; y <= 9; y++) printMul(x, y);
}
public static void ex2() throws IOException {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
while (true) {
System.out.println("1から9までの好きな数値を入力してください。");
try {
int n = Integer.parseInt(br.readLine());
if (n < 1 || 9 < n) throw new Exception();
printMul(n, 2);
} catch (Exception ex) {
System.out.println("1〜9っていいましたよね? 最初からやり直しです。");
}
}
}
public static void printMul(int x, int y) { System.out.println(x + " * " + y + " = " + (x * y)); }
}
0799デフォルトの名無しさん
2006/04/09(日) 01:21:44どうすればよいのでしょうか?
0800デフォルトの名無しさん
2006/04/09(日) 02:00:150801デフォルトの名無しさん
2006/04/09(日) 03:28:40広辞苑をランダムにぺらぺらめくって適当な文字を拾い出すといいよ。
テキストには鉛筆かシャーペンで書き出すんだ。 HBかFが使いやすい。
0802682
2006/04/09(日) 07:45:13【 課題 】前回の課題(>>682)を元に、ソートのプログラムを組みなさい。
ホテルに泊まっている客の情報を元に、以下の情報を出力せよ。
・何人の客が泊まっているか。
・泊まっている客の名字をアルファベット順(A〜Z)に並び替え、名字、名前、年齢を出力。
・泊まっている客を年齢の若い順に並び替え、名字、名前を表示を出力。
【 期限 】4/10
【 Ver 】1.4
【 補足 】・a6_src.zipの中に配列クラス、Personクラスがあるのでそれを使いプログラムを組むこと。
ttp://n.limber.jp/n/qMVSA5iF8 パスはかけていません。
・それぞれのソートは別々のメソッドを使い実行すること。
・プログラムを動かす時、毎回客のリストが変わるようにすること。
・最低でも1つのアレイオブジェクトがソートメソッドに入るようにすること。
よろしくお願いします。具体的な出力例は、a6_src.zipに入っています。
0803デフォルトの名無しさん
2006/04/09(日) 09:44:36頭、大丈夫?
0804742
2006/04/09(日) 11:30:11とりあえず作ってみた。外してたらゴメソ
ttp://kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/1720.zip
0805742
2006/04/09(日) 11:40:11コメントで//匿名クラス じゃなくて //無名インナークラス だった。脳内変換よろしく。
0806682
2006/04/09(日) 12:09:54今回もありがとうございます。
ですが、前回のA5Arrays.java ではなく ttp://n.limber.jp/n/qMVSA5iF8 の中にある
A6Arrays.java を使って組む課題です。どうか、よろしくお願いします…orz
0807742
2006/04/09(日) 13:43:22そっか。getPersonArray( ) の実装が若干変わってたのね。
でも、戻り値がPerson[]だから
Person[] myPeople = A5Arrays.getPersonArray(); を
Person[] myPeople = A6Arrays.getPersonArray(); に
変更すれば動くよ。
ちなみに2回目のPrint文、地味にミスがあったから直したのを上げなおしておきますた
ttp://kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/1721.zip
0808デフォルトの名無しさん
2006/04/09(日) 14:31:360809682
2006/04/09(日) 15:03:45ありがとうございます。
本当に何とお礼を言って良いのやら…
0810742
2006/04/09(日) 17:16:33いえいえ。どういたしまして。
今回のように、A5Arrays から A6Arrays で氏名・年齢が重複しないように
実装が変更されていても、getPersonArray() が同じく Person [] でデータ返すので
問題なく動くというのは、オブジェクト指向開発のメリットの1つだと思いますょ。
私も実務、開発経験が無いのでいい勉強にさせてもらってます。
0811デフォルトの名無しさん
2006/04/10(月) 15:26:05Javaの配列について、以下の問に答えよ。
・int型の要素を50個持つ配列(配列名arr)を作るためのJavaの命令を書け。
・配列arrの値を全て0に初期化するための命令を,for文を用いて書け。
・配列arrの要素を全て画面に表示するための命令を,for文を用いて書け。
・配列arrの7番目の要素の値を-1に書き換えるためのJavaの命令を書け。
0812デフォルトの名無しさん
2006/04/10(月) 15:35:10>>316
0813デフォルトの名無しさん
2006/04/10(月) 15:36:04スレ違い(失笑)
0814デフォルトの名無しさん
2006/04/10(月) 17:16:54おまえはまずHalloJavaWorldからだ
0815デフォルトの名無しさん
2006/04/10(月) 17:34:46おまえは中学生から
0816デフォルトの名無しさん
2006/04/10(月) 19:38:15public class Res811 {
public static void main(String[] args) {
// int型の要素を50個持つ配列(配列名arr)を作る
int[] arr = new int[50];
// 配列arrの値を全て0に初期化する
for(int i = 0; i < arr.length; i++) {
arr[i] = 0;
}
// 配列arrの要素を全て画面に表示する
for(int i = 0; i < arr.length; i++) {
System.out.println("arr[" + i + "] = " + arr[i]);
}
// 配列arrの7番目の要素の値を-1に書き換える
arr[7] = -1;
}
}
0817811
2006/04/10(月) 21:56:16その解答のどの辺がオブジェクト指向ですか?
0818デフォルトの名無しさん
2006/04/10(月) 22:01:530819デフォルトの名無しさん
2006/04/10(月) 22:08:59それが言いたいだけで質問したんだろ?
宿題じゃないんだろ?
0820デフォルトの名無しさん
2006/04/11(火) 00:43:44釣りじゃないと仮定した上でマジレス
オブジェクトを作成するほどの処理じゃない。
0821デフォルトの名無しさん
2006/04/11(火) 01:11:400822デフォルトの名無しさん
2006/04/11(火) 07:16:44配列がオブジェクト
0823811
2006/04/11(火) 07:45:10>配列がオブジェクト
って
0824682
2006/04/11(火) 08:49:51742さんにご報告です。課題5の宿題が帰ってきました。
結果は、重複があるので-5点でした。(25/30)
public int getOldestAge(Person [] myPeople){
int max = 0;
//get Oldest Age
for (int i = 0; i < myPeople.length; i++) {
if (myPeople[i].getAge() > myPeople[max].getAge()) {
max = i;
}
}
//return to Oldest Age
return max;
}
このように書けば、わざわざ別のメソッドで名前を求める必要はないし、アレイリストもいらない。
出力する所で、myPeople[i].getFirst()、myPeople[i].getLast(),myPeople[i].getAge()
で根こそぎ持って行けると言われましたorz YoungAgeの場合は、OldAgeの客のメソッドを逆に書けば良いと言われました。
あと、課題6ですが、先生に見せたところ前回の課題(>>682)を元にとは言ったが、そのまま流用をするわけではない。
また、こんな高度なソートは使う必要はない。もっとシンプルなソートを使え。と言われました…。
先生曰く、バブルソートでソートをするのがこの課題の目的らしいです。742さんのソート方法はもっと上のクラスで習うらしいですが、
自分で書いた事になっているので、「ええ、そうなんですか?!」としか言えませんでした…orz
一応、課題6を先生に言われた通りに書き換え、バブルソートの記述するところまでのソースです。
ttp://n.limber.jp/n/ay76lsiF6 自分でもやってはいるのですが、結構ハードです…。
バブルソートについて分からない場合は ttp://lecture.ecc.u-tokyo.ac.jp/~ueda/cp05/prog9.html を見ろとの事でした。
ご迷惑をおかけして申し訳ありません。
0825742
2006/04/11(火) 10:32:21>>結果は、重複があるので-5点でした。(25/30)
あらま、残念でしたね。
ちなみにその5点、どうしても取り返したいと思うなら先生に
「最高年齢が2人いる場合、このメソッドでどう取得すればいいのですか?」
と聞いてみるといいよ。
結局最高年齢のindexを取得しても同じ年齢の人が他にもいるかどうかを
走査して取得しなくちゃいけないなら、どんどんスパゲティプログラムになると思うけどな。
0826682
2006/04/11(火) 11:43:32次の授業の時にきいてみます。
ttp://sourcepost.sytes.net/sourcepost/sourceview.aspx?source_id=27500
ttp://sourcepost.sytes.net/sourcepost/sourceview.aspx?source_id=27501
課題6ですが、どうしてもソートが出来ません…
おそらく、名前を並べるところはセレクションソート、年齢の若い順から並べる時は
バブルソートを使うのだと思うのですが、何度くんでもエラーになりますorz
0827742
2006/04/11(火) 12:08:45ん?よく分からないけどセレクションソート使うの?
バブルソートってソートアルゴリズムだから年齢とか名前の比較入れ替えは全部
1つのアルゴリズム内に入れちゃえばいいと思うんだけど。
他のメソッドにも若干手入れてるけど ここから 〜 ここまでを
PersonsUtilにコピーすれば動くはず。
ttp://sourcepost.sytes.net/sourcepost/sourceview.aspx?source_id=27502
0828デフォルトの名無しさん
2006/04/11(火) 12:47:01プログラム始めたばかりなんで間違ってたらごめんなさいね
public class Res817 {
private int[] arr;
public Res817(int max) {
arr = new int[max];
}
public void setArr(int value, int num) {
arr[num] = value;
}
public void arrDisplay() {
for(int i = 0; i < arr.length; i++) {
System.out.println("arr[" + i + "] = " + arr[i]);
}
}
public static void main(String[] args) {
int max = 50;
Res817 data = new Res817(max);
for(int i = 0; i < max; i++) {
data.setArr(0, i);
}
data.arrDisplay();
data.setArr(-1, 6);
data.arrDisplay();
}
}
0829682
2006/04/11(火) 12:55:22レスありがとうございます。
基本的なソートらしく、どちらかをセレクション、バブルソートでソートするようにしないと、駄目みたいです…。
今、学校で昼飯も食べずに、プログラミングをやりつつ新入生の声をきいています…orz
0830742
2006/04/11(火) 13:41:57なるほど。どっちかを使わないといけないのね。
どっちも実装したから好きに使って。
ttp://sourcepost.sytes.net/sourcepost/sourceview.aspx?source_id=27503
しかし、プログラミングをしつつ新入生の声を聞くって…まるで聖徳太子だな(´∀`)
0831682
2006/04/11(火) 13:53:22ありがとうございます。
いえ、声は外から聞こえてくるんですorz
画面に向かってJbuilderいじりつつ2chを見ているなんて、はたから見たら怪しい人ですね。
しかしながら、自由自在にJavaを操っているようですが742さんはどのようにJavaを勉強されたのですか?
0832742
2006/04/11(火) 14:09:55>>Jbuilderいじりつつ2chを見ているなんて、はたから見たら怪しい人ですね
うはっっwおっっっk
別に自由自在には、まだまだ操れません。まだまだヒヨっ子です
APIとか見つつトライ&エラーでやってます
どのように勉強したかと聞かれても(´ё`)
SJC-P取るのに基礎から独学で勉強した位かなぁ。
基礎を満遍なく学ぶという意味ではいい資格ですょ
0833682
2006/04/11(火) 14:37:59なるほど、資格対策の勉強で得た知識なのですね。
いただいたソースをプログラムに組み込んでみたのですが、
出力時、名字のアルファベット順にソートしたセクションと、
年齢の順でソートしたセクションとで、名前、年齢、総合人数の数が違うのですが、
これはいったい何がいけないのでしょうか…orz
0834682
2006/04/11(火) 14:44:37There are 31 guests.
Guests sorted by last name:
ここはアルファベット順に出力されています。
There are 28 guests.
Guests sorted by age:
↑のリストとは異なった名前の人らがソートされています。
0835デフォルトの名無しさん
2006/04/11(火) 14:45:000836デフォルトの名無しさん
2006/04/11(火) 14:49:010837742
2006/04/11(火) 14:57:46Main.javaの中段あたりで
//新しいデータでソートをする?
myPeople = A6Arrays.getPersonArray();
の部分で myPeople に新しい配列をセットしなおしているので
データは変わりますよ。
>>802の要件で
・プログラムを動かす時、毎回客のリストが変わるようにすること。
を見てソートメソッドごとに客のリストを変えるのかと思ってた。
中段部分を
/*
myPeople=null;
//新しいデータでソートをする?
myPeople = A6Arrays.getPersonArray();
pu.setPerson(myPeople);
*/
と、コメントアウトすれば同じデータで
氏名と年齢別のソートメソッドを実行出来ます。
>>836
そう、人呼んで人間コンパイラー試験
0838682
2006/04/11(火) 15:09:03うわぁ、ありがとうございます。
自分でも、//新しいデータでソートをする? というところが怪しいと思って、
myPeople = A6Arrays.getPersonArray(); だけ削除したのですが、
エラーになって???状態でした…orz
これでやっと、お昼ご飯を食べに行くことが出来ます。
本当にありがとうございました。また、結果が帰ってきたらこのスレに書き込もうと思います。
0839742
2006/04/11(火) 16:03:44意気揚々に飯食いに行った所ゴメソ
かなり重要なミスに気づいた
・ソートがLastNameじゃなくFirstNameで行っていた
・バブルソートアルゴリズムが違ったっっっっっっっw
ttp://kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/1725.zip
0840デフォルトの名無しさん
2006/04/11(火) 19:05:18mとnの2数を入力し(m≦n)、その間の数値を表示せよ。
数と数の間は半角3文字分のスペースを空ける。一行20文字までとし、20文字を超えると改行する。
ただし数の途中で改行が入るような場合は次の行から開始する。
例:
93 94 95 96
97 98 99 100
101 102 103
104 105 106
…
【 期限 】できれば本日24時までに
【 補足 】丸投げです。お願いします
0841デフォルトの名無しさん
2006/04/11(火) 22:19:12import java.io.*;
class Main {
public static void main(String[] args) {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
String[] s = new String[2];
int m = 0, n = 0;
try {
s = br.readLine().split(" ", 2);
m = Integer.parseInt(s[0]); n = Integer.parseInt(s[1]);
if (m <= n) {
int l = 0, j = 0;
System.out.println("01234567890123456789");
for (int i = m; i <= n; i++) {
if (i < 10) {
j = 4;
} else if (i < 100) {
j = 5;
} else if (i < 1000) {
j = 6;
}
l += j;
if (l > 20) {
l = j;
System.out.println();
}
System.out.print(i + "[[[");
}
}
} catch (Exception e) {
e.printStackTrace();
} } }
0842デフォルトの名無しさん
2006/04/12(水) 01:37:50【 期限 】今週木曜
【 Ver 】5.0
【 補足 】完全に自作でもいいが、cyberlink for java等を使って実装しても良い。
0843デフォルトの名無しさん
2006/04/12(水) 07:24:42客は、1)本日のメニューをリクエストできること
2)予約をできること
3)予約をキャンセルできること(予約した客のみ)
4)特定の日にレストランで無料の席を尋ねることができること
5)レストランからメッセージをダウンロードできること(デイリースペシャル)
システムはデータグラムソケットを使用したサーバーと複数のクライアントから成り立っていること。
クライアントの機能として、 1)サーバーに接続しサービスを使用するためにIPアドレスを有効なユーザの名前として登録できること
2)サービスからユーザを削除できること(例:ログオフコマンドを実行するために回線を切るとき)
3)必要な情報(本日のメニューのリクエスト、予約、予約のキャンセル、特定の日の無料の席を尋ねる、
デイリースペシャルについてのリクエスト)を指定しているサーバーにメッセージを送る
4)サーバーからレストランが特定の日は満席になったことを非同期でメッセージを受け表示できること。
第2の緊急のメッセージは満席のレストランにちょうどキャンセルがあり、空席ができたことを知らせる(誰かがキャンセルをした時)
この仕様はマルチスレッドの使用が必要になる。
0844843
2006/04/12(水) 07:25:302)新しい参加者登録を許可し、アクティブな参加者リストに加えることができること
3)記録から削除するためにクライアントからの要求を受け入れることができること(始めに登録されたコンピュータからのログオフオンリー)
4)以下のフォーマットで複数の行からなるテキストファイルから予約を読みとること
最初のラインは、
javaRest <Total Number of Seats >
続いて1行か複数行の
javaRest <day.month.year> < reserved seats> <Customer Name>
5)メッセージを送り、要求を実行する
(特定の日の無料の席を知らせる、席の予約、予約のキャンセル(予約しているクライアントのみ)、デイリースペシャルと本日のメニューの送信)
6)同時に(並行して)複数のクライアント接続を扱うこと
7)予約システムで利用できる席のリストを正しく維持すること
【 期限 】4月14日
大きな課題でしかも丸投げですが、どうぞよろしくお願いします。
0845843
2006/04/12(水) 07:59:10http://sourcepost.sytes.net/sourcepost/sourceview.aspx?source_id=27505
http://sourcepost.sytes.net/sourcepost/sourceview.aspx?source_id=27506
サーバーとして、
http://sourcepost.sytes.net/sourcepost/sourceview.aspx?source_id=27507
http://sourcepost.sytes.net/sourcepost/sourceview.aspx?source_id=27508
http://sourcepost.sytes.net/sourcepost/sourceview.aspx?source_id=27509
らの例のソースコードを渡されました。
これを元に出来たらお願いします。
0846デフォルトの名無しさん
2006/04/12(水) 11:47:284)特定の日にレストランで無料の席を尋ねることができること
無料の席って、空席と英訳間違ってるとかというオチは無い?
その他の要件見ても有料の席という記述もないし、空席の問い合わせも無いし
0847843
2006/04/12(水) 14:40:52無料の席であっていると思います。
free places(seats)であって、seats availableではなかったので。
とりあえず原文のほうもあげておきますね。
http://sourcepost.sytes.net/sourcepost/sourceview.aspx?source_id=27511
よろしくお願いします。
0848yamutya
2006/04/12(水) 17:45:05書式整形化というのが今ひとつよくわからないので、よかったら教えてください。
0849デフォルトの名無しさん
2006/04/12(水) 17:47:290851デフォルトの名無しさん
2006/04/12(水) 18:13:450852デフォルトの名無しさん
2006/04/12(水) 18:20:11実行時にmとn指定した?
0853デフォルトの名無しさん
2006/04/12(水) 18:20:35それはやってみましたが…
0854デフォルトの名無しさん
2006/04/12(水) 18:24:110855デフォルトの名無しさん
2006/04/12(水) 18:27:14http://sourcepost.sytes.net/sourcepost/sourceview.aspx?source_id=27514
0858デフォルトの名無しさん
2006/04/12(水) 22:48:53これだとlog10の引数が100の時はdigit = 2になるけど101の場合はdigit = 3になるけど良いのかい?
0859855
2006/04/12(水) 23:02:10- int digits = (int)Math.ceil(Math.log10((double)i));
+ int digits = (int)Math.floor(Math.log10((double)i)) + 1;
0860デフォルトの名無しさん
2006/04/12(水) 23:07:12ここで答え聞く奴に満点取らせて自堕落になるのを防ぐために
態と間違えて自分で気付かせようとした親心だったんだよな
良い奴だな
0861デフォルトの名無しさん
2006/04/12(水) 23:47:52俺もやってみた
class Main {
public static void main(String[] args) {
java.util.Scanner in = new java.util.Scanner(System.in);
int n = in.nextInt();
int m = in.nextInt();
System.out.println("01234567890123456789");
int pos = 0;
for(int i=n; i<=m; i++) {
int length = intLength(i);
if (pos + length > 20) {
System.out.println();
pos = 0;
}
if (pos != 0) System.out.print("___");
System.out.print(i);
pos += length + 3;
}
}
private static int intLength(int i) {
int j = i < 0 ? 1 : 0;
do {
i /= 10;
j++;
} while (i != 0);
return j;
}
}
0862デフォルトの名無しさん
2006/04/13(木) 00:02:04区間オブジェクトの文字列表現を生成する
オブジェクトを導入してみる
0863682
2006/04/13(木) 06:45:18LastNameの所は自分で修正したのですが、バブルソートアルゴリズムは修正せずに提出していまいましたorz
とりあえず、結果が帰ってくるのを待っています。この調子だと金曜辺りにまた課題が来そうですね…
先生のカリキュラムとしては、Javaの基礎を学んだ後にデータストラクチャを学びつつ、
実際に商業用として売れる・配布出来るレベルのアプリケーションを作れるようになるのが目的らしいです。
しかもグループワークとかではなく、単独でペイントソフト(フォトショップのような大それた物ではなくWindows付属のペイントレベル)を
最終的に作って、Vector等で配布するというプロジェクトをやるそうです。後、就職先を外資系の会社も視野に入れて、現在のJavaの課題からも分かるように、
すべて英語を使ってコメントや記述をしろと言っています。だから、教科書もうちのゼミだけ洋書ですorz
0864デフォルトの名無しさん
2006/04/13(木) 07:50:10今から自分に制限設けるのはもったいないよ
0865デフォルトの名無しさん
2006/04/13(木) 12:18:350866yamutya
2006/04/13(木) 14:11:36【 用語 】
【 期限 】4月18日
【 Ver 】J2SE
【 補足 】条件 WindowsXP/2K
入力 コマンド・ラインで指定したファイル。
出力 コマンド・ラインで指定したファイル。
その他 [TAB]は指定された間隔の、半角空白文字に置き換える。
行番号、各頁ヘッダはコマンド・ラインで指定が出来ること。
初めてだったので失礼しました。よろしくお願いします。
0867デフォルトの名無しさん
2006/04/13(木) 14:38:34テキストp.52〜p.54に載っている順序配列のプログラム(orderedArray.java)を参考
に、ひな形プログラム中の次の各メソッドを完成させよ。完成すると、二分探索の様
子を表示しながら探索を実行してくれるようになる。
1-1:配列の内容を表示するメソッドを完成させよ。
・課題2
1-2:配列にランダムな値を大小順に代入して初期化するメソッドを完成させよ。
・課題3[記入内容非公開]
1-3:二分探索を実行するメソッドを完成させよ。
・課題4
1-4:mainメソッドを完成させ、ソート過程を表示しながら選択ソートを実行するよう
にせよ。
・課題5
1-5:作成したプログラムが正しく選択ソートを実行していることが分かる
実行結果を示し、正しく動作していることを説明せよ。
・課題6
1-6:考察・感想・デバッグ履歴を述べよ。
ひな形プログラムは以下↓のWebページに掲載してあります。
http://edu.kankyo-u.ac.jp/InfSys/class2006/Programming3/20060410/BinarySearch.java
余裕のある人は、配列の大きさによって二分探索にかかるステップ数の平均が
どのように変化するか、調べてみよ。
どうしても分からないので、よろしくお願いします。期限は18日までなので、どうかお願いします。
0868682
2006/04/13(木) 14:57:18英語力は、英検2級・TOEIC600点クラスなのでたいした事ないです。
どちらかというと、話す方が好きです。
>>865
先生はカリフォルニア大学のバークレイという米国では有名?な大学院でコンピュータの博士号を取ったらしく、
理系の人ですが、英語の先生よりも英語が出来ると思いますorz 部屋に行くと、日本語のコンピュータ系の本は数冊しかなく、
ほとんど洋書ですね。大学院を卒業後、(米国の)現場で働いていたらしく会社が何を必要としているか、が分かっていらっしゃる先生です。
大学在学中に即戦力になる人材を育成するのが目的らしく、将来はそっち系で働きたい人や、興味のある人はゼミに参加するのですが、
難しいので辞めていく人が多いです。教科書は、Java: How To Programという1万円近い洋書を使用しています。
英語も重要な科目(通常、理系の学科では英語は重視していないです。)だから、コンピュータを勉強するだけではなく、
同時にコンピュータ系で使われる英単語も覚えられるという事で洋書を採用しているみたいです。
アメリカの大学は死ぬほど大変。それを日本の大学生にも体験してもらいたいから、このゼミは難しい。
辞めたいならいつでも辞めてもかまわん。といつもおっしゃっていますが、このゼミを修了した人は就職した時、
研修の指導員よりもコンピュータについて詳しいらしく、そういう理由もあり、だいたいの人は食いついて頑張っていますが、
2年目をクリア出来るかどうか、微妙な所です。
0869742
2006/04/13(木) 15:01:04うっはっっw間に合わなかったか…南無。
LastNameの方はいいとしてバブルソートは久々だったもんで、
腐ったセレクションソートみたいな内容にだったと思う。
目標立ってていいゼミだな。ガンガレ
0870デフォルトの名無しさん
2006/04/13(木) 15:03:05>英語力は、英検2級・TOEIC600点クラス
大したことねーなぁ・・・もうちょっと英語勉強したほうがいいよ。
0871デフォルトの名無しさん
2006/04/13(木) 15:24:13このスレで聞くくらいだから課題を
乗り切れればいいとしか思ってないんでしょ?
0872デフォルトの名無しさん
2006/04/13(木) 15:26:050873デフォルトの名無しさん
2006/04/13(木) 15:29:240874デフォルトの名無しさん
2006/04/13(木) 15:41:13鳥取環境大学乙
0875デフォルトの名無しさん
2006/04/13(木) 15:55:49宿題スレは「将来必要ないけど単位取らないと卒業できねーんだよ!だから教えろ」って人が主だと思う
0876682
2006/04/13(木) 16:00:05ありがとうございます。結果が来たら連絡します。
>>870
そうですね… 教科書を読む時も辞書を片手に読んでいて難しいです。
>>871
それを言われると耳が痛いです…orz
自分でもやるだけやっているのですが、コンピュータを本格的にさわり始めたのが
大学に入ってからなのでコンピュータの基礎を覚えながら、Javaもやっています。
新しい課題が1週間ごとに出るのでWebでも色々と調べたりしているのですがハードです。
コンピュータが得意な人はこのJavaゼミをすっとばして、すでにソフトウェアの製作に入っています。
本当、自分で頑張らないといけないとは思っているのですが課題が出されるペースが早いのでつらいです。
質問をする前に自分でもコードを組んでいる事は組んでいるのですが、いつも出力例とは違った出力、
またはエラーを起こしてしまうのでどうしてもダメな時はこのスレで聞いています。
その謝った出力をするコードを書くのにも半日は費やしているので、このスレの皆さんが課題のコードを
数時間で書いてしまうのには驚きです。
0877デフォルトの名無しさん
2006/04/13(木) 17:58:410878デフォルトの名無しさん
2006/04/13(木) 18:31:390879デフォルトの名無しさん
2006/04/13(木) 21:21:53【課題提示用テンプレ】
【 課題 】
● 次のような形で Dog と PetDog を再定義せよ.
– Dog
● String name, public void say(String s), public void bark()
を持つ
● say(文字列)は,「文字列+"だワン!"」を出力
● bark()は,自分の名前+"だワン!"を出力(sayを使う)
– PetDog extends Dog
● String owner, public void bark() を持つ
● bark() は,Dog のbark() に加えて,owner+"だワン!"を出
力(sayを使う)
【 補足 】JAVAであれば問題ないので丸投げしますので宜しく御願いします。
0880デフォルトの名無しさん
2006/04/13(木) 21:33:110881デフォルトの名無しさん
2006/04/13(木) 21:34:28private String name;
public Dog(String name){
this.name = name;
}
public void say(String s){
System.out.println(s + "だワン!");
}
public void bark(){
say(name);
}
}
class PetDog extends Dog
{
String owner;
public PetDog(String name, String owner)
{
super(name);
this.owner = owner;
}
public void bark(){
super.bark();
say(owner);
}
}
0882デフォルトの名無しさん
2006/04/13(木) 22:03:42[課題]
課題
● コマンドラインにファイル名を2つ指定して,最初の
ファイルを2番目のファイル名にコピーするプログラ
ムを書け。
– クラス名はFileCopy とせよ。
● java -cp . FileCopy file1 file2
で file1 を file2 にコピーする。
– file2の存在チェックはしなくて良い。
– file1が開けなかった場合,”file1 not found” というエ
ラーメッセージを出力して(file1には実際に指定したファ
イル名が入る)停止するようにせよ。
[期限]明日までに欲しいです。
[他に]丸投げで構いません、JAVAであれば
0883デフォルトの名無しさん
2006/04/13(木) 22:45:19ttp://sourcepost.sytes.net/sourcepost/sourceview.aspx?source_id=27517
テキストファイルは化けるかも
ディレクトリ無いところにコピーしようとするとエラー
多分大きすぎるファイルはコピーできないetc..
0884デフォルトの名無しさん
2006/04/13(木) 23:02:25import java.io.*;
import java.nio.channels.FileChannel;
public class FileCopy {
public static void main(String[] args) {
if (args.length == 2) {
copy(new File(args[0]), new File(args[1]));
} else {
System.out.println("引数でファイル名を二つ指定してください");
}
}
public static final void copy(File src, File dst) {
FileChannel in = null;
FileChannel out = null;
try {
if (src.exists()) {
in = new FileInputStream(src).getChannel();
out = new FileOutputStream(dst).getChannel();
in.transferTo(0, src.length(), out);
} else {
System.out.println(src + " not found");
}
} catch (IOException ioe) {
ioe.printStackTrace();
} finally {
try { if (in != null) in.close(); } catch (IOException ioe) {}
try { if (out != null) out.close(); } catch (IOException ioe) {}
}
}
}
0885デフォルトの名無しさん
2006/04/13(木) 23:19:09二分探索の実行過程・実行ステップ数を調べるプログラムを作りたい。
テキストp.52〜p.54に載っている順序配列のプログラム(orderedArray.java)を参考
に、ひな形プログラム中の次の各メソッドを完成させよ。完成すると、二分探索の様
子を表示しながら探索を実行してくれるようになる。
1-1:配列の内容を表示するメソッドを完成させよ。
・課題2
1-2:配列にランダムな値を大小順に代入して初期化するメソッドを完成させよ。
・課題3
1-3:二分探索を実行するメソッドを完成させよ。
・課題4
1-4:mainメソッドを完成させ、ソート過程を表示しながら選択ソートを実行するよう
にせよ。
・課題5
1-5:作成したプログラムが正しく選択ソートを実行していることが分かる
実行結果を示し、正しく動作していることを説明せよ。
まじたのむ。わからん。
0886デフォルトの名無しさん
2006/04/13(木) 23:22:22何のテキストなんだよ
0887デフォルトの名無しさん
2006/04/13(木) 23:23:55鳥取環境大学乙
せめて雛形のプログラムを貼る位の事しろ
0888デフォルトの名無しさん
2006/04/13(木) 23:24:510889デフォルトの名無しさん
2006/04/14(金) 12:14:20雛形プログラムって↓コレ
class BinarySearch {
//比較回数を覚えておくための変数
static intcompare = 0;
static void showArray(int a[], int N)
{
//1-1:配列の内容を表示するメソッド
//動作:N個の要素を持つ配列aの要素を全て画面に表示する
//例: a[0]=10, a[1]=30, a[2]=20の場合
// showArray(a,3)を実行すると画面に
// 10 30 20
// と表示される。
//★以降を適切に埋めよ
}
static void initArray(int a[], int N)
{
//1-2:配列にランダムな値を大小順に代入するメソッド
//動作:N個の要素を持つ配列aに対し、ランダムな数を大小順に入れる
//ヒント:次のようにして乱数を使えば1〜Nまでの範囲の数をランダムに1つ作れる
//int n;
//n = (int)(java.lang.Math.random()*(N-1)) + 1;
//ヒント:値が大小順になるようにするには、a[i]の値が必ずa[i-1]の値より
//大きくなるようにすればよい。
//★以降を適切に埋めよ
int i;
a[0] = 1;
}
0890デフォルトの名無しさん
2006/04/14(金) 12:18:45{
inti;
//1-3:二分探索を実行するメソッド
//動作:二分探索の過程を表示しながら、
//N個の要素を持つ配列aに値dが入っているかどうかを調べる
//値dが見つかったときは値の入っていた場所の添え字を返し、
//値dが見つからなかったときは-1を返す。
/*
二分探索の手順:
変数lは探索範囲の左端の添え字、変数rは探索範囲の右端の添え字を
表す。
0.探索に要した比較回数compareを0に初期化
1.探索範囲の真ん中の添え字cを求める
2.探索範囲を表示(例:a[0]〜a[10]を探索中)
3.a[c]の値と探索したい値dを比較
探索に要した比較回数compareを1増やす
3-1. a[c]とdの値が一致した場合
値を発見したので、その値が入っていた場所の添え字cを返す
3-2. a[c]とdの値が一致しなかった場合
3-2-1. 探索範囲が残っていない場合(l > rになった場合)
値が見つからなかったので-1を返す
3-2-2. a[c]がdより小さかった場合
dはa[c]よりも右の方にあることが判明したので、
探索範囲をa[c+1]〜a[r]に絞り込む
3-2-3. a[c]がdより大きかった場合
dはa[c]よりも左の方にあることが判明したので、
探索範囲をa[l]〜a[c-1]に絞り込む
4. 2.に戻る
0891デフォルトの名無しさん
2006/04/14(金) 12:19:17//★以降を適切に埋めよ
intl = 0;
intr = N-1;
intc;
}
public static void main(String args[])
{
//1-4:上で作ったメソッドを用いて、探索過程を表示しながら二分探索を実行
//手順は次のようになる。
/*
1.要素を(20個もつ)整数型配列aを宣言
2.整数型変数Nに配列aの要素数を保存
3.initArrayメソッドを用いて配列aを初期化
4.showArrayメソッドを用いて配列aの内容を表示
5.整数型変数dに配列aに入っている値を代入(例:a[N/3])
6.findメソッドを使って配列aの中にdが入っているか探索
7.値dが見つかった場所の添え字を表示
8.二分探索にかかった比較回数compareを表示
9.整数型変数dに配列aに入っていない(かもしれない)値を代入(例:(a[0]+a[N-1])/2)
10.findメソッドを使って配列aの中にdが入っているか探索
11.値dが見つかった場所の添え字を表示
12.二分探索にかかった比較回数compareを表示
*/
//★以降を適切に埋めよ
intN;
}
}
0892デフォルトの名無しさん
2006/04/14(金) 16:25:481.String型の引数を1つ持ち、その文字列を2進数表記だと解釈して、
valueの値をコンストラクタしなさい。
2.valueの値を2進数表記の文字列に変換して返すメゾッドにしなさい。
3.Binary型の引数を1つ持ち、valueの値に引数の値を加算(減算、乗算、除算)
を加えなさい。
下のプログラムを使って下さい。
[期限]4月16日まででお願いします。授業の課題なんですが、誰か教えて下さい。
public class TestBinary {
public static void main(String[] arg){
Binary b1 = new Binary(10);
System.out.println(b1.getValue());
/*機能1
Binary b2 = new Binary("10");
System.out.println(b2.getValue());
機能2
System.out.println(b1.toSting());
System.out.println(b2.toSting());
機能3
b1.add(b2)
System.out.println(b1);
b1.sub(b2)
System.out.println(b1);
b1.mul(b2)
System.out.println(b1);
b1.div(b2)
System.out.println(b1); */
}
}
0893デフォルトの名無しさん
2006/04/14(金) 19:37:19// Binary.java
public class Binary {
private int value;
public Binary(int i) {
this.value = i;
}
public Binary(String string) {
this.value = Integer.parseInt( string, 2 );
}
public int getValue() {
return this.value;
}
public String toString() {
return Integer.toString( this.value, 2 );
}
public void add(Binary b2) {
this.value += b2.getValue();
}
public void sub(Binary b2) {
this.value -= b2.getValue();
}
public void mul(Binary b2) {
this.value *= b2.getValue();
}
public void div(Binary b2) {
this.value /= b2.getValue();
}
}
0894843
2006/04/14(金) 20:00:000895デフォルトの名無しさん
2006/04/14(金) 20:21:230897682
2006/04/15(土) 15:07:16課題6ですが、先生が忙しい為、まだ結果が帰ってきません。
来週には帰ってくるだろうと思われます。
先生が忙しいのとは関係なしに課題7が出されてやっていますが、
何がなにやら分かりません…。例によってエラーばかりですが、もう少し自分でやってみます。
このゼミも5月の最初で終るので、上級レベルが始まる前に、日本語のJavaの本を買って、
基礎から勉強しなおしてみようと思っています。
>>878
僕は情報系の学科ではないのでゼミの友人とはあまり話しません。
休み時間とかゲーム、アニメの話をしているのでついていけませんorz
0898デフォルトの名無しさん
2006/04/15(土) 17:41:570899843
2006/04/15(土) 17:59:470900デフォルトの名無しさん
2006/04/15(土) 23:37:01問題文
http://kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/1741.txt
プログラム
http://kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/1742.txt
【 用語 】特にないと思います
【 期限 】できれば明日いっぱいまでに・・・
【 Ver 】なんでもいいです
【 補足 】丸投げ+ヒントも全部記入なのですこし問題文が長いかもしれません。
よろしくお願いいたします。
0901900
2006/04/15(土) 23:40:26http://kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/1742.txt
↓
http://kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/1742.zip
0902デフォルトの名無しさん
2006/04/16(日) 13:37:09問題文はこちらにあげています
http://2sen.dip.jp:6740/cgi-bin/upgun/up1/source/up0806.txt
【 用語 】ないと思いますが、ありましたら聞いてください。
【 期限 】急ですが、火曜昼13時くらいまでにお願いします
【 Ver 】何でも大丈夫です。
【 補足 】すみません、丸投げです。
何かと制約が多いかもしれませんが、よろしくお願いします。
あと返答・動作報告は若干遅れるかもしれませんが、
火曜14時頃までには必ずしますのでご了承ください。
0903846
2006/04/16(日) 15:05:39途中まで作ったけど来週忙しいから
作ったところまでアップしておくよ。
参考になればどうぞ。
ちなみに通信関係の部分は手つかず(´д`)
実装したのは
・空席の照会
・予約の追加・削除
・javaRest.txtの入出力
ってぐらい。
もしかしてスレッドセーフじゃなかったらごめん
あとの通信部分は、メッセージオブジェクトを作って
サーバークライアント間で通信すれば出来るんじゃない?
ヘボヘボなソースでスマソ
ttp://kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/1743.zip
0904デフォルトの名無しさん
2006/04/16(日) 17:48:18問題文中の”図”って何?
0906897
2006/04/16(日) 19:32:45インプットファイルに含まれるダブルのそれぞれ数値を読み込み、新しい数値に計算をし以下の条件の下で出力しなさい。
新しい数値の求め方:現在のダブルの数値1 * 0.25 ※もし、マイナスになった場合は *-1 でポジティブナンバーにする。
インプットファイル:ttp://n.limber.jp/n/KOVr8wiF4
・インプットファイルに含まれるダブルの数値の数(ダブルの数値が225個ある場合、225と出力。)
・インプットファイルに含まれるダブルの数値を足した数(ダブルの数値が2個で、その数が2.5と1.2の場合、3.7)
・インプットファイルに含まれるダブルの数値の平均(3.7 / 2 をする。)
・インプットファイルに含まれるダブルの数値を上記計算式で計算した後の数値を足した数(2.5と1.2の場合、0.925)
・インプットファイルに含まれるダブルの数値を上記計算式で計算した後の数値の平均(2.5と1.2の場合、0.4625)
出力例:ttp://kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/1744.txt
プログラムを組む時の条件:
・JFileChooserオブジェクトを使う事。
・もし、読み込んだファイルがインプットファイル以外の場合、エラーメッセージを表示し終了させる事。
・もし、出力するファイルが指定されていない場合、またはすでに出力されている場合、エラーメッセージを表示し、
処理を続けるか、キャンセルするかをユーザーに求める事。
【 期限 】4/17
【 Ver 】1.4
色々やったのですが、どうしても上手く行きません…orz
丸投げでよろしくお願いします。
0907902
2006/04/16(日) 21:29:42図は下のです。
説明文に付け加えがありましたので、この図に追加しておきました。
http://2sen.dip.jp:6740/cgi-bin/upgun/up1/source/up0817.gif
0908900
2006/04/16(日) 23:49:49お願いいたします。
0909デフォルトの名無しさん
2006/04/17(月) 01:23:58404やん
0911デフォルトの名無しさん
2006/04/17(月) 04:26:29ああ・・ほんとだ
ちゃんと見てなかったごめん
0912897
2006/04/17(月) 09:30:08読み込んだファイルのそれぞれのダブル値は出力する事が出来るのですが、
それぞれのダブル値を足した結果を出力するにはどういう風にすれば良いのでしょうか?
http://sourcepost.sytes.net/sourcepost/sourceview.aspx?source_id=27540
0913897
2006/04/17(月) 09:36:13途中まで組んだソースです。
0914デフォルトの名無しさん
2006/04/17(月) 10:42:48最初のほうで double sumDouble = 0; としておいて、
inputDouble = dis.readDouble();の後に次の行を追加。
sumDouble += inputDouble;
後は自力でできるな。
0915897
2006/04/17(月) 11:14:17ありがとうございます。
http://sourcepost.sytes.net/sourcepost/sourceview.aspx?source_id=27541
のようになりました。
新しいダブルの数値を求めるセクションを作る場合、
新しくwhile文を作って、その中で
if (newInputDouble < 0){
newInputDouble *=(0.1);
という処理を行って出力する、といったやり方をするのでしょうか?
0916デフォルトの名無しさん
2006/04/17(月) 11:33:45while内部に追加してOK。
0917897
2006/04/17(月) 13:01:44ありがとうございます。
サンプルアウトプットのように出力されるようになりました。
http://sourcepost.sytes.net/sourcepost/sourceview.aspx?source_id=27542
さらにこの結果をファイルとして、出力し、
すでにファイルが出力されている、上書きをする場合エラーメッセージを表示、
出力の処理後、ユーザーにプログラムを使い続けるか、やめるかを
訪ねるようにしないといけないのすが、これはどのようにすれば良いのでしょうか?
0918デフォルトの名無しさん
2006/04/17(月) 13:58:52適当かもしれんがこれで要求は満たしてるはず
ttp://kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/img/1748.zip
0919900
2006/04/17(月) 16:18:09ありがとうございます。動きました。
適当だなんてとんでもないです。
0920デフォルトの名無しさん
2006/04/17(月) 22:22:46初期化された配列が与えられている場合,その配列の要素の中で最大の数と最小の数の両方を表 示するプログラムを作りなさい. ここで,配列を初期化するとは,
int[] data = {31, 41, 59, 26, 53, 58}
のようにすることを言う.配列の初期値のデータと個数は,各自自由に決めてかまわない.ただし,個数が変わっても,プログラムを一切変更する必要がないように,プログラムを作成すること.
お願いします。
0921デフォルトの名無しさん
2006/04/17(月) 22:33:49int min = Integer.MAX_VALUE;
int max = Integer.MIN_VALUE;
for (int i=0; i < data.length; i++) {
int d = data[i];
if (min > d) {
min =d;
}
if (max < d) {
max = d;
}
}
System.out.println ("MAX = " + max + " : MIN = " + min);
いま適当に書いたから動作確認ナシ
0922デフォルトの名無しさん
2006/04/17(月) 22:41:49どうもありがとう。
助かりました。
0923902
2006/04/18(火) 13:45:030924682兼897
2006/04/18(火) 13:52:43課題の結果が帰ってきました。
バブルソートの所以外は完璧で28点でした。
課題の7で、
ttp://sourcepost.sytes.net/sourcepost/sourceview.aspx?source_id=27549
のソースで新しい計算結果のファイルのアウトプットをするのですが、
出力先に同じファイルがあり、それを選んだ場合、上書きをしますか?
という選択をさせ、キャンセルをした場合はまた出力先を選ぶ画面に戻り、
OKを押した場合は上書き保存されるようにしたいのですが、
どのようにすれば良いのでしょうか?
0925デフォルトの名無しさん
2006/04/18(火) 15:02:58今からやっても間に合いそうならやるけど?
0926925
2006/04/18(火) 15:24:36Commandで入力をハンドルするのか? Editorじゃなくて?
普通はCommandをインターフェースにして、それぞれの実装クラスつくると思うけど。
0927デフォルトの名無しさん
2006/04/18(火) 15:59:43InputIFのinput()の戻り値がdoubleである意味が分らなくて諦めた
0928デフォルトの名無しさん
2006/04/18(火) 16:55:30配列要素は最大30である。
1)この配列の要素を作るプログラムを書け。
2)この配列から最小の整数を見つけるプログラムを書け。
つまり、[(a1 , 1/a1),(a2 , 1/a2),(a3 , 1/a3),・・・(ai , 1/ai)]の中から最小のaiを見つける。
【 期限 】今日中に
【 補足 】ヒントとして、以下のプログラムの不等号を逆にすればいいという風なことを言われました
public class Example{
public static int findMaximum (int[] a){
int result = a[0];
for(int i = 1; i < a.length; ++i)
if(a[i] > result)
result = a[i];
return result;
}
}
よろしくお願いします
0929デフォルトの名無しさん
2006/04/18(火) 17:09:30ってどういうこと?
正の整数の中で最小のもの、逆数の中で最小のものって意味じゃなくて?
0930928
2006/04/18(火) 17:27:240931デフォルトの名無しさん
2006/04/18(火) 17:57:030932897
2006/04/18(火) 18:01:55status = chooser.showSaveDialog(null);
if (chooser.getSelectedFile().exists()){
int answer = JOptionPane.showConfirmDialog(
chooser,
"Do you want to over write?",
"check to over write",
JOptionPane.YES_NO_OPTION
);
if (answer == JOptionPane.YES_OPTION){
chooser.getSelectedFile();
}else{
chooser.getSelectedFile();}
}else{
System.out.println("Must select output file.");
System.exit(0);
}
これだと、まったく違う出力ファイルが作られてしまいます…orz
0933デフォルトの名無しさん
2006/04/18(火) 18:04:00全く同じ感想を持った・・
0934デフォルトの名無しさん
2006/04/18(火) 18:40:35ファイルへの書き込みは?
0935デフォルトの名無しさん
2006/04/18(火) 18:43:210936902
2006/04/18(火) 19:15:39もしよろしければ、やっていただいた部分だけでも構いませんので
参考にしたいので上げていただければ助かります。
0937デフォルトの名無しさん
2006/04/18(火) 19:29:50while(chooser.showSaveDialog(null) == JFileChooser.APPROVE_OPTION){
if (!chooser.getSelectedFile().exists() ||
(JOptionPane.YES_OPTION == JOptionPane.showConfirmDialog(
chooser,
"Do you want to over write?",
"check to over write",
JOptionPane.YES_NO_OPTION )) ){
//ファイルに出力する処理
break;
}
}
0939デフォルトの名無しさん
2006/04/18(火) 21:18:13意味不明すぎでエスパーに来て貰わないと。
もし、元の課題が928のとうりなら課題を出したやつ窓から放りなげろ。
0940デフォルトの名無しさん
2006/04/18(火) 21:22:040941928
2006/04/18(火) 21:24:42これで問題文の通りでした
一応確かめてみたのですが自分で考えろと投げられてしまって。
(2)はどうもよくわからないのでとりあえず(1)だけでも解いておきたいのですが…
0942デフォルトの名無しさん
2006/04/18(火) 21:40:48private int a;
private double inva;
public A(int a){
if (a <= 0)
throw new IllegalArgumentException();
this.a = a;
inva = 1/(double)a;
}
こんなクラスを配列にするってことか?
public static A[] createA(int num){
A[] a = new A[num];
Random random = new Random();
int rnd;
for (int i = 0; i < a.length; i++){
rnd = random.nextInt();
if (rnd <= 0)
i--;
else
a[i] = new A(rnd);
}
return a;
}
0943デフォルトの名無しさん
2006/04/18(火) 21:42:44これの通りならaiの最小のものと最大のものを探せばいいだけだな
0944デフォルトの名無しさん
2006/04/18(火) 21:59:55きっとここが重要なんだよ
0945デフォルトの名無しさん
2006/04/18(火) 22:11:52あれ、書かれてるクラス以外は作っちゃダメなんかね?
内部クラスとか、例外とかも。
指定された通りに作ると、素敵に酷いモノが出来そうなんだが。
0946デフォルトの名無しさん
2006/04/18(火) 22:35:52同感
クラス構成の条件が邪魔だ
自由に作って良いなら楽でいいんだが
0947デフォルトの名無しさん
2006/04/19(水) 00:06:57ttp://sourcepost.sytes.net/sourcepost/sourceview.aspx?source_id=27550
0948デフォルトの名無しさん
2006/04/19(水) 00:33:49例外投げるどころかクラスというのも教わってないんじゃないかな?
>>947のをそのまま提出しちゃっていいのかな?
0949デフォルトの名無しさん
2006/04/19(水) 00:53:37そもそもの問題文の意味がわからなかったのはどうしようもなかったが…
因みに自分は配列とかを使って全部メインメソッド内でおさめてしまった。
携帯からなんで+自分も未提出なのでソース貼れずごめん。
0950デフォルトの名無しさん
2006/04/19(水) 01:03:49【 課題 】タイマーの作成
【 用語 】
【 期限 】20日木曜日まで
【 補足 】学会などで使うタイマーです。
画面いっぱいに残り時間(または経過時間)が表示されるものがいいらしい。。
お願いします!
0951デフォルトの名無しさん
2006/04/19(水) 01:18:41ttp://lab.ajibit.com/pukiwiki.php?Flash%2F%B9%E2%B6%B6%A5%E1%A5%BD%A5%C3%A5%C9%A5%DE%A5%B7%A1%BC%A5%F3
0952897
2006/04/19(水) 01:49:46ありがとうございます。
ですが、保存先を指定するところが2回、出てしまいます。
あと、保存先を指定する所でキャンセルを押した場合、
「終了しますか?」という質問を出して、YESにしたら終了し、
NOを押したらそのまま保存先を指定する所を続けたいのですが
どうすれば良いのでしょうか…
ここだけで数時間迷っています。
0953936
2006/04/19(水) 01:52:06整理の意味も入れて、改めてテンプレから作り直すことにします。
【 課題 】
問題文(>>902と同じです)
ttp://2sen.dip.jp:6740/cgi-bin/upgun/up1/source/up0806.txt
問題文欠落部分(>>908と同じです)
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 】何でも大丈夫です。
【 補足 】懲りずに丸投げです。
クラス構成の条件については
今は作成者の方々に自由にお任せしますのでぜひお願いします。
0954デフォルトの名無しさん
2006/04/19(水) 02:14:08まさにこんなのじゃないの?
http://www.mpi-sb.mpg.de/~hitoshi/otherprojects/timerclock/index-j.shtml
0955897
2006/04/19(水) 06:44:32一応、完成したことはしたのですが読み込んだファイルを出力する時に、
上書きしようとするとエラーになってしまいます...orz
どうすればエラーを起こさずに出力されるのでしょうか?
0956897
2006/04/19(水) 07:08:41読みこんだファイルに上書きしようとすると、エラーを起こすという意味です。
例えば、1というファイルを読みこんで2というファイルで出力をし、
また1を読みこんで2に上書きをしても問題はないのですが、
1を読み込んで、1に上書きをするとエラー出力され、1のデータファイルが
からっぽになってしまいます。
0957897
2006/04/19(水) 08:10:12すいません、こちらのソースでしたorz
0958デフォルトの名無しさん
2006/04/19(水) 08:49:04>>897をたどっても雑談書いてあるだけだしその先の>>682はアレイ(並列)のプログラムとか書いてあるしさ
同じ人が毎週宿題持ってくるのは普通のことだから、レス本文に書く程度でいいと思う
0959デフォルトの名無しさん
2006/04/19(水) 09:17:56すいませんでした。
問題文自体は、>>906に書いてあります。
これの最後の方にある課題の補足ですが、読み込んだファイルを元に
新しく計算した数値の情報をファイルとして出力しないといけないのですが、
出力する時にファイル名を決めるのですが、すでに同じ名前のファイルがある場合、
上書きするか?と訪ねて「NO」を選択したら「終了するか?」と訪ねて「NO」を選んだ場合は、処理続行で
また出力ファイルの選択画面に戻り、「YES」を選んだ場合は終了させるようにします。
上書き処理に戻りますが、「YES」を選択したら現在あるファイルが上書きされます。
もし、その時、同じ名前のファイルがない場合は普通に出力されます。
>>957にあるように自分で組んでみたのですが、>>956にある通り、
読みこんだファイルに上書きしようとすると、エラーを起こします。
例えば、1という名前のファイルを読みこんで2というファイル名で出力をし、
また1を読みこんで2に上書きをしても問題はないのですが、
1を読み込んで、1に上書きをするとエラー出力され、1のデータがからっぽになってしまいます。
あと、ここの計算セクションの「ファイルはexistしているか」、「ファイルが出力出来ない場合はSystem.outputでエラー文を出す」
という部分が定かではないです。
長文になりましたが、よろしくお願いします。これ以上の混乱を避ける為、数字コテははずしました。
0960デフォルトの名無しさん
2006/04/19(水) 09:25:40コミュニケーションの講義受講したほうがよほどJAVA学習に役立つよ
0961937
2006/04/19(水) 10:03:10>保存先を指定するところが2回、出てしまいます。
試してみたけどちゃんとなってるよ。どうやったんだ?
>1を読み込んで、1に上書きをするとエラー出力
読み込みファイルを閉じないで書き込んでるからじゃね?
後、>957のソースだと、1回目にダイアログで指定した保存先のみ有効で、2回目以降は無視されてるぞ。
こんな感じか。
outputloop: while(true){
switch(chooser.showSaveDialog(null)){
case JFileChooser.APPROVE_OPTION:
if (!chooser.getSelectedFile().exists() ||
(JOptionPane.YES_OPTION == JOptionPane.showConfirmDialog(
chooser, "Do you want to over write?",
"check to over write",
JOptionPane.YES_NO_OPTION )) ){
//ファイルに出力する処理
break outputloop;
}
case JFileChooser.CANCEL_OPTION:
if(JOptionPane.OK_OPTION != JOptionPane.showConfirmDialog(chooser,
"Do you want to continue?",
"Warning",
JOptionPane.OK_CANCEL_OPTION,
JOptionPane.WARNING_MESSAGE) ){
break outputloop;
}
break;
}
}
0962健二
2006/04/19(水) 10:21:12フィボナッチ数をnが0から100まで示すプログラムの続きを作れというもの
どうかけばいいかわかりません。誰か教えてください。system.out.println("fib(+i+)="+a);
を使うとの条件もあります。
public class Fibonacci{
public static void main (String arg[]){
long a=0: // aにフィボナッチ数をいれる
このあと?
}
0964デフォルトの名無しさん
2006/04/19(水) 10:42:57レス、ありがとうございます。
>保存先を指定するところが2回、出てしまいます。
ですが、自分のソースに加えると二回でてしまいます…。
>読み込みファイルを閉じないで書き込んでるからじゃね?
とありますが、どのようにやれば良いのでしょうか?
961さんのソースを加えて実行しても、
同じファイルを読みこみ、同じファイル名で保存をすると、
Number of values read: 0
Sum of original values: 0.0
Average of original values: NaN
Sum of new values:0.0
Average of new values: NaN
と出力されます。
0965937
2006/04/19(水) 12:34:581.//Error message for selecting an output file. から//calculate section を削除
2.dos = new DataOutputStream(new FileOutputStream(outFile)); を削除
3.dos.writeDouble(newInputDouble); を削除
4.//output の次の行に dis.close(); を追加
5.さらにその次に>961を追加
6.//ファイルに出力する処理 の次の行からファイルに出力する処理を書く。
これで駄目なら入力するファイルの内容が正しいか疑え。
0966健二
2006/04/19(水) 14:55:51誰か、教えてください。
0967デフォルトの名無しさん
2006/04/19(水) 15:03:410968デフォルトの名無しさん
2006/04/19(水) 15:54:53InputIFの戻り値がdoubleである意味を教えてくれ。
入力されたコマンドはStringなんだから、これじゃ拾えないぜ。
コマンドの判定は別でやって、数値入力だけはこれ使えってか?
ここがわからないと手の付けようがない。
0969デフォルトの名無しさん
2006/04/19(水) 16:05:10longじゃ駄目だろ。100まで届かない。問題作成者に確認しろ。
0970デフォルトの名無しさん
2006/04/19(水) 16:05:170971デフォルトの名無しさん
2006/04/19(水) 16:05:25そういうことなんじゃねーの?
戻り値doubleってのがおかしいよな
まあ全て数字で入力させて
Double.parseDouble()で変換していくという手もあるが・・
せめてStringが戻ってくるのが筋のような気もする
0973デフォルトの名無しさん
2006/04/19(水) 16:29:29このあと?って何だよ、何も作ってないじゃないか
0974デフォルトの名無しさん
2006/04/19(水) 16:33:31if (n == 0 || n == 1)
return 1;
else
return fib(n-1) + fib(n-2);
}
0975健二
2006/04/19(水) 17:28:4680まででした。すみません。
0976デフォルトの名無しさん
2006/04/19(水) 17:37:42long f_2 = 0;
long f_1 = 0;
long f_0 = 1;
for(int i=0;i<=80;++i){
System.out.println("fib("+i+")="+f_0);
f_2 = f_1;
f_1 = f_0;
f_0 += f_2;
}
0977健二
2006/04/19(水) 17:43:10さっそくありがとうございます。
でも、aにフィボナッチ数をいれるためには
f_0=aとおきかえればいいんですか?
すみません、初歩的で
0978デフォルトの名無しさん
2006/04/19(水) 18:29:19http://www.makino.ecei.tohoku.ac.jp/~aito/java/2.pdf
0979デフォルトの名無しさん
2006/04/19(水) 18:34:320980デフォルトの名無しさん
2006/04/19(水) 18:38:500981デフォルトの名無しさん
2006/04/19(水) 19:01:230982デフォルトの名無しさん
2006/04/19(水) 19:11:500983デフォルトの名無しさん
2006/04/19(水) 19:58:54途中まで作ったのがありますので、それを元にお願いできますでしょうか?
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);}
}
よろしくお願いいたします。
0984デフォルトの名無しさん
2006/04/19(水) 20:37:34変数を宣言すると、メモリのスタック領域に
アドレスが書き込まれますよね。
たしか、一律 4byte だったと思うんですが、
( intだと 4byte * 4byte ? )
これって、配列変数を宣言した場合も
同じなんでしょうか。
つまり、配列の先頭アドレスだけじゃなくて、
全要素分、アドレスがスタックに取られるんでしょうか。
0985デフォルトの名無しさん
2006/04/19(水) 20:37:460986デフォルトの名無しさん
2006/04/19(水) 20:38:180987デフォルトの名無しさん
2006/04/19(水) 20:38:560988デフォルトの名無しさん
2006/04/19(水) 20:40:010989デフォルトの名無しさん
2006/04/19(水) 20:42:490990デフォルトの名無しさん
2006/04/19(水) 20:43:00使用することができるウェブページテーブル形式アプローチについて
述べているのはどれですか?
A.スペースとリターンで<PRE>タグを使用しているHTMLテーブルをフォーマットする
B.フレームでウェブページを構造化するためにHTMLテーブルを使用する
C.テーブルヘッダーとコラムを作成するためにHTMLタグの代わりにCSSを使用する
D.表にされたテキストをフォーマットするために<PRE>タグの代わりにHTMLテーブルタグを使用する
0991デフォルトの名無しさん
2006/04/19(水) 20:43:280992デフォルトの名無しさん
2006/04/19(水) 20:45:220993デフォルトの名無しさん
2006/04/19(水) 20:46:460994デフォルトの名無しさん
2006/04/19(水) 20:47:160995デフォルトの名無しさん
2006/04/19(水) 21:03:51東北大学ゆうやたら川島教授やろ
0996デフォルトの名無しさん
2006/04/19(水) 21:17:230997デフォルトの名無しさん
2006/04/19(水) 21:18:120998デフォルトの名無しさん
2006/04/19(水) 21:51:37http://pc8.2ch.net/test/read.cgi/tech/1145447187/
0999デフォルトの名無しさん
2006/04/19(水) 22:30:501000デフォルトの名無しさん
2006/04/19(水) 22:33:0510011001
Over 1000Threadもう書けないので、新しいスレッドを立ててくださいです。。。
レス数が1000を超えています。これ以上書き込みはできません。