Gå til innhold

Hjelp til innlevering.


Anbefalte innlegg

Ok, hvis moderator syns at dette er feil, så er det greit at tråden stenges.

 

Til problemet, har akkurat startet studiet på datafag ved HiTos (Tromsø) og vi har fått en innleverings oppgave i java. Nå har det seg slik at læreren et noen hakk over oss noobs når det gjelder masse oppi knotten (smart fyr). Han har forelest halve java boka (Programmering i java, 3. utgave, Else Lervik & Vegard B. Havdal) som ikke er det spøtt bedre når det gjelder å forstå for en stakkars noob (meg).

Prøver meg derfor på et lite rop om hjelp her på forumet, hvis noen gidder da, hvis ikke så er det greit. Da kan jeg bare grave meg ned, for jeg skjønner ikke så veldig mye av oppgave teksten.

 

"Paster" inn oppgaven her:

 

 

Obligatorisk oppgave i programmering

 

Den private Yrkesskolen A.S. ønsker å holder rede på elevene i en gruppe som lærer om drift av datamaskiner. Du skal lage programmer som hjelper til med dette.

 

Oppgave 1

Lag en personklasse som har følgende objektvariable:

• Personnummer

• Fornavn

• Mellomnavn

• Etternavn

• Gateadresse til eleven

• Postnummer

• Poststed

• Alder på eleven

• Kjønn på eleven

Personklassen skal ha finn metoder for å få tak i verdien til alle objektvariable som klassen inneholder.

Den skal ha metoder for å forandre alle verdier utenom personnummer.

Videre skal den ha en konstruktør. Denne tar et personnummer som argument og tilordner det til objektvariabelen for personnummer.

Metodene som setter verdier skal sjekke den verdien den får som argument og returnere verdien true om alt er greit og verdien false om den finner feil. Dersom alle mulige verdier er lovlige skal metoden alltid returnere true.

 

Oppgave 2

Du skal lage metoden public String toString(). Denne metoden skal skrive ut alle data i personklassen på fornuftig vis. Merk spesielt at mellomnavn ikke trenger å ha noen verdi (ikke alle personer har mellomnavn).

 

Oppgave 3

Du skal nå lage en klasse med en metode som leser alle persondata inn fra bruker ved hjelp av dialog bokser.

Hvis det som leses inn ikke er rett skal en ny dialogboks komme opp slik at bruker får en ny sjanse til å lese inn dataene.

Først skal personnummer leses inn. Personnummer må bestå av 11 siffer. Er personnummer rett skal ett personobjekt opprettes.

Deretter skal de andre dataene leses inn. Hvis noe er feil skal bruker ha en sjanse til å lese inn feltet på nytt. For mellomnavn må bruker få opp en dialogboks der det er mulig å velge om mellomnavnet skal leses inn eller ikke.

Når dataene for en elev er lest inn skal du bruke toString fra oppgave 2 for å skrive ut innholdet i konsollvinduet.

 

Oppgave 4

Du skal nå utvide klassen fra oppgave 3 til å holde en tabell som har elementer for alle elever i gruppen. Gruppen kan ikke være større enn 20 elever. Elementene i tabellen skal være objekter av den typen du laget i oppgave 1.

Den skal ha en public static void main(String[] args) metode. Første element i args skal være antall elever i gruppen. Metoden skal sjekke at elementet finnes og at det er et tall mellom 1 og 20. Den skal så bruke metoden du skrev i oppgave 3 til å lese inn data for alle elevene i klassen.

 

Oppgave 5

Dersom gruppen av elever er på mindre enn 3 elever står gruppen i fare for å bli nedlagt. Du skal nå lage klasser som tegner et surt fjes om det er færre enn 3 elever i gruppen og ett smilende fjes ellers. Tegningen skal komme opp når dataene for alle elevene i gruppen er lest inn.

 

 

Ps. Det er vel ikke fusk å be om hjelp??? Dette er ikke en karaktergivende oppgave, men bestått/ikke bestått.

 

Takker for all hjelp jeg kan få.

Lenke til kommentar
Videoannonse
Annonse
' date='28/09/2004 : 00:48'] , for jeg skjønner ikke så veldig mye av oppgave teksten.

 

Skrev jeg noe sted at jeg ba andre om å gjøre oppg. for meg??????????

