Title | Probeklausur - Wintersemester |
---|---|
Course | Informatik I |
Institution | Georg-August-Universität Göttingen |
Pages | 7 |
File Size | 325.8 KB |
File Type | |
Total Downloads | 61 |
Total Views | 190 |
Wintersemester...
1/19/2017
ILIAS - : Probeklausur
ListederAntworten 1.AllgemeineGrundkenntnisse(I1ID:rjyb60x0u5h0) 1. GebenSiedierichtigeAntwortkombinationan(1Pfürdierichtige/0PfürjedefalscheKombination): (A)SpezifikationenbestehenauseinerpräzisenBeschreibungdererlaubtenEingaben. (B)AlgorithmensindendlicheVorschriften,dieRechenabläufeschrittweisebeschreiben. (C)CompilerübersetzenQuellcodeerstinAssembler,danninUnixCode. (D)DasJavaProgrammistaufdemSystemlauffähig,wenndaraufderentsprechendeCompilerinstalliertist.
2. GebenSiedierichtigeAntwortkombinationan(1Pfürdierichtige/0PfürjedefalscheKombination): (A)BeiderEntwicklungeinesProgrammsmussnachjedemCompiliereneditiertwerden. (B)InteraktiveProgrammekönnenDatenvonderStandardEingabeerhalten. (C)AmCMDFlagisterkennbar,obdieSpeicherzelleeineZahlodereinenBefehlenthält. (D)EinePipefunktioniertimwesentlichenwieeineQueue. 3. GebenSiedierichtigeAntwortkombinationan(1Pfürdierichtige/0PfürjedefalscheKombination): (A)DurchEingabeumleitungkannmangespeicherteDatenaneininteraktivesKommandoleiten. (B)InformationsverarbeitungzerfälltindieSchritteCodierung,DatenverarbeitungundDecodierung. (C)Mit4Hexadezimalziffernkannmanmehrals130000Wertedarstellen. (D)DerBruch4/5=0.8kannexaktalsendlicherDualbruchdargestelltwerden. 4. GebenSiedierichtigeAntwortkombinationan(1Pfürdierichtige/0PfürjedefalscheKombination): (A)GanzzahlarithmetikistnormalerweiseschnelleralsGleitkommaArithmetik. (B)StrukturierteProgrammierungistdieProgrammierungmitstrukturiertenDaten. (C)RekursionbenötigtmehrSpeicheraufdemStackalsIteration. (D)DieJVMinterpretiertjedenBytecodebefehlundprüftdessenSyntax.
2.EinigeJavaGrundkenntnisse(I1ID:u1j7g25165h0) 1. OrdnenSieBegriffezeitlich(0.25PfürjedekorrektePosition)
2. FüllenSiedieLücken,sodassdasProgrammmitzweibeliebigenZahlwertenAundBalsKommandozeilenparameternaufgerufenFolgendesleistet: Zahlenausgeben,dieinnerhalbdesabgeschlossenenIntervalls[A,B]liegen.(0.25PfürjedekorrekteAngabe) public class Intervallsumme { public static void main(String[] args) { , min = (args[0]), max = (args[1]); int ; while ( ) { ; ; } }
}
3. WievieleBytesbeanspruchteineVariable? int: char: float: boolean:
(0.25PfürjederichtigeAntwort) 3.GrundlegendeDatentypen(I1ID:ksu13v0075h0) 1. GebenSiedierichtigeAntwortkombinationan(1Pfürdierichtige/0PfürjedefalscheKombination): (A)DasLeerzeichenisteindruckbaresZeichen. (B)iso88591isteineTeilmengevonASCII. (C)'C'++liefertdasgleicheErgebniswie'C'+1. (D)"C" + 1istkeinerlaubterJavaAusdruck.
2. GebenSiedierichtigeAntwortkombinationan(1Pfürdierichtige/0PfürjedefalscheKombination): (A)intisteinGanzzahldatentyp,charnicht. (B)int x = Integer.MAX_VALUE + 1;isteineerlaubteAnweisung. (C)DerWertvon(( 3 < 7 ) && ((17 + 4) % (12 - 5)) != 0)istfalse. (D)DerWertvon( 3 + 1/3 == 3 - 1/3)istfalse.
3. GebenSiediezutreffendenAntwortenan:
https://ilias-intern wiso uni-goettingen de/ilias php?ref id=6325&sequence=15&active id=51355&cmd=finishTest&cmdClass=i
2/7
1/19/2017
ILIAS - : Probeklausur (A)String s = "Hallo", System.out.println(s.length);
Ausgabe?
(B)System.out.println(10e-1f); Ausgabe?
(C)2 * (short) 0xCafe TypdesAusdrucks? (D)double y = Double.MIN_VALUE; System.out.println(y/2); Ausgabe?
(E)int x = Integer.MAX_VALUE, y = Integer.MAX_VALUE++, z = x+y; Wertvonz? (F)System.out.println( (double) (1/2));
Ausgabe? 4. GebenSiedierichtigeAntwortkombinationan(1Pfürdierichtige/0PfürjedefalscheKombination): (A)int[] z = {1}; System.out.println(z);produziertdieAusgabe1. (B)lengthisteinfinalAttributvonFeldern. (C)Durchint[] a = {1, 2, 3}, b = new int[];werdenzweineueFelderangelegt. (D)Durchint[][][][] x = new char[32][32][32][16];wirdetwa1MbHeapSpeicherreserviert.
4.IntegerArithmetik(I1ID:5wa3il81gdg0) SeideineintVariablemitdemWertInteger.MAX_VALUE(also2147483647).WelcheTextausgabeerzeugendieseAnweisungen?: 1: 2: 3: 4:
System.out.println(-d); System.out.println(d-1); System.out.println(1+2*d); System.out.println(-(2*d));
// // // //
AchtenSiedarauf,dassIhreAntwortenNURDezimalziffernenthalten(sowiebeiBedarfVorzeichen)! 5.IterationinFeldern(I1ID:t75bm8e005h0) int[] p = { 1, 4, 0, 3, 6, 2, 7, 5 }; int[] c = { 0, 0, 0, 0, 0, 0, 0, 0 }; int[] q = { 0, 0, 0, 0, 0, 0, 0, 0 }; for (int i = 0; i < 8; i++) c[p[i]] = c[p[i]] + 1; for (int i = 0; i < 8; i++) q[p[i]] = i;
TragenSiedieWertederFeldkomponentennachAusführungdesJavaFragmentsein: Index 0 1 2 3 4 5 6 7 c q
6.Felder:Fehleroder...?(I1ID:o2vav4a1gdg0) ErzeugtuntenstehendeKlasse einenCompilezeitfehler?Fallsja,sotragenSiedieNummerderfehlerhaftenZeileein,ansonsteneinenBindestrich(): einenLaufzeitfehler?Fallsja,sotragenSiedieNummerderfehlerhaftenZeileein,ansonsteneinenBindestrich(): eineAusgabe?Fallsja,sotragenSieAusgabeein,ansonsteneinenBindestrich(): 1: class FehlerOderKeiner { 2: public static void main(String[] args) { 3: int[] a = {2,3,5,7,11}; int[] b = { a[2], a[2]}; 4: b = a; 5: b[1] = b[0]; 6: System.out.println(a[0] != a[1]); 7: } 8: }
7.Rekursion(I1ID:qft7dic1y4h0) BetrachtenSiefolgendeKlasse: 1: class Myst { 2: static void ery(int n) { 3: if (n == 0) 4: return; 5: ery( n-1); 6: A(); 7: yre( n-1); 8: } 9: static void yre(int n) { 10: if (n == 0) return; 11: 12: ery( n-1); 13: B(); 14: yre( n-1); 15: } 16: static void A() { 17: System.out.print("A"); 18: } 19: static void B() { 20: System.out.print("B"); 21: }
https://ilias-intern wiso uni-goettingen de/ilias php?ref id=6325&sequence=15&active id=51355&cmd=finishTest&cmdClass=i
3/7
1/19/2017 22: 23: 24: 25: 26: 27: }
ILIAS - : Probeklausur public static void main(String[] args) { int n = Integer.parseInt(args[0]); ery(n); System.out.println(); }
1. GebenSiedieersten8ZeichenderAusgabezumAufrufjava Myst 4an: 2. AuswievielenZeichenbestehtderAusgabestringbeimAufrufjava Myst 7(ohnedenabschließendenZeilenwechseldurchZeile25)?
3. WirdZeile14durchyre( n-2);ersetzt,soführtbeispielsweisederAufrufjava Myst 4zueinemFehler. Esgenügt,eineinzelnesZeichenineineranderenZeilezuändern,umdiesenFehlernichtmehrhervorzurufen.UmwelcheZeilehandeltessich?
4. WerdeZeile12durchery( n-2);undzusätzlichZeile14durchyre( n-2)ersetzt. GebenSiedasmaximaleArgumentnan,beidemderAufrufjava Myst nnichtzueinemFehlerführt:
8.StackundQueueinAktion(I1ID:8303049035h0) 1. AufeinemStackwerdeningemischterReihenfolge10Pushund10PopOperationenausgeführt.Esistbekannt,dassdiePushOperationendieZah ReihenfolgeeinspeichernunddassbeijedemPopderausgespeicherteWertausgegebenwird.WelcheAusgabelistensindmöglich? WählenSieausdenbeidenBlöckenjeweilsdiezutreffendeAntwortaus(jeweils2PfürdierichtigeKombination/0Pfürjedeandere). (A)1234569870 (B)0465381729
(C)1479865302 (D)2143658790
2. AufeinerQueuewerdeningemischterReihenfolge10Enqueueund10DequeueOperationenausgeführt.Esistbekannt,dassdieEnqueueOperatio dieserReihenfolgeeinspeichernunddassbeijedemDequeuederausgespeicherteWertausgegebenwird.WelcheAusgabelistensindmöglich? WählenSieausdenbeidenBlöckenjeweilsdiezutreffendeAntwortaus(jeweils1PfürdierichtigeKombination/0Pfürjedeandere). (E)4687532901 (F)2567489310
(G)0123456789 (H)4321056789
9.QueueauszweiStacksbauen(I1ID:a4g40y31x4h0)
MitzweiStackskannmaneineQueueimplementieren: enqueue(...)entsprichtEinspeichernininbox dequeue()entsprichtAusspeichernausoutbox.
UnterVerwendungdieserAPI public class Stack
boolean empty()
testet,obdieserStackleerist
void push(String s)
speichertsindiesemStack
String pop()
liefertzuletztgespeichertenStringausdiesemStackundentferntihn
sähedieentsprechendeKlassez.B.soaus: public class ZSQueue { // Zwei-Stack-Queue private Stack inbox, outbox; public ZSQueue() { ... } public boolean empty() { ... } // Leerheitstest public void enqueue(String s) { ... } // einspeichern public String dequeue() { // ausspeichern und liefern // Rumpf (Ihre Aufgabe) } }
https://ilias-intern wiso uni-goettingen de/ilias php?ref id=6325&sequence=15&active id=51355&cmd=finishTest&cmdClass=i
4/7
1/19/2017
ILIAS - : Probeklausur
StellenSiedieZeilenfürdenRumpfderMethodedequeue()richtigerReihenfolgezusammen: istdieQueueleer,istAusspeichernnichtmöglich! testeoboutboxleeristundfülleindiesemFalldenkomplettenInhaltvoninboxuminoutbox,danneinElementausoutboxausspeichernundliefern.
10.VermischteszuKlassentypen(I1ID:t5k8w9h0frg0) 1. Objekteverstehen: public class Spieler { private int score; public Spieler( int s) { this.score = s; } }
ZweiSpielerObjektewerdeninstanziiert: Spieler a = new Spieler(50), b = new Spieler(50);
WelchenWerthatnunderAusdrucka==b? 2. FremdenCodedeuten: 1: 2: 3: 4: 5: 6: 7: 8: 9:
public class FirstBpp extends hepno.users.Frame { private hepno.users.Wring wrags; public FirstBpp() { wrags = new hepno.users.Wring(); } public static void main(String[] args) { FirstBpp app = new FirstBpp(); } }
WasbewirktZeile2?: 3. StatischeMethodenundInstanzmethoden: public class Klasse { private final int zahl = 10; double a() { System.out.println(zahl); return c(); } void b() { System.out.println(this); } double c() { double r = Math.random(); System.out.println(r); return r; } void d() { a(); a(); } int e() { return zahl; } }
WelchederobigenMethodenistihrerNaturnachehereinestatischeMethode(undsolltedahermitstaticversehenwerden)? 4. Fehlersuche: public class Test { private int testCount; public static int getCount(){ return testCount; } public Test(){ testCount++; } }
ObigerCodeverursachteinenCompilezeitfehler.WasistdasProblem? 5. Tracing: Hinweis:BeachtenSie,dassmanüberObjektreferenzenauchaufKlassenvariablenzugreifenkann. public class Tset { static int tsetCount = 0; public Tset(){ tsetCount++; } public static void main(String [] args){ Tset t1 = new Tset(); System.out.print(t1.tsetCount + ", "); Tset t2 = new Tset(); System.out.print(t1.tsetCount + " "+ t2.tsetCount + ", ");
https://ilias-intern wiso uni-goettingen de/ilias php?ref id=6325&sequence=15&active id=51355&cmd=finishTest&cmdClass=i
5/7
1/19/2017
ILIAS - : Probeklausur Tset t3 = new Tset(); System.out.print(t1.tsetCount+ " "+ t2.tsetCount+ " "+ t3.tsetCount); System.out.println(); } }
WelcheAusgabeproduziertderCode? 6. Begriffsverständnis:WählenSieausdemMenüdieeinzigeAussageaus,dieNICHTkorrektist.
11.OOPEntwurf(I1ID:lf9g4np0qtg0) IneinerSpieleSoftwaregibtesfolgendeHierarchievonJavaKlassen,diedieverschiedenenSortenvonAkteurenmodelliert:
Die(hiernichtgezeigte)KlasseSpielbenutztdiezugreifbarenMethodenobigerKlassen,umdenAblaufzugestalten. Wieist(unterErhaltdergezeigtenKlassenbeziehungen)folgendeZusatzanforderungambestenzumodellieren? AlleKaempferObjekteaberkeineKreaturObjektesollenmiteinerMethodebenutzeWaffe()ausgestattetwerden. DieMethodebenutzeWaffe()nurinGuterKaempferundinBoeserKaempferwiebenötigtimplementieren. benutzeWaffe()mitleeremRumpfinAkteurimplementieren,inGuterKaempferundBoeserKaempfergeeignetüberschreiben. benutzeWaffe()inAkteurimplementieren,inGefaerlicheKreaturundFreundlicheKreaturmitprivatekennzeichnen.
InterfaceKaempfermitbenutzeWaffe()definierenunddurchGuterKaempferundBoeserKaempferimplementierenlassen. WeitereKlasseKaempferschreiben,diebenutzeWaffe()implementiert,GuterKaempfer,BoeserKaempferdavonerbenlassen. 12.OOPVerständnisfragen(I1ID:fnkdcz9075h0) SeipeineReferenzvariablevomTypX.WaskannallesderdynamischeTypvonpsein?WählenSieausdenbeidenBlöckenuntenjeweilsdiezutreffenden dierichtigeKombination/0Pfürjedeandere). (A)eineErweiterungsklassevonX(fallsXeineKlasseist) (B)einelementarerDatentyp(fallsXdiezugehörigeWrapperKlasseist) (C)eineKlasse,dieXimplementiert(fallsXeinInterfaceist)
(D)eineKlasse,vonderXdirektoderindirekterbt(fallsXeineKlasseist) (E)einInterface,dasXalsabstrakteKlasseerweitert(fallsXeineKlasseist) (F)eineErweiterungsklasseeinerKlasse,dieXimplementiert(fallsXeinInterfaceist)
13.AnalysevonAlgorithmen(I1ID:7o9glw3115h0) 1. BetrachtenSiefolgendenAusschnittauseinemgrößerenProgramm: 1: for (int i = 0; i < N; i++) 2: for (int j = i+1; j < N; j++) 3: for (int k = j+1; k < N; k++) 4: verarbeite(daten);
DieAusführungszahl vonZeile4beiProblemgröße solluntersuchtwerden.WelcherderfolgendenAusdrückeistambestenfürdieweitere geeignet? 2. EineImplementationwirdzahlreichenVerdopplungstestsunterzogen,mitzufälliggeneriertenEingabedaten.DieErgebnisse—allesehrähnlich—se Problemgröße 1024 2048 4096 8192 16384 32768 65536 131072 262144 524288 1048576 2097152 4194304 8388608 Zeit(s) 0.00 0.01 0.01 0.02 0.03 0.06 0.14 0.30 0.65 1.24 2.46 4.98 10.02 19.94 Außerdemkannmannachweisen,dassdieAusführungszahlderKernoperationenbeispeziellerStrukturderEingabelinearmitderProblemgröße
w
WelchedieserHypothesenüberdasLaufzeitverhaltenerscheintdannamplausibelsten? 3. WelchedieserAussagentrifftNICHTzu? ...