• Keine Ergebnisse gefunden

Wiederholungsklausur "C#" SS 2014

N/A
N/A
Protected

Academic year: 2021

Aktie "Wiederholungsklausur "C#" SS 2014"

Copied!
6
0
0

Wird geladen.... (Jetzt Volltext ansehen)

Volltext

(1)

1

PD Dr. J. Reischer 14.07.2014

Wiederholungsklausur "C#" SS 2014

Nachname, Vorname

Abschluss (BA, MA, FKN etc.) Matrikelnummer, Semester Versuch (1/2/3)

Bitte füllen Sie zuerst den Kopf des Angabenblattes aus!

Die Klausur dauert 90 Minuten.

Es sind maximal 30 Punkte zu erreichen.

Es sind keine Hilfsmittel zugelassen.

Bitte beantworten Sie alle Fragen direkt auf das Angabenblatt.

Nutzen Sie ggf. die Rückseite und kennzeichnen Sie dies entsprechend.

Eigene Schmierblätter sind nicht erlaubt.

Bei mehreren oder mehrdeutigen Lösungen wird die schlechtere Lösung gewertet. Streichen Sie daher ungültige Lösungen eindeutig durch.

Verwenden Sie nur C# für Programmieraufgaben.

Viel Erfolg!

(2)

2 Teil I: Konzeptionelles

Aufgabe 1a: (2 Punkte)

Beschreiben Sie in einem Satz den Unterschied zwischen Ganzzahlen und Bruchzahlen.

Führen Sie jeweils einen Beispieltyp an.

Aufgabe 1b: (2 Punkte)

Geben Sie insgesamt zwei Gemeinsamkeiten oder Unterschiede zwischen char und string an.

Aufgabe 1c: (2 Punkte)

Kreuzen Sie korrekte Aussagen über Strings an. Falsch angekreuzte Antworten geben Punktabzug innerhalb dieser Aufgabe. (Achtung: Es gibt nicht unbedingt genau 1 Punkt pro korrekt gelöster Aussage!)

 Ein String muss mindestens 1 Zeichen enthalten.

 Ein String ist ein zweidimensionales Array.

 Aus Strings können Stringarrays gebildet werden.

 Jeder String kann per foreach durchlaufen werden.

 Zwei Zahlen in zwei Strings S und T können arithmetisch addiert werden.

 Die Elemente eines Strings S sind per S[…] adressierbare Einzelzeichen.

 Ein String kann alternativ auch mit '…' umschlossen werden.

 Zwei Strings sind per '+'-Operator verknüpfbar.

(3)

3 Teil II: Funktionsanalyse

Aufgabe 2: (6 Punkte)

Analysieren Sie unten stehende Funktion F dahingehend, welche Parameterwerte X welche Ergebniswerte F(X) erzeugen. Tragen Sie die Funktionsergebnisse in unten stehende Tabelle ein (zwei Versuche, sonst Tabelle selbst erweitern; streichen Sie Fehlversuche deutlich durch).

Lösungstabelle:

X 0 1 2 3 4 5

F(X) F(X)

// Funktion F mit Ganzzahl-Parameter X int F(int X)

{

int Y = X;

while (Y > 0 && Y <= 10) {

Y = 3*Y-1;

}

return Y;

}

(4)

4 Teil III: Entwicklung

Aufgabe 3a: (4 Punkte)

Schreiben Sie eine Funktion int CountChar(char C, string S), die die Anzahl der Vorkommnisse eines bestimmten Zeichens C in einem String S zählt und als Funktions- ergebnis zurückgibt.

Beispiele:

Vorkommnisse 'a' in "123123": 0 Mal;

Vorkommnisse 'a' in "123a123": 1 Mal;

Vorkommnisse 'a' in "a123123a": 2 Mal;

Vorkommnisse 'a' in "a123a123a": 3 Mal.

Aufgabe 3b: (2 Punkte)

Schreiben Sie eine Funktion bool CheckChar(char C, string S), die feststellt, ob das Zeichen C im String S auftritt oder nicht. Nur selbstdefinierte Funktionen dürfen benutzt werden.

