Java代码没有添加并提供正确的输出

时间:2017-10-02 02:12:41

标签: java

我正在尝试运行一个基本的java程序,但它没有加起来,它给了我一个无限循环。任何帮助将不胜感激。

  

输入:每个顾客的年龄(输入结束由值< 0表示)

     

有两类顾客:

     

0至5岁:孩子 - 免费($ 0)

     

5至18岁:学生 - $ 5

我应该

  1. 获得赞助人的年龄

  2. 确定顾客属于哪个类别&增加该类别的数量

  3. 继续做第1步和第2步2直到输入结束
  4. 一旦达到输入结束 •计算每个类别产生的收入(类别中的顾客数量*该类别的费率) •当天的总收入(所有4个类别的收入总和)
  5. 以下列格式生成输出
  6. •佩罗博物馆:今天的收入

    •孩子数量:*****

    •儿童收入:0美元

    •学生人数:****

    •学生收入:$ ****

    这是我的代码:

    import java.util.Scanner;
    
    public class MyClass {
        public static void main(String args[]) {
            int kidsPrice = 0;
            int studentPrice=5;
    
    
            Scanner input = new Scanner(System.in);
            int number = input.nextInt();
    
    
            while(number > 0 ){
                if (number >= 0 && number <= 5){
                    for(int i = 0; i < number; i++)  {
                    int  numOfKids = i;  
                    System.out.println("Kids " + numOfKids);
                    }
                 System.out.println("Kids " + kidsPrice); 
    
                }
    
               else if (number >= 5 && number <= 18){
                    for(int i = 0; i < number; i++)  {
                    int  numOfStudents = i;   
                    }
                  System.out.println("Students");
               }
               --number;  
            } 
    
    
    
        }
    }
    

    它并没有真正做我想要的任何事情,它没有添加数字,我需要一些指示我做错了什么并需要修复

1 个答案:

答案 0 :(得分:2)

您的尝试已中途对齐,但由于某些原因未遵循问题陈述。尝试并改进这些方面: -

  1.   

    获得赞助人的年龄

  2. 您刚刚阅读了number赞助人,在while次迭代中输入了他们的年龄,并将if置于该年龄。

    1.   

      增加该类别的数量

    2. 这可以通过++numberOfKids来实现,例如在你的if条件

      1.   

        每个类别产生的收入(类别中的顾客数量*该类别的费率)

      2. 从上面的(2)获得值。您知道速率(代码中当前未使用的速率),只需要说明所述数学。

        1.   

          当天的总收入(收入总和......

        2. 您将在(3)中计算的收入,添加它们以获得这些收入。