wannabenerden Skrevet 4. mars 2015 Del Skrevet 4. mars 2015 Er på forhånd veldig takknemlig om noen kan hjelpe meg litt med denne her. Først og fremst fra C) og utover (har implementert klassene vha get/set-metodene). Takk for svar. Et firma som driver utleie av kjøretøy har behov for å lagre disse. Firmaet har 3 forskjellige typer kjøretøy: Personbil, motorsykkel og varebil. Dette firmaet har forskjellige garasjer hvor de lagrer kjøretøyene når de ikke er i bruk. Hver garasje har en id og ligger i en bygning som inneholder flere garasjer. For personbil er antall seter, registreringsnummer og årstall viktig. For motorsykler er registreringsnummer og årstall viktig, mens for varebil er registreringsnummer, årstall og antall liter den rommer viktig. Vi definerer følgende klasser: Personbil - Består av antall seter, registreringsnummer og årstall. Motorsykkel - Består av registreringsnummer og årstall. Varebil - Består av antall liter, registreringsnummer og årstall. Garasje - Har en id og inneholder en liste over kjøretøy som er i denne garasjen. Bygning - Har navn og inneholder en liste over garasjer som er i denne bygningen. a) Klassene Personbil, Motorsykkel og Varebil har noe til felles, og vi ønsker å generalisere ved å legge til en ny klasse og introdusere arv. Tegn klassediagram for klassene dine med denne generaliseringen. Du trenger ikke å ta med metoder i diagrammet, men ta med attributtene for klassene. b) Implementer klassene (skriv kode for klassene). Du trenger bare å ha med __init__() og get/set-metoder. c) Lag en metode finnAntall() for Garasjeklassen som vil returnere antall kjøretøy som er lagret i denne garasjen. d) Lag en metode finnIGarasje() for Garasjeklassen som vil returnere sann dersom kjøretøyet finnes i garasjen eller usann dersom den ikke gjør det. Metoden finnIGarasje() tar registreringsnummeret som parameter og bruker dette til å søke etter kjøretøyet. Eksempel på kall på metoden: garasjeobjekt.finnIGarasje("XX99999") e) Lag en metode skrivutAlle() for Bygningklassen som vil skrive ut informasjon om alle kjøretøyene som er lagret i bygningen. f) Lag et test-script som legger inn forskjellige kjøretøy inn i garasjene. Dvs du må opprette, bygninger og garasjer før du legger inn kjøretøyene. g) Utvid test-scriptet med å vise bruk av de forskjellige metodene du har laget i c-e. Lenke til kommentar
Imsvale Skrevet 4. mars 2015 Del Skrevet 4. mars 2015 Er det framgangsmåte eller kode du er ute etter? Mye av dette virker jo ganske åpenbart, men det spørs hvilket nivå du er på. Lenke til kommentar
wannabenerden Skrevet 4. mars 2015 Forfatter Del Skrevet 4. mars 2015 Er det framgangsmåte eller kode du er ute etter? Mye av dette virker jo ganske åpenbart, men det spørs hvilket nivå du er på. Kode, ja. Og ja, jeg er relativt fersk, så det kan godt hende det er ganske åpenbart når man er inne i det. Lenke til kommentar
Imsvale Skrevet 4. mars 2015 Del Skrevet 4. mars 2015 Tja, lettere uten for min del akkurat nå, så får du heller si fra hvis du ennå står fast. Kan hende du har tenkt det ut så langt selv, men du sier ikke noe om det, så. c) Bruk lengden på lista over kjøretøy. d) Sjekk registreringsnummer mot samme for hvert enkelt kjøretøy i garasjen (lista). Her er det nok mange ulike måter å gjøre det på, noen helt sikkert raskere (og som jeg ikke kan ). e) For hver garasje i bygningen, for hvert kjøretøy i garasjen, print utvalgt info. Kan jo prøve å sette det opp slik at du printer kjøretøyet direkte (se __str__). De to siste skulle vel ikke by på så mye problemer, men du får igjen si fra hvis det er noe. Lenke til kommentar
Lock-Aze Skrevet 4. mars 2015 Del Skrevet 4. mars 2015 Går ut ifra at du har kontroll på klassene, denne oppgaven ser nok vanskeligere ut enn den egentlig er (er ganske likt de oppgavene jeg hadde i Python selv, husker de virket omtrent uoverkommelige med første øyekast.) lag en liste med kjøretøy i klassen garasje, som han over sier. Så kan du bare kjøre len(listen) for å få ut antallet kjøretøy i den gitte garasjen. Nesten samme med E: lag en liste over de garasjene som ligger i bygningen, så looper du bare igjennom denne listen og bruker funksjonen for å få ut antall kjøretøy i hver garasje og summerer disse. er bare å kjøre en enkel for loop: for i in listenavn: bilerigarasjen = i.finnAntall() Du får bare spørre hvis du setter deg helt fast. 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å