(5)

5

Aufgabe 4a: (4 Punkte)

Schreiben Sie eine Funktion int GetDigit(int N, int X), die aus einer negativen oder positiven Ganzzahl die X.te Ziffer ermittelt und diese als Funktionsergebnis zurück- gibt (als int, nicht als char!). Überprüfen Sie, ob der Index X überhaupt auf eine Ziffer Bezug nimmt oder außerhalb der Zahl liegt; liegt der Index außerhalb, soll −1 zurück- geliefert werden. Die linke Ziffer der Zahl N hat dabei den Index 0, unabhängig von ihrem Stellenwert bzw. ihrer Länge/Größe. Bedenken Sie, dass die Zahl N und der Index X auch negativ sein könnten (in letzterem Fall soll ebenfalls −1 zurückgeliefert werden).

Umwandlungsfunktionen zwischen Text und Zahl dürfen benutzt werden.

Beispiele (gewünschte Ergebnisziffer unterstrichen):

N = 12345, X = 2: Ergebnisziffer = 3;

N = −12345, X = 2: Ergebnisziffer = 3;

N = 12345, X = 5: Ergebnisziffer = −1;

N = 12345, X = −1: Ergebnisziffer = −1;

N = 0, X = 0: Ergebnisziffer = 0.

Aufgabe 4b: (2 Punkte)

Stellen Sie in zwei Sätzen kurz dar, was zu ändern wäre, wenn die Zahl in einem String übergeben würde.

(6)

6

Aufgabe 5: (6 Punkte)

Schreiben Sie eine Funktion int CreateNumber(int D, int N), die aus einer Ziffer 0 ≤ D ≤ 9 eine Schnapszahl aus N Mal dieser Ziffer erzeugt und als Funktionsergebnis zurückgibt. Ist N negativ oder 0, soll −1 als Ergebnis zurückgeliefert werden. Die Umwandlung zwischen String und Zahl ist nicht erlaubt!

Beispiele:

D = 5, N = 1: Schnapszahl 5 D = 1, N = 5: Schnapszahl 11111 D = 1, N = 0: Schnapszahl −1

D = 0, N = 5: Schnapszahl 0 (Achtung: 00000 = 0!)

Referenzen

ÄHNLICHE DOKUMENTE

Juni 2016 be- schlossenen Mutationen „öW+A-Zone Schulstrasse (Parzellen Nrn. 842-846)“ zu den Zonenplänen Siedlung und Landschaft sowie „Dachformen Nebenbauten,

Die Beschwerdeberechtigung ist daher nicht gegeben, und somit ist eine Beschwerdevoraussetzung nicht erfüllt, so dass auf die Eingabe als Beschwerde gemäss § 172 Absatz 1 GemG

Zuschuss gemäß Ziffer 3.6 der Richtlinien für die Sportförderung vom

ist auch ein Rückgriff auf den (abstrahierten) Tatvorwurf (&#34;Ihnen wird zur Last gelegt,…..&#34;) wie er im Bußgeldbescheid oder im Rahmen der Owi-Anhörung zum Ausdruck

5 Chirurgen,Neurochirurgen,MKG-Chirurgen fachärztlichem Versorgungsbereich 6 Gynäkologen und Reproduktionsmediziner fachärztlichem Versorgungsbereich 7 HNO-Ärzte sowe Phoniater

Grund- und Versichertenpauschalen mit Vorwegvergütung gemäß Ziffer Anlage 1 Ziffer 5.1 und 6.1

Die Leistungen der Fachgruppe 10 und 11 (ärztliche und psychologische Psychotherapeuten) werden im wesentlichen nach der zeitbezogenen Kapazitätsgrenze und damit außerhalb

Die Leistungen der Fachgruppe 10 und 11 (ärztliche und psychologische Psychotherapeuten) werden im wesentlichen nach der zeitbezogenen Kapazitätsgrenze und damit außerhalb