###前提・実現したいこと
CarとTestCarというクラスを使い、車が一直線に道を進んで行くというコードを書かなければなりません。
1 その際に、ユーザーに「これから走行する距離」を聞いてそれを入力してもらいます。
2 次に「車に入れるガソリンの量」を聞き、それを入力してもらいます。
3 車の燃費を22.5m/1gallonとして、「これから走行する距離」に対して、「ガソリンの量」が十分かどうかをチェックし、足りなければ足りるようになるまでユーザーに追加のガソリンを追加してもらいます。
4 車が走った後は、「総走行距離」と「残りのガソリンの量」をユーザーに伝えます。
5 上の流れを何回も繰り返します。
コンストラクターは0パラメーターと1パラメーターのものがあるべきだと書いてあります。
下に書いたコードは色々と試しているうちに混乱してしまったものです。
お手数ではございますが、具体的にどのようなコードになるのかを教えていただけると幸いです。
よろしくお願いいたします。
###発生している問題・エラーメッセージ
TestCarのクラスとCarのクラスをどう繋げたら良いのか理解できておりません。 またどこをどう直せば良いのか混乱しております。
###該当のソースコード
JAVA
1package project1; 2 3import java.util.*; 4 5public class TestCar 6{ 7 public static void main(String[] args) 8 { 9 10 Scanner in = new Scanner (System.in); 11 System.out.println("Please input how far a car goes in miles."); 12 = in.nextDouble(); 13 14 15 Car c1 = new Car(0, 0); 16 17 c1.addFuel(); 18 19 /*double totalFuel = 0; 20 double odometer = 0; 21 double distance = 0; 22 double fuelAdded = 0;*/ 23 24 25 System.out.println("Please input how far a car goes in miles."); 26 distance = in.nextDouble(); 27 28 .drive(distance) 29 30 31 System.out.println("Please input how much fuel you get in gallon."); 32 fuelAdded = in.nextDouble(); 33 34 totalFuel = totalFuel + fuelAdded; 35 36 while ((totalFuel * 22.5) < distance) 37 { 38 System.out.println("Fuel is not enough. Please add more."); 39 fuelAdded = in.nextDouble(); 40 totalFuel = totalFuel + fuelAdded; 41 } 42 43 odometer = odometer + distance; 44 System.out.println("Odometer shows " + odometer + "miles"); 45 46 totalFuel = totalFuel - (distance * (1/22.5)); 47 System.out.println("Remained fuel is " + totalFuel + "gallon"); 48 49 } 50} 51 class Car 52{ 53 private double distance; 54 private double odometer; 55 private double fuelAdded; 56 private double totalFuel; 57 58 59 public Car(double d, double fa) 60 { 61 distance = d; 62 //odometer = 0; 63 fuelAdded = fa; 64 //totalFuel = 0; 65 } 66 67 public double getDistance() 68 { 69 return distance; 70 } 71 72 /*public double getOdometer() 73 { 74 return odometer; 75 }*/ 76 public double getFuelAdded() 77 { 78 return fuelAdded; 79 } 80 81 /*public double getTotalFuel() 82 { 83 return totalFuel; 84 }*/ 85 86 public void addFuel () 87 { 88 totalFuel = totalFuel + fuelAdded; 89 } 90 91 public void drive(double distance) 92 { 93 odometer = odometer + distance; 94 totalFuel = totalFuel - (distance / 22.5); 95 } 96} 97 98
###試したこと
課題に対してアプローチしたことを記載してください
###補足情報(言語/FW/ツール等のバージョンなど)
より詳細な情報