■掲示板に戻る■ 全部 1- 101- 201- 301- 401- 501- 601- 701- 801- 901- 最新50

レス数が 900 を超えています。1000を超えると表示できなくなるよ。

【サービス】奴隷ども【低賃金】

1 :ねこ : 2008/09/02 18:09
>>1のために働け!



801 :大和 : 2009/01/05 16:08
アメリカはもう冬期休業明けましたか?


802 :チン( ・`ω・´)マンマッ : 2009/01/05 18:58
2倍って・・・平気なのか・・・


803 :チン( ・`ω・´)マンマッ : 2009/01/05 18:58
まだ冬休みですね。一ヶ月間ですね


804 :チン( ・`ω・´)マンマッ : 2009/01/06 04:17
かざっさん!JAVAをはじめてやる場合、いい参考書とかないですか!?
JAVAを教えてくれ!


805 :チン( ・`ω・´)マンマッ : 2009/01/06 18:25
ある男が、自分を愛している3人の女の中で
誰を結婚相手にするか長いこと考えていた。
そこで彼は3人に5000ドルずつ渡し
彼女らがその金をどう使うか見ることにした。
一人目の女は、高価な服と高級な化粧品を買い、最高の美容院に行き、
自分を完璧に見せるためにその金を全て使って こう言った。
「私はあなたをとても愛しているの。だから、
あなたが町で一番の美人を妻に持っているとみんなに思ってほしいのよ」
二人目の女は、夫になるかも知れないその男のために新しいスーツやシャツ、
車の整備用品を買って、 残らず使いきる と、こう言った。
「私にとってはあなたが一番大切な人なの。だからお金は
全部あなたのために使ったわ」
最後の女は、5000ドルを利殖に回し、倍にして男に返した。
「私はあなたをとても愛しているわ。 お金は、私が浪費をしない、
賢い女であることをあなたに分かってもらえるように使ったのよ」
男は考え、3人の中で一番おっぱいの大きい女を妻にした。


806 :大和 : 2009/01/06 19:12
明解Java 入門編
http://www.amazon.co.jp/dp/4797339535/

これがいいみたい!
下のは私が使ってたやつだけど,
わかりやすさ・簡潔さ,では↑のやつの群を抜いてるみたいね!

基礎からのJava
http://www.amazon.co.jp/dp/4797341297/

やさしいJava
http://www.amazon.co.jp/dp/4797331828/


807 :大和 : 2009/01/06 20:33
結局男はおっぱいですね


808 :チン( ・`ω・´)マンマッ : 2009/01/06 22:52
おおそれか。ちょっとアマゾンで買ってみようかな
ありがちょう!


809 :チン( ・`ω・´)マンマッ : 2009/01/06 22:52
また一般女性の裸画像がファイル共有ソフトによって流出した。今月23日、ジュエリーショップの美人店員(23)の裸の画像が、交際していた男子大学生のパソコンから大量に流出したのだ。しかも、女性の勤務先まで割り出され、一部のネットユーザーが勤務先まで押しかける騒ぎに発展。女性は退職を余儀なくされたという。

 この女性は今年3月に西日本の大学を卒業、4月から全国チェーンのジュエリーショップに就職し、店員として働いていた。

 大学時代は学内の有名劇団に所属し、同じ劇団員で1学年下の男子学生と交際していたが、この男子学生のパソコンにファイル共有ソフトの「Winny(ウィニー)」がインストールされており、それが原因で裸の画像が流出した。

 女性の本名も一緒に流れたため、登録していた会員制日記サイト経由で勤務先住所までもが明らかに。それを見た一部の心ないユーザーが買い物客を装って同店に行き、携帯電話で撮影した顔写真や女性と交換した名刺をネット上にアップした。このため、店側も事態を把握。女性は27日までに自主退職したとみられている。

 画像を流出させた男子学生は現在、劇団の部長を務めている。流出したデータの中には、ナルシストを気取った自身の顔写真や女性店員の裸画像が多数あった。流出した画像は永久にネット上をさまよい続け、回収は100%不可能だ。

 男子学生は自身のブログで女性について≪彼女は(過去に交際した)男の子たちそれぞれに足蹴にされていると言ってもいいような扱いを受けては別れ、また受けては別れを繰り返していた≫などと書き記していた。しかし、過去の交際相手とは比較にならない大きな傷を負わせたのは、ほかならぬ男子学生自身だった。


810 :ねこみみ : 2009/01/06 23:25
JAVAを手取り足取り教えてください。


811 :大和 : 2009/01/07 20:06
役にたってよかったよかった。


812 :大和 : 2009/01/07 20:07
私で出来る範囲で力添えするよ!


813 :チン( ・`ω・´)マンマッ : 2009/01/07 21:47
ちょっとちょくちょく質問するかもしれません・・・よろしくです


814 :チン( ・`ω・´)マンマッ : 2009/01/07 21:47
JAVAってCに似てるのかな。Cよりシンプルだって きいたことあるんだけど・・・


815 :大和 : 2009/01/08 00:55
こちらこそよろしくどうぞ。
私はCをまったく知らないんですが,
構文の書き方,みたいなのがすごい似てるのでCを知ってればJavaに割とすんなり入れる,
みたいな事は聞いたことあるね〜。


816 :チン( ・`ω・´)マンマッ : 2009/01/08 01:08
え゛


817 :チン( ・`ω・´)マンマッ : 2009/01/08 01:09
しかし新しいのいろいろ覚えなきゃいけなさそうでめんどくさそうですね・・・


818 :ねこみみ : 2009/01/08 02:04
NEWPCはさくさく早くていいね。

結局PCって半導体の機械の塊だからいずれ壊れるわけですよね・・・


819 :ねこみみ : 2009/01/08 02:05
倉庫にしまってあった28インチのテレビを持ってきました。

でっけぇ!


820 :ねこみみ : 2009/01/08 02:05
これで映画でも見ますかね。


