Avatar billede marika Nybegynder
09. oktober 2003 - 13:51 Der er 19 kommentarer og
1 løsning

En dum tøs, der prøver at lære java programmering på uni. HJÆLP

Dette er min opgave.
Har prøvet lidt, men er ikke helt så god til det med at få den til at gøre ting.
Giv mig lige et forslag til hvordan programmet kan køre:
Dette er opgaven:Implement a class Car with the followong properties. A car has a ceintain fuel efficiency( measured in mile/gallon or liters/km-pick one) and certain amount of fuel in the gas tank. The efficiency is specified in the contrutor, and the initial fuel level is 0. supply a method DRIVE that simulates driving the car for a certain distance, reducing the fuel level in the gas tank, and method GETGAS, returning the current fuel level and ADDGAS, to tank up.
hjælp
Avatar billede mikkelbm Nybegynder
09. oktober 2003 - 13:55 #1
Prøv at gi' os noget af det du har lavet. Så kan vi hjælpe dig med at bygge videre, istedet for at det hele bliver lavet for dig.
Avatar billede phliplip Nybegynder
09. oktober 2003 - 14:22 #2
public class Car {
  private double efficiency; // 10 liter pr. km
  private double fuel;

  public Car(ef, fu) {
    efficiency = ef;
    fuel = fu;
  }

  public void addGas(gas) {
    fuel += gas;
  }

  public double getGas() {
    return fuel;
  }

  public void drive(km) {
    if((efficiency*fuel) < km) {
      System.out.println("Der er ikke nok benzin i tanken til at køre "+km+"km");
    } else {
      System.out.println("Vi kører lige "+km+"km");
      double kanKoere = fuel*effeciency;
      double kmTilbage = kanKoere-km;
      double benzinTilbage = kmTilbage/effeciency;
      fuel = benzinTilbage;
    }
  }

  public static void main(String[] args) {
    Car car1 = new Car(10, 0); // Laver et car-objekt og sætter efficiency til 10 km/liter
    System.out.println("Der er "+car1.getGas()+" liter benzin tilbage i tanken");
    System.out.println("Vi fylder lige benzin på svinet");
    car1.addGas(40); // Fyld 40 liter benzin på bilen
    car1.drive(20); // kør 20 km
    System.out.println("Der er "+car1.getGas()+" liter benzin tilbage i tanken");
  }
}
Avatar billede phliplip Nybegynder
09. oktober 2003 - 14:23 #3
Har ikke testet det ;) Du må selv lige fejl finde hvis det ikke virker !
Avatar billede arne_v Ekspert
09. oktober 2003 - 22:44 #4
public class Car {
    private double gas;
    private double fuelefficiency;
    public Car(double fe) {
        // 2 linier
    }
    public void drive(double dist) {
        // 1 linie
    }
    public double getGas() {
        // 1 linie
    }
    public void addGas(double g) {
        // 1 linie
    }
    public static void main(String[] args) {
        Car mycar = new Car(12);
        mycar.addGas(50);
        mycar.drive(480);
        System.out.println(mycar.getGas());
    }
}

output:

10.0

(hvilket er korrekt)

Og det er med vilje at jeg har fjernet de 5 linier - du skal jo også
lære noget.

Men nu har du ihvertfald et fornuftigt skelet.
Avatar billede phliplip Nybegynder
09. oktober 2003 - 23:13 #5
LoL !

Havde lige glemt typerne på variablerne ;)

