Dumpton Skrevet 14. april 2002 Rapporter Del Skrevet 14. april 2002 sliter litt med følgende oppgave: noen som kan hjelpe? Vi skal lage en klasse som representerer vannflasker. En flaske er kjennetegnet med identifikasjon (tegnstreng), volum (f.eks. 3 liter), og vanninnhold (f.eks. 1 liter). Vanninnholdet kan ikke overstige volumet på flasken. Når en flaske opprettes skal den være tom. Følgende operasjoner på vannflasker er mulige: Fylle en flaske helt full Tømme en flaske Helle alt vannet fra en flaske over i en annen. Hvis det ikke er plass til alt vannet i den andre flasken, skal vi helle til den er full. Vi skal altså alltid helle så mye vi kan, enten til en flaske går tom, eller til den andre blir full! a) Lag en klasse som representerer slike flasker. B) Lag et lite java-program som bruker flaskeklassen til å opprette en 2-liters flaske og en 7-liters flaske. fylle 7-liters flasken helle fra 7-liters flasken til 2-liters flasken skrive ut innholdet i hver av flaskene. Innholdet i flaskene skal skrives ut etter hver operasjon. Lenke til kommentar
MailMan13 Skrevet 14. april 2002 Rapporter Del Skrevet 14. april 2002 Jaja :smile:... da får du lage deg en vannflaske klasse da... Code: public class VannFlaske{ float innhold; float volum; String id; public vannflaske(String id, float volum) { this.id = id; innhold = 0; this.volum = volum; }...osv} Hvis du sier hva du har problemer med, så kan jeg hjelpe, vær litt mer spesifikk. [ Denne Melding var redigert av: MailMan13 på 2002-04-14 14:08 ] Lenke til kommentar
Dumpton Skrevet 14. april 2002 Forfatter Rapporter Del Skrevet 14. april 2002 Må ærlig innrømme at jeg ikke er særlig god på dette. men prøver å øære megh litt da... !! Har forstått det sånn at jeg må ha to klasser. En vannflaske klasse og en programklasse. Flaskene skal opprettes med 3 parametre: Et flaskenavn; eks tolitersflasken,syvlitersflasken. Et fast volum: eks 2 , 7 Og et innhold: ved oprettelse =0 men som jeg kan gjøre beregninger på ved å flytte innhold mellom de to flaskene jeg oppretter... Hvis syvliteren skal helles over i toliteren, så skal evnt "oveddsvæske" fortsatt være i syvliteren... og omvendt....... sliter litt her...... Lenke til kommentar
Dumpton Skrevet 14. april 2002 Forfatter Rapporter Del Skrevet 14. april 2002 ovedsvæske----->Overskuddsvæske Lenke til kommentar
Dumpton Skrevet 14. april 2002 Forfatter Rapporter Del Skrevet 14. april 2002 ovedsvæske----->Overskuddsvæske Lenke til kommentar
MailMan13 Skrevet 14. april 2002 Rapporter Del Skrevet 14. april 2002 Ok... skjønner du er fersk på objektorientering. Du må ha to klasser, en med programmet i og en vannflaske. Vannflasken skal ha en konstruktor som tar imot id og volum som argumenter (vist i forrige innlegg), videre må den ha metoder for å fylle flasken osv... metoden som overfører innhold mellom flasker skal ta imot et flaske objekt som argument og fylle alt eller så mye så mulig av innholdet over i den. Altså, du trenger disse variablene og metodene i flaskeklassen: Code: public float volum;public float innhold;String id;public void vannflaske(String id, float volum){} // constuctorpublic void fyll(){} //fyller flasken helt opppublic void fyll(float volum){} fyller antall liter som er oppgittpublic void tom(){} //tømmer flaskepublic void overfor(Flaske flaske){} //helle over mellom flasker Hjalp dette? [ Denne Melding var redigert av: MailMan13 på 2002-04-14 14:34 ] Lenke til kommentar
Dumpton Skrevet 14. april 2002 Forfatter Rapporter Del Skrevet 14. april 2002 Jeg er klar over hvilke metoder jeg må ha men problemet er hvordan jeg skal klare å "huske" hvor mye innhold som er i hvilken flaske... Og så må jeg vel ha en meny i programklassen som lar meg velge hvilke metoder jeg skal utføre.. Kan denne lages som en switch? Lenke til kommentar
MailMan13 Skrevet 14. april 2002 Rapporter Del Skrevet 14. april 2002 Innholdet lagrer du i en instansvariabelen innhold i flaskeklassen, deklarerer du den 'public' får du tilgang til den med '<flaske-objekt>.innhold' Lenke til kommentar
Dumpton Skrevet 14. april 2002 Forfatter Rapporter Del Skrevet 14. april 2002 Jeg får sette meg ned og prøve og feile litt til.. helt til jeg denger laus på veggen av frustrasjon!!! hehe takker for svar Lenke til kommentar
MailMan13 Skrevet 14. april 2002 Rapporter Del Skrevet 14. april 2002 Får du problemer kan du legge ut kildekoden, så skal vi nok få orden på det. Lenke til kommentar
Dumpton Skrevet 14. april 2002 Forfatter Rapporter Del Skrevet 14. april 2002 // // Flaske-klassen // public class Flaske { private int volum; private int innhold; private String flaskenavn; public Flaske (String flaskenavn, int volum) { this.flaskenavn = flaskenavn; innhold =0; this.volum = volum; } public int fyll (int fyllliter) { innhold=volum; return innhold; } public int tom () { innhold =0; } public int overfor() { //her må innholdet fra en flaske over i en annen flaske på et vis..... :smile: } public int getInnhold () { return innhold; }} *************************************************** // //Vannflasker.java // import Flaske; public class Vannflasker { public static void main (String [] args) { Flaske toliter = new Flaske ("Toliteren", 0,2); Flaske syvliter = new Flaske ("Syvliteren", 0,7); int valg; switch (valg) { case '1': syvliter.fyll(); break; case '2': her skal det overføres mellom flaskene.... case '3': syvliter.getInnhold(); toliter.getInnhold(); break; } Noe sånn som dette?? Er det noe å arbeide videre med eller er det helt på trynet? sliter litt nå.... takknemlig for hjelp....!! Lenke til kommentar
Dumpton Skrevet 15. april 2002 Forfatter Rapporter Del Skrevet 15. april 2002 Noen "javafolk" som kan hjelpe? Lenke til kommentar
MailMan13 Skrevet 15. april 2002 Rapporter Del Skrevet 15. april 2002 'overfor' metoden din må ta imot en flaske som argument, slik at du har noe å overføre til... så må innhold og volum deklareres public slik at du vet hvor mye vann du kan overføre mellom dem.. Lenke til kommentar
MailMan13 Skrevet 15. april 2002 Rapporter Del Skrevet 15. april 2002 Quote: On 2002-04-15 18:34, MailMan13 skrev:'overfor' metoden din må ta imot en flaske som argument, slik at du har noe å overføre til... så må innhold og volum deklareres public slik at kan finne ut hvor mye vann du kan overføre mellom dem..Ellers ser det greit ut. Lenke til kommentar
Dumpton Skrevet 15. april 2002 Forfatter Rapporter Del Skrevet 15. april 2002 oki da nærmer det seg vel en løsning: takker så mye for hjelpen... Ps! Når jeg kjører jbuilder får jeg feilmld "unable to start runtime due to incomplete configuration" vet du hva det kan være? kjører xp pro og jbuilder 5 (får samme mld med jbuilder 6) Lenke til kommentar
MailMan13 Skrevet 16. april 2002 Rapporter Del Skrevet 16. april 2002 Samme hvis du komplilerer fra kommando-prompten? Last ned j2sdk 1.4 og prøv med den Lenke til kommentar
Dumpton Skrevet 16. april 2002 Forfatter Rapporter Del Skrevet 16. april 2002 Det ordna seg................ Jbuilder er bare litt "dum" av og til..... (Når det bare er EN klasse er det vanskelig å vite hvilken som skal brukes...!!!!!) :smile: Lenke til kommentar
WooooHa ! Skrevet 18. april 2002 Rapporter Del Skrevet 18. april 2002 Quote: (...) så må innhold og volum deklareres public slik at du vet hvor mye vann du kan overføre mellom dem.. Jeg ville beholdt innhold og volum private. Bruk heller public int getInnhold() og lag en public int getVolum() Har egentlig ingen betydning, men det er 'riktigere' med tanke på objekt-orienterings-tankegangen dere skal lære. Tror faktisk jeg har gjort akkurat samme oppgave for en del år siden ! mvh KA http://andersen.homeip.net Lenke til kommentar
eivindbirkeland Skrevet 4. mai 2002 Rapporter Del Skrevet 4. mai 2002 Interessant oppgave, synes jeg... Sliter du enda - eller har du fått nok hjelp? Mvh. Eivind. Lenke til kommentar
Anbefalte innlegg
Opprett en konto eller logg inn for å kommentere
Du må være et medlem for å kunne skrive en kommentar
Opprett konto
Det er enkelt å melde seg inn for å starte en ny konto!
Start en kontoLogg inn
Har du allerede en konto? Logg inn her.
Logg inn nå