821 :チン( ・`ω・´)マンマッ : 2009/01/08 02:23
よし明日60インチのプラズマ買ってくる


822 :チン( ・`ω・´)マンマッ : 2009/01/08 03:27
\γ⌒ヽ
  \γ⌒ヽ
 .   \γ⌒ヽ 転がりながらも ♪
 .    \γ⌒ヽ
        \γ⌒ヽ凄まじい勢いで ♪
         \γ⌒ヽ  
           \γ⌒ヽ  1000ゲット ♪
            \γ⌒ヽ
              \γ⌒ヽ
  .             \,,_⊂゙⌒゙、∩
  .               \⊂(。 Д 。)
  .                \ ∨∨
             ..       \


823 :チン( ・`ω・´)マンマッ : 2009/01/08 21:52
今年WBCやるのか


824 :大和 : 2009/01/10 07:54
うちのマシンは6年前の代物だから,
もうネトゲしてるとカクカクだわ。
そろそろ買い替えるか・・。


825 :大和 : 2009/01/10 07:54
新しいってなあなんだっていいね。


826 :大和 : 2009/01/10 07:55
>>821
その金で日本に戻って隼人板新年会するしかない


827 :大和 : 2009/01/10 07:57
WBC今回もうまくいくかなー。
北京五輪の時は星野がうざくて(鉄拳制裁・罵声・髪丸刈りあり)皆手抜いてたって噂聞いたけど
原なら一致団結できるかな?あの人まじめだしね


828 :チン( ・`ω・´)マンマッ : 2009/01/11 00:30
そういえば北京であっさり日本まけたんだっけ。みてないんだよな・・・
まぁ負けは負けですね
原の采配ミスがないように祈ろう


829 :ねこみみ : 2009/01/11 10:29
http://www2.jp.onkyo.com/product/products.nsf/wavio/14082CE4E611B91349256FC400007BF6

昨日これかったよ。

端子が特殊すぎてまだ音がためせてない・・・


830 :チン( ・`ω・´)マンマッ : 2009/01/11 18:51
日本人の恥を発見しました

http://uk.youtube.com/watch?v=i6hGlawzFtQ&feature=related


831 :大和 : 2009/01/11 20:06
改札口で寝る猫
http://goyaku.seesaa.net/article/101414663.html


832 :チン( ・`ω・´)マンマッ : 2009/01/11 22:05
ヌコは萌えますよね


833 : : 2009/01/12 04:18
いいことを教えてやろう。

死後のことだが、生前のおこないによって、

生前よい行いをしてきた人⇒天国
生前悪い行いをしてきた人⇒地獄
普通(中くらい)の人⇒中国

となっている。

というわけで、中国は人口が増えす


834 :大和 : 2009/01/12 09:54
じゃあ普通に生きたらまずいですね・・・!


835 :ねこみみ : 2009/01/12 10:26
四国


836 :まままん : 2009/01/12 12:56
かざっさん。

class test1{
public static void main(String args[]){
System.out.println("Hello World!");
}
}

JAVAって必ずclass定義しなきゃいけないのかい。名前はなんでもいいん?
public static void main(String args[]){ これって C でいうところの void main()と一緒なのかな。public static って なんだい?
String args[] って 毎回必ずいるん?


837 :大和 : 2009/01/12 22:58
第ヨンの国四国・・!


838 :大和 : 2009/01/12 23:26
Classを必ず定義しないといけないよ!
名前は class test1 {} でも class kakiTama {} でも
class misakiGyokoh {} でも何でもいいよ

C でもmain()メソッドってあるんだねー
Classファイル実行時に一番最初に,必ず呼び出されるメソッドが,main()メソッドだよー

public はアクセスレベルを表しているよ
public は他のあらゆるすべてのクラスから,アクセスできるって意味だよ
アクセスレベルは public が一番ひろくて,
protected デフォルト とせまくなっていって
private が一番せまいよ
アクセスレベルは全部で4つだよ

static は説明すると長くなっちゃいそうだ・・・
static は共有する・しない を設定するよ!
static int count = 0; だとクラスの,全インスタンス同士で共有できる変数 って設定になるよ
int count = 0; だとクラスの,インスタンス同士で共有できない変数・各インスタンスで持つ変数 って設定になるよ
説明むずかしいな!

String[] args は必ずいるよ!
main()メソッドは,public static void main(String[] args) って書き方を必ずするよ
厳密には 必ずじゃないんだけど この書き方じゃないとダメ って覚えといて!


839 : : 2009/01/13 02:13
うお!すげー!ありがたう!
ところでJAVAプログラムを実行するにはナニを使うんだい?


840 :大和 : 2009/01/13 02:36
JDK(Java Development Kit)をインストールするよ!
この中にコンパイラや実行仮想マシンなどが入っているよ
詳しい導入手順は↓が参考になるかもしれないよ!

まずは、JDK(J2SDK)をインストールしてHelloWorldを動かそう
http://www.searchman.info/java_eclipse/1010.html




841 :ねこみみ : 2009/01/13 04:01
かざっさんのJAVA口座がはじまってきましたね。

wktkしてきた


842 :アヌス : 2009/01/13 07:27
おお神ktkr


843 :アヌス : 2009/01/13 07:27
    ∩∩
 ==二三 ・x・)
==二三⊂ ⊂)
 =二三し-つ


844 :大和 : 2009/01/14 00:33
私なんて皆に比べたらまったくたいしたことないがね!


845 :アヌス : 2009/01/14 03:39
またまたそんなお代官様


