如何解决将LOOP java的结果求和
因此,我使用静态函数创建了一个for循环,并且工作正常。但是然后我想对这个循环的值求和以获得总值。但是每次我尝试打印时,都会得到值0。有什么想法吗?请原语编码。
我还有一个控制台类,我没有发布,但是来自 Scanner 类,它用于“ userInput”。
主类:
public class Main {
private static Console Consola;
public static void main(String[] args) {
ItemPower oco = new ItemPower();
CalculateThings oco2 = new CalculateThings();
System.out.println(Math.ceil(oco.preçoUnitarioVIII_II));
double unitariaT5 = Consola.userInput("Qual o Preço unitario da T5?");
double unitariaT4 = Consola.userInput("Qual o Preço unitario da T4?");
double unitariaCedarLog = Consola.userInput("Qual o Preço unitario da chedar Log?");
double desejadaT5 = Consola.userInput("Qual o Preço desejada de T5?");
System.out.println("Investimento em tier 5 Plank é de: " + oco2.tier5Plank(unitariaT5,desejadaT5));
System.out.println("Investimento em tier 4 Plank é de: " + oco2.tier4Plank(desejadaT5,unitariaT4));
System.out.println("Investimento em Chedar logs é de: " + oco2.chedarLog(desejadaT5,unitariaCedarLog));
System.out.println("value of totaT5 is " +oco2.totalT5);
CalculateThings.loopT5();
}
}
类计算事物:
public class CalculateThings {
double unitariaT5;
double unitariaT4;
double unitariaCedarLog;
double desejadaT5;
double totalT5 = 0;
double totalT4 = 0;
double totalCH = 0;
public double tier5Plank(double desejadaT5,double unitariaT5){
return desejadaT5 * unitariaT5;
}
public double tier4Plank(double desejadaT5,double unitariaT4){
return desejadaT5 * unitariaT4;
}
public double chedarLog(double desejadaT5,double unitariaCedarLog){
return desejadaT5 * unitariaCedarLog * 3;
}
public double loopT5(double desejadaT5) {
for (int i = (int) desejadaT5; i >= 1; i = (int) (i * 0.367)) {
totalT5 += i;
}
return totalT5;
}
}
再次感谢您的帮助。
解决方法
我在所附的代码中主要看到2个问题。
首先,您没有使用参数调用loopT5()
方法。另外,如果您已经拥有CalculateThings的机构oco2
,则可以调用这样的方法
oco2.loopT5(desejadaT5);
否则您可以这样做
double d = new CalculateThings().loopT5(desejadaT5);
System.out.println("value of totaT5 is " +d);
第二,打印语句应在调用loopT5()
之后。
您只需要替换以下两行即可。
System.out.println("value of totaT5 is " +oco2.totalT5);
CalculateThings.loopT5();
下面两行。
oco2.loopT5();
System.out.println("value of totaT5 is " +oco2.totalT5);
对于以下代码,我能够获得要求的输出
class Main {
public static void main(String[] args) {
CalculateThings oco2 = new CalculateThings();
double unitariaT5 = 5;
double unitariaT4 = 4;
double unitariaCedarLog = 10;
double desejadaT5 = 15;
System.out.println("Investimento em tier 5 Plank é de: " + oco2.tier5Plank(unitariaT5,desejadaT5));
System.out.println("Investimento em tier 4 Plank é de: " + oco2.tier4Plank(desejadaT5,unitariaT4));
System.out.println("Investimento em Chedar logs é de: " + oco2.chedarLog(desejadaT5,unitariaCedarLog));
oco2.loopT5(5);
System.out.println("value of totaT5 is " + oco2.totalT5);
}
}
Output:
Investimento em tier 5 Plank é de: 75.0
Investimento em tier 4 Plank é de: 60.0
Investimento em Chedar logs é de: 450.0
value of totaT5 is 6.0
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。