Klausur 25.02.2010

Disclaimer: Dieser Thread wurde aus dem alten Forum importiert. Daher werden eventuell nicht alle Formatierungen richtig angezeigt. Der ursprüngliche Thread beginnt im zweiten Post dieses Threads.

Klausur 25.02.2010
Hey Leute,

habe eine kurze Frage zur Aufgabe 9b ii): als ich die gerechnet habe, habe ich ins wp folgendes geschrieben:

wp(“i=n; a = a*i; i = i - k;”, a = mf(n,k)/mf(i,k))

In der Lösung vom letzten Semester haben wir allerdings die Zuweisung i=n weggelassen. Ich konnte die Aufgabe auch mit der Zuweisung lösen.
Jetzt meine Frage: Muss man die Zuweisung ins wp nehmen oder muss man sie weglassen? Bei while-Schleifen kommt sowas nicht vor, deswegen bin ich ein wenig verwirrt.

Vielen Dank im voraus.

Gruß

1 „Gefällt mir“

  1. Ins WP muss der Schleifenrumpf. Jetzt musst du dir also nur überlegen ob i = n auch zum Schleifenrumpf gehört (also jedes mal ausgeführt wird) oder nicht.

  2. Was kommt bei dir denn raus wenn du i = n ins WP mit aufnimmst? Bei mir kommt da a = 1 raus. Wenn du abschätzen kannst ob das Ergebnis richtig ist, weißte auch deine Antwort :wink:

1 „Gefällt mir“

  1. Also brauche ich die Zuweisung nicht, da sie ja nur einmal ausgeführt wird

  2. Bei mir kommt a = 1 raus. Jetzt hab ichs verstanden :slight_smile: Dann hatte ichs ja gar nicht richtig, ich hab mit der Zuweisung anscheinend a VOR der Schleife bestimmt(a=1), aber i ändert ja seinen Wert immer.

Danke für die schnelle und kompetente Antwort :wink:

Gruß

1 „Gefällt mir“

Wiki

Ich bin mit einigen Lösungen etwas im Unreinen, welche das alle waren, werd ich, sofern ich es noch schaffe, nochmal nachsehen und editieren.

7c:

Euler-Zyklus bedeutet doch ein gerader Grad bei den Knoten, richtig?

Demzufolge wäre die vorgeschlagene Lösung falsch und müsste durch die Kanten E-B sowie F-C ersetzt werden.

[color=gray]
2b:

Tippfehler: Bucketinhalt von 7: → 5 !=7[/color]

6:
Sichtbarkeitsmodifikatoren fehlen
[color=gray]
fehlte noch:
8) so in etwa:

a)
Axiome:

contains(String, create) = false

contains(String1, put(String2,multiset))=
-String1 == String2 :true
-sonst :contains(String1,multiset)

b)

Signatur:
count: String x Multiset → integer

Axiome:
count(Strin1, create) = 0
count(String1,put(String2,Multiset)) =
-String1 == String2 : 1 + count(String1,Multiset)
-sonst : count(String1,Multiset)

c)

Signatur:
purge: String x Multiset → Multiset

Axiome:

purge(String1, create) = create

purge(String1, put(String2, Multiset)) =
-String1 == String2: purge(String1, Multiset)
-sonst : put(String2, purge(String1,Multiset))

d)

Primärkonstruktoren:
create, put[/color]

Ich bitte um Rückmeldungen

Edit: das Graumarkierte habe ich bereits ausgebessert


versehentlich zitat erwischt :S