Spurte pent og høflig om noen som kunne hjelpe meg med å tyde oppgaveteksten, da jeg ikke er helt med på hva læreren vil.

Som sagt så er jeg noob når det gjelder programmering, og henvendte meg derfor til forumet for å få litt assistanse.

 

Spør dere aldri om hjelp til noe når det er noe dere ikke helt skjønner???? Feks, hvis dere får feil på bilen, løse en matte oppg. el. liknende??? Eller er dere supermennesker dere da, som kan alt???

Jeg for eks. kan være flink på mange områder bla. biler. Fikser min egen bil og hjelper venner som får feil. Kan tegne, så når venner spør om jeg kan tegne et motiv til dem så gjør jeg det.

Syns det er litt dårlig å komme med en slik kommentar om at jeg skal snylte på andre ansatte i arbeidslivet etter utdannelsen, det har aldri vært planen. Jeg begynte på denne linja fordi jeg syns det er morro å holde på med data, programmering var nytt for meg og tilfeldigvis kom jeg over dette forumet inne på HW om programmering og tenkte at det var noen som hadde noen trick på lager. Men men, hvis det kun er kun forbeholdt folk med kunnskaper her inne, så trekker jeg meg stilt og rolig ut herfra igjen.

 

Mvh. n00ben

Lenke til kommentar

Jeg tenkte jeg kunne gi deg noen tips ;)

 

finn metode:

public String finnFornavn() {

return fornavn ;

}

 

Endre fornavn(Her kan du jo evnt. sjekke om navnet har over 2 bokstaver o.l.):

public boolean nyttFornavn(String navn) {

fornavn = navn ;

return true ;

}

 

Konstruktør:

public personklasse(int pnr) {

personnummer = pnr ;

}

 

 

Kansje ikke så mye hjelp men, jeg orker ikke gjøre hele oppgaven :grin:. Og det lærer du jo ikke noe av heller.

Lenke til kommentar

Tusen takk for tipset.

 

Tenkte jeg skulle få dette ut i et bilde (ramme) med knapper, er dette metoden å gjøre det, slik du har beskrevet??

 

"Paster" inn litt til jeg, dit jeg har kommet til nå. Har kjørt javac på på fila, så dn er grei. Hva skal jeg skrive mer for å kjøre dette i et vindu. Har sittet å forsket litt i boka, men som sagt så skjønner jeg ikke bære av hva den forklarer, synes den virker rotete.

 

Here is my work so far:

 

 

 

class person {

private long pnr;

private String navn;

private String mellomnavn;

private String etternavn;

private String gateadr;

private int postnr;

private String poststed;

private int alder;

private String kjønn;

 

 

public void Person(long startPnr, String startNavn, String startMellomnavn, String startEtternavn, String startGateadr, int startPostnr, String startPoststed, int startAlder, String startKjønn)

{

pnr = startPnr;

navn = startNavn;

mellomnavn = startMellomnavn;

etternavn = startEtternavn;

gateadr = startGateadr;

postnr = startPostnr;

alder = startAlder;

kjønn = startKjønn;

}

 

public long finnPnr()

{

return pnr;

}

 

public String finnNavn()

{

return navn;

}

 

 

public String finnMellomnavn()

{

return mellomnavn;

}

 

 

public String finnEtternavn()

{

return etternavn;

}

 

public String finnGateadr()

{

return gateadr;

}

 

 

public int finnPostnr()

{

return postnr;

}

 

 

public String finnPoststed()

{

return poststed;

}

 

public int finnAlder()

{

return alder;

}

 

public String finnKjønn()

{

return kjønn;

}

 

public String toString()

{

return "personnummer: " + pnr + ", navn: " + navn + ", mellomnavn: " + mellomnavn + ", etternavn: " + etternavn + ", gateadr: " + gateadr + ", postnr: " + postnr + ", poststed: " + poststed + ", alder: " + alder + ", kjønn: " + kjønn;

}

}

 

 

 

Hva bør jeg skrive mer for å få dette til å kjøre i et vindu hvor man kan velge om jeg skriver inn navn, personnr. osv. at det er true eller false??

Lenke til kommentar

nå har ikke jeg lest igjennom hele oppgaven, men det vriker som om konstruktøren kun skal ta imot personnummer.

 

