应该

时间:2018-01-08 18:44:21

标签: java input java.util.scanner

编写一个程序,预测一群生物的大小。该计划应该问 对于起始生物数量,他们的平均每日人口增长(百分比), 以及他们将成倍增加的天数。例如,人口可能以两个开头 生物体,平均每日增加50%,并允许繁殖 七天。该程序应使用循环显示每天的人口规模。 输入验证:不接受小于2的数字作为总体的起始大小。做 不接受平均每日人口增长的负数。不要接受号码 他们将成倍增加的天数小于1。

我的问题是每天都没有增加。 我的示例输入是100个生物,50%增加,3天

我的输出是 第1天:100 第2天:100 第3天:100

import java.util.Scanner;

 public class Population {

    public static void main(String args[]) {
           Scanner scanner = new Scanner( System.in );

        System.out.println("Please input the number of organisms");
          String inputOrganisms = scanner.nextLine();
        int numOfOrganisms = Integer.parseInt(inputOrganisms);

          System.out.println("Please input the organisms daily population 
  increase (as a percent)");
          String inputPopIncr = scanner.nextLine();
        double popIncrease = Integer.parseInt(inputPopIncr) /100;


        System.out.println("Please input the number of days the organisms will multiply");
          String inputNumOfDays = scanner.nextLine();
        int numOfDays = Integer.parseInt(inputNumOfDays);

       for (int i = 1; i < numOfDays+1; i++) {
           numOfOrganisms = numOfOrganisms += (numOfOrganisms *= popIncrease);
           System.out.println("Day " + i + ": " + numOfOrganisms);
       } 

    }

}

1 个答案:

答案 0 :(得分:1)

你的问题:

在for循环中你应该有

@RequestMapping(value = "/calculate",method = RequestMethod.GET)
        public String calculate(Model model){
            model.addAttribute("Basket",basket);
            return "calculate";
        }

这背后的原因是因为您需要将人口增长添加到现有数字。

您正在做的事情会导致错误,因为您需要在语法行中只有一个等于。第二个等于(+ =)没有被读取,因为它是无效的。

干杯!