Table Of ContentJochen Schmidt
Grundkurs Informatik –
Das Übungsbuch
148 Aufgaben mit Lösungen
Grundkurs Informatik – Das Übungsbuch
Jochen Schmidt
Grundkurs Informatik – Das
Übungsbuch
148 Aufgaben mit Lösungen
Jochen Schmidt
Hochschule Rosenheim
Rosenheim, Deutschland
ISBN 978-3-658-25944-0 ISBN 978-3-658-25945-7 (eBook)
https://doi.org/10.1007/978-3-658-25945-7
Die Deutsche Nationalbibliothek verzeichnet diese Publikation in der Deutschen Nationalbibliografie; detail-
lierte bibliografische Daten sind im Internet über http://dnb.d-nb.de abrufbar.
Springer Vieweg
© Springer Fachmedien Wiesbaden GmbH, ein Teil von Springer Nature 2019
Das Werk einschließlich aller seiner Teile ist urheberrechtlich geschützt. Jede Verwertung, die nicht
ausdrücklich vom Urheberrechtsgesetz zugelassen ist, bedarf der vorherigen Zustimmung des Verlags.
Das gilt insbesondere für Vervielfältigungen, Bearbeitungen, Übersetzungen, Mikroverfilmungen und die
Einspeicherung und Verarbeitung in elektronischen Systemen.
Die Wiedergabe von allgemein beschreibenden Bezeichnungen, Marken, Unternehmensnamen etc. in diesem
Werk bedeutet nicht, dass diese frei durch jedermann benutzt werden dürfen. Die Berechtigung zur Benutzung
unterliegt, auch ohne gesonderten Hinweis hierzu, den Regeln des Markenrechts. Die Rechte des jeweiligen
Zeicheninhabers sind zu beachten.
Der Verlag, die Autoren und die Herausgeber gehen davon aus, dass die Angaben und Informationen in
diesem Werk zum Zeitpunkt der Veröffentlichung vollständig und korrekt sind. Weder der Verlag, noch
die Autoren oder die Herausgeber übernehmen, ausdrücklich oder implizit, Gewähr für den Inhalt des
Werkes, etwaige Fehler oder Äußerungen. Der Verlag bleibt im Hinblick auf geografische Zuordnungen und
Gebietsbezeichnungen in veröffentlichten Karten und Institutionsadressen neutral.
Springer Vieweg ist ein Imprint der eingetragenen Gesellschaft Springer Fachmedien Wiesbaden GmbH und ist ein
Teil von Springer Nature
Die Anschrift der Gesellschaft ist: Abraham-Lincoln-Str. 46, 65189 Wiesbaden, Germany
Vorwort
„GibtesdenndazunochirgendwomehrÜbungsaufgaben,dieichmachenkönnte?“–dieseFrage
wird mir immer wieder gestellt, insbesondere in Lehrveranstaltungen der ersten Semester des
Studiums.NachmeinemanschließendenVerweisaufLehrbücherunddarauf,dassdasInternetvoll
vonÜbungsaufgabensei,wirddieFragemeistweiterpräzisiertzu„Ja,abervorallemmitLösungen“.
DasvorliegendeBuchsollaucheineAntwortdaraufsein.Eswerdeninsgesamt148Aufgabenzu
grundlegendenThemendesInformatikstudiumspräsentiert–natürlichmitausführlichenLösungen.
VielederÜbungenwurdenfürdiesesBuchneukonzipiert,weiterestammenausmeineneigenen
LehrveranstaltungenGrundlagenderInformatikundTheoretischeInformatik,dieichseitmehreren
JahrenanderTechnischenHochschuleRosenheimimBachelor-StudiengangInformatikhalte.Die
UrsprüngeeinigerdieserAufgabenliegenimDunkelderZeitverborgen;vielehatteichzusammen
mitanderenVorlesungsunterlagenvonmeinemVorgängerundKo-AutordesGrundkursInformatik
HartmutErnstübernommen.AndereAufgabenundUnterlagenstammenvonmeinemKollegen
MartinDeubler,dereineähnlicheLehrveranstaltungimStudiengangWirtschaftsinformatikhält.
BeibeidenmöchteichmichandieserStelledafürbedanken.Esistleidernichtmehridentifizierbar,
wasgenauwoherstammt.
DerAnstoßfürdiesesBuchkamvonmeinerLektorinbeiSpringerVieweg,SybilleThelen.Siehat
imLaufedesProjektsvielGeduldaufgebracht,eigentlichwareinedeutlichfrühereFertigstellung
geplant.AuchansieeinherzlichesDankeschön.
Rosenheim,24.März2019 JochenSchmidt
Inhaltsverzeichnis
1 Hinweise,WebseiteundErrata 1
2 Übungsaufgaben 3
2.1 Zahlendarstellung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
2.2 InformationundQuellencodierung . . . . . . . . . . . . . . . . . . . . . . . . . . 5
2.3 Codesicherung/Kanalcodierung. . . . . . . . . . . . . . . . . . . . . . . . . . . . 8
2.4 Verschlüsselung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
2.5 BoolescheAlgebra,SchaltnetzeundSchaltwerke . . . . . . . . . . . . . . . . . . 12
2.6 AutomatentheorieundformaleSprachen . . . . . . . . . . . . . . . . . . . . . . . 14
2.7 BerechenbarkeitundKomplexität . . . . . . . . . . . . . . . . . . . . . . . . . . 20
2.8 ProbabilistischeAlgorithmen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25
2.9 SuchenundSortieren . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26
2.10 BäumeundGraphen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29
3 Lösungen 35
3.1 Zahlendarstellung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35
3.2 InformationundQuellencodierung . . . . . . . . . . . . . . . . . . . . . . . . . . 45
3.3 Codesicherung/Kanalcodierung. . . . . . . . . . . . . . . . . . . . . . . . . . . . 54
3.4 Verschlüsselung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 64
3.5 BoolescheAlgebra,SchaltnetzeundSchaltwerke . . . . . . . . . . . . . . . . . . 71
3.6 AutomatentheorieundformaleSprachen . . . . . . . . . . . . . . . . . . . . . . . 84
3.7 BerechenbarkeitundKomplexität . . . . . . . . . . . . . . . . . . . . . . . . . . 106
3.8 ProbabilistischeAlgorithmen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 120
3.9 SuchenundSortieren . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 126
3.10 BäumeundGraphen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 148
Literatur 187
Kapitel 1
Hinweise, Webseite und Errata
DasvorliegendeBuchenthältÜbungsaufgaben(inKapitel2)mitdenzugehörigenLösungen(in
Kapitel3)ausGebieten,dietypischerweiseindenerstenSemesterneinesInformatik-Studiumsals
Grundlagenbehandeltwerden.AusgenommenistderBereichdesProgrammierens:DieAufgaben
sind so ausgelegt, dass sie alleine mit Papier und Stift gelöst werden können – es handelt sich
explizitnichtumProgrammierübungen.InmanchenFällengibtesmehreregleichartigeAufgaben
direkthintereinander.Esseidaraufhingewiesen,dasshierggf.dieLösungzurerstenderartigen
Aufgabeetwasdetaillierteristalsdienachfolgenden.
DasBuchistbegleitendzumGrundkursInformatik[Ern16]entstandenundorientiertsichvom
Aufbau her an diesem, wobei nur Übungen zu ausgewählten Kapiteln betrachtet werden. Die
enthaltenenReferenzenbeziehensichaufdie6.Auflage;gegenüberder5.Auflage[Ern15]wurden
dortFehlerkorrekturenundkleinereÄnderungenvorgenommen,dahersollteauchdieVerwendung
der5.Auflageunproblematischsein.NochfrühereAuflagensindvomInhaltundAufbauvöllig
anders,derGrundkursInformatikwurdefürdie5.Auflagekomplettüberarbeitet.
Nichtsdestotrotzwurdedaraufgeachtet,dassDasÜbungsbuchauchohnedenGrundkursInfor-
matikverwendbarist.NutztmanandereLehrbücheralsBasis,soistzubeachten,dassesfürviele
AlgorithmenauchandereäquivalenteDarstellungenundggf.Variantengibt,diesichinDetailsvon
denhiergezeigtenLösungenunterscheidenkönnen.FallsSiealsoeinenLösungsweghaben,der
vondemindiesemBuchgezeigtenabweicht,mussdeswegenkeinerderbeidennotwendigerweise
falschsein.
Hinweise auf weiterführende Literatur zu den jeweiligen Themen finden sich im Grundkurs
Informatik,ebensowieweitereÜbungsaufgaben.VertiefendeÜbungenzueinzelnenGebietenfindet
manauchinandereneinschlägigenLehrbüchern,wiebeispielsweise(ohnejeglichenAnspruchauf
Vollständigkeit):ZumThemaZahlendarstellunginderAufgabensammlung100Übungsaufgabenzu
GrundlagenderInformatik,BandII:TechnischeInformatik[Kön13b].
ZumBereichQuellen-undKanalcodierungimBuchEinführungindieInformations-undCodie-
rungstheorie[Hof14].
ZurVerschlüsselungKryptografieverständlich[Paa16],EinführungindieKryptographie[Buc16]
undAngewandteKryptographie[Ert18].
Zum Thema Boolesche Algebra, Schaltnetze und Schaltwerke Grundlagen der Technischen
Informatik[Hof16],Digitaltechnik[Fri18]bzw.100ÜbungsaufgabenzuGrundlagenderInformatik,
BandII:TechnischeInformatik[Kön13b].
FürAutomatentheorie,formaleSprachen,BerechenbarkeitundKomplexitätdieBücherTheoreti-
scheInformatik[Hof18],GrundkursTheoretischeInformatik[Hol07,Hol15],nochmalsGrundkurs
TheoretischeInformatik[Vos16],undEinführunginAutomatentheorie,formaleSprachenundBe-
rechenbarkeit[Hop11].ReineAufgabensammlungendazufindetmanimÜbungsbuchAutomaten
undformaleSprachen[Kna18]und100ÜbungsaufgabenzuGrundlagenderInformatik,BandI:
TheoretischeInformatik[Kön13a].
© Springer Fachmedien Wiesbaden GmbH, ein Teil von Springer Nature 2019
J. Schmidt, Grundkurs Informatik – Das Übungsbuch,
https://doi.org/10.1007/978-3-658-25945-7_1
2 Kapitel1 Hinweise,WebseiteundErrata
ZumGebietProbabilistischeAlgorithmendieBücherTheArtofComputerProgramming,Volu-
me2:SeminumericalAlgorithms[Knu97b]undEinführungindieKryptographie[Buc16].
AufgabenzudenThemenSuchenundSortierensowieBäumeundGraphensindbeispielsweise
indenLehrbüchernAlgorithmenundDatenstrukturen[Ott17],DatenstrukturenundAlgorithmen
[Güt18], The Art of Computer Programming, Volume 3: Sorting and Searching [Knu98] bzw.
EntwurfundAnalysevonAlgorithmen[Neb18]enthalten.InletzteremfindensichauchAufgaben
zurKomplexitätstheorie.WeitereAufgabenzuBäumenenthältTheArtofComputerProgramming,
Volume1:FundamentalAlgorithms[Knu97a].
LeiderwerdensichbeieinemProjektwiediesemBuchtrotzallerSorgfaltFehlernichtvermeiden
lassen.AufderWebseitehttp://www.gki-buch.dewirdeinregelmäßigaktualisiertesErrata-
PDFveröffentlicht,indemallebekanntenFehleraufgelistetundkorrigiertsind.SolltenSieFehler
findenoderAnregungenfürzukünftigeAuflagenhaben,könnenSiediesegerneperE-Mailanden
[email protected].
Kapitel 2
Übungsaufgaben
2.1 Zahlendarstellung
Dieser Abschnitt enthält Übungsaufgaben zum Themenbereich der Darstellung von Zahlen in
unterschiedlichenSystemen.ErbasiertaufdemKapitel1.4ZahlensystemeundbinäreArithmetik
des Grundkurs Informatik. Die Lösungen zu den Aufgaben befinden sich in Abschnitt 3.1 ab
Seite35.
1.1 GebenSiezufolgendenZahlendieSummenformunddieDarstellungimDezimalsysteman:
1111 ;1111 ;AB3 ;1234 ;1753;5 ;ABC,CBA .
2 4 12 3 8 16
1.2 KonvertierenSiefolgendeZahlenunterZuhilfenahmedesHorner-SchemasindasDezimalsys-
tem:1211 ;777 ;AB1 ;1111 ;0,AB ;10101;01101 .
8 9 12 2 16 2
1.3 FührenSiefolgendeKonvertierungendurch:
447 insDualsystem,
10
7310 insOktalsystem,
10
58192 insSystemzurBasis3,
10
83503 insHexadezimalsystem,
10
2778 insHexadezimalsystem,
10
1234 insSystemzurBasis7.
10
1.4 KonvertierenSiediefolgendenZahlenjeweilsinsDual-undHexadezimalsystem,außerdem
indasSystemzurBasis12:0;25 ;0;2 ;0;3 ;0;234375 ; 2 .
10 10 10 10 310
1.5 KonvertierenSiediefolgendenZahlen:
445 insSystemzurBasis9,
7
101101 insOktal-undHexadezimalsystem,
2
445 insHexadezimalsystem,
8
101101011 insSystemzurBasis4,
2
103 insSystemzurBasis7,
49
1101101;00101 insOktal-undHexadezimalsystem,
2
2BA;B insOktal-undDualsystem.
16
1.6 KonvertierenSiediefolgendenDezimalzahleninBCD-Darstellung:814;6932.
1.7 KonvertierenSiediefolgendenBCD-ZahleninsDezimalsystem:100111;11110010101.
© Springer Fachmedien Wiesbaden GmbH, ein Teil von Springer Nature 2019
J. Schmidt, Grundkurs Informatik – Das Übungsbuch,
https://doi.org/10.1007/978-3-658-25945-7_2
4 Kapitel2 Übungsaufgaben
1.8 WirbetrachtennuneineDarstellungganzerZahlenmit6Bit:
a) WasistdiegrößteZahl,diesichdamitvorzeichenlos(unsigned)darstellenlässt?
b) Wasistdiekleinstebzw.größteZahl,diesichdamitbeiVerwendungdesZweierkomplements
darstellenlässt?
1.9 InUnix-BetriebssystemenwirddieZeitinSekundenseitdem1.Januar1970,0Uhrgezählt.
a) ZuwelchemProblemführtdies,wennderWertvorzeichenbehaftetimZweierkomplementals
32-BitZahlgespeichertist?InwelchemJahr?
b) ErgibteseinenSinn,dasDatumvorzeichenbehaftetzuspeichern?Manverliertdadurchjadie
HälftedespositivenZahlenbereichs.
1.10 GegebenseiderSpeicherinhalteinzelnerByteseinesComputers: 04 , FA .
16 16
JedesByteentsprichteinerganzenZahl.GebenSiean,wiedieZahleninnormalerDezimaldar-
stellungaussehen,wennsieimEiner-bzw.Zweierkomplementcodiertwurdenbzw.wenneine
nicht-vorzeichenbehafteteDarstellung(unsigned)verwendetwurde.
1.11 ZeigenSie:DierationaleZahl 42 (imDezimalsystem)istimHexadezimalsystemnichtexakt
70
alsgebrocheneZahldarstellbar.
1.12 FührenSiediefolgenden(dezimalangegebenen)RechnungenimDualsystemmit8binären
Stellendurch.VerwendenSiedasZweierkomplementzurDarstellungnegativerZahlen.FührenSie
anschließenddieBerechnungennochmalsdurch,undverwendenSiejetztdasEinerkomplement.
15+31 43(cid:0)11 17(cid:0)109 (cid:0)57(cid:0)12
1.13 Führen Sie die folgenden (dezimal angegebenen) Rechnungen im Dualsystem durch. Es
soll eine Festkommadarstellung mit 8 binären Vorkomma- und 4 Nachkommastellen sowie das
ZweierkomplementzurDarstellungnegativerZahlenverwendetwerden.FührenSieanschließend
dieBerechnungennochmalsdurch,undverwendenSiejetztdasEinerkomplement.
80;5+20;25 80;5(cid:0)20;25 10;0625(cid:0)111;9375 (cid:0)21;5625(cid:0)102;4375
1.14 Geben Sie die folgenden Dezimalzahlen als 32-Bit Gleitkommazahlen nach IEEE-Format
sowohlinbinärerFormalsauchinhexadezimalerForman:
1;67125(cid:1)102 (cid:0)8;012225(cid:1)104 (cid:0)4;0125(cid:1)103
1.15 GegebenseiderSpeicherinhaltvonjeweilsvierByteinhexadezimalerDarstellung:
461CA180 C79C7D20 .
16 16
Diesesollenalsbinäre32-BitGleitkommazahlennachIEEE-Formatinterpretiertwerden.
a) GebenSiedieGleitkommazahleninderüblichendezimalenSchreibweisean.
b) MultiplizierenSiejedeZahlmit2bzw.4undgebenSiedasErgebnisnachIEEE-Formatin
binärerForman.
c) Dividieren Sie jede Zahl durch 2 bzw. 4 und geben Sie das Ergebnis nach IEEE-Format in
binärerForman.