Vil du ha en enkel gui kan du jo bare ta JOptionPane. Der kan du ha et tekst felt hvor brukeren kan taste inn, det blir kun et tekstfelt i hver så du må lage ny for alt som skal tastes inn. Dette er kanskje ikke den mest "proffe" måten å gjøre det på, men veldig enkel.

 

Får å teste dette lager du bare en ny test klasse, med main metode hvor du også legger all gui´en.

Lenke til kommentar

hva er vitsen med å gjøre alle medlemmene private for så å ha public funksjoner for å hente de? det er altfor mange som gjør det i c++ også. man får ikke bedre encapsulation ved å ha private medlemmer for så å ha tilsvarende get/set_medlem metoder. du gjør implementasjonen like mye synlig som om du skulle hatt alle medlemmene public, du lager bare andre navn på de. noen ganger er det helt greit å ha public medlemmer, eller bruke struct hvis du driver med c++. det er nå bare min mening iaf

Lenke til kommentar

Dette er måten å gjøre det ifølge boka vi er "pålagt" å bruke på skolen.

Persolig syns jeg boka er siiiiinnnsykt dårlig å forklare "how too". Har funnet noen bøker som jeg har lasta ned som jeg skal se gjennom. Kanskje de forklarer bedre hvordan jeg skal gå fram.

Ser dere, er ikke så skadelig å hjelpe en stakkar, hehe. :p

Lenke til kommentar

teddyert, hele meningen med private er å gjemme implamentasjonen for brukerne av klassen. men hvis du setter alle til private og bare har get/set metoder forsvinner det som er meningen med private. da kan du like gjerne ha public medlemmer. og det gjør alt for mange feil etter min mening

Lenke til kommentar

Ok, får prøve å sette meg ned å tyde boka på nytt hvordan JOptionPane skal brukes.

Kan forklare hvordan boka fungerer hvis det er noen som ikke har vært borti den før. Forklaring står på en side og eksempel på forklaringa står enten 10 sider foran forklaringen eller så er det 10 sider etter forklaringen. Er det rart jeg sliter??

Hvis det er noen som er inne på tanken å kjøpe den, styr unna, kan føre til galskap. :D

Lenke til kommentar

Han vi har til lærer har celebral parece (usikker på skrivemåte) og han bruker Power Point når han foreleser. De notatene han viser der er hentet fra nettsiden til boka og de er like tungfordøyelig som boka selv, så da er jeg tibake til utgangspunkter. Selv om han har CP, så er det ikke noe i veien med topplokket, ekstremt smart fyr. Men du kan kanskje tenke deg hvordan et smart menneske som ikke har noen form for pedagogisk utdanning er :hmm: .

Hans nivå på forklaringer ligger laaaaaaaangt over hodet mitt, derfor har jeg prøvd å laste ned de forelesnings notatene, for så å lese gjennom dem. Men neida, like gresk.

 

Her er linken til notatene. Bedøm selv.

Lenke til kommentar
' date='28/09/2004 : 14:11'] Skrev jeg noe sted at jeg ba andre om å gjøre oppg. for meg??????????

Spurte pent og høflig om noen som kunne hjelpe meg med å tyde oppgaveteksten, da jeg ikke er helt med på hva læreren vil.

Du sa ikke noe veldig spesifikt om hva du ville ha hjelp til, så at noen tolket det slik at du ville at noen skulle gjøre hele oppgaven for deg er ikke så rart. Det er det nemlig en del som gjør her på forumet, men de pleier sjelden å innrømme at det er en skoleoppgave de vil ha hjelp til, slik du har gjort her.

 

Jeg har ingen problemer med at folk spør om hjelp til skoleoppgaver. Men jeg hadde foretrukket at de fleste hadde gjort som deg, og ikke prøvd å skjule det...

Lenke til kommentar

jeg skjønner det, men dette er jo en helt vanlig måte å gjøre det på. Det som er litt spesielt her er jo at det skal finnes set og finn metoder til alle attributtene.

 

Da kan du jo også sette visse begrensninger i metoden som skal f.eks sette verdi til attributtene.

Endret av TeddyErt
Lenke til kommentar

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 konto

Logg inn

Har du allerede en konto? Logg inn her.

Logg inn nå
  • Hvem er aktive   0 medlemmer

    • Ingen innloggede medlemmer aktive
×
×
  • Opprett ny...