前提・実現したいこと
JAVA超初心者です
下記の練習問題に苦戦しており、何をどのように考えたらよいのか、初心者向けにご教示いただけますと幸いです。
2つの入力値の、間の整数の和を求めるプログラムを実装したいです。
例えば、「1」と「3」を入力した際には、
下記のように「6(1+2+3)」が表記されるようにしたいです。
>java toi2 1 3 >1 から3 を足した合計は6
発生している問題・エラーメッセージ
c:\practice>javac toi2.java toi2.java:19: m は f(int,int) で定義されています。 int m,n; ^ toi2.java:19: n は f(int,int) で定義されています。 int m,n; ^ toi2.java:20: シンボルを見つけられません。 シンボル: 変数 args 場所 : toi2 の クラス m = Integer.parseInt(args[0]); ^ toi2.java:21: シンボルを見つけられません。 シンボル: 変数 args 場所 : toi2 の クラス n = Integer.parseInt(args[1]); ^ toi2.java:24: total は f(int,int) で定義されています。 int total=n; ^ エラー 5 個
該当のソースコード
class toi2{ public static void main(String args[]){ int a; a = args.length; if(a !=2){ System.out.println("整数を2つ入力してください"); return; } } public static int f(int m,int n){ int total = 0; int m,n; m = Integer.parseInt(args[0]); n = Integer.parseInt(args[1]); if(m>n){ int total=n; n = m; m = total; System.out.print(n+"から"+m+"を足した合計は"); } }; }; }
試したこと
何回か打ち直しはしてみました。
合計を求める部分はネットで調べながらなんとか真似してみたものの、理解が追い付いていない状態です。
補足情報(FW/ツールのバージョンなど)
java version "1.5.0"
Java(TM) 2 Runtime Environment, Standard Edition (build 1.5.0-b64)
Java HotSpot(TM) Client VM (build 1.5.0-b64, mixed mode, sharing)
windowsです
2つの入力値の、間の整数の和を求める所を具体例で説明してください。
> 2つの入力値の、間の整数の和
と言う表現が分かりません。"間の整数の和"とは。単なる入力された2つの整数の和ではないのでしょうか。
また、n が m未満であるときにのみ計算をしようという意図が見えますが、これは問題の条件に入っていない気がしますがいかがでしょうか。
> if(m>n){
> int total=n;
> n = m;
の部分です。
変数のスコープやメソッドについて理解できていますか?
最低でもこれらが理解できていなければこの問題を解くのは困難です。
コメント早々にありがとうございます。
実装したい内容について、わかりづらくすみませんでした。
例えば、「1」と「3」を入力した際には、
下記のように「6(1+2+3)」が表記されるようにしたいです。
>java toi2 1 3
>1 から3 を足した合計は6
カナあり古いバージョンですが、 windows 10 じゃまともにうごくんだろうかこれ> java 1.5 (タイガー)
>>変数のスコープやメソッドについて理解できていますか?
まだGWに入ってから始めたばかりなので、このあたり理解しきれていない部分が多いです。
問題を解きながらググっている状況なので、もう少し写経してから再挑戦しるべきなのかもしれません><
>>カナあり古いバージョンですが、 windows 10 じゃまともにうごくんだろうかこれ> java 1.5 (タイガー)
最新版の課金をしておらず無料でDLしてしまったのですが、結構古いのですね・・まだ初歩の初歩なので今までは問題なく動いてきたのですが、今後そのあたりも調べてみます。
java 15 ⇒ 商用にかかわらない開発用とならば無料
java 14 ⇒ 商用にかかわらない開発用とならば無料
java 13 ⇒ EOL(商用にかかわらない開発用とならば無料)
java 12 ⇒ EOL(商用にかかわらない開発用とならば無料)
java 11 ⇒ EOL(サードパーティのサポートはあり)
java 10 ⇒ EOL(商用にかかわらない開発用とならば無料)
java 9 ⇒ EOL(商用にかかわらない開発用とならば無料)
java 8 ⇒ 基本無料
java 7 ⇒ EOL(基本無料)
java 6 ⇒ EOL(基本無料)
java 5 ⇒ EOL(基本無料)
どこぞの怪しいサイトでダウンロードしたのでしょうか?
# オラクルIDは登録無料です
知りませんでした・・商用に関わらない開発では無料なのですね。詳しく教えてくださって本当にありがとうございます。
便利な一覧です(笑)>asahina1979さん
+1
@dodox86
じゃあ EOL使ってる人みつけたらこれはってくれ
そもそももう少し前のレベルの問題に慣れてから、こちらの問題に取り組んだ方が良さそうですね。
とても丁寧にみなさん教えてくださっているのに、理解が追い付いていない部分もあって恐縮です。(でも感謝してます)
初心者向け問題の回答漁って、写経になれたころにリベンジしてみます!!
JavaについてはOpenJDKと言う手もあります。Oracle版との比較に関連してteratailでも何度も話題にあがっているので、参照してみると良いです。
問題を解くことも重要だとは思いますが、まずは基礎的な知識を学んだ方がいいかもしれません。
初心者用の参考書を1冊読むのをお勧めしますが、サイトでも1から体系的に教えてくれるところもあるのでそこで勉強をするのもありです。
まずはインプット中心の勉強をして、ある程度基礎を理解してから問題を解くことをお勧めします。
了解しました、ありがとうございます。一旦体系的に勉強してから取り組んでみようと思います。
皆さん詳しくありがとうございました。
回答1件
あなたの回答
tips
プレビュー