Praktikum4: OOP ja pärilus: Difference between revisions

From ICO wiki
Jump to navigationJump to search
 
(7 intermediate revisions by the same user not shown)
Line 2: Line 2:
[[Viitetüüpi muutujad CSharp programmeerimiskeeles]]
[[Viitetüüpi muutujad CSharp programmeerimiskeeles]]
=Käsi_hoitud_tegevus=
=Käsi_hoitud_tegevus=
Eelmisel nädalal praktikumis valminud lahendused: http://enos.itcollege.ee/~mposka/CSharp2015/Paevaope/Praktikumid/Praktikum03/
==Ülesanne 1==
==Ülesanne 1==
Klass Ristkyliku leiad eelmise praktikumi lahendusest
*Loo klass Ristkylik
*Loo klass Ristkylik
*Loo konstruktor, mis võtab sisendiks ristküliku pikkuse ja laiuse
*Loo konstruktor, mis võtab sisendiks ristküliku pikkuse ja laiuse
Line 20: Line 22:


==Ülesanne 2==
==Ülesanne 2==
Klassi punkt lahenduse leiad eelmise praktikumi lahendusest
*Loo klass Punkt väljadega x ja y  
*Loo klass Punkt väljadega x ja y  
*Realiseeri järgnevad meetodid:
*Realiseeri järgnevad meetodid:
Line 28: Line 31:


