struktogramm aufgaben LOESUNGEN - informatikzentrale.de · Aufgaben Struktogramme...

Preview:

Citation preview

AufgabenStruktogramme(informatikZentrale)–Lösungen(17.11.2017)

1

LosungenStruktogrammeHinweise:

WirverwendenfürdieAufgabendasProjekt„Girokonto“(Abi-Projekt2014,Aufgabe2.3(Girokonten,Kundenbetreuer…)).AlleAufgabensindinderKlasseKundenbetreuerdurchzuführen.

+++Aufgaben+++

BitteIMMERZUERSTeinStruktogrammanfertigen,bevorSiezuprogrammierenbeginnen!

AlleprogrammiertenMethodenaufkorrekteLauffähigkeitprüfen(viaStartklasse).

StruktogrammundProgrammcodeinein(neues,altes?)Vorlagendokumenteinfügen(Codeals"code"formatieren),korrekteÜberschriftenzuweisen,zwischendurchabspeichern.

-----(A)Einsteigeraufgaben-----A1)ProgrammierenSieeineMethodedatenAusgeben(kontoinhaber:Kontoinhaber):void,diedieDateneinesKundenausgibtinForm

HeiniMüller-Kontostand:3000Euro

A2)WieA1,nurwirdderStringnichtAUSGEGEBEN,sondernZURÜCKGEGEBEN.DieMethodeheißtdanndatenZurueckgeben(kontoinhaber:Kontoinhaber):String

odermitlokalerVariable,diedenRückgabewertspeichert:

AufgabenStruktogramme(informatikZentrale)–Lösungen(17.11.2017)

2

A3)ProgrammierenSieeineMethodeanzahlInhaber():int,diedieAnzahldervoneinemBetreuerbetreutenKontoinhaberzurückgibt.

A4)ProgrammierenSieeineMethodelisteMeinerBetreutenKunden():ArrayList<Kontoinhaber>,dieeineListeallerbetreutenKundenZURÜCKGIBT.

(WennSiedasinderStartklasseausprobieren,benötigenSiefürdieAnzeigeeineforeach-Schleife.)

-----(B)Einfacheif-Verzweigungen------B1)ProgrammierenSieeineMethodeheisstKundeMetz(kontoinhaber:Kontoinhaber):boolean,dieprüft,obderNachnameeinesKunden"Metz"ist.ZurErinnerung:VerwendenSiebeiString-Vergleichennicht"==",sondern"equals(…)",alsobspw.kundename.equals("Metz")

Möglichkeit1:LokaleVariableverwenden,diedenRückgabewertspeichert:

Möglichkeit2:RückgabedirektimBedingungszweigvornehmen.

AufgabenStruktogramme(informatikZentrale)–Lösungen(17.11.2017)

3

B2)ProgrammierenSieeineMethodekundePruefungAusgabe(kontoinhaber:Kontoinhaber):void,dieabhängigvomKontostandausgibt:

HeiniMüllerhatmehrals5000EuroaufdemKonto.

oder

HeiniMüllerhat5000EurooderwenigeraufdemKonto.

B3)ProgrammierenSieeineMethodekundePruefung(kontoinhaber:Kontoinhaber):boolean,dieabhängigvomKontostandeinesKundentrue(beimehrals5000Euro)oderfalse(bei5000oderweniger)zurückgibt.

-----(C)EinfacheSchleifen-----

-----(C1)For-SchleifenC1-1)ProgrammierenSieeineMethodezaehleBis(ende:int),dievon0bisendezähltunddieZahlenausgibt.

AufgabenStruktogramme(informatikZentrale)–Lösungen(17.11.2017)

4

C1-2)ProgrammierenSieeineMethodezaehleVonBis(start:int,ende:int),dievonstartbisendezähltunddieZahlenausgibt.

C1-3)ProgrammierenSieeineMethodezaehleVonBisAbstand(start:int,ende:int,abstand:int),dievonstartbisendezähltunddieZahlenausgibt.

-----(C2)While-SchleifenC2-1)ProgrammierenSieeineMethodewhileZaehlen(),dievon0bis20zähltunddieZahlenausgibt.Verwendungeinerwhile-Schleife.

C2-2)ProgrammierenSieeineMethodewhileZaehlenVon(start:int),dievonstartbis20zähltunddieZahlenausgibt.Verwendungeinerwhile-Schleife.

AufgabenStruktogramme(informatikZentrale)–Lösungen(17.11.2017)

5

C2-3)ProgrammierenSieeineMethodewhileZaehlenVonBis(start:int,ende:int),dievonstartbisendezähltunddieZahlenausgibt.Verwendungeinerwhile-Schleife.

C2-4)ProgrammierenSieeineMethodewhileZaehlenVonBisSchritt(start:int,ende:int,abstand:int),dievonstartbisendeinSchrittweiteabstandzähltunddieZahlenausgibt.Verwendungeinerwhile-Schleife.

-----(D)Einfacheforeach-Schleifen------D2)Kundenliste

D2-1)ProgrammierenSieeineMethodelisteMeinerBetreutenKundenAlsString():void,dieeineListeallerbetreutenKundenAUSGIBT(name,vorname,kontonummer,Kontostand).Spaltenmit\terzeugen.

Name Vorname KtoNr. KtoStand

----------------------------------

Schmitt Heini 3321314 45Euro

Müller Bilal 587373 28348Euro

(EskanndabeizuVerschiebungenkommen,wennElementebesonderslangoderkurzsind)

AufgabenStruktogramme(informatikZentrale)–Lösungen(17.11.2017)

6

D2-2)ProgrammierenSieeineMethodelisteMeinerBetreutenKundenAlsStringRueckgabe():String,dieeineListewieobenZURÜCKGIBT.SiemüssendazuD2-1nurgeringfügigumarbeiten.

D3)Wirwollenwissen,werdenhöchstenKontostandhat.

D3-1)ProgrammierenSieeineMethodereichsterMannKontostand():double,diedenKontostanddesKontoinhabersmitdemhöchstenKontostandzurückgibt.

D3-2)ProgrammierenSieeineMethodereichsterMann():Kontoinhaber,diedenKontoinhabermitdemhöchstenKontostandzurückgibt.

AufgabenStruktogramme(informatikZentrale)–Lösungen(17.11.2017)

7

-----(E)Kombination:Schleife/if------ProgrammierenSieeineMethodelisteMeinerBetreutenReichenKunden():String,dieeineListewieinAufgabeD2-1ZURÜCKGIBT(alsString!),allerdingssinddortnurdieKontoinhabermiteinemKontostandvonmehrals500Euroenthalten.

-----(F)SchwierigeAufgaben------F1)ProgrammierenSieeineMethodereichsteKunden():ArrayList<Kontoinhaber>,dieeineListeallerKundenzurückgibt,derenKontostandüberdemdurchschnittlichenKontostandallerKundenliegt.

Recommended