• ベストアンサー

Javaによるプログラミングについて

僕はプログラミング初心者で、Javaもやったことは無いのですが、Javaでやってみたいと思うことがあるので始めようと思っています。 Javaで何をしたいかというと、樹形図のような構造を作りたいのです。樹形図は、ご存知の通り、条件に適合する方向へ分岐する2分岐です。 数値の大小によって分岐していき、数値は加算して最後に合計を算出したいです。 構想はあるのですが、プログラミングの何を勉強したら良いのか全くわかりません。 手始めに何をしたら良いか等、他に何でも良いので教えていただけないでしょうか。

  • Java
  • 回答数2
  • ありがとう数3

質問者が選んだベストアンサー

  • ベストアンサー
  • yusukey
  • ベストアンサー率56% (17/30)
回答No.2

まずはJava/プログラミングの基本を押さえないといけませんね。独習Javaなんかオススメです。 http://www.amazon.co.jp/exec/obidos/ASIN/4798107972/250-9574496-2651454 これはちょっとブ厚いですがJavaの基本事項を一通り勉強できます。 ただ、グラフィカルなプログラムに関する話題はあまりのっていません。GUIのアプリケーションをつくるならば Swing という仕組みを利用することになります。独習Javaを勉強した上で、Swingに特化した本を一つ押さえると良いかと。 http://www.amazon.co.jp/exec/obidos/ASIN/4877830537/qid=1125129028/sr=1-1/ref=sr_1_10_1/250-9574496-2651454

musoloist
質問者

お礼

本屋さんでは、しっくりくる本があまりありませんでした。専門家の方のお勧めならば、こちらの本の購入を検討させて頂きたく思います。生意気な私をお許しください。ご返答ありがとうございました。

musoloist
質問者

補足

私は自分の論ずるところを組み込み汎用性のある何かで表現したいと考えていました。プログラミングも単なる道具としか見ていませんので根本的な部分から身に付けたいと考えています。

その他の回答 (1)

  • rinkun
  • ベストアンサー率44% (706/1571)
回答No.1

樹形図は画面に表示したいの? それとも内部処理構造として構築できれば良いの? 内部構造だけならアルゴリズムの本を買ってきてツリーの処理を勉強すればなんとかなるでしょう。 画面表示は、テキスト表示なら二分木をどうレイアウトするかの問題だし、グラフィック表示ならAWTかSwingの勉強が必要ですね。

musoloist
質問者

お礼

ご返答にお時間割いてくださり感謝いたします。

musoloist
質問者

補足

紙に樹形図を書いて手計算するより手間が省けると思ってのことでした。なるべくなら内部処理を追って視認できる表示にしたいと考えています。

