Not logged in. · Lost password · Register

Page:  1  2  next 
LordSidyes
Lord
Member since Nov 2011
370 posts
Subject: Klausur vom 19.02.2009 - Aufgabe 4
Hallo Leute,
ich komme bei der a) nicht weiter! Das habe ich bis jetzt:
create = l
contains(x,create) = false

aber wie geh ich durch die Liste durch?
sowas wie contains(x, prepend(y,create)) und dann mit fallunterscheidung geht ja nicht, weil ich ja immer was hinzufüge...
Hat da jmd eine Lösung?
kaut
Member since May 2011
380 posts
also ich hab das so:

A4: contains(x, create) = false
A5: contains(x, append(y,l))= 1+contains(x,l)       //wenn x=y
                                        contains(x,l)          // wenn x!=y


stopp das stimmt nich was ich schreibe. ich glaube beim fall x=y müsste einfach true hin.
This post was edited on 2012-02-19, 16:29 by kaut.
LaCucaracha
Member since Jan 2012
43 posts
ist es nicht einfach true wenn x = y und false wenn x != y?
ict
Member since Nov 2006
347 posts
kaut hat schon recht. Würdest du einfach false zurückgeben, würdest du nur das zuletzt angefügte Element ansehen.
/* This is O(scary), but seems quick enough in practice. */
kaut
Member since May 2011
380 posts
In reply to post #3
Quote by LaCucaracha:
ist es nicht einfach true wenn x = y und false wenn x != y?

also bei dem ersten schon glaub da reicht einfach true. hab es schon editiert gehabt.
LaCucaracha
Member since Jan 2012
43 posts
Stimmt, ich hatte es in meinem beispiel mit create statt l aufgeschrieben. Ob das wohl auch durchgeht?
ri31hoky
Member since May 2011
452 posts
Nein, weil dann nicht alle Fälle abgedeckt sind und sich das Axiom somit nicht gemäß Spezifikation verhält.
kaut
Member since May 2011
380 posts
In reply to post #6
Quote by LaCucaracha:
Stimmt, ich hatte es in meinem beispiel mit create statt l aufgeschrieben. Ob das wohl auch durchgeht?

ich dnek man braucht beide axiome. also einmal wie sich contains auf create auswirkt und einmal wie es sich auf append auswirkt.
LordSidyes
Lord
Member since Nov 2011
370 posts
In reply to post #7
Genau da liegt auch mein Problem... Man darf ja sowas wie remove nicht neu definieren...
kaut
Member since May 2011
380 posts
Quote by LordSidyes:
Genau da liegt auch mein Problem... Man darf ja sowas wie remove nicht neu definieren...

und wo liegt jetz das problem? Versteh das grad nicht.
LordSidyes
Lord
Member since Nov 2011
370 posts
Dein 2. Fall stimmt doch so nicht oder?
kaut
Member since May 2011
380 posts
In reply to post #2
Quote by kaut:
also ich hab das so:

A4: contains(x, create) = false
A5: contains(x, append(y,l))= 1+contains(x,l)       //wenn x=y
                                        contains(x,l)          // wenn x!=y


stopp das stimmt nich was ich schreibe. ich glaube beim fall x=y müsste einfach true hin.



meinst du den A5 ?


wieso soll das nich stimmen?
LordSidyes
Lord
Member since Nov 2011
370 posts
Weil du als 2. Fall einfach sagst, er soll in der Liste weitersuchen, aber du sagst nicht wie?
Oder ich verstehe es grad einfach nicht^^
kaut
Member since May 2011
380 posts
naja du brauchst ihm ja nicht sagen wie er weiter suchen soll. Wieso sollte man das denn sagen müssen?
Du weißt ja nicht ob das gesuchte Element darin überhaupt existiert.
ict
Member since Nov 2006
347 posts
In reply to post #13
Quote by LordSidyes:
Weil du als 2. Fall einfach sagst, er soll in der Liste weitersuchen, aber du sagst nicht wie?

Willkommen in der wunderbaren Welt der Rekursion. Das "Weitersuchen" findet wieder mit den selben zwei Fällen statt. Entweder ist die Liste jetzt leer oder es ist noch (mindestens) ein Element drin.
/* This is O(scary), but seems quick enough in practice. */
Close Smaller – Larger + Reply to this post:
Verification code: VeriCode Please enter the word from the image into the text field below. (Type the letters only, lower case is okay.)
Smileys: :-) ;-) :-D :-p :blush: :cool: :rolleyes: :huh: :-/ <_< :-( :'( :#: :scared: 8-( :nuts: :-O
Special characters:
Page:  1  2  next 
Go to forum
Datenschutz | Kontakt
Powered by the Unclassified NewsBoard software, 20150713-dev, © 2003-2011 by Yves Goergen