わからないので教えてください。
キーボード入力を負の整数になるまで繰り返し、負の整数を入力したら
負の整数を含めずにその平均値を出しなさい。
という問題なのですが、
僕は繰り返しなので、
do{
System.out.println("整数を入力してください。負の数が入力されたら終了します。");
line = br.readLine();
i= Integer.parseInt(line);
}while(i>0);
と考えたのですが、これ以上先に進めなくて困っています。
まずこのiに入力されたものを合計しなくてはいけないので、配列を使わないとならないとわかったのですが、配列の使い方がいまいちわかりません。
int []m=new int[i];
と入力し(その前にiを初期化)
m[i]= Integer.parseInt(line);
としたのですが、うまくいきませんでした。この場合どのように配列を考えればよいのでしょうか。
あと、「最後の入力した負の整数を含まず」ということは、どう書けばよいのでしょうか。
ヒントでもいいので教えてください。よろしくお願いします。
No.2ベストアンサー
- 回答日時:
koko_uさんの回答にもありますが、配列は使わなくてもいいと思います。
以下に流れを簡単に書いてみます。
(1)
とりあえず、do~whileの前に、int型の適当な変数を2つ(仮にsum、counterとします)を用意しておきましょう。
sumは入力値の和を格納するため、counterは加えた回数を格納するために使います。
(2)
do~whileの中で
i= Integer.parseInt(line);
として取得した入力値のint型の値について、負の数かどうか判定します。
(3)
上記(2)で負の数でなければ、sumにiを加え、counterを1だけ増やします。
もし負の数だった場合は、break;として、ループを抜けましょう。
(今回はwhile判定があるので、breakは必須ではありません)
(4)
いつかはループを抜けてここにたどり着くでしょう。
そうしたら、先ほどのsum(合計)をcounter(加えた回数)で割れば、求めたい平均になります。
なお、入力値が数値でないときの保証や、用意した変数の初期化には言及していません。
必要でしたらそれも付け加えておいてください。
あえて日本語の説明で書くようにして、コーディングをお見せしないようにしました。
アルゴリズムに強くなったほうが、gumgumgumさんの今後のプログラミング技術につながると考えましたので。
がんばってください!
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- C言語・C++・C# C言語 3 2022/10/04 15:07
- C言語・C++・C# このプログラミングの問題を教えて欲しいです。 キーボードから整数kを入力し、kが配列aの中に何個存在 2 2022/12/19 22:50
- C言語・C++・C# このプログラミングの問題を教えてほしいです。 キーボードからデータ数nとn個のデータを入力し、平均値 3 2022/12/19 22:51
- C言語・C++・C# 至急教えてください!プログラミングの問題です。 割られる整数と割る整数を受け取って、商と余りを出力す 3 2022/07/05 10:23
- C言語・C++・C# 至急教えてください。プログラミングの問題です。 malloc関数を使ってください!お願いします! 最 1 2022/07/21 09:28
- Java javaでのプログラム(配列)について質問です. 2 2022/10/14 22:27
- Ruby プログラミング 3 2023/06/09 14:30
- C言語・C++・C# 至急教えてください。プログラミングの問題です。 最初に正の整数nの入力を受け付け、次に分数の分子と分 1 2022/07/19 17:03
- C言語・C++・C# 至急教えてください!プログラミングの問題です。 正の整数nを入力させると、1からnまでの整数を出力し 9 2022/07/16 23:45
- C言語・C++・C# 至急お願いします。プログラミングの問題です。 最初に正の整数nの入力を受け付け、次に分数の分子と分母 3 2022/07/19 17:09
このQ&Aを見た人はこんなQ&Aも見ています
関連するカテゴリからQ&Aを探す
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
ページング
-
CSVファイルを二次元配列に格納...
-
配列をセッションに割り当てた後で
-
java
-
jspでの二次元配列
-
CSVファイルを多次元配列に格納...
-
配列で、値の入っている要素数...
-
csvファイルを2次元配列に格納
-
ArrayListを使った多次元配列の...
-
ArrayListからBean配列に値をセ...
-
配列の中に複数存在する数がい...
-
この警告はどうすれば?
-
n番目に大きな値を探索する
-
C#で動的配列Listの中身をListB...
-
ResourceBundleのgetStringArra...
-
配列について
-
動的配列確保
-
配列の最大要素数
-
OrqngeSignal CSVの設定について
-
Javaには、構造体はないんですか?
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
n番目に大きな値を探索する
-
この警告はどうすれば?
-
[Ljava.lang.Stringってなんですか
-
Javaで文字を漢字であるか否か...
-
配列をセッションに割り当てた後で
-
配列の中に複数存在する数がい...
-
java
-
Javaで文字と数字が混ざったも...
-
C#で動的配列Listの中身をListB...
-
配列で、値の入っている要素数...
-
『args[]』とは?
-
【C#】ハッシュテーブル(連想...
-
ページング
-
セッションを使ったint型の値の...
-
配列について
-
同じ配列またはクラスを、2回...
-
ArrayListからBean配列に値をセ...
-
Java配列の問題を教えてくださ...
-
java 大文字と小文字を入れ替える
-
同じ文字を探しカウントしたい
おすすめ情報