簡體   English   中英

有沒有辦法縮短重復數學

[英]Is there a way to shorten repetitive math

我有一個對多個變量重復的數學方程,但每次只更改輸出和 1 個變量

R1S2NCtxt.Text = ((((ATT * R1S2) - EDEF) * 0.8M) + ((ATT * Pierce) - EDEF * ERES)).ToString();
R2S2NCtxt.Text = ((((ATT * R2S2) - EDEF) * 0.8M) + ((ATT * Pierce) - EDEF * ERES)).ToString();
R3S2NCtxt.Text = ((((ATT * R3S2) - EDEF) * 0.8M) + ((ATT * Pierce) - (EDEF * ERES))).ToString();

這是重復多次有沒有辦法縮短這個或用不同的變量重復公式thx

您可以使用函數來擺脫復制粘貼代碼。

例子:

private string Calculate(float number) {
    return  ((((ATT * number) - EDEF) * 0.8M) + ((ATT * Pierce) - EDEF * ERES)).ToString();
}

現在您可以使用以下命令調用該函數:

R1S2NCtxt.Text = Calculate(R1S2);
R2S2NCtxt.Text = Calculate(R2S2);
R3S2NCtxt.Text = Calculate(R3S2);
decimal Equation(decimal value)
    => (((ATT * value) - EDEF) * 0.8M) + ((ATT * Pierce) - EDEF * ERES);

然后:

R1S2NCtxt.Text = Equation(R1S2).ToString();

假設R1S2decimal 如果不是,那么只需相應地修改value的類型。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM