java循环重复程序

时间:2015-09-24 03:48:48

标签: java loops for-loop

我对java非常陌生我在课堂上的第二周左右 -

我需要我的程序继续根据用户继续或退出。这是一个工资单计算,我希望结尾说“你想继续(是/否)”我希望Y重复我的整个问题程序而不是结束程序。我正在使用Jgrasp而且我非常新。我假设它需要一个循环,我不完全确定,我只是让它运行并正确编译 - 它正确运行对我来说这是一个良好的开端,我希望得到如何做到这一点的帮助,因为我我看到了很多不同的方式和不同的程序。感谢。

import java.util.Scanner;

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

        double Regpay;
        double Payperhour;
        int HoursAweek;
        double Pay;
        double OvertimeHours;
        double OvertimePay;
        double Dependants;
        double SocSecTax;
        double FederalTax;
        double StateTax;
        int UnionDues;
        double AllTaxes;
        double FinalPay;
        String playAgain;

        System.out.print("Enter your pay per hour:");
        Payperhour = reader.nextDouble ();

        System.out.print("Enter your regular Hours a week:");
        HoursAweek = reader.nextInt();

        System.out.print("Enter your overtime hours:");
        OvertimeHours = reader.nextDouble();

        Regpay = Payperhour * HoursAweek;

        OvertimePay = OvertimeHours * 1.5 * Payperhour;

        Pay = OvertimePay + Regpay;

        SocSecTax = Pay * .06;

        FederalTax = Pay * .14;

        StateTax = Pay * .05;

        UnionDues = 10;

        AllTaxes = SocSecTax + FederalTax + StateTax + UnionDues; 

        FinalPay = Pay -= AllTaxes;

        System.out.println("Your pay this week will be " +FinalPay);

        {


            System.out.println("How many Dependants:");
            Dependants = reader.nextInt();

            if (Dependants >= 3) {
                Dependants = Pay + 35;
                System.out.println("Your Pay is:" +Dependants);
            } else if(Dependants < 3) {
                System.out.println("Your Pay is:" +Pay);
            }

        }

    }   

}  

3 个答案:

答案 0 :(得分:0)

以下是您的代码的基本概念:

import java.util.Scanner;

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


        double Regpay;
        double Payperhour;
        int HoursAweek;
        double Pay;
        double OvertimeHours;
        double OvertimePay;
        double Dependants;
        double SocSecTax;
        double FederalTax;
        double StateTax;
        int UnionDues;
        double AllTaxes;
        double FinalPay;
        String playAgain;
        int runAgain = 1;

        while (runAgain == 1) {


            System.out.print("Enter your pay per hour:");
            Payperhour = reader.nextDouble();

            System.out.print("Enter your regular Hours a week:");
            HoursAweek = reader.nextInt();

            System.out.print("Enter your overtime hours:");
            OvertimeHours = reader.nextDouble();

            Regpay = Payperhour * HoursAweek;

            OvertimePay = OvertimeHours * 1.5 * Payperhour;

            Pay = OvertimePay + Regpay;

            SocSecTax = Pay * .06;

            FederalTax = Pay * .14;

            StateTax = Pay * .05;

            UnionDues = 10;

            AllTaxes = SocSecTax + FederalTax + StateTax + UnionDues;

            FinalPay = Pay -= AllTaxes;

            System.out.println("Your pay this week will be " + FinalPay);
            {


                System.out.println("How many Dependants:");
                Dependants = reader.nextInt();

                if (Dependants >= 3) {
                    Dependants = Pay + 35;
                    System.out.println("Your Pay is:" + Dependants);
                } else if (Dependants < 3) {

                    System.out.println("Your Pay is:" + Pay);
                }

            }

            System.out.println("Again???  Press 1 to run again and 0 to exit");
            runAgain = reader.nextInt();

        }
    }

}

答案 1 :(得分:0)

这是您的指南..

您可以为交易创建方法。

//Place this on your main method
do{
   //call the method
    transaction();  
   //ask if the user wants to repeat the program
   System.out.print("Do you want to continue (y/n)");
   input = reader.nextLine(); 
}while(input.equalsIgnoreCase("Y"))
public void transaction(){
   //your transaction code here.. 
}

答案 2 :(得分:0)

以下是如何执行此操作的简要说明:

String choice = "y";

while(true) {
    //Take input
    System.out.print("Do you want to continue (y/n)?");
    choice = reader.nextLine();

    if(choice.equalsIgnoreCase("n")) break;
    //else do your work.
}

你也可以起诉do-while来获得你想要的东西。您可能需要进行一些更改,但这就是整个想法。这只是一个提示。