运算符^不能应用于float和int类型的操作数

时间:2018-05-02 14:19:51

标签: c#

问题定义:设计一个类BankAccount (accountno, name)。在FixedDeposit类中继承此类,该类具有数量成员,如本金额(P),利率(R),否。年(N)。

允许用户输入P,R,N并计算到期金额(A)和利息(I)。

公式

A = P(1 + R / 100) ^ N    and   I = A - P

我的代码:

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

namespace prac_18
{
    public class BankAccount
    {
        int accno;
        string name;
    }

    public class FixedDeposit : BankAccount
    {
        float pamt;
        float roi;
        int years;

        public  void getdata(float p,float r,int y)
        {
            pamt = p;
            roi = r;
            years = y;
        }

        public float calc_due()
        {
             float amt = 0;
             amt = pamt * (1 + roi / 100)^years;   // Here I get the error
             return amt;
        }

        public float calc_intrest()
        {
             float  intrest = 0;
             intrest = calc_due() - pamt;
             return intrest;
        }
    }
}

1 个答案:

答案 0 :(得分:0)

在C#中,^运算符是异或,因此不能与float&中间体

但看起来你想用它来提升权力,所以你要使用Math.Pow

 amt = pamt * Math.Pow((1 + roi / 100), years);