846 :アヌス : 2009/01/15 11:22
         __O)二)))(・ω・`)
   0二━━ )____)┐ノヽ
         A   ||ミ|\ くく

         __O)二)))(´・ω・`)
   0二━━ )____)┐ノヽ
         A   ||ミ|\ くく

              .○ω・`)
             (●)┐ノ)
              A  くく


847 :アヌス : 2009/01/15 15:46
       ????▼???????
    ?????? ?? ????▲????
  ??〓?????????::  ::??〓??
  ??????????????::: :::??〓??
 ▲〓??????????::?::: ::??????
? ? ??????????::?::??????〓?
?? ???■???????????〓??????
????????●????????●???????
??▲????〓?????::????〓?????
???????::::?????::????::?????
 ??????????????????????
  ???????????????????
      ??????╋╋╋??????
    ??????■????????
    ???????::?:::??????
??????  ?■????■? ????
??????    ?■?    ???????
??????   ?????    ????????
?????? ?????????   ????????


848 :アヌス : 2009/01/18 21:23
     o o
  o_ /)/)
  /<<<


849 :アヌス : 2009/01/20 08:41
華原朋美薬物中毒ですか


850 :アヌス : 2009/01/20 10:10
かざったん。JAVAで2つ程練習しはじめたのですが、てかまだイントロ程度・・・

そのうちの一つで、2つの電車の発車時間の差を表示するなんてのがあるのですが、たとえば、

電車Aの発車時間:1255
電車Bの発射時間:1305

とキーボード入力した場合、

時間差:0時間10分

と出力されるようにしたいのです。

電車A:2350
電車B:0055

なら

時間差:22時間55分

と出力。

電車A:0730
電車B:0845

なら

時間差:1時間15分

という風になりまつ。ただし1099や2401といった風な時間では表せない入力はなし、と前提しまつ。JAVAだとどんな流れになるんでしょうか・・・




851 :大和 : 2009/01/20 12:15
これは!
楽しそうだ!
ちょっと待っててね!


852 :大和 : 2009/01/20 12:15
【文化】 「ぼくゴリラ ウホホイウッホ ウホホホホ ウッホホウッホ ウホホホホーイ」 ゴリラの孤独表した短歌、高校生が市長賞…千葉★6
http://mamono.2ch.net/test/read.cgi/newsplus/1232413297/



417 名前:名無しさん@九周年[sage] 投稿日:2009/01/19(月) 11:09:52 ID:14oGG4vF0
1868年 17歳
梓弓向かう矢先はしげくとも 引きな返しそもののふの道


↓140年後


2008年 17歳
ぼくゴリラ ウホホイウッホ ウホホホホ ウッホホウッホ ウホホホホーイ


853 :大和 : 2009/01/20 12:56
1. 電車Aの時分を分に整形する
 1.1. ユーザが入力した「0730」を取得する
 1.2. 0730を「07」と「30」に文字列分解する

 1.3. 「時」のエラーチェックを行う
  1.3.1. もし「07」が 0 以上 24 以下なら処理 1.4. へ進む
  1.3.2. もし「07」が 0 以上 24 以下でなければ処理終了

 1.4. 「分」のエラーチェックを行う
  1.4.1. もし「30」が 0 以上 60 以下なら処理 1.5. へ進む
  1.4.2. もし「30」が 0 以上 60 以下でなければ処理終了

 1.5. 7 * 60 + 30 と計算する(420 + 30 = 450)
 1.6. 「合計分」のエラーチェックを行う
  1.6.1. もし「合計分」が 1440(24h * 60 = 1440 を超えていなければ) 以上 0 未満でなければ処理 2. へ進む
  1.6.2. もし「合計分」が 1440(24h * 60 = 1440 を超えていたら) 以上 0 未満だったらエラー処理

2. 電車Bの時分を分に整形する
 2.1. ユーザが入力した「0845」を取得する
 2.2. 0845を「08」と「45」に文字列分解する

 2.3. 「時」のエラーチェックを行う
  2.3.1. もし「08」が 0 以上 24 以下なら 2.4. へ進む
  2.3.2. もし「08」が 0 以上 24 以下でなければ処理終了

 2.4. 「分」のエラーチェックを行う
  2.4.1. もし「45」が 0 以上 60 以下なら 2.5. へ進む
  2.4.2. もし「45」が 0 以上 60 以下でなければ処理終了

 2.5. 8 * 60 + 45 と計算する(480 + 45 = 525)
 2.6. 「合計分」のエラーチェックを行う
  2.6.1. もし「合計分」が 1440(24h * 60 = 1440 を超えていなければ) 以上 0 未満でなければ処理 3. へ進む
  2.6.2. もし「合計分」が 1440(24h * 60 = 1440 を超えていたら) 以上 0 未満だったらエラー処理

3. 「1.」と「2.」の差を算出する
 3.1 条件分岐を行う
  3.1.1 もし「1.」のほうが値が大きければ,「1. - 2.」と計算する
  3.1.2 もし「2.」のほうが値が大きければ,「2. - 1.」と計算する(525 - 450 = 75)

4. 「3.」の計算結果を時分に整形する
 4.1 「75」 / 60 と計算する(商が算出されて結果は 1)
 4.2 「75」 % 60 と計算する(余りが算出されて結果は 15)

5. 計算結果を出力する(時間差:1時間15分)


合ってるか自信がないんだけどこんな感じかな・・!


854 :アヌス : 2009/01/20 14:27
うおスゴス・・・理解はできるんだけど・・・うお・・・
JAVAでどうやるんだ・・・まだイントロさえ読みきれていない俺にはどう組めばいいのか・・・
やべぇ時間がない・・・


855 :大和 : 2009/01/20 17:31

そういうことか任せてくれー


1.1. ユーザが入力した「0730」を取得する

import java.io.BufferedReader; // この2つのインターフェースを
import java.io.InputStreamReader; // importしておかないと↓のコードが動作しないよ

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

        BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
        String s = br.readLine();
        System.out.println(s);
    }
    // このコードで,キーボード入力を取得・出力できます。実際に試してみてね
}



1.2. 0730を文字列分解する

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

        String s = "0730";

        String hour = s.substring(0, 2); // インデックス 0 以上 2 未満の文字列が切り取られる
        String minute = s.substring(2, 4); // インデックス 2 以上 4 未満の文字列が切り取られる
        System.out.println(hour + minute); // それぞれを出力
    }
    // substring()メソッドで 07 と 30 を切り取ったよ。実際に試してみてね
}


1.3. と
1.4. と
1.6. は
最小機能にはいらない子たちなので今は割愛するよ



1.5. 「7 * 60 + 30」と計算する(420 + 30 = 450)

public class diagramCalc {
    public static void main(String[] args) {
        String hourStr = "07"; // この2つの変数を文字列型(String型)から整数型に(int型)に,型変換するよ
        String minuteStr = "30"; // 整数型に型変換しないと,文字列型のままじゃ計算できないんだ

        // String型からint型へ型変換
        int hour = Integer.parseInt(hourStr);
        int minute = Integer.parseInt(minuteStr);

        int sum = hour * 6 + minute;
        System.out.println(sum);
    }
}



とりあえず「1.」のコードはこんな書き方だよー。


856 :大和 : 2009/01/20 17:34
「1.」でわからないとこが少しでもあったら遠慮なく聞いてー


857 :大和 : 2009/01/20 17:38
研修室のマシンMSNメッセインストールされてないお。。
帰ったらメッセつなごう


858 :アヌス : 2009/01/20 18:16
うお!スゲー天才!!!

ってちょっとまって。Cとは違った新しい構成で頭が・・・

1.2で、String s = "0730" ってあるけど、これは1.2で初期化してるんじゃなくて、1.1でキーボード入力された値だよね。つまりString s = "0730"これは書かなくていいてことだよね。1.1で既にsには0730が入ってるから。
文字列の切り取りがわからなかったんだ・・・。そうやるのか。



859 :アヌス : 2009/01/20 18:34
とりあえず1を一つにすると

import java.io.BufferedReader;
import java.io.InputStreamReader;

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

BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
String s = br.readLine();
System.out.println(s);

String hour = s.substring(0, 2);
String minute = s.substring(2, 4);
System.out.println(hour + minute);

int hour = Integer.parseInt(hourStr);
int minute = Integer.parseInt(minuteStr);

int sum = hour * 6 + minute;
System.out.println(sum);
}
}

こうなるのかな・・・

んで2を続けて書くと・・・

あれ、ちょっとまてよ。
String hourStr = "07"; // この2つの変数を文字列型(String型)から整数型に(int型)に,型変換するよ
String minuteStr = "30"; // 整数型に型変換しないと,文字列型のままじゃ計算できないんだ

// String型からint型へ型変換
int hour = Integer.parseInt(hourStr);
int minute = Integer.parseInt(minuteStr);

ここだけど、hourに07、 minuteに30がはいってるんだよね、キーボード入力して分割したから。
だから本来、String hourStr = "07"と初期化はしないから、hourStrは定義してないことになるよね。そうなると
int hour = Integer.parseInt(hourStr);このカッコの中のhourStrは使えないから、hourに変えて、int hourのhourを例えばhourIntみたいに帰るのかな。
つまり

int hourInt = Integer.parseInt(hour);
int minuteInt = Integer.parseInt(minute);


860 :アヌス : 2009/01/20 18:56
キーボード入力は、

Scanner stdIn = new Scanner(System.in);
System.out.print("xの値:");
int x = stdIn.nextInt();

.
.
.

こんな感じでもいいのかな。てかこれとかざっさんの方法との違いはなんなのでしょうか・・・?


861 :アヌス : 2009/01/20 18:46
一つのプログラムに書けば

import java.io.BufferedReader;
import java.io.InputStreamReader;

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

BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
System.out.println("time of train A:");
String s = br.readLine();

String hour = s.substring(0, 2);
String minute = s.substring(2, 4);

int hourInt = Integer.parseInt(hour);
int minuteInt = Integer.parseInt(minute);

int sum = hourInt * 6 + minuteInt;
.
.
.
電車Bの発射時刻入力
時間差の計算
結果出力
}
}

この2を続けてプログラムするのよね?これで動くかな・・・
ダメなとこあったら指摘してくらさい


862 :アヌス : 2009/01/20 18:49
3と4は普通の計算だよね。ifは使うと思うけど。JAVAでだとCと同じようにプログラムしていいのかな・・・
1のプログラムで3、4もこんがらがってきた・・・

1.1では、あとで文字列分解するから、キーボード入力はintじゃなくstringで定義してるのかな?

あとでもう一つのプログラムの質問もすると思います・・・お世話になるです・・・ペコリ


863 :アヌス : 2009/01/20 18:55
てか今かざっさん仕事かな・・・忙しいのにすまんです・・・


864 :大和 : 2009/01/20 22:59
>>859
ごめんね。動作確認しないでコード載せちゃったから間違えあったー
「1.1. ユーザが入力した「0730」を取得する」のコード正解はこうでした。



正解
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;

public class DiagramCalc extends IOException {
    public static void main(String[] args) throws IOException {

        BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
        String s = br.readLine();
        System.out.println(s);
    }
}

間違えー
import java.io.BufferedReader;
import java.io.InputStreamReader;

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

        BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
        String s = br.readLine();
        System.out.println(s);
    }
}



> とりあえず1を一つにすると
>
> import java.io.BufferedReader;
> import java.io.InputStreamReader;
>
> public class diagramCalc {
> public static void main(String[] args) {
>
> BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
> String s = br.readLine();
> System.out.println(s);
>
> String hour = s.substring(0, 2);
> String minute = s.substring(2, 4);
> System.out.println(hour + minute);
>
> int hour = Integer.parseInt(hourStr);
> int minute = Integer.parseInt(minuteStr);
>
> int sum = hour * 6 + minute;
> System.out.println(sum);
> }
> }
>
> こうなるのかな・・・

ヴォーすげー!!考え方はまさにその通りです。
さすが!



> んで2を続けて書くと・・・
>
> あれ、ちょっとまてよ。
> String hourStr = "07"; // この2つの変数を文字列型(String型)から整数型に(int型)に,型変換するよ
> String minuteStr = "30"; // 整数型に型変換しないと,文字列型のままじゃ計算できないんだ
>
> // String型からint型へ型変換
> int hour = Integer.parseInt(hourStr);
> int minute = Integer.parseInt(minuteStr);
>
> ここだけど、hourに07、 minuteに30がはいってるんだよね、キーボード入力して分割したから。
> だから本来、String hourStr = "07"と初期化はしないから、hourStrは定義してないことになるよね。そうなると
> int hour = Integer.parseInt(hourStr);このカッコの中のhourStrは使えないから、hourに変えて、int hourのhourを例えばhourIntみたいに帰るのかな。

そうそうその通り!
これじゃ「hourStr」と「minuteStr」が初期化されてないから,コンパイル時にエラーになっちゃうねー。



// String型からint型へ型変換
int hour = Integer.parseInt(hourStr);
int minute = Integer.parseInt(minuteStr);

この「hourStr」と「minuteStr」は初期化されてないから,コンパイルできないね。
↓正しくはこうだったね。



String hourStr = s.substring(0, 2);
String minuteStr = s.substring(2, 4);
System.out.println(hourStr + minuteStr);

int hour = Integer.parseInt(hourStr);
int minute = Integer.parseInt(minuteStr);

> つまり
>
> int hourInt = Integer.parseInt(hour);
> int minuteInt = Integer.parseInt(minute);

そうそう!!これでもオッケー!こっちでもオッケーだよー。
さすがCを理解してるから応用が早いねー。


865 :大和 : 2009/01/20 23:46
>>860
> キーボード入力は、
>
> Scanner stdIn = new Scanner(System.in);
> System.out.print("xの値:");
> int x = stdIn.nextInt();
>
> .
> .
> .
>
> こんな感じでもいいのかな。てかこれとかざっさんの方法との違いはなんなのでしょうか・・・?

!!?!
すごい。この方法を初めて知ったよ。
これでもキーボード入力を取得できるね。

Scanner クラスと BufferedReader クラス。それぞれ持ってる機能にちょっと違いがあるみたいだけど,
「キーボード入力を取得できる」って機能は,両者とも持っているみたいだね。
この機能に限って言えば,違いはまったくないねー。

あ,話しは変わって。
↑のコードだと,キーボード入力の「値」を
「int型」で受け取っちゃうね。
文字切り取りは「String型」じゃないと出来ないんだー。

↓ということは,



Scanner stdIn = new Scanner(System.in);
String x = stdIn.next();
System.out.print("xの値:" + x);

うん。これで「String型」で値を取得できたね。
「int x = stdIn.nextInt();」を「String x = stdIn.next();」に修正してみたよ。

Scanner クラスのほうがコードスッキリしていいねー。
以後はこっちを使ってみましょうか。


866 :大和 : 2009/01/20 23:28
>>861
> 一つのプログラムに書けば
>
> import java.io.BufferedReader;
> import java.io.InputStreamReader;
>
> public class diagramCalc {
> public static void main(String[] args) {
>
> BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
> System.out.println("time of train A:");
> String s = br.readLine();
>
> String hour = s.substring(0, 2);
> String minute = s.substring(2, 4);
>
> int hourInt = Integer.parseInt(hour);
> int minuteInt = Integer.parseInt(minute);
>
> int sum = hourInt * 6 + minuteInt;
> .
> .
> .
> 電車Bの発射時刻入力
> 時間差の計算
> 結果出力
> }
> }
>
> この2を続けてプログラムするのよね?これで動くかな・・・
> ダメなとこあったら指摘してくらさい



import java.util.Scanner;

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

        Scanner scan = new Scanner(System.in);
        String trainA = scan.next();

        String hour = trainA.substring(0, 2);
        String minute = trainA.substring(2, 4);

        int hourInt = Integer.parseInt(hour);
        int minuteInt = Integer.parseInt(minute);

        int sum = hourInt * 6 + minuteInt;

        電車Bの発射時刻入力
        時間差の計算
        結果出力
    }
}

ごめんねごめんね。私が最初書いたコードは間違えがありました。
なのでみさきっさんの教えてくれた Scanner クラス使ってコード新しくしました。

みさきっさんの教えてくれた Scanner クラス使ったら↑こんな感じです。

うん。この続きに「2.」をコード書いていきます。
ダメなところないです。書き方この通りでとてもおっけーです。


867 :大和 : 2009/01/20 23:35
>>862
> 3と4は普通の計算だよね。ifは使うと思うけど。JAVAでだとCと同じようにプログラムしていいのかな・・・
> 1のプログラムで3、4もこんがらがってきた・・・

そうそう!「3.」は if 使って計算。「4.」は普通に計算。その通りです。
CとJavaほとんど似てるね。Cみたいな感じでコード書いちゃっていいよ〜。

> 1.1では、あとで文字列分解するから、キーボード入力はintじゃなくstringで定義してるのかな?

そうそう。文字切り取りは「String型」じゃないとできないから「String型」で定義してるんだー。

> あとでもう一つのプログラムの質問もすると思います・・・お世話になるです・・・ペコリ

いえいえ。まだ現場にも出れてない研修生ごときがお役に立ててよかった。
また手が借りたくなったら書き込みしてください。



>>863
大丈夫。まだ研修生で週3日会社行ってるだけで,
他の日はニートもどきの暇人です。
遠慮なくまたどしどし書き込んでねー。


868 :大和 : 2009/01/20 23:38
返信は以上です。

うおー文字数がすごいことになってしまった。
読みづらいようだったら,↓こっちからどうぞ!
http://dky.pecori.jp/mt/test/read.cgi/8810/1220346564/l50


869 :アヌス : 2009/01/21 12:06
うお!すごいっすよ!かざったん! ちょっとまとめて組んでみます!


870 :アヌス : 2009/01/21 12:21
もう一つなんだけど、

英単語を5つキーボード入力して、その後に数字を5つ入力して初めに入力した5つの英単語のなかに隠れている単語を表示するというプログラムなんだけど、

たとえば、

Enter five words: cheap energy can cause problems
Enter five integer: 4 2 1 0 5
Secret message: peace

となります。これはつまり、
単語の最初の文字を0番目の文字として、最初の4はcheapの4番目の文字p、次の2はenergyのe、次の1はcanのa、次の0はcauseのc、 最後の5はproblemsのeですね。

簡単な例を書けば、
String aString = "abcde";
System.outprintln("Secret message: " +aString.charAt(0) + aString.charAt(3));

出力→ Secret message: ad

となるはずですよね。
しかし今回はキーボードから5つの単語をスペース付きで入力し、かつ次に5つの数字をスペース付きで入力して、最初の単語と最初の数字をマッチさせないといけないんだよね・・・
最初の例でいえば、4はcheapの4番目の文字a、 2はenergyの2番目の文字e・・・と
これはどうやればいいんでしょうか・・・


871 :大和 : 2009/01/21 18:14
うん。
調べてみたらこの要件だと StringTokenizer なんかがいいみたいー。
どういう動きするかは↓を見てみてね!



String words = "cheap energy can cause problems";
StringTokenizer st = new StringTokenizer(words, " ");

while(st.hasMoreTokens()) {
    System.out.println(st.nextToken());
}



結果は,
cheap
energy
can
cause
problems

がprintされます。
一単語ずつ切り取れてるね。これを使ってみましょう。


872 :大和 : 2009/01/21 18:39
1. words を1つずつに分解する。
 1.1. ユーザが入力した「cheap energy can cause problems」を取得する。
 1.2. 「1.1.」を1つ1つに分解する。

2. integer を1つずつに分解する。
 2.1. ユーザが入力した「4 2 1 0 5」を取得する。
 2.2. 「2.1.」を1つ1つに分解する。

3. 指定したインデックスの一文字を切り取る
 3.1. 「1.1.」の1番目の文字「cheap」をindex「4」の値を切り取る
 3.2. 「1.1.」の2番目の文字「energy」を(ry
 3.3. 「1.1.」の3番目の(ry
 3.4. 「1.1.」の4番目の(ry
 3.5. 「1.1.」の5番目の(ry

4. 「5個の文字」を結合して「peace」を出力する

作り始めたらちょっと処理の流れすこし変わってくるかもだけど,
全体の流れはこんな感じじゃないかな(’’


873 :アヌス : 2009/01/21 18:33
nextLine() だとスペースを含めた1行分の文字列を入力できるんだよね


874 :大和 : 2009/01/21 18:37
あ!ごめんねちょっと夕飯とってきます。
またレスしたり書き込むね。


875 :アヌス : 2009/01/21 18:43
スペースが入ってる文字列を分解するっていうのが

String words = "cheap energy can cause problems";
StringTokenizer st = new StringTokenizer(words, " ");

while(st.hasMoreTokens()) {
System.out.println(st.nextToken());
}

これですか?それともこれは単にスペース付きの文字列を取得してるだけ?

StringTokenizer これはじめてみたYO。てかJAVAはじめたばっかで新しいのがでまくりですな・・・
while(st.hasMoreTokens()) これはどういう意味なん?なにをループしてるん?


876 :アヌス : 2009/01/21 18:44
おお。ゆっくり食べてきてくらさーい


877 :アヌス : 2009/01/21 18:44
しかしやはり組み方がわからん・・・ショボン


878 :大和 : 2009/01/21 19:28
戻りました。
レス書いてます。ちょっと待ってねー。

>>877
今はやりはじめたばかりだからそんなもんだよね!
むしろやりはじめたばかりなのに,こんな出来て驚きです。
気にしないでくれておkっす!


879 :アヌス : 2009/01/21 19:40
やべ。明日中にできるかがわからなくなってきた・・・

cheap energy can cause problems
4    2    1   0    5

と、単語と数字をマッチさせねばならないわけだから・・・しかし文字列も数字も一度にタイプするんだよな・・・


880 :大和 : 2009/01/21 21:05
>>875
ちょっといっぺんにコード書きすぎちゃったねごめんね。
↓でひとつひとつに分けてコードを紹介するね。



1.1. ユーザが入力した「cheap energy can cause problems」を取得する。

import java.util.Scanner;

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

        Scanner scan = new Scanner(System.in);

        // ユーザがキーボード入力で「cheap energy can cause problems」をタイプした,とする。
        // すると,変数 words には「cheap energy can cause problems」が代入されるよ。
        String words = scan.nextLine();
    }
}



1.2. 「1.1.」を1つ1つに分解する。

import java.util.StringTokenizer;

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

        String words = "cheap energy can cause problems";

        // StringTokenizer で,「cheap energy can cause problems」を5つに分割するよ。
        // 変数 st1 に「cheap」「energy」「can」「cause」「problems」の5つの要素が格納されているよ。
        StringTokenizer st1 = new StringTokenizer(words, " ");
    }
}



2.1. ユーザが入力した「4 2 1 0 5」を取得する。
2.2. 「2.1.」を1つ1つに分解する。


import java.util.Scanner;
import java.util.StringTokenizer;

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

        Scanner scan = new Scanner(System.in);

        // ユーザがキーボード入力で「4 2 1 0 5」をタイプした,とする。
        // すると,変数 index には「4 2 1 0 5」が代入されるよ。
        String index = scan.nextLine();

        // 変数 st2 に「4」「2」「1」「0」「5」の5つの要素が格納されたよ。
        StringTokenizer st2 = new StringTokenizer(index, " ");
    }
}



3.1. 「1.1.」の1番目の文字「cheap」をindex「4」の値を切り取る
3.2. 「1.1.」の2番目の文字「energy」を(ry
3.3. 「1.1.」の3番目の(ry
3.4. 「1.1.」の4番目の(ry
3.5. 「1.1.」の5番目の(ry
4. 「5個の文字」を結合して「peace」を出力する


import java.util.StringTokenizer;

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

        String message = "";

        String words = "cheap energy can cause problems";
        StringTokenizer st1 = new StringTokenizer(words, " ");

        String index = "4 2 1 0 5";
        StringTokenizer st2 = new StringTokenizer(index, " ");


        // 変数 st1 の中身(5つの要素)を取り出し終わるまでループを続行
        // 「hasMoreToken()」は変数の中身に,まだ取り出せる要素が入っていたら true を,もうないなら false を返す。
        while(st1.hasMoreTokens()) {
            String word = st1.nextToken();
            // System.out.println(word); // 動作確認したければ一番左の「//」を消してね。
            int indexInt = Integer.parseInt(st2.nextToken());
            // System.out.println(indexInt); // 動作確認したければ一番左の「//」を消してね。

            // 「String oneWord = String.valueOf(word.charAt(indexInt));」でもおk!
            char c = word.charAt(indexInt);
            String oneWord = String.valueOf(c);

            message += oneWord;
        }
        System.out.println(message);
    }
}




ごめんねまだ書き途中だよ。
21時には書き終わるから,もうちょっと待ってね。

>>879
大丈夫大丈夫!
千里の道も一歩から!
一歩ずつ歩いていけば気づいたら1000歩歩いているよ。
一歩ずつ進めていけば大丈夫だよ!


881 :大和 : 2009/01/21 21:07
「3.1.」〜「3.5.」と「4.」は,
言葉では理解しづらいと思うから,
コードを実際に動かしてみて,

動き方を確認してみるといいよ!


882 :大和 : 2009/01/21 21:09
レス終わりだよ。
わからないとこがあったらどんどん聞いてくださいね。

読みづらかったら↓こっちで読んでみてね。
http://dky.pecori.jp/mt/test/read.cgi/8810/1220346564/870-882


883 :アヌス : 2009/01/22 07:19
うお!できたよ!かざっさんはJAVA神様だったんだ!マジでありがとう!!

といっても

while(st1.hasMoreTokens()) {
String word = st1.nextToken();
int indexInt = Integer.parseInt(st2.nextToken());
char c = word.charAt(indexInt);
String oneWord = String.valueOf(c);

今いちこのwhile文がわかりずらい・・・

printとprintlnの違いって、ただ単に文を出力するだけならprintlnで、キーボード入力する時とかはprintにしないといけないの?
print("Enter five words: ");
string x = stdIn.nextLine();

こんな感じに?


884 :アヌス : 2009/01/22 07:20
message += oneWord;

こうするだけで文字列は加えられていくのか・・・Cだと配列使うからこんがらがっちゃった


885 :大和 : 2009/01/22 12:39
>>833
> といっても
>
> while(st1.hasMoreTokens()) {
> String word = st1.nextToken();
> int indexInt = Integer.parseInt(st2.nextToken());
> char c = word.charAt(indexInt);
> String oneWord = String.valueOf(c);
>
> 今いちこのwhile文がわかりずらい・・・

このwhile文の動き方はねー。
各変数・メソッドに入ってる値を言ってみるね。



while(st1.hasMoreTokens()) {
    String word = st1.nextToken();
    int indexInt = Integer.parseInt(st2.nextToken());
    char c = word.charAt(indexInt);
    String oneWord = String.valueOf(c);
    message += oneWord;
}

ループ1回目:
「st1.hasMoreTokens()」の中身:「true」
「String word」の中身:「cheap」
「int indexInt」の中身:「4」
「char c」の中身:「p」
「String oneWord」の中身:「p」
「String message」の中身:「p

ループ2回目:
「st1.hasMoreTokens()」の中身:「true」
「String word」の中身:「energy」
「int indexInt」の中身:「2」
「char c」の中身:「e」
「String oneWord」の中身:「e」
「String message」の中身:「pe

ループ3回目:
「st1.hasMoreTokens()」の中身:「true」
「String word」の中身:「can」
「int indexInt」の中身:「1」
「char c」の中身:「a」
「String oneWord」の中身:「a」
「String message」の中身:「pea

ループ4回目:
「st1.hasMoreTokens()」の中身:「true」
「String word」の中身:「cause」
「int indexInt」の中身:「0」
「char c」の中身:「c」
「String oneWord」の中身:「c」
「String message」の中身:「peac

ループ5回目:
「st1.hasMoreTokens()」の中身:「true」
「String word」の中身:「problems」
「int indexInt」の中身:「5」
「char c」の中身:「e」
「String oneWord」の中身:「e」
「String message」の中身:「peace

ループ6回目:
「st1.hasMoreTokens()」の中身:「false



↑こんな感じ!

print() と println() の違いはねー。
↓を見てみてね。



System.out.println("A");
System.out.println("B");
System.out.println("C");

出力結果:
A
B
C

System.out.print("A");
System.out.print("B");
System.out.print("C");

出力結果:
ABC



print() は出力するだけ。
println() は出力して,かつ改行もするよ
違いはたったこれだけだよ!

>printとprintlnの違いって、ただ単に文を出力するだけならprintlnで、キーボード入力する時とかはprintにしないといけないの?
>print("Enter five words: ");
>string x = stdIn.nextLine();

なもんでこの場合,

System.out.print("Enter five words: ");
string x = stdIn.nextLine();

でも

System.out.println("Enter five words: ");
string x = stdIn.nextLine();

でもどっちでもオーケーだよー。



また12時頃,この書き込みを修正するねー。


886 :大和 : 2009/01/22 12:50
>>884
そうそう!
「message += oneWord;」で,
「p」「pe」「pea」「peac」「peace」
ってループ1回ごとに足されていくんだね。

「message = message + oneWord」でも↑と同じ動きするよー。


887 :大和 : 2009/01/22 12:52
今回のレスはこれで終わりだよ。
コーディング頑張ってみさきっさん!
また何かあったら書き込みしてねー。


888 :アヌス : 2009/01/22 15:09
つまり、char c = word.charAt(indexInt);は、
indexIntの中身が4だったら、charAt(4)ってことで、wordの中身の4つ目のインデックスの文字がcに入るってことなのか・・・

うおー。なんということだ・・・これがcharAtの実力か・・・


889 :アヌス : 2009/01/22 15:09
JAVA神様かざっさん!ありがたう!!!また週末にいくつか新しいプログラムの質問すると思うので、宜しくです!!!


890 :大和 : 2009/01/22 16:07
>>888
そうそう。そのコードの処理の流れはまさにその通りです。
さすが!

プロ野球選手を夢見る小学生が
王貞治にありがとうって言われるのと同じぐらい
の嬉しさがありますね。
ありがとう。なんと良い言葉か。
また週末よろしく!


891 :アヌス : 2009/01/23 01:18
http://uk.youtube.com/watch?v=hQD3668g-Jw&feature=related

http://uk.youtube.com/watch?v=XCKoHbwVZc8&NR=1

ママもこまっちゃうよ


892 :アヌス : 2009/01/23 08:39
僕が昔入院していた頃の話だ。

僕は入院3日目にして見てはいけない様な光景を目にした。

昼間とは違って夜は雰囲気が一転

病院の中は静まりかえり聞こえる音は周りの患者の寝息ばかり

そんな中僕は聞いてしまった。

「うーん…そこイイ」

僕は直感した!!

僕は静かに病室を出て甘い蜜をかぎつけたかお様に

声の聞こえる方に足を進めた

「イイ…気持ちい」

近くずくに連れて声は大きく鮮明に聞こえてくる

そして僕はナースステーションに足を止めた。

そこからはこんな声が聞こえてくる。

「こんなとこ患者さんや婦長に見つかったら怒られちゃうね…」

僕はドキドキしながらもナースステーションの中を覗いた…!!

そこにはナースの上にまたがりもう一人のナースが…!!

・・・マッサージをしていた

つまりサボってた

命の境でもあるこの場でサボってた…

僕は思い切り足音を立て走って病室まで戻りました。


893 :アヌス : 2009/01/23 10:14
>>880
かざっさん!

2.1. ユーザが入力した「4 2 1 0 5」を取得する。
2.2. 「2.1.」を1つ1つに分解する。

import java.util.Scanner;
import java.util.StringTokenizer;

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

Scanner scan = new Scanner(System.in);

// ユーザがキーボード入力で「4 2 1 0 5」をタイプした,とする。
// すると,変数 index には「4 2 1 0 5」が代入されるよ。
String index = scan.nextLine();

// 変数 st2 に「4」「2」「1」「0」「5」の5つの要素が格納されたよ。
StringTokenizer st2 = new StringTokenizer(index, " ");
}
}

ここで一つ質問が。
String index = scan.nextLine();のようにキーボードからの数字を格納するindexをstringで定義してるけど、これはIntでやっちゃダメなの?
5つの数字を1つ1つに分割するからString? Integerとして定義したら分割できなくなるってこと?


894 :大和 : 2009/01/23 18:10
>>893
String index = scan.nextLine();

なぜ int 型ではなく String 型でキーボード入力を取得しているかと言うとね,
ってもう答えわかってますね!さすがです。

その通りで,
StringTokenizer で文字列分解できる値は「String型」の値だけなんだ。
int 型や double 型や boolean 型とかの,String 型以外の値は StringTokenizer つかえないんだー。

だからちょっと手間だけど,
[1] String型 でキーボード入力を取得して,[2] 「new StrinTokenizer(index, " ")」を実行してるんだね。


895 : : [ここ壊れてます]
[ここ壊れてます]


896 :アヌス : 2009/01/24 06:39
import java.util.Scanner;

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

Scanner scan = new Scanner(System.in);
String trainA = scan.next();

String hour = trainA.substring(0, 2);
String minute = trainA.substring(2, 4);

int hourInt = Integer.parseInt(hour);
int minuteInt = Integer.parseInt(minute);

int sum = hourInt * 6 + minuteInt;

diagramのプログラムでも数字(時間)をstringで取得してるけど、これも4つの数字を分割するからなんだよね。
でもこのプログラムでは StringTokenizerは使ってないよね。

この違いって、substringで分割するかStringTokenizerでやるか、だよね。
この二つの違いは、なんなのでしょうか。調べてもいまいち理解できない
2つのプログラムから察するに、StringTokenizerは、どの文字のところで区切るかがわかってる時に使うのかな。
つまり5つの単語の間には必ずスペースがあるから、スペースのところで区切るってのははじめからわかってるから
StringTokenizer(index, " ")
こうしてるのかな、やっぱ。
substringは「どの文字」ではなく「何番目」で区切るかがわかってる時に使うのかな。
diagramの例では、かならず2つ目の数字(時)と4つ目の数字(分)にわけるってはじめからわかってるから
substring(0, 2) と substring(2, 4)
ってやってるのかな



897 :大和 : 2009/01/24 10:46
>>896
> diagramのプログラムでも数字(時間)をstringで取得してるけど、これも4つの数字を分割するからなんだよね。

そうそうー。

> でもこのプログラムでは StringTokenizerは使ってないよね。

そうそうー。

> この違いって、substringで分割するかStringTokenizerでやるか、だよね。

そうそう!

> この二つの違いは、なんなのでしょうか。調べてもいまいち理解できない
> 2つのプログラムから察するに、StringTokenizerは、どの文字のところで区切るかがわかってる時に使うのかな。
> つまり5つの単語の間には必ずスペースがあるから、スペースのところで区切るってのははじめからわかってるから
> StringTokenizer(index, " ")
> こうしてるのかな、やっぱ。
> substringは「どの文字」ではなく「何番目」で区切るかがわかってる時に使うのかな。
> diagramの例では、かならず2つ目の数字(時)と4つ目の数字(分)にわけるってはじめからわかってるから
> substring(0, 2) と substring(2, 4)
> ってやってるのかな

そうそう!違いは単純で,まさにその通り!
StringTokenizer が 「どの文字」で区切るか判明してる時に,
substringが「何番目」で区切るか判明してる時に使うんだー。
たったそれだけ!



「区切り文字」があるときは「StringTokenizer」
「区切り文字」がないけど,「何番目」で区切るかわかってる時は「substring」


例:
StringTokenizer st = new StringTokenizer("I*am*kakitama", "*");

結果:
「I」「am」「kakitama」の3つの要素が変数 st に格納されました



例:
String year = "20090124".substring(0, 4);
String month = "20090124".substring(4, 6);
String day = "20090124".substring(6, 8);


結果:
変数 year に「2009」,変数 month に「01」,変数 day に「24」の値が格納されました。



その解釈でオッケーだよー。


898 :アヌス : 2009/01/24 20:21
なるほど!!!わかったですよ!!ありがたう!!!!!


899 :大和 : 2009/01/25 01:44
おういえ!


900 :大和 : 2009/01/25 01:44
こりゃ1000までいかなそうだなw


261 KB
続きを読む

掲示板に戻る 全部 前100 次100 最新50
名前: E-mail (省略可) :

read.php ver2.4 2005/04/13