0

C# の単純なコンソール アプリケーションのコードを以下に示します。2 番目の入力に AIR レートを入力すると、「入力文字列が正しい形式ではありませんでした」というエラーが表示されます。正しいフォーマットは何ですか?また、現在作成しているコードにどのように組み込むのですか? 私はさまざまな変数の型に慣れていません。

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace ConsoleApplication1
{
    class Program
    {
        static void Main(string[] args)
        {
            int AIR, MIR, PMT, IP, PP, ABorrowed, Term;

            Console.WriteLine("Please enter the amount borrowed on your loan ");
            ABorrowed = int.Parse(Console.ReadLine());
            Console.WriteLine("Please enter the interest rate for your loan ");
            AIR = int.Parse(Console.ReadLine());
            Console.WriteLine("Please enter term of your loan in months ");
            Term = int.Parse(Console.ReadLine());

            MIR = AIR / 1200;

            PMT = ABorrowed * (MIR/1-(1/(1+MIR)^Term));

            IP = ABorrowed * MIR;

            PP = PMT - IP;

            Console.WriteLine("Your total payment for this month is "+PMT);
            Console.WriteLine("Of that payment " + IP + " is interest rate");
            Console.WriteLine("and the Payment Portion is " + PP);
            Console.ReadLine();

        }
    }
}
4

3 に答える 3

3

正しいフォーマットは何ですか?また、現在作成しているコードにどのように組み込むのですか?

問題は、コマンド ラインに整数を入力していないことです。

何を書いているかを指定していないので、それ以上のことはわかりません...しかし、「100」のような単純なものを書くだけであれば、問題ないはずです(そのエラーに関する限り)。

ただし、ローカル変数には を使用し、(メソッドの先頭ではなく) 最初に使用する時点で宣言し、より意味のある名前を付けることを強くお勧めします。IronMan84 が言うように、任意の通貨値に使用することもできますが、住宅ローンのレベルではセントが大きな違いを生む可能性は低いと思います。ただし、金利に使用することは非常に理にかなっています。camelCasemonthlyPaymentPMTdecimaldecimal

于 2013-02-21T16:29:09.090 に答える
0

AIR var の値が xx.xx の場合、10 進数または double 型の var を使用する必要があります。また、アプリケーション (finantial) のすべての変数は、10 進数/2 倍にする必要があります。

于 2013-02-21T16:49:13.990 に答える
0

利率は通常、decimalまたはdouble変数タイプで実行されます。int変数でそれを行おうとすると、これらの問題が発生します。

int型は、10 進数値をまったく処理するように構築されていません。これらは整数を格納するためのものです。

于 2013-02-21T16:28:59.363 に答える