2011-12-25 2 views
3

私は大学に次の課題を完了しようとしています。これまでのところ、私はこの課題について何度か助けを受けました(本当に感謝しています)。forループカウンタを0に保持する方法。 BigDecimal;

これは大学の課題であるため、私の割り当てを直接修正しない例の概念を説明する非直接的な回答に感謝します。

ユーザの入力内容によっては、私はいくつかのことを確認する必要があります。

  1. ユーザーが注文を入力すると、それは新しいものと以前の情報に置き換えられ、再び同じコードで同じ順序を入力します。例えば、ユーザがG22をコードとして入力し、5を数量として入力した後、再度G22を入力してから4を入力し、5を忘れて4で置き換えます。新しい注文と数量= 9(私はユーザー入力のための配列を使用しています)。

  2. ユーザがG22と数量3を入力した後に何も入力せずに入力した場合、カウンタは1を加算し、X(終了する)を押すと送料が2ドルの$ 2.00になります。どのように賢明なものが入力されていない場合、つまり利用可能な4つのオプション以外のものが入力された場合に、カウンタに1を追加することを避けるにはどうすればよいですか。

  3. 私は倍精度を使用することはお金に関連するものにはお勧めできず、BigDecimalを推奨します(NumberFormat、多分)。現在の倍精度浮動小数点数を最小限の問題でBigDecimalに置き換えることはできますか、コード全体を置き換える必要がありますか? BigDecimalを簡単に実装する方法もわかりません(特に、BigDecimalをintsなどで追加/減算/除算/除算できるかどうかはわかります)。

  4. 私はコードをここに掲示しますが、他の誰かが同じコースをやり遂げてからコピーすることは望ましくありません。私のコードは世界で最も素晴らしいものではありません。最初のプログラム以来ずっと努力しています)。

+4

そこにはあまりにも多くの質問があり、十分なコードではありません。一度に1つの問題を取り上げ、解決して、あなたのコードに問題が何であるかを正確に説明したコードを投稿してください。 – Mat

+0

申し訳ありませんが、私は自分の問題を説明するのに役立つ新しいコードを作成し、各問題ごとに別々の質問を投稿しようとします。ありがとう。 –

答えて

2

1)Iは、商品コードのすべての数量を格納するMap<String, Integer>を使用します。

2)マップ内の数量を合計して注文したアイテムの合計が表示されます。ユーザーがデータを入力する方法は重要ではありません。

3)このアドバイスはプロジェクトによって異なります。あなたの場合、マーカーのオプションは重要です。投資銀行や商社で長年働いていて、誰もBigDecimalをお金に使っているのを見たことはありません。それは大きな書き換えではなく、少なくとも丸め処理をdoubleBigDecimalの両方で行う方法を知っている必要があります。

+0

ありがとう、私はマットのアドバイスを取って、いくつかのコードを作成して、私が尋ねていることを知っている人に返答しやすいようにします。 –

+0

私はダブルスを完璧に丸めました。しかし、丸めの問題があり、誰もがBigDecimalを使用しているので、お金のために倍精度を使用することはお勧めできませんでした。それは私がダブルスを正しく丸めることができることを知っているので、コード全体を書いたので、私にとってはイライラしています。今私はプロジェクトの途中でBigDecimalを学ばなくてはなりません。私は初めてプログラミング言語を勉強し始めたので、私は完全なノブです。あなたの助けをありがとう。 –

+0

アサインメントに関しては、期待される答えにどれくらい近づいているかに基づいてマーキングされます。あなたが思っている答えは、彼らが探しているものではありません。 –

関連する問題