public Car(double ef, double fu) {
public void addGas(double gas) {
public void drive(km) {

arne_v: Er det ikke ret det samme som jeg har skrevet !?
Avatar billede phliplip Nybegynder
09. oktober 2003 - 23:14 #6
Det er sent.. når jeg skriver variablerne.. så mener jeg parametrene :)
Avatar billede phliplip Nybegynder
09. oktober 2003 - 23:14 #7
Det er åbentbart MEGET sent for mig :(

public void drive(double km) {
Avatar billede arne_v Ekspert
10. oktober 2003 - 07:56 #8
Der er et par forskelle:

1)  Det er korrekt Java syntax

2)  Min constructor matcher opgave formuleringen
Avatar billede phliplip Nybegynder
10. oktober 2003 - 08:10 #9
1) Giv mig lige konkrete eksempler på at min kode ikke er korrekt Java syntax.. foruden de fejl jeg selv har påpeget

2) Og hvorfor gør min ikke det !?

Ikke fordi jeg skal være bussemand.. men jeg er lige begyndt på Java i forbindelse med min Datamatiker uddannelse og har kun programmeret det en måneds tid ! Så det ville være dejligt med noget input fra andre sider ;)
Avatar billede erikjacobsen Ekspert
10. oktober 2003 - 08:15 #10
1) public Car(ef, fu) {
  Du mangler typerne på parametrene. Navnene er ikke nok
2) public void addGas(gas) {
  samme
3) public void drive(km) {
  samme

det var lige hvad jeg kunne se i dit indlæg, phliplip
Avatar billede arne_v Ekspert
10. oktober 2003 - 08:17 #11
1) Du har selv fundet fejlene. Men det havde du jo ikke da jeg postede.

2) "The efficiency is specified in the contrutor, and the initial fuel level is 0"
  siger at liter benzin ikke er argument til constructor men at værdien skal
  sættes til nul.
Avatar billede erikjacobsen Ekspert
10. oktober 2003 - 08:21 #12
Nåh, ja, det har du jo også, phliplip. Jeg så kun det første indlæg. Så er der
kun tilbage at stave efeei..., øh effeci... øh, efficiency (JA) korrekt ;))
Avatar billede phliplip Nybegynder
10. oktober 2003 - 08:57 #13
Arne v: Ja ok :) Men nu var det jo bare lige for eksemplet skyld ! Men fair nok !

Erikjacobsen: Hmmm... kigger og kigger... jeg mener at huske at jeg copy-n-pastede lige præcis det ord ;) Og kan da heller ikke finde nogen fejl.. så skal ordet være stavet forkert i opgaven !

Men ellers så kan jeg kun sige til marika... klø på :) Og jeg synes selv at sproget er spændende !
Avatar billede arne_v Ekspert
10. oktober 2003 - 09:09 #14
Jeg tror at Erik's skape øje har set noget inde i drive metoden ...
Avatar billede phliplip Nybegynder
10. oktober 2003 - 10:32 #15
Ups :D Min fejl:

  public void drive(km) {
    if((efficiency*fuel) < km) {
      System.out.println("Der er ikke nok benzin i tanken til at køre "+km+"km");
    } else {
      System.out.println("Vi kører lige "+km+"km");
      double kanKoere = fuel*efficiency;
      double kmTilbage = kanKoere-km;
      double benzinTilbage = kmTilbage/efficiency;
      fuel = benzinTilbage;
    }
  }
Avatar billede erikjacobsen Ekspert
10. oktober 2003 - 11:17 #16
;) Strengt taget mente jeg heller ikke ordet skulle staves korrekt, men blot at
den anvendte stavemåde skulle være konsistent.
Avatar billede phliplip Nybegynder
10. oktober 2003 - 12:30 #17
Ja ja.. I get it !
Avatar billede arne_v Ekspert
10. oktober 2003 - 21:57 #18
Onde tunger siger at compilere er lige så slemme som dansk lærerer.

:-)
Avatar billede marika Nybegynder
11. oktober 2003 - 10:08 #19
mange tak for væres hjælp, jeg vender nok tilbage, jeg har lært meget af det. Tusinde tak de Herre
Avatar billede marika Nybegynder
11. oktober 2003 - 10:10 #20
Jeg er desværre ordblind og det gjorde min kæreste mig lige opmærksom på undskyld jeg mener ikke væres men jeres selvfølgelig
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester