使用两个循环,但只有一个循环通过。计算机科学导论。(爪哇)
所以我试图创建一个简单的股票计划。我的第一个循环工作,但它不会传递到我的第二个循环,我不知道为什么。我尝试过中断和if语句,但我无法理解
days = JOptionPane.showInputDialog("Enter the number of days in the stock period"); //Allows user to enter value
sharePoints = JOptionPane.showInputDialog("Enter the share points on the first day");
int daynum = Integer.parseInt(days);
int share = Integer.parseInt(sharePoints);
int dayStart = 1;
double daynumMidPoint = (daynum/2);
System.out.println(share);
Math.round(daynumMidPoint);
for(int i = dayStart;i<daynumMidPoint;i++) {
System.out.println(share=share+50);
}
for(int l = dayStart;l>=daynumMidPoint;l++){
System.out.println(share=share-25);
}
# 1 楼答案
表明
设置为1时,另一个循环将不起作用:
由于
l
被设置为1,并且循环要运行,您需要l
大于或等于daynumMidPoint
,并且由于这被设置为double daynumMidPoint = (daynum/2);
,因此它不会运行,因为它大于l
另外,如果你想让股价在当天低于中点时上涨,而在当天高于中点时下跌,你可以这样说(或类似的话):
在这个for循环中:
# 2 楼答案
如果第一个循环工作,第二个循环将不会工作,因为第一个循环只有在
dayStart
在daynumMidPoint
下时才会启动,而第二个循环只有在dayStart
高于或等于daynumMidPoint
时才会启动如果第一个成功,那么第二个肯定不会成功
# 3 楼答案
您的数学错误,第二个循环的条件未满足
所以要解决这个问题,您需要调整第二个for循环的条件。 或者您需要将l设置为不同的起始值