*Loo alamklass Ruumipunkt
*Loo alamklass Ruumipunkt
**kasOnAlgusPunkt
**kaugusTeisestPunktist
Materjal: [https://www.google.ee/url?sa=t&rct=j&q=&esrc=s&source=web&cd=1&cad=rja&uact=8&ved=0CB0QFjAAahUKEwj_jbuf9YfIAhVG83IKHfvgCxA&url=http%3A%2F%2Fwww.kool.ee%2Fvalemid%2F9-1valemid.doc&usg=AFQjCNFp9N5A6diNTWAU5lftAVjkKXudHg&sig2=OTV8CFPs4BwsIe3KBlAFhg&bvm=bv.103073922,d.bGQ Info leiate siit]


==Ülesanne 3==
==Ülesanne 3==
*Loo klass Kompleksarv
*Realiseeri meetod liida, mis võimaldab liita ühele kompleksarvule teise
*Realiseeri meetod lahuta, mis võimaldab ühest kompleksarvust lahutada teise
*Loe kompleksarvu kohta [[https://et.wikipedia.org/wiki/Kompleksarv siit]]
=Käsi_mittehoitud_tegevus=
Luua klass Mootorsõidk
Luua klass Mootorsõidk


Line 66: Line 66:
'''Praktikumi videosalvestus asub [http://echo360.e-uni.ee/ess/echo/presentation/e6a9520d-eba8-46d8-a7d0-a844d60aae13 siin]'''
'''Praktikumi videosalvestus asub [http://echo360.e-uni.ee/ess/echo/presentation/e6a9520d-eba8-46d8-a7d0-a844d60aae13 siin]'''


==Mul_on_igav_teeks_ka_midagi==
 
Luu klass Veoauto, mis pärineb klassist Auto
Luu klass Veoauto, mis pärineb klassist Auto
*Muutujad
*Muutujad
Line 78: Line 78:
-->
-->


==Mul_on_igav_teeks_ka_midagi==


Luu klass Auto, mis pärineb klassist Mootorsõiduk
Luu klass Auto, mis pärineb klassist Mootorsõiduk
Line 91: Line 89:
**Hetkeseis() tagastab tekstina auto hetkeseisu (uksed avatud, sisab või sõidab kiirusega x)
**Hetkeseis() tagastab tekstina auto hetkeseisu (uksed avatud, sisab või sõidab kiirusega x)
**ToString() panna väljastama Hetkeseis() poolt tagastatavat teksti
**ToString() panna väljastama Hetkeseis() poolt tagastatavat teksti
Luu klass Veoauto, mis pärineb klassist Auto
==Käsi_mittehoitud_tegevus==
Luua klass Veoauto, mis pärineb klassist Auto
*Muutujad
*Muutujad
**Kallutab (vaikimisi false)
**Kallutab (vaikimisi false)

Latest revision as of 15:56, 21 September 2015

Teooria

Viitetüüpi muutujad CSharp programmeerimiskeeles

Käsi_hoitud_tegevus

Eelmisel nädalal praktikumis valminud lahendused: http://enos.itcollege.ee/~mposka/CSharp2015/Paevaope/Praktikumid/Praktikum03/

Ülesanne 1

Klass Ristkyliku leiad eelmise praktikumi lahendusest

  • Loo klass Ristkylik
  • Loo konstruktor, mis võtab sisendiks ristküliku pikkuse ja laiuse
  • Klassis olevad väljad on kõik privaatsed
  • Loo meetodid
    • arvutaPindala
    • arvutaYmbermoot
    • kasOnVordsed - kontrollib kas kaks ristkülikut on omavahel võrdsed
    • kasOnRuut

Loo alamklass Risttahukas ning realiseeri järgmised meetodid

  • arvutaPindala
  • arvutaRuumala
  • arvutaYmbermoot
  • kasOnVordsed
  • kasOnKuup

Ülesanne 2

Klassi punkt lahenduse leiad eelmise praktikumi lahendusest

  • Loo klass Punkt väljadega x ja y
  • Realiseeri järgnevad meetodid:
    • kaugusNullist - tagastatakse kaugus nullpunktist
    • teataAndmed - kirjutatakse välja punkti koordinaadi
    • kaugusTeisestPunktist - meetodile on võimalik kaasa anda teine punkt ning tagastatakse kaugus sellest punktist
    • kasOnAlgusPunkt - kontrollitakse, kas tegemist on koordinaatide alguspunktiga(0,0)
  • Loo alamklass Ruumipunkt
    • kasOnAlgusPunkt
    • kaugusTeisestPunktist

Materjal: Info leiate siit

Ülesanne 3

Luua klass Mootorsõidk

  • Muutujad
    • Kiirus (vaikimisi 0)
    • MaxKiirus (vaikimisi 20)

Konstruktor(int maxkiirus) – määratakse max kiirus

  • Meetodid
    • Kiirenda() lisab kiirusele 10
    • Kiirenda(int kiirus) lisab kiirusele parameetri kiirus väärtuse ja kontrollib kas max kiirus on käes. Kui nii siis kiirus sellest suuremaks ei muutu.
    • Stop() kiirus läheb nulli
    • Hetkeseis() tagastab tekstina mootorsõiduki hetkeseisu (sõidab kiirusega x või seisab)
    • ToString() panna väljastama Hetkeseis() poolt tagastatavat teksti


Luu klass Auto, mis pärineb klassist Mootorsõiduk

  • Muutujad
    • Uksed avatud (vaikimisi false)

Konstruktor annab baasklassi konstruktori abil ette max kiiruseks 100

  • Meetodid
    • AvaUksed() sõiduk peatatakse, uksed avatakse
    • SulgeUksed() sulgeb uksed
    • Kiirenda(int kiirus) kirjutab üle baasklassi meetodi, kontrollib enne kiirendamist kas uksed on avatud ei saa kiirendada.
    • Hetkeseis() tagastab tekstina auto hetkeseisu (uksed avatud, sisab või sõidab kiirusega x)
    • ToString() panna väljastama Hetkeseis() poolt tagastatavat teksti

Käsi_mittehoitud_tegevus

Luua klass Veoauto, mis pärineb klassist Auto

  • Muutujad
    • Kallutab (vaikimisi false)

Konstruktor annab baasklassi konstruktori abil ette max kiiruseks 70

  • Meetodid:
    • HakkaKallutama() sõiduk peatatakse, hakkab kallutama
    • Kiirenda(int kiirus) kontrollida kas toimub kallutamine kui nii siis ei kiirenda kui kallutamist ei toimu siis kiirendada
    • Hetkeseis() tagastab tekstina auto hetkeseisu (kallutab, uksed avatud, sisab või sõidab kiirusega x)
    • ToString() panna väljastama Hetkeseis() poolt tagastatavat teksti