関連するQ&A

  • 初心者です。教えてください!

    Javaを勉強し始めてまもない者です。 すごく簡単なことなのかもしれませんが、 アドバイス頂けると嬉しいです。 キーボードから入力した値を次々に加算していって、 合計がある数値に達したら、加算をストップし、 計算結果をコンソール画面に表示する。また、合計が ある数値に達しなくても計算を止めるキーワード(たとえば "END"とか)を入力すると同様に加算がストップし、そこまでの 計算結果を表示するというプログラムを作ろうとしています。 Javaに関してわからないことだらけで、何がわからないのかも 説明しづらい状態です。こんなすべて放棄状態の質問で申し訳 ないのですが、アドバイス頂けますでしょうか。 よろしくお願い致します。

    • ベストアンサー
    • Java
  • エクセルで年間合計、平均を集計する時のエラー処理

    月ごとの行集計しています。 12ヶ月の稼働月だけを合計、平均するにはどうすれば良いでしょうか? 各月のセルには未入力時はIF文で空白("")となるようにしていて、合計算出するセルで該当セルを加算するだけだと#VALUE!のエラーがでています。 稼働月(数値が入力されたセル)のみを加算して合計を出すのと、稼働月のみを判断して平均値を算出するにはどう記述すれば良いでしょうか? エラー処理方法を教えて下さい。宜しくお願いします。

  • Java:クラスをたくさん使ったプログラミング?

    Java言語勉強中のものです。 Eclipseをつかっています。 初心者ですので、易しい言葉でご回答いただければ幸いです。 Javaの基礎についてひととおり勉強しました。 オブジェクト指向についても、だいたい・・なんとなくは理解できていると思います。 ただ、自分で作成するときに、 うまくオブジェクト指向を取り入れたプログラミングができません。 なんだかあっちこっちのものを呼び出してきてとてもややこしいです。 クラスがたくさんつかわれているプログラムは、 ほかの人がつくったプログラムをなんとかがんばって読む、というのが精一杯です。 自分ではとても思いつかない構造ばかりです。 あっちこっちからよんできているので、図やらリストやらを書いて 本当に「なんとか」理解できた、というレベルです。 クラスが5個以上になると正直もう嫌だってなります。。実用レベルにはまだまだ至っていません。 本当の意味でオブジェクト指向を理解できていないのかもしれません。 どうすればそういった、オブジェクト指向をとりいれたプログラムが書けるようになるのでしょうか? いろんなプログラムを見る、数をこなすことでしょうか? 何かおすすめの参考書や、 「こういう考え方をすれば・・・」というものがありましたら教えてください。 よろしくお願いいたします。

    • ベストアンサー
    • Java
  • Excel累積が規定数を超えたらまたゼロから累積

    言葉でうまく説明できないゆえ検索もままならず,ここで質問させていただきます。お願いいたします。 Excel2007です。理想図を添付しましたので,それに従い説明いたします。 A列に数値が入っています。1000行ほどあります。 それらの数値を上から順にA1+A2+…と加算していき,500になったらその行のB列にその合計を記入し,一旦ゼロにリセットし次のA列の行(添付の図ではA6)からまた加算を始め,500になったらその行のB列に合計を記入し…ということを,A列の数値が終わるまで繰り返す,という作業を行いたいと思います。 また,合計数がちょうど500になることはまれなので,近似のセルをとるようにします。例えば添付画像において,A5の段階での合計は480で,A6になると635ですので,A5のほうが500に近いためそのセルで区切ります。 関数でもマクロでもかまいません。 何かしらのヒントでもいただければと存じます。 よろしくお願いいたします。

  • QC手法の管理図のついて質問

    QC手法を勉強しているもので、管理図について質問です。 複合機の印刷・コピー枚数の「合計/月」をひとつのデータとして管理図を 作成し、上方管理限界を超えたら、無駄な印刷が発生している可能性を さぐる。 下方管理限界を超えたら、節約意識が浸透しているなど、そういう使い方 をしたいのですが、どの管理図の種類を選択すればいいかわかりません。 n=1(月1データ)なので、X-Rs(移動範囲)の管理図だと思ったのですが、 枚数という単位は、計数値なので、間違っているのかなと思っています。 しかも、X-Rs管理図の書籍説明に、n=2以上の場合は、この係数を・・・ などと書かれていて、n=1のみのデータだから、X-Rs管理図なのに、 n=2とかn=3とかどういうこと?だったら、Xber-R管理図を使えばいいじゃ んと思ってしまい、管理図の理解も薄い状態です。 計数値の管理図は、不適合品数や、不適合品率、不適合数、などを管理 するものと書籍には書かれていて、やりたいことは枚数管理なので、いまい ちピンときません。 ・X-Rs管理図の考え方の知識 ・印刷枚数を管理するときの管理図の選択 このあたりについて、よろしければ、ご教授ください。 よろしくお願いいたします。

  • 数的推理

    添付図に示すような三角形に並んだ○の中に、以下の条件で数字を入れます。 (1) 使用する数値は、「1」はすでに使われているので、2~6を1回だけ使います。 (2) 三角形の辺の部分の○の合計は等しい。 1+C+D と D+A+E と E+B+1 は同じ値ということです。 以上の条件で、2~6を決定していくのですが、解説でわからないところがあります。 要約しますと、 (3)(2)より、同じ値3種類を合計すると、3の倍数になる。(これは納得済み) (4)1~6の合計は21となり、3の倍数である。(これも納得済み) (5)(3)の合計を求めるとき、三角形の各頂点(1とDとE)は2回ずつ加算されるから、三角形の各頂点の和も3の倍数になる。 この(5)の最後がわかりません。2回ずつ加算されるのは良いとして、なぜ頂点の和が3の倍数になるのかがわかりません。 たとえば、各頂点の数値をX、Y、Zとすれば、X+Y+Z=3の倍数、ということですよね? 確かに解答は3の倍数になっており、各頂点が(1,4,5)こんな組み合わせのときはできません。 なぜ、この各頂点の和が3の倍数になるといえるのか教えてください。

  • コマンドライン引数 java

    学校で、2進数表記された文字列number1、number2…numberNを数値に変換し、合計を算出し、2進数表記の文字列に変換した結果を出力するプログラムを組む課題が出ました。 java Lesson06 number1 number2 … numberN の形式で受け取ったコマンドライン引数を元に、処理を行います。 ※number1からnumberNは、全て0か1のみで構成されている文字列 * 文字列の加算 * System.outまたはSystem.errのprint系メソッドで、Stringの値を受け取るもの以外 * Integerなどのラッパークラス * DecimalFormatなどの書式変換クラス 上記の機能は使ってはいけません。 ---- class Lesson{  public static void main(String args[]){   int sum;   for(int i = 1; i < args.length; i ++) {    int len = strlen(args[i]);//※    for(int j = 0; j < len; j ++) {     if(args[i][len - j - 1] == "1") {//※      sum = pow(2, j) + sum;//※     }    }   }  } } ---- とりあえず、与えられた二進数を計算する部分まで作ってみたのですが、※の部分でエラーが出てしまいます。 コマンドライン引数もよく分からなくて困っているので、教えていただければ助かります。 以上よろしくお願いいたします。

    • ベストアンサー
    • Java
  • アクセスのレポートで集計をしたいんです

    アクセス2000でデータベースを作ってます。レポートに、請求書ごとの請求金額を出しているので、一定期間内の請求金額の合計額を出したいのですが、エラーになってしまうんです。どうしたらよいか教えていただけませんでしょうか?ちなみに、レポートに表示される請求金額は、レポート内で計算をして表示させています。請求書によって内税のものと外税のものがあるため、税金の区分に対する数値のみテーブルに格納し、その値に応じてIF文で分岐をさせて、納品額から算出しています。

  • 材料力学のトラス構造の問題について・・・

    材料力学のトラス構造の問題について分からない、何度挑戦 しても数値が求まらないです。 どなたか力を貸して下さい<(_ _)> 問題の内容は「(図10.31←添付画像)のように、骨組み構造のA点に水平 に外力Pが作用している。 点Aの荷重方向の変位と点Aの垂直方向の変位を求めよ。」 という問題で解答には 「荷重方向の変位:δ=√3Pl/3AE 垂直方向の変位:δ=(2√3-3)Pl/3AE」 と書いてあるだけで、回答の手順のようなものはのっておらず、 自分で解いてみますが、どこで間違えているのかも分からず、 八方塞がりの状態です。 おねがいですが、どなたかヒント、式の立て方、手順何か教えていただけると 有り難いです、どうかよろしくお願いします。

  • メソッドを使ったプログラム

    メソッドをつかったプログラムで数当てゲームを作成したいのですが 1から1000までのランダムな値(以降 数値X として)を取得し、プレイヤーにその数を当てさせる。 プレイヤーが入力した数値(以降 数値Y として)が数値Xより大きければ『もっと小さいです』、数値Yが数値Xより小さければ『もっと大きいです』と出力する。 数値Xと数値Yが同じになるまで繰り返し、何回であったたかを最後に表示する。 条件:以下の処理の単位をメソッドにする。   1.1から1000までのランダムな値を取得する。   2.数値X、数値Yの関係(大小、等しい)を調べ、適切なメッセージを出力する というプログラミングを作成したいのですがどういうふうにしたらよいのかわかりません!! import java.io.*; class Question7_2{ public static void main(String[] args){ BufferedReader r = new BufferedReader(new InputStreamReader(System.in)); try{ System.out.println("数当てゲーム"); というところでとまった状態です。どのようにしたらよいか教えてください!例外発生やIf文を使うというのまではわかるのですが…

専門家に質問してみよう