so da das gerade in einem anderen thread gerade gefordert ist fällt mir ein das man das ja auch mal golfen könnte...
C++:
int f(char*s,char*r){...} //wer am wenigestens zeichen zwischen den klammern hat gewinnt //0 bei gleichheit und der einfachheit halber irgendwas anderes sonst...
Ich wette, keiner von euch bekommt überhaupt eine funktionierende Version hin. Nur als Tipp: es ist viel mehr zu tun als tolower anzuwenden... -- Wer früher stirbt ist länger tot.
@(un)wissender lass mich mal nicht doof sterben was muss mann denn noch alles beachten? ich bilde mir eine eine version weit unter 100 zeichen und eine von der ich noch nicht weiss ob sie immer funzt mit unter 50 zeichen zu haben... -- ...fleißig wie zwei Weißbrote
Eine wirkliche caseinsensitive Methode erfordert bspw. mindestens das Berücksichtigen der locals. Was zum Beispiel passiert bei FUSSBALL == Fußball? Sollte gleich sein... -- Wer früher stirbt ist länger tot.
Wenne meinst, ist dann aber eigentlich nicht korrekt. Bezieh es als auf 7-Bit ASCII, dann ist es ok. 50 Zeichen ist aber schon nicht viel... -- Wer früher stirbt ist länger tot.
Das macht 53 zwischen den Klammern. Dass bei Gleichheit 0 rauskommt, ist per design. -- Einfachheit ist Voraussetzung für Zuverlässigkeit. -- Edsger Wybe DijkstraDieser Post wurde am 14.09.2004 um 18:02 Uhr von 0xdeadbeef editiert.
ja weil strcmp auch 0 liefert wenn beide gleich sind hab ichs so gesagt. wenn du es unbedingt andersrum haben willst solls mir auch recht sein... -- ...fleißig wie zwei Weißbrote
int f(char*s,char*r){return*s|*r?(*s^*r)&~32?1:f(++s,++r):0;}
und dein schummler mit dem funkion umschreiben gilt nicht... siehe aufgabenstellung... -- ...fleißig wie zwei WeißbroteDieser Post wurde am 14.09.2004 um 18:00 Uhr von Windalf editiert.