コードへの完全なJavaプログラム以下:それはスピード違反がある場合シンプルなのEclipse IDEのJavaプログラム
- それは赤色光違反がある場合には、罰金がドライバー年俸
- の1.75%です違反の場合、その罰金は、速度限度を超える1マイル/時間ごとの給与の0.5%に、年間給与の1.2%です。
あなたは何をする必要がありますか?彼/彼女のフルネームを入力して、ドライバ
- プロンプトユーザー/役員。
- ユーザー/役員にドライバの年俸を入力するように促します。
- 違反の種類を入力するように警察に促す(赤いライトの場合は1、スピードの場合は2)
- 速度を上げると、速度制限を超えて何マイル/時間を入力するかをユーザーに促します。ドライバ
- 年俸の役員
- 名
- 違反の
- 名:
- は、以下を含む完全なレポートを印刷、その後、評価されるべきであるどのくらいの罰金であれば...他のセットを評価します評価罰金のタイプ(あなたが1または2(レッドライトやスピード違反だけでなく、それを綴るする必要があります)
- 量(小数点以下2桁に$記号とラウンドを印刷)
また、次の点を考慮する必要があります。
- あなたのプログラムは、違反のタイプのための1または2以外の任意のコードを受け入れてはいけません。
- あなたの入力は、別の方法で処理する必要がありますが、main()では処理しないでください。
- 評価は、独自の方法で処理する必要があります。
- レポートは別の方法で処理する必要があります。
- 新しいドライバでは、プログラム全体を繰り返す必要があります。
エクストラクレジット:
package FinFines_
import java.util.Scanner;
/*
* Description: This program assesses fines for traffic violations.
*/
public class FinFines_
{
static Scanner get = new Scanner(System.in);
//declarations:
static double mph = 0;
static double salary = 0;
static double fines = 0;
static int violation = 0;
static int answer = 1; //1 to continue or 0 to quit
static String officer = " ";
static String driver = " ";
public static void main(String[] args)
{
//input:
while (answer != 0) //while will allow the program to repeat for a new driver
{
input(officer, driver, salary, violation); //call input method
//calculations:
fines = calculateFines(violation, fines, salary, mph); //call calculateFines method
//Output:
disp(officer, driver, salary, violation,fines); //call disp method
//ask user if they would like to continue
System.out.println("Would you like to write a new ticket? Press 1 for yes or 0 for no: ");
answer = get.nextInt();
}//end while
System.out.println("Goodbye!");
}//end main
//=================================================================
public static void input(String officer, String driver, double salary, int violation) //Input Method
{
System.out.println("Officer, please enter your first and last name: ");
officer = get.nextLine();
System.out.println("Please the driver's first and last name: ");
driver = get.nextLine();
System.out.println("Please enter the driver's salary: ");
salary = get.nextDouble();
System.out.println("Press 1 if the driver ran a red light. Press 2 if the driver was speeding. Press 3 if the driver is subject to both violations. ");
violation = get.nextInt();
System.out.println("How many miles per hour was the driver going over the speed limit?: ");
mph = get.nextDouble();
}//end input
//=================================================================
public static double calculateFines(int violation, double fines, double salary, double mph) //calculates the amount of fines for either violation
{
{
if (violation == 1)
return (salary * 1.75);
else if (violation == 2)
return (salary * 1.2) + (mph * .5 * salary);
else if (violation == 3)
return (salary * 1.75) + ((salary * 1.2) + (mph * .5 * salary));
return 0;
}
}//end calculateFines
//=================================================================
public static void disp(String officer, String driver, double salary, int violation, double fines) //Display Method
{
System.out.println ("Your name is Officer " + officer + "\nThe name of the driver you pulled over is: " + driver);
System.out.println (String.format("The driver's annual salary is $%.2f", + salary));
{
if (violation == 1)
System.out.println("\nThe type of traffic violation the driver received: Red Light");
else if (violation == 2)
System.out.println("\nThe type of traffic violation the driver received: Speeding");
else if (violation == 3)
System.out.println("\nThe type of traffic violation the driver received: Red Light & Speeding");
}
System.out.println (String.format("The amount of fines that will be assessed is $%.2f", + fines));
}//end disp
}//end class FinFines_
:ここでは赤
が私のコードであるときに、ドライバは違反...キャッチスピード違反やパッシングの両方の対象とする場合、独自のソリューションを開発ここに問題があります:
私のプログラムの値を入力すると、プログラムは名前や数字を入力しなかったかのように動作します。
:「ドライバーの年俸が評価される罰金の$ 0.00
額は$ 0.00さ
あなたの名前あなたは、路肩に停車ドライバの名前役員
である」私は何を行うことができ、それは
であると言うすべてプログラムが入力値を保持していることを確認しますか?1を押して続行すると、担当者の名前を尋ねるときに最初の行がスキップされます。変数の名前を入力することはできません。 プログラムでこの行をスキップしないようにするにはどうすればよいですか?
「返品0」に問題はありますか?ステートメント?もし私がその声明を含んでいなければ、私のプログラムは動かすことができませんが、私のプログラムがすべての値に0を与えていることを含めて私が心配しています。
'nextLine()'と 'nextInt()'と 'nextDouble()'を混在させる方法についていくつか調べてください。 –
リンクを挿入できますか?私の教授は私にそのように書くように指示したので、それが間違っているかどうかはわかりません。 –
それらを使用することは問題ではありません。入力バッファーに残っている改行文字には注意が必要です。これらはあなたが見る行動を引き起こします。以前の読み込みが改行文字を消費しない場合は、次の読み込みで読み込まれ、入力がないとみなされます。 –