diff --git a/OLD.quiz b/OLD.quiz
new file mode 100644
index 0000000..aa12f3e
--- /dev/null
+++ b/OLD.quiz
@@ -0,0 +1,5354 @@
+Liedzeile (Anthea, 14. Jan 1995, 01:01:20):
+[Verlegt von allgemeines, Schrumpfi, 12. Jan 1995, 23:12:18]:
+m ist eindeutig von den sexpistols anarchie in the UK
+
+
+-----------------------------------------------------------------------------
+
+
+
+Quiz/Raetsel (Anthea, 14. Jan 1995, 01:01:22):
+[Verlegt von allgemeines, Anatol, 13. Jan 1995, 00:28:26]:
+
+Hiho!
+Nachdem Raetsel grade 'in' sind...mal ein richtig schweres:
+
+Wer knackt diesen Code?
+
+2 3 4 1 3 4 4 2 2 1 4 1 1 3 4 1 3 3 4 4 2 4 1 2 3 4 1 2 4 1 4 3 2 4 4
+1 3 2 4 2 2 4 2 3 4 1 3 1 4 4 3 4 1 1 3 4 1 1 4 1 2 4 4 4 2 2 1 4 1 1
+3 4 1 3 3 4 4 1 4 1 2 3 4 1 2 4 4 1 2 3 4 1 2 4 1 4 3 3 4 3 3 4 2 2 1
+4 4 2 1 4 1 1 3 4 1 1 3 4 1 1 4 4 4
+
+Tips:
+Biologen sind klar im Vorteil.
+Gelesen wird er wie ein normaler deutscher Text: von links nach rechts und
+von oben nach unten.
+
+Wetten, dass ihn keiner knackt?
+
+           Anatol (ueberzeugt)
+
+
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Preisraetsel (Anthea, 14. Jan 1995, 01:01:49):
+#! rn=Oetti rt=789928007
+[Verlegt von allgemeines, Engywuck, 13. Jan 1995, 10:46:05]:
+Also:
+e. Irgendwas von Pink Floyds "The wall".
+n. Reinhard Mey, "Ueber den Wolken"
+o. Rolling Stone "Under my thumb"
+
+Tja...war wohl nicht sehr gut, oder?
+
+Tschuessi, Engy
+
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Quiz/Raetsel (Anthea, 14. Jan 1995, 01:02:09):
+#! rn=Anatol rt=789953306
+[Verlegt von allgemeines, Beldin, 13. Jan 1995, 10:10:02]:
+Hmmmmmmm....
+
+Code? Was soll denn rauskommen? Irgendwas sinnvolles?
+Oder vielleicht nur eine Zeichenkette, welche vornehmlich aus den vier
+Buchstaben "A G C U" besteht - in wechselnder Reihenfolge?
+Das waere naemlich so das einzige was mir zum Thema 'Biologie' und den Zahlen
+1,2,3,4 einfallen wuerde.
+Dann waere das hier ja eine *grins* DesoxyriboNukleinSaeure-Sequenz (ich
+hasse dieses Wort...).
+
+Beldin... (Jurist, der muehsam seine Kenntnisse aus dem Bio-LK reaktivierte)
+
+:)
+
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Quiz/Raetsel (Anthea, 14. Jan 1995, 01:03:16):
+#! rn=Anatol rt=789953306
+[Verlegt von allgemeines, Anatol, 13. Jan 1995, 15:22:44]:
+
+*grmpf*
+Ok.
+Es sollte ein sinnvoller deutscher Satz rauskommen. Nur DNA-Buchstaben sind
+ein bisschen duerftig...naja.
+Ich setze einfach mal ein paar Muenzen aus. Der erste, der mit die Loesung
+(natuerlich mit Weg) zuschickt, bekommt eine kleine bescheidene Summe.
+Sagen wir mal 50000.
+Eventuelle 'Nachfragen' bitte auch nur gemailt. Sonst kriegen hier noch ein
+paar einen Herzkasper. Und das wollen wir nicht, oder?
+
+Anatol (traeumt von einer schoenen neuen Welt)
+
+
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Preisraetsel (Anthea, 14. Jan 1995, 01:03:22):
+[Verlegt von allgemeines, Arombolosch, 13. Jan 1995, 19:04:03]:
+a) 51st State of America, New Model Army ( YEAH !!! ;)
+g) HYPER HYPER ! (Yuk ;)
+
+Mehr weiss ich nicht. :)
+
+Arombolosch
+
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Preisraetsel (Anthea, 14. Jan 1995, 01:03:27):
+#! rn=Oetti rt=789928007
+[Verlegt von allgemeines, Anthea, 14. Jan 1995, 00:52:10]:
+Ihr seid doch alle Ignoranten und kennt keine gute Musik mehr:
+Lied o ist eindeutig von den BEATLES und zwar: Norwegian Wood.
+Anthea
+
+
+-----------------------------------------------------------------------------
+
+
+
+Liedquiz (Schrumpfi, 14. Jan 1995, 04:47:17):
+Mag auch mitmachen :)
+Aaaalso....
+a) A ragged cup a twisted mop, face of Jesus in my soup
+b)  Zwei Beamte in Zivil schieben sanft den alten Mann zur Maschine ins Exil
+wo er gluecklich sterben kann... (Kretek, is was fuer Dich ;) )
+c) Standing on the beach with a gun in my hand..
+d) Ich war in meinem ersten Leben ein Kohlweissling rein wie Schnee, ich
+starb an einem Fruehlingsmorgen an einem Koernchen DDT...
+e) Weisst du noch damals? Am azurblauem Meer? Es war genauso schoen wie beim
+ersten mal..
+f) Now theres 1984, are you ready for the 3rd WW, you two will meat the
+secret  police, they'll come and they jail you nice, go quietly to boot camp -
+they shoot you dead make you a man, dont......(Schon wieder was fuer dich
+Kretek;) )
+g) I hear you calling marian...
+h) Mensch Meier kam sich vor wie ne Oelsardine irgendjemand stand auf seinem
+rechten grossen Zeh, dass passierte ihm auch noch in aller Herrgottsfruehe im
+29er kurz vor Wannensee ...
+j) Und als ich mich an dich verloren hab ich einen andern gedacht, so ward
+die Luege geboren, schon in der ersten Nacht..
+i) Oh brother be a brother fill this tiny cup of mine and please sir make it
+whisky i have no head for wine....
+So ratet mal brav :) wer die meisten weiss kriegt von mir 5000 Muenzen wer
+alleweiss 20000 :)
+Schrumpfi
+
+-----------------------------------------------------------------------------
+
+
+
+Loesung (Oetti, 14. Jan 1995, 13:43:48):
+Hier die Loesung meines Raetsel, uebrigens ist Boing der Gewinner mit 3 aus
+40. glaub ich...
+
+a.) New Model Army, 51st State
+b.) In the dutch mountains, The Nits
+c.) Fred vom Jupiter, Die Doraus und die Marinas
+d.) The name of the game, Abba
+e.) Pink Floyd, Nobody Home
+f.) Would you be my girl (Sally), The Police
+g.) Hyper Hyper, Scooter
+h.) Heinz Rudolf Kunze, Keine Angst
+i.) Il, Les negresses verte
+j.) BAP, Muesli Man
+k.) Aerzte, Ich weiss nicht ob es Liebe ist
+l.) Queen, Somebody to love
+m.) Anarchy in the UK, Sex Pistols
+n.) Rheinhard Mey, Ueber den Wolken
+o.) Norwegian Woods, The Beatles
+
+Ich fands nicht soo schwer, klar ich mag die ganzen Lieder ja auch :-)))
+
+Ciao Oettl
+
+-----------------------------------------------------------------------------
+
+
+
+Schrumpfi Quiz (Oetti, 14. Jan 1995, 13:50:31):
+Schrumpfi Quiz:
+
+c.) Cure, Killing an Arab (Goooil)
+g.) Sisters of Mercy, Marian (Yeah)
+h.) Ton Steine Scherben, Dieser Schwarzfahrer Song, wie heisst er denn...
+i.) Whisky in the Jar...?, Is doch ein Irischer Folksong, oder Schottisch
+*argl*
+
+mehr weiss ich glaub ich nicht
+
+Ciao
+
+Oettl
+
+-----------------------------------------------------------------------------
+
+
+
+Liedquiz (Schrumpfi, 14. Jan 1995, 15:46:27):
+Yeah Oetti hat drei richtige :)
+Der Song von den Ton-Steine-Scherben heisst 'Mensch Meier'
+Schrumpfi
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Liedquiz (Zardoz, 16. Jan 1995, 09:07:05):
+#! rn=Schrumpfi rt=790055237
+Ich hab nur eins erkannt:
+f) Dead Kennedys: We've got a bigger problem now :-)
+
+-----------------------------------------------------------------------------
+
+
+
+Noch ein Raetsel (Zardoz, 16. Jan 1995, 09:20:28):
+Und noch ein schoenes Liederraetsel:
+a) Israel must unite
+b)what would daddy say if I blew mom away?
+c)how did the cat gets so fat?
+d)I'll believe in god when 1+1=5
+f)I am Emperor Ronald Reagan, born again with fascist cravings (fuer
+Schrumpfi)
+g)what's the problem, oh my god?
+h)all I know is that I don't know nothing
+i)the only hazard I see ist yourself
+j)she said,"I'll never forget the first time you kissed me,
+  now I want you to fist me."
+k)don't wanna end up downtown unwound found drowned
+l)look at him he's insane
+m)airplanes falling from the sky
+Viel Spass :-)
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Loesung (Boing, 16. Jan 1995, 14:36:58):
+#! rn=Oetti rt=790087428
+Kann nicht sein, ich hatte doch nur 2 Richtige ... (eigentlich nur 1 1/2,
+bei Pink Floyd hatte ich den falschen Titel (aber die richtige platte)).
+  Boing
+
+-----------------------------------------------------------------------------
+
+
+
+Naechste Zeile? (Highlander, 17. Jan 1995, 15:08:13):
+So, ich hab auch noch eines, aber ich aendere die Regeln mal eben leicht:
+Ich moechte zu Interpret/Titel auch noch die naechste Zeile, bitte :>
+Und: Bekannt sind alle Stuecke, ich greife also nicht auf obskure
+Heavy-Metal-oder-was-weiss-ich-Gruppen zurueck ;>
+Bei einem reicht mir im Prinzip naechste Zeile und Stueck, wer mehr weiss,
+soll's schreiben :>
+OK, here we go:
+a)
+Hoppla...
+a) Ja, wir lieben uns nur von der Fern
+b) Heavy Metal, Suicide,
+c) Wir betreten feuertrunken
+d) Beim Barte des Propheten
+e) Knows not where he's going to
+f) There's just one solution that can't be avoided
+g) I am a satellite
+h) Dass der Herrgott den Weg in den Himmel Dir bahne
+i) That ain't working
+j) Can you work some magic with your own two hands
+k) I'll give my cousins a free ride
+Das war's schon :>  Na, OK, eines ist ein bisschen schwer und eines ziemlich
+ungewoehnlich :>
+
+  Highlander
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Naechste Zeile? (Aranya, 17. Jan 1995, 15:16:32):
+#! rn=Highlander rt=790351693
+c) L.v.Beethoven: Ode an die Freude, Himmlische, dein Heiligtum
+h) Udo Juergens: Aber bitte mit Sahne, Aber bitte mit Sahne
+g) Queen: Bohemian Rhapsody, I'm out of control (?)
+
+Aranya
+      Froh, dass sie auch mal was weiss.
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Re: Naechste Zeile? (Aranya, 17. Jan 1995, 15:19:48):
+#! rn=Aranya rt=790352192
+Vielmehr:
+g) Queen: Don't stop me now, Ready to reload.
+
+Sorry fuer Irrtum!
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Highlander Quiz (Oetti, 17. Jan 1995, 16:00:30):
+Huhu
+
+c.) ,himmlische Dein Heiligtum, L.v.B, Symphonie Nr. 9 Schlusssatz Ode an die
+Freude (Schiller)
+Queen, Dont stop me now, on my way to Mars, on a
+collision course I'm outta control, I'm a Sex machine...
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Re: Naechste Zeile? (Yantro, 17. Jan 1995, 17:40:12):
+#! rn=Aranya rt=790352192
+hi,
+
+b) ist we didn't start the fire von billy joel
+g) ist zwar Queen, aber Don't stop me now (I'm out of control ist richtig)
+
+-----------------------------------------------------------------------------
+
+
+
+ (Schrumpfi, 17. Jan 1995, 17:53:23):
+Liedquiz Aufloesung
+Ok hier meine Aufloesung:
+a) Nick Cave - Mercy-Seat
+b) Razzia - fahnensong
+c) Cure - Killing an Arab
+d)Franz Morak - Der Kohlweissling und die Apokalypse
+e) Peter Alexander - Liebe kommt so wie ein bunter Schmetterling
+f) Dead Kennedys - California ueber alles
+g) Sisters of Mercy - Marian
+h) Ton-Steine-Scherben - Mensch Meier
+j) Zarah Leander - Nur nicht aus Liebe weinen
+i) Nick Cave - Brother my Cup is empty
+
+Damit ist Oetti, mit drei richtigen, derGewinner :)
+Schrumpfi
+
+-----------------------------------------------------------------------------
+
+
+
+Re:  (Kretek, 17. Jan 1995, 18:19:43):
+#! rn=Schrumpfi rt=790361603
+Schrumpfi, Schrumpfi...
+Wenn man hier schon Quizzes veranstaltet und dann die Loesungen
+praesentiert, sollten sie aber _richtig_ angegeben werden!
+Fuer alles: Das Stueck von Razzia heisst nicht "Fahnensong", sondern
+"Fahnensog"!
+
+c u l8er,
+Kretek (Razzia-Fan)
+
+-----------------------------------------------------------------------------
+
+
+
+ (Schrumpfi, 17. Jan 1995, 18:20:15):
+Liedquiz Aufloesung
+b) ist natuerlich Fahnensog und nicht Fahnensong
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Re:  (Kretek, 17. Jan 1995, 18:20:37):
+#! rn=Kretek rt=790363183
+PS: :))
+
+-----------------------------------------------------------------------------
+
+
+
+ (Schrumpfi, 17. Jan 1995, 18:21:37):
+Liedquiz
+Sorry Kretek hab mich vertippt
+
+Schrumpfi verbeugt sich sogar vor Razzia ;-)
+
+-----------------------------------------------------------------------------
+
+
+
+ (Georg, 18. Jan 1995, 09:21:21):
+So jetzt will ich auch mal ein Raetsel stellen. (Ja,ja ich weiss
+die Quiz-Mania ist shon wieder vorbei)
+Es gibt sogar was zu gewinnen!!
+1.Preis: (bei 10 Richtigen) Eine Ueberraschung!
+2.Preis: Einen Stab.
+3.Preis: Ein T-Shirt (selbst bedruckbar!)
+
+Also hier die Fragen:
+1) the white man ome to pillage my village
+2)... victory through domination ...
+3)my underwear and the garden fence
+4)when the rain comes i sit home and pray
+5)the water is so yellow, i'm a healthy student
+i love me, i love me, i love me
+waiter, there's a terrorist in my soup
+8) just a proove, the war was here
+9)Only so many songs can be sung with ...
+10) Ich bin ein Mutterbeischlafendes Erfrischungsgetraenk auf
+    Schwarzteebasis, Prostituierte
+
+mist... ich merke gerade, dass ich ein paar zeilennummern vergessen habe.
+egal.
+
+JEHOVA sei mit Euch! Georg
+
+P.S.: Pteppic darf nicht mitmachen ! :)
+P.S.S.: 1,2 sind speziell fuer Zardoz und Toeter ! :)
+
+-----------------------------------------------------------------------------
+
+
+
+artikel 26 nach quiz (Pteppic, 18. Jan 1995, 12:38:24):
+Also das von Georg ist ja Rassismus pur. Ich darf als einziger nicht
+mitmachen... :)
+So hier kommt mein eigenes Raetsel... Ueber die Belohnung muss ich noch mit
+Georg reden ...
+
+a) drug me with your crossword puzzles...
+b)aqua sea foam shame
+c)love puppet with no strings thats what the spiral-eyed girl sings
+d)the pallaces now stand where the coffins all were laid
+e)an the tears he cried will rain on walls
+f)fuck americanism fuck nationalism
+g)don't you know that the time has arrived
+h) with rewritten histories and a fictional past
+i) our protagonist named bill
+j) ah, ah, ah, ah, yeah, yeah, oh shit, oh, oh, oh, oh     :)
+
+
+viel spass
+
+JEHOVA sei mit allen Zeitungslesern
+             euer Pteppic
+
+-----------------------------------------------------------------------------
+
+
+
+Ich will auch mal! (Boing, 18. Jan 1995, 14:39:55):
+Halloli!
+Jetzt will ich doch auch mal ein Quiz machen, Antworten bitte nicht in diese
+Rubrik sondern direkt per mail an mich, sonst ist hier immer alles so schnell
+zugemuellt. Der Gewinner bekommt ein von mir handgenaehtes Kissen ... ;)
+Oder lieber ein bei Klonks legendaerer Hamburger-Fete entstandenes MonCherie?
+Naja, nach Wahl ... ;)
+
+a) Deaf, dumb and blind
+b) This will be all that I fled from
+c) You're a thousands mind within a flash
+d) They say jump, you say how high
+e) The lunatic is on the grass
+f) Do you want to be hypnotized?
+g) She'll pray for endless sundays
+h) Burn you racist bitch
+i) And I let go
+j) Hot air for a cool breeze?
+k) The graves were disturbed and the coffins wide open    :)
+l) Rael Imperial Aerosol Kid
+m) Chants rise in terror, pray round the oaken beam
+n) I can't stand it, I know you planned it
+o) I trusted my venus was untouched in her shell
+p) What price the crown of a king on his throne,
+   when you're chained in the dark all alone
+q) With the shimmering silver head of wisdom looking at me
+r) He converteth me to lamb cutlets
+s) They like a nigga like me 'cause I'm a known crook
+
+  Boing
+
+-----------------------------------------------------------------------------
+
+
+
+nochn Quiz (Oetti, 18. Jan 1995, 15:04:56):
+Huhu Kinnings !
+Diemal nicht Liedzeilen sondern Passagen aus beruehmter Literatur und/oder
+Filmen.
+
+1.) I'll be back...
+2.) When shall we three meet again,...
+3.) Ich bin das Baby, ihr muesst mich alle Liebhaben.
+4.) Oh Gott, lass mich sterben... :-))
+5.) Don't mention the war (schwierig)
+6.) Nudge, Nudge, know what I mean...
+7.) Jehova, Jehova
+8.) Schau mir in die Augen, kleines (musste sein)
+9.) Titten, Titten, Titten
+10.) hmmmm,hmmmmm, ich hab's !!
+
+Viel spass beim Raetseln
+
+Oetti
+
+-----------------------------------------------------------------------------
+
+
+
+ (Schrumpfi, 18. Jan 1995, 16:01:04):
+Oettis Quiz
+
+3) Die Dinos
+7) Das Leben des Brian
+8) Casablanka
+9) Der bewegte Mann von Ralf Koenig
+
+Schrumpfi
+
+-----------------------------------------------------------------------------
+
+
+
+Re: nochn Quiz (Schlonz, 18. Jan 1995, 17:01:17):
+#! rn=Oetti rt=790437896
+2. Mc Beth
+3. Dinos
+7. Live of Brian
+8. assablanca
+9. Der bewegte Mann
+
+Schlonz
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Re: nochn Quiz (Schlonz, 18. Jan 1995, 17:02:19):
+#! rn=Schlonz rt=790444877
+8. nicht assablanca sondern Cassablanca, sorry
+
+-----------------------------------------------------------------------------
+
+
+
+ (Elric, 18. Jan 1995, 17:48:29):
+georg-quiz
+Nicht nur fuewr Zardoz&Toeter...
+1 : NOFX, Kill All The White Man (mit a)
+2: Bad Religion, Land of Competition.
+Das letzte koennte von Blumfeld sein. Oder Sterne ?
+
+Eigentlich keine Ahnung,
+         Elric.
+
+-----------------------------------------------------------------------------
+
+
+
+Re: nochn Quiz (Ratz, 18. Jan 1995, 18:38:40):
+#! rn=Oetti rt=790437896
+das letzte mit koennte aus der Fehrnsehserie Wicki stammen!
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Re: nochn Quiz (Caradhras, 19. Jan 1995, 04:07:36):
+#! rn=Ratz rt=790450720
+Koennte nicht nur, das stammt von Wickie :) Immer wenn ihm was neues
+einfiel.
+ :-) Ansonsten kenn ich zwar alles schon genannte, aber nix neues :(
+
+   *seufz*      Caradhras der ewige Prophet -
+           nachdenklich die Nase reibend     *schnipps* Ich habs! :)
+
+-----------------------------------------------------------------------------
+
+
+
+Re: nochn Quiz (Georg, 19. Jan 1995, 11:22:07):
+#! rn=Oetti rt=790437896
+Tja 2 weiss ich ! :)
+
+
+Jehova, Jehova -> Das Leben des Brian. :)
+Schau mir in die augen Kleines -> Mephis, H.B. :)
+
+JEHOVA sei mit euch
+
+georg
+
+-----------------------------------------------------------------------------
+
+
+
+Re: nochn Quiz (Highlander, 19. Jan 1995, 11:25:17):
+#! rn=Oetti rt=790437896
+1) Terminator
+2) MacBeth
+7) Life of Brian
+8) :) Weisses Haus
+10. Wicki
+
+HrT
+
+-----------------------------------------------------------------------------
+
+
+
+Re: nochn Quiz (Aranya, 19. Jan 1995, 13:16:35):
+#! rn=Oetti rt=790437896
+Also 2 ist klar: Macbeth, Anfangszeilen. Und 8 muss ja nicht erwaehnt werden:
+4x im Weissen Haus.
+
+Nur so. Aranya
+
+-----------------------------------------------------------------------------
+
+
+
+Re:  (Bungle, 19. Jan 1995, 20:40:16):
+#! rn=Georg rt=790417281
+Hallo!
+
+Man was bin ich froh : Nummero 9 ist NoMeansNo ! ...with two lips,two lungs
+and one tongue!
+Nr. 7 wuerd ich ja sagen von Ludichrist 'Immaculate Deception', aber da hiess
+es ..there's a god in my soup... :) naja vielleicht gibt's ja 'n Trostpunkt.
+Nr. 1 : Bad Brains ???
+Menno was schreib ich ueberhaupt, ich weiss ja doch nix, sorry... :)
+Tschuessi, Bungle.
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Ich will auch mal! (Felagund, 20. Jan 1995, 07:43:22):
+#! rn=Boing rt=790436395
+ich weiss auch mal was:
+g:.. as she enters saffron sunsets... ist von marillion's chelsea monday!
+und das eine is von den beatles i say yes,you say no oder so-
+war wohl nich so doll.....YTF(hab ich mir mal ausgeborgt catweazle)
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Ich will auch mal! (Boing, 23. Jan 1995, 22:28:49):
+#! rn=Boing rt=790436395
+Hier die Antworten zu meinem Quiz, ich bezieh mich auf meinen eigenen
+Artikel, falls jemand noch mal schauen will. Bei a) hab ich auch Pinball
+wizard von The
+Who gelten lassen.
+
+a) Dogs, Pink Floyd
+b) One for the Vine, Genesis
+c) Here comes the Flood, Peter Gabriel
+d) Bullet in the Head, Rage against the machine
+e) Brain Damage, Pink Floyd
+f) Adam in Chains, Billy Idol
+g) Chelsea Monday, Marillion
+h) Momma's gotta die tonight, BodyCount
+i) Love to be loved, Peter Gabriel
+j) Wish you were here, Pink Floyd
+k) Dead man's Dream, Procol Harum
+l) The Lamb lies down on Broadway, Genesis
+m) Grendel, Marillion
+n) Sabotage, Beastie Boys
+o) Modern Love, Peter Gabriel
+p) The Cask of Amontillado, Alan Parson's Project
+q) Supper's ready, Genesis
+r) Sheep, Pink Floyd
+s) Bowels of the Devil, BodyCount
+
+  Boing
+
+PS: Ach ja! Sieger ist Klonk mit 6 Richtigen!
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Naechste Zeile? (Jimdigriz, 26. Jan 1995, 12:15:37):
+#! rn=Highlander rt=790351693
+hmmm eins faellt mir ein:
+
+e> Beatles, Nowhere Man, Zeilen:
+Knows not where he's going to, doesn't have a point of view , nowehere man
+.... (oder war das die zeile davor ?)
+
+Ciao, JimdiGriz (oops evtl hat schon jmd geantwortet, hab noch
+garnichweitergeleden)
+
+-----------------------------------------------------------------------------
+
+
+
+Quiz (Li, 26. Jan 1995, 15:15:10):
+
+*****************************************************************************
+*             MORGEN,  12 UHR,    GROSSES TOLKIEN-QUIZ                      *
+*                                                                           *
+*        WO?:   Festsaal der Unterwelt                                      *
+*        Wann?  Freitag, 27.1.95 , 12 Uhr                                   *
+*        Inhalt: Der Herr der Ringe (exklusive Anhaenge)                    *
+*                                                                           *
+* Mitmachen kann natuerlich jeder: Spieler, Seher, Magier und Goetter       *
+*                                                                           *
+* Damit das Ganze auch einen Reiz hat, erhaelt der Gewinner ein Amulett     *
+* mit dem aufgravierten Wappen von Koenig Elessar (Aragorn II.)             *
+*                                                                           *
+*****************************************************************************
+
+
+-----------------------------------------------------------------------------
+
+
+
+Tolkien-Quiz (Caradhras, 26. Jan 1995, 16:37:32):
+                       Halloechen
+
+Da alle Welt quizzt, moechte ich auch eines machen, natuerlich ueber
+Tolkien, besser gesagt Mittelerde :) Einige Fragen sind ziemlich heftig,
+dafuer gibts dann auch ne Belohnung fuer die ersten 4 Plaetze. Wenn
+mehrere punktgleich sind, lose ich. Magier und Goetter duerfen mitmachen,
+kriegen aber keine Preise (bzw. geben freiwillig (per Definition) ihre
+Preise weiter an die naechsten Spieler ;-) )
+Noch etwas: Ich verteile auch Teilpunkte, also wer ne Frage nicht 100
+prozentig beantworten kann... nicht so schlimm. Dafuer sind es aber
+40!! Fragen. Preise sind auch entsprechend. *grins*
+
+Antworten bitte nur per Brief an mich, Reply-Artikel zaehlen nicht.
+Einsendeschluss naechster Montag, High Noon (damit man zuhause auch
+nachkucken kann)
+
+Preise zu gewinnen gibt es:
+
+1. Platz: 20.000 Muenzen oder
+         1 Blutsauger-Schwert, 1 Krone mit 5 Kristallen, 1 Steinbeisser-
+         Amulett und glaenzende Stiefel
+
+2. Platz: 15.000 Muenzen oder
+         1 Krone mit 5 Kristallen, 1 Steinbeisser-Amulett, Eispanzer
+         und glaenzende Stiefel
+
+3. Platz: 10.000 Muenzen oder
+         1 Steinbeisser-Amulett, Lichtpanzer, glaenzende Stiefel und
+         Lederhandschuhe
+und
+4. Platz:  5.000 Muenzen oder
+         1 Steinbeisser-Amulett und Lederstiefel
+
+
+ 1) Wie heissen die 3 Berge von Moria? (auf Sindarin)?
+ 2) Wie heissen die 3 Berge in der Zwergensprache und auf Deutsch?
+ 3) Wie heissen die 9 Gefaehrten?
+ 4) Wieviele Silmaril gab es?
+ 5) Wie starb Feanor?
+ 6) In welche 3 Teile zerfiel Arnor?
+ 7) Nenne mir 5 Valar!
+ 8) Wer erschlug Ancalagon?
+ 9) Was ist ein Balrog? Welcher Rasse gehoert er an?
+10) Nenne mir 3 der Istari (Zauberer)
+11) Wieviele Istari gibt es?
+12) An welchem Fluss liegt das Bockland? (2 Namen)
+13) Was fuer Heere sind gemeint bei 'Die Schlacht der 5 Heere'?
+14) Wer toetete Smaug?
+15) Wie hiess das Schwert Fingolfins?
+16) Wen heiratete Sam Gamdschie?
+17) Nenne mir 2 andere Namen fuer Aragorn!
+18) Wie heisst der Schlachtruf der Zwerge? (4 Worte)
+19) Wieviele Kinder hatte Sam?
+20) Welche 2 Geburtstage feierten Frodo und Bilbo im Jahre 3018?
+21) Wie heisst der Koenig von Westernis bei dessen Untergang?
+22) Wie heissen die begleiter thorin eichenschilds und Bilbos auf
+    der Fahrt zum Berg Erebor?
+23) Wie heisst der Vater von Legolas?
+24) Ein anderer Name Gollums.
+25) Wie nennt Baumbart Lorien?  (fies ;-)
+26) Wen heiratet Elrond? Wer war die Mutter von ihr?
+27) Wie heissen die Kinder Hurins?
+28) Wen heiratete Thingol?
+29) Wieviele Kinder hatte Finwe? Wie heissen sie?
+30) Wer ist der Vater von Galadriel?
+31) Nenne mir 3 andere Namen fuer Bruchtal.
+32) Der Name der 2 Baeume von Valinor?
+33) Wie heisst der Herr der Adler in der Altvorderenzeit?
+    (Tip: Er hatte sein Nest in den Gipfeln der Thangorodrim)
+34) Name des Speers Gil-Galads
+35) Wie heissen die Hallen von Koenig Theoden und in welcher
+    Stadt liegen sie?
+36) Wie heisst der Wirt des Taenzelnden Ponys?
+37) Anderer Name fuer die Wetterspitze?
+38) Wie heisst die Stadt inmitten der umzingelnden Berge?
+39) Name der Maia der Sonne und des Mondes?
+40) Wer war der weiseste der Maia?
+
+
+Ein kalter Wind blies hinter ihnen her, als sie dem Rothornpass den
+Ruecken wandten und muede den Hang hinunterstolperten.
+Caradhras hatte sie besiegt.
+
+
+Viel Spass :) Und bitte nicht in die Rubrik Quiz antworten, Loesung
+kommt am Montag von mir. Rest wie gesagt per Brief.
+
+          Caradhras - der hoechste Berg Morias :)
+
+-----------------------------------------------------------------------------
+
+
+
+Re: artikel 26 nach quiz (Jimdigriz, 26. Jan 1995, 16:46:59):
+#! rn=Pteppic rt=790429104
+ j weiss ich :)
+j) Evil Dick von Body Count , weiter gehn tuts: come here baby, come here
+baby ... :)
+
+Ciao, James Bolivar diGriz
+
+-----------------------------------------------------------------------------
+
+
+
+Re: nochn Quiz (Jimdigriz, 26. Jan 1995, 16:55:49):
+#! rn=Oetti rt=790437896
+pfffffff
+
+7) klaro, live of brian
+8) casablanca ?
+9) der bewegte mann
+
+Ciao, Jim diGriz
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Re: nochn Quiz (Jimdigriz, 26. Jan 1995, 17:14:52):
+#! rn=Jimdigriz rt=791135749
+...
+kam wohl ein bischen spaet.. ;-)
+Jim
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Tolkien-Quiz (Li, 27. Jan 1995, 08:38:56):
+#! rn=Caradhras rt=791134652
+
+Also sowas!
+Da kann man nur sagen:
+"Zwei Mann, ein Gedanke"
+Ehrlich, Cara, ich hatte absolut keine Ahnung, dass du auch ein Tolkien Quiz
+machen wolltest. Naja, aber zum Glueck habe ich andere Frage.
+
+
+Mein Quiz findet Heute um 13 Uhr, nicht um 12 Uhr statt, Ort:Festsaal der
+Unterwelt.
+bis denn,
+Li
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Tolkien-Quiz (Caradhras, 28. Jan 1995, 01:30:26):
+#! rn=Caradhras rt=791134652
+Ich muss noch etwas zu meinem Quiz ergaenzen:
+
+In Frage 9 will ich nicht als Antwort Valaraukar hoeren, denn das ist
+nur Quenya fuer Balrog. Ich will einmal ne Kurzbeschreibung (ein Wort reicht)
+und dann noch die Rasse (entsprechend wie Mensch, Elb, Zwerg ...) und
+das ist NICHT Valaraukar. :)
+
+Ansonsten gibts natuerlich Abzug, wenn man Dinge nennt, die zwar
+richtig waeren, aber dann noch etwas falsches dazuschreibt. Das sollte
+klar sein. Solange kein Reboot bis Montag stattfindet wird dann wohl die
+Preisverteilung sein.
+Bisher hab ich erst 2 Antworten und erst ein Preis von den 4
+wird vergeben. (andere ist Magier)
+Also schreibt was.
+
+      tschoe         Caradhras - wirft mit Schnee um sich :)
+
+-----------------------------------------------------------------------------
+
+
+
+Duncton Quiz (Tryfan, 28. Jan 1995, 11:23:22):
+Hi Leute,
+ wollen wir doch mal sehen, wer durch Duncton nicht nur einfach so durch-
+gerannt ist, sondern auch mal ein wenig links und rechts geschaut hat.
+ Die Antworten zu folgenden Fragen kann man alle (auch zu den Expertenfragen)
+in Duncton erfahren. 
+
+			D U N C T O N    Q U I Z
+
+- Fragen, die jeder beantworten koennen sollte -
+a) Wer ist der aelteste Maulwurf von Duncton?
+b) Wie heisst Brackens Bruder?
+c) Wer begleitete Boswell zurueck nach Uffington?
+d) Wer hat den Stein von Duncton als erster aufgestellt?
+e) Welchen Gegner hat man laut Medlar am meisten zu fuerchten?
+f) Warum sollte man die Wuermer der Aeltesten nicht klauen?
+g) Wie heisst das (neue) Zentrum von Duncton?
+h) Wer besiegte den Moerder von Hulver?
+
+- Diese Fragen sind schon etwas schwieriger -
+i) Wer war Hulvers bester Freund in Duncton?
+j) Wer ist so schlau wie ein Wiesel?
+k) Wer ist Brackens Schwiegervater?
+l) Wie hiess die Lehrerin von Rose?
+
+- Diese Fragen sind schon ziemlich happig -
+m) Warum kam so lange kein Schreiber mehr nach Duncton?
+n) Wer ist mein Schwiegervater?
+o) Wie nennen die Maulwuerfe die Elfen, Menschen und Zwerge?
+
+- Diese Fragen sind fuer die Experten -
+p) Warum brach Boswell seine Geluebde?
+q) Woher habe ich meinen Namen?
+r) Wie heisst der Titel zu Boswells Lehre?
+
+
+ Ehrlich gesagt erwarte ich kaum, dass jemand alle Fragen beantworten kann.
+Bei vielen Fragen reicht mir als Antwort schon die Beschreibung des
+Maulwurfs, wenn man den Namen nicht mehr weiss, oder der ungefaehre Name.
+ Einen Preis fuer den Gewinner habe ich mir noch nicht ueberlegt, sollte
+aber jemand wirklich alle Fragen beantworten koennen, liegt ein RL-
+Sachpreis im Bereich des Moeglichen. ;)
+ Magier koennen natuerlich gerne mitmachen, aber leider ausser Konkurenz.
+
+ Antworten bitte per mud-mail zu mir und nicht in die MPA!! 
+Der Gewinner wird in ca. zwei Wochen bekannt gegeben. Bis dahin nehme ich
+alle Antworten und Ergaenzungen an. Wie gesagt, alle Antworten stecken in 
+der Quest, und die steht jedem offen.
+
+		Tryfan aus Duncton
+		(Weisser Maulwurf)
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Re: Tolkien-Quiz (Acrimon, 29. Jan 1995, 03:28:13):
+#! rn=Caradhras rt=791253026
+Du hast bereits einen Preis vergeben, obwohl der Termin noch nicht gekommen
+ist?
+Was sollen wir dazu sagen?
+Caradhras, du weit ja noch nicht, wer besser ist!
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Re: Tolkien-Quiz (Hobo, 29. Jan 1995, 16:23:43):
+#! rn=Caradhras rt=791253026
+Das ist fies, Cara!
+Warum bekommen Maggis keine Preise?
+
+    Hobo ( fuehlt sich diskriminiert ;) )
+
+-----------------------------------------------------------------------------
+
+
+
+Re^3: Tolkien-Quiz (Kretek, 29. Jan 1995, 19:23:59):
+#! rn=Hobo rt=791393023
+Weil du dir doch eh alles clonen kannst, was Cara an Preisen zu geben hat!
+Und wenn du's nicht kannst, dann kraul Boing doch ein bisschen... :)
+
+Alles klar?
+
+
+Mit einem breiten Grinsen im Gesicht,
+
+Kretek
+
+-----------------------------------------------------------------------------
+
+
+
+Re^5: Tolkien-Quiz (Hobo, 29. Jan 1995, 19:38:24):
+#! rn=Hobo rt=791404609
+Klar, kann ich mir das Zeug clonen, aber das ist einfach nicht das selbe.
+
+Aber ich mach ja sowieso nicht mit (wuerde alles von Boing abschreiben)
+
+   Hobo
+
+-----------------------------------------------------------------------------
+
+
+
+Re^6: Tolkien-Quiz (Kretek, 29. Jan 1995, 19:51:14):
+#! rn=Hobo rt=791404704
+
+Also:
+Hobo hat Recht.
+Hobo hat immer Recht.
+Egal, um was es geht, Hobo hat einfach Recht.
+
+Boing! Den Artikel nicht einfach uebergehen! Lies das ruhig! Und jetzt
+auch nicht ignoriere artikel.kretek eingeben!
+Denn es stimmt einfach:
+
+HOBO HAT EINFACH IMMER RECHT!
+
+
+Unterwuerfig grinsend,
+Kretek
+
+-----------------------------------------------------------------------------
+
+
+
+Re^3: Tolkien-Quiz (Caradhras, 29. Jan 1995, 20:00:29):
+#! rn=Hobo rt=791393023
+Ich hab doch gesagt, Magier bekommen Preise :)
+Nur haben sie sie dann sofort per Definition weiterzugeben, wenn sie das
+nicht tun, gibt es sie auch nicht. Aehm, oder wie war das? :)
+Momentan ist eh nur eine Suppenkoenigin auf einem der ersten 4 Plaetze,
+naemlich Arien. Der Rest sind Spieler.
+
+      tschoe
+Caradhras der prophetenhaft hungrig Gummibaerchen sehende Golddrachenberg
+
+-----------------------------------------------------------------------------
+
+
+
+Tolkien Quiz, Freitag, Antworten (Li, 30. Jan 1995, 11:27:19):
+
+So fuer alle, die am Freitag an dem Herr der Ringe Quiz mitgemacht haben (
+und natuerlich auch fuer alle anderen) , hier noch 'mal die Fragen und die
+Antworten
+
+
+
+
+
+Bd 1
+
+
+1 )    Was waren die Geschenke, die Galadriel Sam und Frodo bei
+        ihrer Abreise gab?
+
+       Sam bekam ein Kaestchen, dass Erde aus ihrem Obstgarten und den Samen
+       eines Mallorn enthilt. Frodo bekam eine Phiole mit Licht von
+earendils
+       Stern, das in dem Wasser der Quelle, die Galadriels Spiegel speist,
+       eingefangen war.
+
+
+
+2)      Wer allein gab den einen Meisterring freiwillig
+        irgendjemanden zum Geschenk?
+
+        Bilbo
+
+
+3)    Welchen Namen fuehrte Frodo  beim Gasthaus in Bree?
+
+      Herr Unterberg
+
+
+4)    Wer sagte folgendes bei welcher Gelegenheit:
+       "Verdient ihn! Das will glauben. Viele, die leben, verdienen den
+       Tod. Und manche, die sterben, verdienen das Leben. Kannst Du
+       es ihnen geben?"
+
+
+      Gandalf zu Frodo, darueber, dass Gollum am Leben gelassen wurde,
+      nachdem Aragorn ihn (Gollum) aufspuerte.
+
+
+
+12)     Wer sagte folgendes bei welcher Gelegenheit:
+          "Er ist kuehn, kuehner als viele annehmen. Denn heutzutage
+         faellt es den Menschen schwer zu glauben, dass ein
+         Heerfuehrer klug sein kann und bewandert in den alten
+         Schriften der Lehre und des Liedes, wie er es ist, und
+         dennoch ein Mann von Beherztheit und rascher Entscheidung
+         auf dem Schlachtfeld."
+
+        (Tja, wohl die schwerste Frage: Beregond, der pippin ueber
+        Faramir erzaehlte.)
+
+
+
+Soviel fuer Heute, demnaechst mehr.
+Li
+
+
+-----------------------------------------------------------------------------
+
+
+
+Antworten II (Li, 30. Jan 1995, 11:56:14):
+Hoplla, ich hab grad gesehen, dass ein Teil der Antworten auf seltsame Art
+verschwunden sind. hier sind sie:
+
+Bd 2
+
+5)    Waehrend sie Frodo suchten, wurden Boromir, Pippin und
+       Merry  von Orks angegriffen. Was wahr ungewoehnlich an
+       diesen Orks?
+
+
+      Einige der Ork kamen nicht aus Mordor, sondern trugen
+      Sarumans Zerichen und konnten der Sonne trotzen.
+
+
+
+6)   Als die Ents nach Isengart marschierten, wurden sie von Wesen
+     begleitet, die ihnen aehnlich waren. wie wurden diese
+     Lebewesen genannt?
+
+     Huorns.
+
+7)   Gandalf sagte zu Saruman, dass er Orthanc unverletzt verlassen
+      koenne, wenn er Gandalf zwei Sachen gaebe. Welche?
+
+
+     Sarumans Stab und den Schluessel von Orthanc.
+     ( Viele antworteten: Palantir, aber Gandalf wusste nicht, dass der
+     Palantir von Isengart ueberhaupt noch existierte.)
+
+
+8)   Wer sagte folgendes bei welcher Gelegenheit:
+       "Die Welt ist seltsam geworden. Elben und Zwerge wandern
+      gemeinsam ueber unsere alltaeglichen Weiden;  und Leutee
+      sprechen mit der Herrin des Waldes und sind dennoch am
+      Leben..."
+
+     Eomer zu Aragorn, waehrend ihres ersten Zusammentreffens.
+
+
+Bd.3
+9)     Auf wieviel Stufen war Minas Tirith erbaut?
+
+       Sieben.
+
+
+10)    Viele der Maenner in Minas Tirith nannten Pippin Ernil i
+         Pheriannath. Was bedeutete diese Bezeichnung?
+
+       Fuerst der Halblinge.
+
+
+11)     Wer toete den Herrn der Nazgul, der nicht von der Hand
+          eines Mannes fallen konnte?
+
+       Er wurde von einem Hobbit (Merry) und einer Frau (Eowyn)
+       erschlagen. (Ich hab nur Eowyn auch gelten lassen)
+
+
+
+
+-----------------------------------------------------------------------------
+
+
+
+Aufloesung & Gewinner des Mittelerde-Quiz (Caradhras, 30. Jan 1995, 14:43:52):
+                   So, das Quiz ist vorbei :)
+
+Ich musste leider um Platz 1 losen lassen, weil Ancalagon und Throin
+die gleiche Punktzahl hatten.
+
+Gewinner ist:
+                ANCALAGON mit 39.7 Punkten
+2ter Platz:     THROIN    mit 39.7 Punkten
+3ter Platz:     ZEPHYR    mit 39.0 Punkten
+4ter Platz:     JIMDIGRIZ mit 38.5 Punkten
+
+5ter Platz:     ARIEN     mit 37.2 Punkten
+6ter Platz:     ACRIMON   mit 29.2 Punkten
+7ter Platz:     BOING     mit 21   Punkten
+8ter Platz:     GRIMMBORN mit 11   Punkten
+9ter Platz:     OETTI     mit  4.8 Punkten
+
+Meinen Dank an alle, die mitgemacht haben, vor allem an die, die wenig
+wussten und trotzdem sich getraut haben, mir was zu schicken. *knuddels*
+Hat Spass gemacht, ich mach bestimmt wieder ein Mittelerde-Quiz :-)
+
+Und hier die Aufloesung:
+
+
+ 1) Wie heissen die 3 Berge von Moria? (auf Sindarin)?
+ Caradhras, Celebdil, Fanuidhol :-))
+
+ 2) Wie heissen die 3 Berge in der Zwergensprache und auf Deutsch?
+ Rothorn, Silberzinne, Wolkenkopf
+ Barazinbar, Zirak-Zigil, Bundushathur  oder
+ Baraz, Zirak, Shathur
+
+ 3) Wie heissen die 9 Gefaehrten?
+ Peregrin Tuk (Pippin), Meriadoc Brandybock (Merry), Sam Gamdschie,
+ Frodo Beutlin, Gandalf, Boromir, Aragorn, Gimli und Legolas
+
+ 4) Wieviele Silmaril gab es?
+ 3
+ Einer endete im Feuer, einer im Meer und der dritte befindet sich
+ an Earendils Stirn.
+
+ 5) Wie starb Feanor?
+ Er starb an toedlichen Wunden, die ihm von Gothmog zugefuegt wurden.
+ Dies passierte in der Schlacht unter den Sternen, der Dagor-nuin-
+ Giliath. Beim Tod verbrannte er zu Asche, als sein feuriger Geist
+ den Koerper verliess.
+
+ 6) In welche 3 Teile zerfiel Arnor?
+ Arthedain, Cardolan, Rhudaur
+
+ 7) Nenne mir 5 Valar!
+ Manwe, Ulmo, Aule, Orome, Mandos, Lorien, Tulkas  und die Damen
+ Varda, Yavanna, Nienna, Este, Vaire, Vana und Nessa
+ Morgoth(Melkor) war auch noch erlaubt
+
+ 8) Wer erschlug Ancalagon?
+ Earendil
+
+ 9) Was ist ein Balrog? Welcher Rasse gehoert er an?
+ Feuergeister, Feuerdaemonen, Feuergeissler, Rasse: Maia
+ Valaraukar ist nur der Quenya-Name von Balrog, deswegen haette er
+ schon noch in deutsch uebersetzt werden sollen :)
+
+10) Nenne mir 3 der Istari (Zauberer)
+ Saruman, Gandalf, Radagast, Pallando, Alatar
+ Saruman wird auch Scharku, Scharrer, Curunur, Curumo, der Weisse genannt
+ Gandalf heisst noch Olorin, Mithrandir, Tharkun, Incanus, der
+         graue Pilger
+ Radagast heisst noch Aiwendil
+
+11) Wieviele Istari gibt es?
+ 5 Istari landeten im Norden an den grauen Anfurten, moeglicherweise
+ gab es mehr, 3 als Antwort gab auch noch nen halben Punkt, da an einigen
+ Stellen steht: "Von 3 sind die Namen bekannt, von den anderen nicht."
+ oder so aehnlich.
+
+12) An welchem Fluss liegt das Bockland? (2 Namen)
+ Brandywein, Baranduin, goldbrauner Fluss
+
+13) Was fuer Heere sind gemeint bei 'Die Schlacht der 5 Heere'?
+ Elben, Menschen, Zwerge, Orks und Warge
+
+14) Wer toetete Smaug?
+ Bard aus Esgaroth am Langen See, Nachfahre von Girion, Fuerst von Dal
+
+15) Wie hiess das Schwert Fingolfins?
+ Ringil, das glitzernde Schwert
+
+16) Wen heiratete Sam Gamdschie?
+ Rosie Huettinger
+
+17) Nenne mir 2 andere Namen fuer Aragorn!
+ Streicher, Elessar, Elbenstein, Isildurs Erbe, Thorongil,
+ Adler des Sterns
+
+18) Wie heisst der Schlachtruf der Zwerge? (4 Worte)
+ Baruk Khazad! Khazad aimenu! (Aexte der Zwerge! Zwerge ueber euch)
+
+19) Wieviele Kinder hatte Sam?
+ 13
+ Jemand schrieb mir sogar alle 13 Namen auf *freu* Hier sind sie, in
+ Reihenfolge der Geburt:
+ Elanor, Frodo, Rose, Merry, Pippin, Goldloeckchen, Hamfast, Margerite,
+ Primula, Bilbo, Rubinie, Robi, Tolman (auch Tom genannt)
+
+20) Welche 2 Geburtstage feierten Frodo und Bilbo im Jahre 3018?
+ Einer hat doch tatsaechlich geantwortet: Ihre eigenen :)
+ Das hab ich auch anerkannt, weil der Tag noch dranstand, 22 September.
+ Ansonsten: Bilbos 111ten und Frodos 33ten.
+
+21) Wie heisst der Koenig von Westernis bei dessen Untergang?
+ Ar-Pharazon der Goldene
+
+22) Wie heissen die Begleiter Thorin Eichenschilds und Bilbos auf
+    der Fahrt zum Berg Erebor?
+ Dwalin, Balin, Kili, Fili, Dori, Nori, Ori, Oin, Gloin, Bifur,
+ Bofur, Bombur und natuerlich Gandalf (fast immer)
+ Gandalf musste nicht erwaehnt werden :)
+
+23) Wie heisst der Vater von Legolas?
+ Koenig Thranduil der Waldelben des noerdlichen Duesterwalds
+ Das ist der, der im kleinen Hobbit Thorin gefangenhaelt :)
+
+24) Ein anderer Name Gollums.
+ Smeagol, Schleicher und Stinker hab ich auch gelten lassen, wenn
+ beide Worte wirklich vorkamen.
+
+25) Wie nennt Baumbart Lorien?  (fies ;-)
+ Eigentlich wollte ich ja Laurelindorenan lindelorendor malinornelion
+ ornemalin hoeren, aber das erste Wort hat auch genuegt, das Land des
+ Tals des singenden Goldes
+
+26) Wen heiratet Elrond? Wer war die Mutter von ihr?
+ Elrond heiratete Celebrian, die Tochter Galadriels und Celeborns
+
+27) Wie heissen die Kinder Hurins?
+ 3!! Kinder, dies haben die beiden ersten falschgemacht. Das zweite
+ Kind taucht im Stammbaum im Silmarillion nicht auf, da es mit 3 oder
+ 4 Jahren Alter an einer pestaehnlichen Krankheit starb.
+ Aeltestes Kind: Turin Turambar, auch Meister des Schicksals,
+                 Meister des Dunklen Schattens, Neithan, Agarwaen,
+                 Thurin, Mormegil oder Wilder Mann aus den Waeldern
+                 genannt
+ Zweitaeltestes: Urwen Lalaith, auch das Lachen genannt, starb wie
+                 gesagt frueh, als Turin noch 7 oder 8 Jahre alt war
+
+ Juengstes     : Nienor Niniel, die Trauer, das Traenenmaedchen
+
+28) Wen heiratete Thingol?
+ Melian, die weiseste der Maia von Lorien, beide wohnten dann
+ zusammen in Menegroth in Doriath, bis Thingol von Zwergen
+ ermordet wurde. Dann fiel Doriath auseinander.
+
+29) Wieviele Kinder hatte Finwe? Wie heissen sie?
+ Finwe hatte 3 Kinder, Feanor mit Miriel, seiner ersten Gattin,
+                       Fingolfin und Finarfin mit Indis
+
+30) Wer ist der Vater von Galadriel?
+ Finarfin ist ihr Vater.
+
+31) Nenne mir 3 andere Namen fuer Bruchtal.
+ Bruchtal, Imladris, Rivendell, Letztes heimeliges Haus haetten
+ gegolten, Karnigul muss ich mal nachschauen wo das herkommt, hab
+ ich nirgends entdeckt. Haus Elronds gilt nicht, das ist zu selbst-
+ verstaendlich, Letzte Zuflucht haette ich noch gelten lassen.
+
+32) Der Name der 2 Baeume von Valinor?
+ Telperion der weisse Baum von Valion, auch Silpion oder Ninquelote
+ genannt
+ und
+ Laurelin der Baum der Sonne, Goldenes Lied, Malinalda oder Culurien
+ auch genannt
+
+33) Wie heisst der Herr der Adler in der Altvorderenzeit?
+    (Tip: Er hatte sein Nest in den Gipfeln der Thangorodrim)
+ Es war natuerlich Thorondor :-) Die Frage war etwas verwirrend
+ gestellt, weil in alten Fassungen Thorondor von Manwe den Auftrag
+ bekommt, in den Gipfel des Thangorodrim zu nisten um von dort aus
+ aus Melkor aufzupassen waerend in spaeteren Fassungen nur steht,
+ dass er sein Nest im suedlichen Teil der Crissaegrim hatte, den
+ Umzingelnden Bergen und die Thangorodrim kommen dort als Nistplatz
+ gar nicht mehr vor.
+
+34) Name des Speers Gil-Galads
+ Aiglos oder Aeglos war der Name des Speers, der Schneedorn
+
+35) Wie heissen die Hallen von Koenig Theoden und in welcher
+    Stadt liegen sie?
+ Meduseld, die goldenen Hallen Theodens in Edoras
+
+36) Wie heisst der Wirt des Taenzelnden Ponys?
+ Gerstenmann Butterblume
+
+37) Anderer Name fuer die Wetterspitze?
+ Amon Sul, der Windberg, Amon Sul hiess auch die Festung auf dem
+ Berg, die geschleift wurde
+
+38) Wie heisst die Stadt inmitten der umzingelnden Berge?
+ Gondolin, die verborgene Stadt
+
+39) Name der Maia der Sonne und des Mondes?
+ Maia der Sonne ist Arien, Maia des Mondes ist Tilion ;-)
+
+40) Wer war der weiseste der Maia?
+ Der weiseste der Maia war zur Verwunderung einiger Olorin, der
+ spaeter auch Gandalf genannt wurde in anderer Gestalt. Das war
+ auch der einzige Fehler von Zephyr, sonst waer sie mit 40 Punkten
+ Nummer 1 gewesen.
+ Der weiseste der Maia war aber nicht der maechtigste der Maia,
+ das war wohl Manwes Herold. Und die bekanntesten Maia waren wohl
+ Osse und seine Gemahlin Uinen.
+
+
+
+  Drei Ringe den Elbenkoenigen hoch im Licht,
+  sieben den Zwergenherrschern in ihren Hallen aus Stein,
+  den Sterblichen, ewig dem Tode verfallen, neun,
+  einer dem dunklen Herrn auf dunklem Thron,
+  im Lande Mordor, wo die Schatten drohn.
+  Ein Ring, sie zu knechten, sie alle zu finden,
+  ins Dunkel zu treiben und ewig zu binden,
+  im Lande Mordor, wo die Schatten drohn.
+
+
+The show must go on :) Es wird bestimmt wieder bald ein Quiz
+stattfinden, es gibt noch viele hundert Fragen. Wuerde mich
+freuen, wenn dann dieselben wieder mitmachen und noch mehr
+dazu! Vielen Dank an alle, die mitgemacht haben.
+
+
+         tschuess          Caradhras - eisgekroent
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Tolkien Quiz, Freitag, Antworten (Caradhras, 30. Jan 1995, 15:36:41):
+#! rn=Li rt=791461639
+                     Hallo
+
+So leid es mir tut, Li, aber ich muss dich korrigieren.
+Du fragtest nicht: Wer alleine gab den Meisterring freiwillig
+irgendjemandem als Geschenk? sondern hast das "als Geschenk
+weggelassen"
+Und da fallen mir auf die Schnelle sogar 2 Antworten ein, wobei
+Deine sogar falsch ist.
+Sam gab Frodo den Ring freiwillig wieder, als er ihn in Schagrats
+Turm auf der Spitze des Passes Cirith Ungol befreite.
+Und Tom Bombadil gab den Ring freiwillig her, nachdem er ihm
+kurz ueberlassen wurde von Frodo. Sogar Frodo selbst gab ihn
+dort freiwillig (wenn auch etwas skeptisch) kurz aus der Hand.
+
+Bilbo hingegen gab ihn erst auf Gandalf Zwang hin an Frodo weiter,
+bzw. er hatte den Umschlag schon eingesteckt mit dem Ring drin,
+was zu einer sehr unerfreulichen Szene zwischen Gandalf und Bilbo
+fuehrte.
+Also gab ihn keiner als Geschenk freiwillig weiter, denn von Tom
+und Sam und Frodo aus war es kein Geschenk an den anderen.
+
+ tschoe
+Caradhras der prophetenhaft hungrig Gummibaerchen sehende Golddrachenberg
+
+PS: Das naechste koennen wir ja gemeinsam veranstalten, Li.
+    Wuerde mich freuen. Hat mir auch gefallen, die Art. :)
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Re: Ich will auch mal! (Icet,  1. Feb 1995, 04:39:05):
+#! rn=Boing rt=790896529
+Du hoerst Bodycount, Boing?
+*staun*
+
+-IceT (Leadsaenger von Bodycount)
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Re: Tolkien Quiz, Freitag, Antworten (Li,  2. Feb 1995, 11:40:48):
+#! rn=Caradhras rt=791476601
+Nein Caragdhras, wir brauchen uns nicht streiten, aber meine Antwort war
+nicht falsch.
+vieleicht haette ich die Frage anders formulieren sollen, aber wenn Bilbo
+auch aif Zuspruch von Gandalf den Ring weitergsb, so wurde er doch nicht von
+Gandalf gezwungen. (Das haette bilbo "zerbrochen", wie Gandalf spaeter zu
+Frodo sagte, sihe Gollum) Das mit Tom und Sam sehen wir beide genauso, das war
+kein Geschenk, denn Tom hatte ihn fuer ca. eine min, und auch nur auf anfrage,
+also kein geschenk. Sam nahm den ring von frodo und gab ihn ihm wieder, als
+frodo erfuhr, dass sam ihm hat (wobei frodo schon ganz schoen wuetend wurde).
+Also war definifiv Bilbo der einzige, der den Ring als Geschenk weitergegeben
+hat (von den 5 traegern nach Sauron, wenn man Tom nicht mitzaehlt). Gandalf
+hatte ihm zugeredet, aber dennoch war es Bilbos eigener wille, wenn auch der
+Brief mit dem Ring zu Boden viel. Als Gandalf dann den Brief auf den Kamin
+stellte sagt Bilbo etwas wie "Nun, wohl, blablabla. Er gab ihn aus freine
+Stuecken, und wurde nicht gezwungen)
+
+Li (mag keine Haaarspalterein und haelt das Thema nun fuer erledigt)
+
+-----------------------------------------------------------------------------
+
+
+
+Re^3: Tolkien Quiz, Freitag, Antworten (Caradhras,  2. Feb 1995, 14:19:42):
+#! rn=Li rt=791721648
+*kicher* *schmoll* *brummel* Schreibt Li doch tatsaechlich Caraghras,
+aegl, nein, Caragdhras, so falsch kann ich das ja gar nicht schreiben :)
+
+Mein armer schoener toller Name *schnief*
+Und wie ich schon meinte, hatte ich nicht mitgekriegt, dass Du nach einem
+'Geschenk' gefragt hattest. :-)
+
+Ich muss mich uebrigens bei Arien entschuldigen, ich habe Fehler bei ihr
+gemacht, die hat 39.2 Punkte und ist damit Dritte. Aber da sie Suppen-
+werfel ist hat es ja bei der Preisverteilung nichts ausgemacht. (Uff)
+
+Hoffe, das war der einzige Fehler, den ich sonst noch beim zaehlen
+gemacht habe.
+
+         tschoe             Caradhras
+
+-----------------------------------------------------------------------------
+
+
+
+Re^4: Tolkien Quiz, Freitag, Antworten (Li,  2. Feb 1995, 14:22:45):
+#! rn=Caradhras rt=791731182
+*grins*
+Wie hiess dieser komische Berg noch mal?
+Carabas? caternas? Caterpilar? Nein!
+Aber mal im Ernst: Sorry, Caradhras! fuer die Namensverstuemmelung!
+
+Li (wundert sich, dass nicht all so einfache Namen bevorzugen wie er)
+
+-----------------------------------------------------------------------------
+
+
+
+Aufloesung (Cifer,  3. Feb 1995, 13:27:38):
+Hallo,
+
+auch wenn es wohl niemanden interessiert, hier die Aufloesung zu meinem Quiz
+von letzter Woche. Dank der ungeheuren Resonanz (1 Mail) war es leicht, einen
+Sieger zu finden.
+
+Der Gewinner ist: HIGHLANDER mit 3.0 Punkten.
+
+Hier die Fragen und Antworten, da ich den Original-Artikel geloescht habe, um
+Platz zu schaffen.
+
+a) you play the guitar on the MTV
+   Dire Straits: Money For Nothing
+b) I can feel it inside something new has begun
+   Robin Beck: First Time
+c) hot sun making me sweat
+   Genesis: I Can't Dance
+d) ooh baby do you know what that's worth
+   Belinda Carlisle: Heaven is a place on earth
+e) can't keep my eyes from the circling sky
+   Pink Floyd: Learning to fly
+f) Im Kirchenchor und als Student stieg er steil empor -
+   bis er sein Herz verlor
+   E.A.V.: Der Sandlerkoenig Eberhard
+g) und der Mann, mit dem sie redet, bleibt unsichtbar
+   Juliane Werding: Stimmen im Wind
+h) so giving all the love you have
+   Anderson, Bruford, Wakeman, Howe: Brother Of Mine
+i) This is Golf Mike Oscar Victor Juliet
+   Mike Oldfield: Five Miles Out
+j) I touched the lizard with the Crimson Veil
+   Marillion: She Chameleon
+k) and I need you tonight, and I need you more than ever
+   Bonnie Tyler: Total Eclipse of the Heart
+l) "I think I'm old and I'm feeling pain" you said
+   The Cure: Plainsong
+m) ich zahl keine Kichensteuer, lieber leg ich bei Dir Feuer
+   Westernhagen: Auf 'ner einsamen Insel
+n) don't complicate it - just do it once again
+   Kim Wilde: The Second Time
+o) I'm like a letter with no address
+   Cindy Lauper: Heading West
+p) we will meet them on the beaches, we will fight them in the fields
+   Tony Carey: Bedtime Story (Soundtrack Der Joker, mit Peter Maffay)
+q) Margarita was waiting inside
+   Chris De Burgh: Last Night
+r) when cancer sucks a young girl's breast
+   Fish: Credo
+s) there ain't nobody better than me - can't you see?
+   Divine: I'm so beautiful
+t) one man's pleasure is another man's pain
+   Rupert Hine: One Man's Poison
+u) I don't have to ask permission if I want to go out fishing
+   Tom Waits: Better Off Without A Wife
+v) Eben wuchs auf seiner Brust das erste blasse Haar
+   Hannes Wader: Die Arschkriecher-Ballade
+w) how far are we from dying, is it nearly at an end
+   Edgar Broughton Band: Evening Over Rooftops
+x) Auf der Autobahn A8 Richtung Oberhausen
+   Mike Oldfield: Hostage
+y) beginning with the end is starting backwards
+   Tom Newman: Sad Sing (featuring Mike Oldfield)
+z) did you get up this morning before the dawn?
+   Terry Riley: Eastern Man
+
+Das war's. gewonnen hat, wie gesagt, Highlander, der mich nun nach Belieben
+foltern kann (fuer einen Magier, der dies sowieso kann, eigentlich witzlos,
+aber wenn die Spieler nicht mitmachen wollen - Pech fuer sie).
+
+Cifer.
+
+-----------------------------------------------------------------------------
+
+
+
+Re^3: Ich will auch mal! (Yendi,  3. Feb 1995, 19:36:42):
+#! rn=Icet rt=791609945
+Tja, Ice-T, Du warst wohl nicht auf der ersten MUD-Party dabei, wie?
+Da haben Boing und Hate um die Wette gepoget! :)
+
+
+-----------------------------------------------------------------------------
+
+
+
+Re^4: Ich will auch mal! (Kretek,  4. Feb 1995, 02:38:16):
+#! rn=Yendi rt=791836602
+Ui, da staun ich jetzt aber auch!
+Na, aber wartet mal, bei der uebernaechsten MUD-Fete, da habt Ihr dann
+noch (mindestens) einen Mit-Poger!
+
+Kretek,
+der fuer guten Punk, Indie und Crossover (und ein bisschen Industrial)
+doch alles liegen und stehen laesst! :)
+
+-----------------------------------------------------------------------------
+
+
+
+Re^5: Ich will auch mal! (Hobo,  7. Feb 1995, 14:45:10):
+#! rn=Kretek rt=791861896
+Unr Boing fragt mich immer wieder: Wie bin ich nur auf den Ruecken drauf
+gekommen??? (Schaut Euch Locos Photos an)
+
+Hobo
+
+-----------------------------------------------------------------------------
+
+
+
+Re^6: Ich will auch mal! (Catweazle,  7. Feb 1995, 15:15:57):
+#! rn=Hobo rt=792164710
+DAS frag ich mich AUCH dauernd :)
+Tja, Boing, was hasttest Du da eigenltich zu suchen? :-)))
+Yours truly,
+    Catweazle
+
+-----------------------------------------------------------------------------
+
+
+
+Re^7: Ich will auch mal! (Boing,  7. Feb 1995, 15:20:32):
+#! rn=Catweazle rt=792166557
+Ist mir ja selbst ganz peinlich, dass ich es nicht mehr weiss ... aber
+wir sind hier in de Rubrik quiz, deshalb biete ich 1000 Muenzen fuer
+denjenigen,
+der mir sagen kann, wie ich bei der ersten MG-Fete im Januar letzten
+Jahres auf Catweazles Ruecken gekommen bin! :)
+  Boing
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Re: Duncton Quiz (Silvana, 16. Feb 1995, 08:48:07):
+#! rn=Tryfan rt=792891729
+DAS sind die Momente, an denen ich auch gern mal wieder Spieler sein wuerde.
+Magier hast Du ja leider (verstaendlicherweise) aus dem Quiz ausgenommen.
+Silvana - etwas traurig, etwas grinsend.
+
+-----------------------------------------------------------------------------
+
+
+
+Erkennen Sie die Melodie? (Yendi, 23. Feb 1995, 15:52:42):
+
+Salvete!
+
+Kann mir jemand sagen, woher dieses kurze Jingle kommt,was man auch klopfen
+kann, dieses
+                        Tam-tam-tatam-tam----Tam-Tam       ?
+
+Melodie geht ungefaehr so:
+
+----------------------------------------------------------------------
+
+----------------------------------------------------------------------
+    |                   |
+----+---------------+---+---------------------------------------------
+   O         |      |  O
+-------+-+---+-----O---.----------------------------------------------
+       | |  O      .
+------*-*------O------------------------------------------------------
+
+
+Sachdienliche Hinweise nimmt entgegen
+
+                          YTY
+
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Erkennen Sie die Melodie? (Bloodyharry, 23. Feb 1995, 16:15:24):
+#! rn=Yendi rt=793551162
+Ist es Roger Rabbit?
+
+
+Bloody Harry, der Pirat
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Erkennen Sie die Melodie? (Gatsby, 23. Feb 1995, 16:54:08):
+#! rn=Yendi rt=793551162
+Hmm, Yendi..
+ich weiss, welche Melodie Du meinst..
+Aber fuer die, die den Ursprung erkennen wollen, musst Du auch die
+richtige Notierung angeben ;-))
+Also Leuts: statt g sollte das ein gis sein.
+(manche singen es auch mit einem fis statt f.. ;-))
+
+dann stimmt schonmal die Melodie.
+So, jetzt kann weitergeraten werden!
+Gats.. mal wieder voll in ihrem Element.
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Re: Erkennen Sie die Melodie? (Boing, 23. Feb 1995, 17:19:31):
+#! rn=Gatsby rt=793554848
+Und der angegebene Rhythmus war auch falsch ... ;)
+  Boing
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Erkennen Sie die Melodie? (Hardil, 23. Feb 1995, 18:31:24):
+#! rn=Yendi rt=793551162
+
+Hmmm, Tonart c-dur ? a-moll ?
+
+Hardil (pfeift schon die ganze Zeit vor sich hin)
+
+-----------------------------------------------------------------------------
+
+
+
+Nur mal ne Frage (Felagund, 24. Feb 1995, 08:32:54):
+Also eigentlich passt dieser Artikel nicht in Quiz, aber bei den vielen
+Tolkien-Fragen irgendwie doch wieder...
+Ich wuerde naemlich gern mal wissen, an welche Frau Tom Bombadil durch die
+Brosche aus den Huegelgraebern erinnert wird.. die Frage nervt mich jetzt
+schon seit Jahren! Er sagt ueber diese Frau nur "fair was she,who woar this
+once" (oder sowas in der richtung und "we will remember her"..
+Also,falls mir da jemand helfen kann,waer ich fuer ne kurze mail sehr
+dankbar....Fela
+
+-----------------------------------------------------------------------------
+
+
+
+liedzeilen (Loco, 27. Feb 1995, 13:56:18):
+[Verlegt von allgemeines, Charlie, 27. Feb 1995, 13:44:24]:
+Hallo leute!
+wieder einmal melde ich mich mit eienr neuen runde des allseits
+beliebten spiels 'liedzeilenquiz' und hoffe wieder auf rege anteilnahme
+doch zuerst fuer die, die die alten zeilen noch irgendwo in
+ihren gehirnzellen rumwuseln haben, die loesungen vom letzten mal:
+
+
+"...hope I die before get old..."
+The Who - My generation
+a.) bow
+Aerzte - Schlaflied                                                          
+                       b.) You got me on my knees
+Eric Clapton - Layla                                                         
+  c.) ...drei, vier, schmeckt besser wie Bier
+Rodgau Monoton - Die Hesse komme!                                            
+                        d.) Wars in Luedenscheid oder Wladiwostok
+klaus Lage - steig nicht aus                                                 
+                                      e.) Komm nimm mich mit auf die Reise
+Abwaerts - die Reise                                                         
+                            f.) Your mouth, so hot, your web, Im caught, your
+skin, so wet, blach lace on sweet.
+Alice Cooper - Poison                                                        
+                                     g.) fast enough so we can fly
+Tracy Chapman - Fast Car                                                     
+                                          h.) Ich bin Dein dunkler Cherubim,
+du die sphinx im schwarzen Kleid
+Alice + Stefan Waggershausen                                                 
+                               i.) Remember the gester that showed you tears
+Marillion - Script for jesters tear                                          
+                                      j.) Der Hosentraeger is mir abgerissen
+K2 - Der Berg ruft                                                           
+                                          k.) I never try anything
+White zombi - thunderkiss '65          l) wer hat an der Uhr gedreht
+Stefan Raab & die Bekloppten - Boerti, Boerti Vogts                          
+                    m.) I tell a joke, you probably heard it before
+ABBA - Thank you for the music                                               
+                               n.) Lying in my bed I hear the clock tick, and
+think...
+Cyndy Lauper - time after time                                               
+                             o.) I could show you my favorite obsession
+RockyHorrorPictureShow - Sweet transvstite                                   
+                         p.) We3re just to lost souls, swimming in a fishbowl,
+year after year
+Pink Floyd - Wish you where here                                             
+                             q.) Another mother3s breakin3heart is taking over
+cranberrys - zombies                                                         
+                                 r.) Dawo das Leben noch lebenswert ist
+Peter Alexander - Die kleine Strasse in unserer Strasse                      
+              s.) There ain3t no island left for islanders like me
+Billy Joel - The downeaster alexa                                            
+                               t.) Russian3s famous love machine
+BoneyM - Rasputin                                                            
+                                      u.) he fell in love, not far from there,
+decation grows
+Philip Boa & the voodooclub                                                  
+                                    v.) no matter what they say
+Sting - Englishman in NY                                                     
+                     w.) And I3m Getting Old
+Neil Young - Heart of gold  more night                                       
+                                  x.) Then you see it3s not me it3s not my
+und nun kommt das neue ratematerial:
+
+der compi scheint das irgendwie nicht zu raffen ... ich schreib einen neuen
+artikel
+
+
+-----------------------------------------------------------------------------
+
+
+
+liedzeilen2 (Loco, 27. Feb 1995, 13:59:08):
+[Verlegt von allgemeines, Locutus, 27. Feb 1995, 13:48:50]:
+So hier nun das Liedzeilenquiz von Charlie:
+
+
+"Tell me the way to the next whiskybar"
+
+a.) A traveling circus came, they brought an intelligent [....] and [....]
+was his name
+b.) You're damned if you do and you're if you don't
+c.) Es musste aber sein, der Sprit ging aus
+d.) The monkey and the plywood violin
+e.) Sorry my train won't stop at your station
+f.) Was koennte wichtiger sein als Sex und Musik                             
+  g.) Where is my place in this bright future
+h.) da da da dam didi nananana, pretty baby
+i.) You're 21 and still your mother makes your bed - and thats too long
+j.) Es ist 'ne Scheibe fuer die Doofen
+k.) Shead a tear cause I'm missing you
+l.) ... auch durch ein Schluesselloch
+m.) Du bist 'n Babe, ich moecht' Badewasser saufen
+n.) Denkst Du vielleicht auch mal an mich
+o.) The killer in me is the killer in you
+p.) Fette Moesen, fette Titten, Leut beim Wichsen, Leut beim Ficken
+q.) Anyway the wind blows....
+r.) Don't know what I want, but I know how to get it
+s.) Now, I'm the king of the swingers Ooooh, the jungle V.I.P.
+t.) Insgeheim war man noch Nazi, doch da fehlte 'n bisschen Mut
+u.) To be together and forever be true
+v.) ... she had to get out of a date with...
+w.) Oh lever Jott, jib uns Wasser
+x.) a mystic fantasy
+y.) We're bingo numbers and our names are absolute why do I feel better when
+I should be feeling sweet
+z.) I used to be a little boy
+
+
+
+
+-----------------------------------------------------------------------------
+
+
+
+Re: liedzeilen (Catweazle, 28. Feb 1995, 13:14:08):
+#! rn=Loco rt=793889778
+Also, das ist...bei weitem, ... der _schlechtest_ formatierte
+Artikel, den ich je gesehen habe :-)
+YTC
+
+-----------------------------------------------------------------------------
+
+
+
+tolkien mal anders (Felagund,  2. Mar 1995, 11:37:08):
+Also jetzt ist mir doch was ganz dummes passiert.. da stehn doch tatsaechlich
+2 saetze in meinem haus, von denen ich nicht weiss, was sie bedeuten! (runen,
+inschrift) Wer mir da also die richtige Uebersetzung liefert, sowohl von der
+Schrift als auch vom Inhalt her, der kann damit rechnen, dafuer ein BSS, einen
+Hornpanzer, Armschienen, Beinschienen und Seestiefel zu bekommen (oder 20.000
+muenzen)
+Auf regen (mail)-Zuspruch hoffend.....Fela
+
+-----------------------------------------------------------------------------
+
+
+
+Re: tolkien mal anders (Felagund,  4. Mar 1995, 14:44:20):
+#! rn=Felagund rt=794140628
+Hab bis jetzt noch nix bekommen, aber vielleicht liegts ja daran...das erste
+Wort der Wandinschrift is ne freie Interpretation von mir und hat
+normalerweise eine AEHNLICHE Bedeutung...
+Viel Spass beim raetseln....Fela
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Re: tolkien mal anders (Caradhras,  4. Mar 1995, 15:41:43):
+#! rn=Felagund rt=794324660
+Du koenntest wenigstens noch schreiben, wo Nargothrond liegt :)
+Ist mir zwar schon mal wo begegnet, aber ich weiss nicht mehr wo.
+
+   Caradhras - fragt halt Felagund gleich direkt
+
+-----------------------------------------------------------------------------
+
+
+
+Re^3: tolkien mal anders (Felagund,  6. Mar 1995, 16:05:29):
+#! rn=Caradhras rt=794328103
+Also gut, da mich jetzt schon mehrere Leute gefragt haben..
+mein Haus steht zwischen Findling und PV, den Rest muesst ihr aber schon
+selbst rausfinden.
+P.S. Ein weiterer Tip.. direkt daneben steht das Haus meines Grossonkels Elwe
+Singollo...
+
+-----------------------------------------------------------------------------
+
+
+
+aufloesung (Felagund,  8. Mar 1995, 16:12:48):
+Also es hat in der Tat jemand geschafft, die Inschrift und die Runen in
+meinem Haus zu deuten...und zwar ein Zwerg *wunder*
+Throin ist der glueckliche Gewinner und er hat mich auch gleich noch auf den
+einen oder anderen kleinen Fehler hingewiesen, weshalb die Inschrift
+moeglicherweise in naechster Zeit ueberarbeitet wird.
+Die Wandinschrift heisst namarie elendili na nargothrond bar en gelidh, was
+soviel heisst wie willkommen elbenfreunde in nargothrond, heim der noldor
+(hierbei war das na allerdings geraten und wird demnaechst entfernt...)
+die runen heissen ganz einfach Finrod aran nargothrond, also Finrod, Koenig
+von Nargothrond...
+Das wars also....MFG  Fela
+
+-----------------------------------------------------------------------------
+
+
+
+Re: aufloesung (Caradhras,  9. Mar 1995, 14:01:52):
+#! rn=Felagund rt=794675568
+Hmmm, und warum existierte dafuer weder ein Stichtag noch sonstwas,
+damit man wenigstens weiss, bis wann man die Loesung abzugeben hat? Tsts,
+Felagund, ich
+dachte, man haette viel mehr Zeit.
+Bisher hab ich mich noch nicht dran versucht. *grins*
+
+        tschoe          Caradhras
+PS: Verwandter von Celebdil und Fanuidhol und mittlerweile auch wohl
+    noch Methedras (Gruesst alle Huegel und Berge)
+
+-----------------------------------------------------------------------------
+
+
+
+Film-Quiz (Locutus, 13. Mar 1995, 12:12:54):
+Hallo Leute !
+
+Ich habe mal ein Film-Zitate-Quiz zusammengestellt. Die Zitate sind alle
+im Original. Zu gewinnen gibt's 10.000 Muenzen (als kleinen Anreiz), 
+wenn Boing nix dagegen hat.
+Antworten bitte nur per MUD-Mail an mich.
+
+--------------------------------------------------------------------------
+1.
+A boy's best friend is his mother. 
+
+--------------------------------------------------------------------------
+2.
+I do wish we could chat longer, but I'm having an old friend for dinner. 
+
+--------------------------------------------------------------------------
+3.
+Dr. Chandra, will I dream? 
+
+--------------------------------------------------------------------------
+4.
+Person One:  Tell me a bedtime story. 
+Person Two:  Fuck you.
+Person One:  That's my favourite.
+
+--------------------------------------------------------------------------
+5.
+Person One:  Why should I tell you copper? 
+Person Two:  Because I'm the last line of defense between sleeze like
+  this and the decent people of this town.
+Person Three:  Oh hi Frank, say we got that model D83 Swedish sure-grip suck
+  machine that you ordered.
+Person Two:  It's a gift.
+
+--------------------------------------------------------------------------
+6.
+I love the smell of napalm in the morning... Smells like victory. 
+
+--------------------------------------------------------------------------
+7.
+Person One:  Did you ever do drugs with Mr. Boz? 
+Person Two:  Sure.
+Person One:  What kind of drugs?
+Person Two:  Cocaine.  Have you ever fucked on cocaine Nick?  It's
+  nice.
+Person Three:  You like playing games don't you?
+Person Two:  I have a degree in psychology, it goes with the turf...
+  Games are fun.
+
+--------------------------------------------------------------------------
+8.
+Chew, if only you could see what I've seen with your eyes! 
+
+--------------------------------------------------------------------------
+9.
+Person One:  We're 104 miles from Chicago.  We've got a full tank of gas, 
+  a half pack of cigarettes, it's dark and we're wearing sunglasses.
+Person Two:  Hit it!
+
+--------------------------------------------------------------------------
+10.
+Person One:  Hey Vasquez, have you ever been mistaken for a man? 
+Person Two:  No, have you?
+
+--------------------------------------------------------------------------
+11.
+Person One:  Where were you last night? 
+Person Two:  That's so long ago, I don't remember.
+Person One:  Will I see you tonight?
+Person Two:  I never make plans that far ahead.
+
+--------------------------------------------------------------------------
+12.
+All of life's riddles are answered in the movies. 
+
+--------------------------------------------------------------------------
+13.
+Oh man, I can't fucking believe this.  Another basement, another elevator.  
+How can the same thing happen to the same guy twice??? 
+
+--------------------------------------------------------------------------
+14.
+Person One:  What are you doing? 
+Person Two:  I'm thinking.
+Person One:  Well, think me up a cup of coffee and a chocolate doughnut 
+with some little sprinkles on top, will you?
+
+--------------------------------------------------------------------------
+15.
+Yes, John.  But when the Pirates of the Caribbean breaks down, the pirates 
+don't eat the tourists. 
+
+--------------------------------------------------------------------------
+16.
+I'm too old for this shit! 
+
+--------------------------------------------------------------------------
+17.
+In Italy for 30 years under the Borgias they had warfare, terror, murder, 
+and bloodshed, but they produced Michelangelo, Leonardo da Vinci, and the 
+Renaissance.  In Switzerland they had brotherly love -- they had 500 years 
+of democracy and peace, and what did that produce?  The cuckoo clock. 
+
+--------------------------------------------------------------------------
+18.
+-  Look, you can't expect to wield supreme executive power just 
+  because some watery tart threw a sword at you!
+-  Help!  Help!  I'm being oppressed!  Violence inherent in the
+  system!  Violence inherent in the system!
+
+--------------------------------------------------------------------------
+19.
+Now you listen to me, I'm an advertising man, not a red herring. 
+
+--------------------------------------------------------------------------
+20.
+Hello.  My name is Inigo Montoya.  You killed my father. Prepare to die. 
+
+--------------------------------------------------------------------------
+21.
+Person One:  I need your clothes, boots and your motorcycle!  
+Person Two:  You forgot to say please...
+
+
+Das wars.
+Viel Spass beim Raetseln !!!
+Die Antworten poste ich naechste Woche mal hier ins Brett.
+
+Locutus
+
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Film-Quiz (Li, 13. Mar 1995, 14:50:18):
+#! rn=Locutus rt=795093174
+Ha! Beim Ueberfliegen ist mir schon mal nummer 20 eingefallen: Deutscher
+titel: Die Braut des Prinzen.
+Li(gruebelt uber dem Rest)
+NN
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Film-Quiz (Yendi, 13. Mar 1995, 15:49:35):
+#! rn=Locutus rt=795093174
+
+Sollen die Antworten gepostet werden, oder lieber gemailt?
+
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Re: Film-Quiz (Locutus, 13. Mar 1995, 16:20:18):
+#! rn=Yendi rt=795106175
+Hiho Raetselfreunde !
+
+BITTE schreibt die Antworten nicht hier ins Brett ! Schreibt mir bitte ne
+MUDmail. Ich werte die Antworten aus und der Gewinner bekommt dann, sofern
+Boing nix dagegen hat 10.000 Muenzen. Natuerlich koennen auch gerne Magier
+bei dem Raetsel mitmachen, obwohl die 10.000 Oecken wohl kein Anreiz sind.
+Einsendeschluss fuer das Raetsel ist uebrigens der kommende Sonntag.
+Am Montag kommt dann die Aufloesung und der Gewinn.
+Zitat Nummer 20 wird aus der Wertung genommen, da Li schon die richtige
+Antwort hier ins Brett geschrieben hat :(
+Also nochmal. Antworten bitte bitte bitte nur als MUDmail.
+Viel Spass nochmal beim Raetseln...
+
+Tschoe.
+Loc.
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Film-Quiz (Caradhras, 13. Mar 1995, 19:37:09):
+#! rn=Locutus rt=795093174
+Ui ist das schwer, ich gebs auf, ich weiss nur ein einziges, naemlich
+die Nummer 10. Was es ist wird aber nicht verraten, hoechstens Locu :)
+
+       Caradhras - kuckt zu wenig englische Filme (naemlich gar keine)
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Re: Film-Quiz (Icet, 13. Mar 1995, 19:59:16):
+#! rn=Caradhras rt=795119829
+Nu hoert doch auf, 21 ist doch obersimpel.
+Aberbeim Rest muss ich auch ganz schoen raetseln
+
+-IceT (+raetsel,raetsel,augeb*)
+n
+
+-----------------------------------------------------------------------------
+
+
+
+Catweazle mogelt! (Yendi, 13. Mar 1995, 20:05:52):
+
+Der fragt die Goetter um Rat:
+
+"tmj Jof, wie heisst der Film mit Sharon Stone und dem Eispickel?"
+
+Sonderbar... also ich hab von _Gurken_ gehoert, oder sowas...
+Aber _Eispickel_... Tut das nicht weh?
+
+(Au, lass das, Cat, aua!
+   Jajaa, ich werds nicht wieder tun, aber lass meine Haare los...)
+
+-----------------------------------------------------------------------------
+
+
+
+Film/Buch-Quiz (Rochus, 14. Mar 1995, 17:02:28):
+Das Film-Quiz von Locutus hat mir so gut gefallen, dass ich auch ein
+Quiz zusammengestellt habe, jedoch auch mit Zitaten aus Buechern.
+Preis: 10000 Muenzen, Antworten per Mud-Mail an mich.
+Die Teilnahme von Magiern ist erlaubt :-)
+---------------------------------------------------------------------------
+1.
+P1: P2, this reminds me of that time you tried to drill a hole in your head.
+P2: That would have worked if you hadn't stopped me.
+---------------------------------------------------------------------------
+2.
+P1: P2, ich habe mal eine Abhandlung ueber exotische Foltermethoden
+    verfasst. Haettest Du Lust, aktiv an der Fortsetzung mitzuwirken?
+---------------------------------------------------------------------------
+3.
+Listen; I'm a politician which means I'm a cheat and a liar, and when I'm not
+kissing babies I'm stealing their lollipops. But ... it also means I keep my
+options open...
+---------------------------------------------------------------------------
+4.
+Was fuer eine deprimierend daemliche Maschine.
+---------------------------------------------------------------------------
+5.
+P1: Humor. It is a difficult concept. It is not logical.
+P2: We learn by doing.
+---------------------------------------------------------------------------
+6.
+P1: You broke my arm!
+P2: There's 215 bones in the human body. That's one.
+---------------------------------------------------------------------------
+7.
+P1: Aber beherrschst du irgendwelche besonderen Fertigkeiten?
+P2: Wie waer's mit Erfahrungen im Umgang mit gewissen
+    landwirtschaftlichen Werkzeugen?
+---------------------------------------------------------------------------
+8.
+P1: P2, be careful what you shoot at. Most things in here don't react too
+well to bullets.
+---------------------------------------------------------------------------
+9.
+Ihre Luftwaffe hat so viele Sonarbojen abgeworfen, dass man von Groenland
+ueber Island nach Schottland gehen koennte, ohne nasse Fuesse zu bekommen!
+---------------------------------------------------------------------------
+10.
+Oh, no, I've got my own autographed Get Out of Jail Free card!
+---------------------------------------------------------------------------
+11.
+Du warst immer schon der Typ fuer superintelligente Fragen, stimmt's?
+---------------------------------------------------------------------------
+12.
+Wenn A und B zusammenarbeiten, koennen C und D nicht gewinnen.
+Doch wenn D A besticht...
+---------------------------------------------------------------------------
+13.
+Nothing shocks me. I'm a scientist.
+---------------------------------------------------------------------------
+14.
+P1: Er hat ein Gewehr!
+P2: Und wenn schon!
+*PENG*
+P1: Scheisse!
+---------------------------------------------------------------------------
+15.
+P1: Do you believe in God?
+P2: Never met him.
+---------------------------------------------------------------------------
+16.
+P1: Where are we going?
+P2: Planet 10!
+P1: When?
+P2: Real soon!
+---------------------------------------------------------------------------
+17.
+What's the matter man, the food ain't THAT bad?!
+---------------------------------------------------------------------------
+18.
+Ja, jetzt sehe ich, was an deinen Fuessen nicht stimmt.
+---------------------------------------------------------------------------
+19.
+He'll live.
+---------------------------------------------------------------------------
+20.
+Wer nach 40 Jahren Rache nimmt, hat uebereilt gehandelt
+---------------------------------------------------------------------------
+21.
+Wake up! Time to die!
+---------------------------------------------------------------------------
+22.
+P1: Remember, once you're inside you're on your own.
+P2: Oh, you mean I can't count on you? Good!
+---------------------------------------------------------------------------
+23.
+P1: P2, P2, I love you, but we only have fourteen hours to save the Earth!
+---------------------------------------------------------------------------
+24.
+P1: Wissen es die Kinder schon?
+P2: Aeh... ich denke ja...
+---------------------------------------------------------------------------
+25.
+P1: Hey, get out of my chopper!
+P2: No, no - MY chopper.
+---------------------------------------------------------------------------
+26.
+P1: Das ist ja Wahnsinn.
+P2: Ja, und es brachte nur 30 Punkte.
+---------------------------------------------------------------------------
+27.
+If it bleeds, we can kill it.
+---------------------------------------------------------------------------
+28.
+Ich moechte nichts anderes ... als eine Tasse Tee.
+---------------------------------------------------------------------------
+29.
+It's showtime!
+---------------------------------------------------------------------------
+30.
+Wonderful girl! Either I'm going to kill her or I'm beginning to like her.
+---------------------------------------------------------------------------
+31.
+Sie beschuetzt MICH?
+---------------------------------------------------------------------------
+32.
+P1: That's too early. Prepare to fast-forward!
+P2: Preparing to fast-forward!
+P1: Fast-forward!
+P2: Fast-forwarding, Sir!
+---------------------------------------------------------------------------
+33.
+Im Augenblick herrscht eine praechtige Stimmung.
+Aber ich erwarte, das wird sich spaetestens um Mitternacht aendern.
+---------------------------------------------------------------------------
+34.
+Achtung. Notfall-Abschaltung wurde aktiviert. Einen schoenen Tag noch.
+---------------------------------------------------------------------------
+35.
+Fuer Norwegen habe ich einen Preis gekriegt.
+---------------------------------------------------------------------------
+36.
+Naja, nicht eigentlich LANDEN, nein, nicht richtig landen, nein ... aeh ...
+---------------------------------------------------------------------------
+37.
+Consider that a divorce!
+---------------------------------------------------------------------------
+38.
+Nice outfit!
+---------------------------------------------------------------------------
+39.
+Today is a good day to die...
+---------------------------------------------------------------------------
+40.
+P1: What's his plan?
+P2: His plan?
+P1: Russians don't take a dump, son, without a plan...
+---------------------------------------------------------------------------
+41.
+P1: P2, when someone asks you if you're a god, you say YES!
+---------------------------------------------------------------------------
+42.
+P1: You're a creature of the night, P2. Wait'll Mom hears about this.
+---------------------------------------------------------------------------
+43.
+Sieht mir ganz und gar nicht nach einem Soehnchen aus, du Dummkopf.
+---------------------------------------------------------------------------
+44.
+Central Intelligence Agency... Now, there's a contradiction in terms.
+---------------------------------------------------------------------------
+45.
+Eine amerikanische Stadt bombardieren?
+Oh, das wird doch wohl ein Irrtum sein?!
+---------------------------------------------------------------------------
+46.
+Und in der Finsternis war nur noch ich.
+Und ich schwebte ueber der Finsternis.
+Ich sah, dass ich allein war, und das war nicht gut.
+Ich beschloss, das zu aendern.
+---------------------------------------------------------------------------
+47.
+Heb sie nicht auf, nicht auf, nicht a-
+---------------------------------------------------------------------------
+48.
+LIES DAS
+---------------------------------------------------------------------------
+49.
+Will you take a company check?
+---------------------------------------------------------------------------
+50.
+Wir sind die Zauberrer.
+Wir erwecken den Traum zum Leben.
+Und wir sind die einzigen, die das koennen.
+---------------------------------------------------------------------------
+
+Nicht vergessen: Antworten per Mail und NICHT in der Zeitung! :)
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Film/Buch-Quiz (Rochus, 14. Mar 1995, 19:18:10):
+Ach, noch etwas...
+Einsendeschluss ist Dienstag, der 21. maerz, 19:00.
+Sieger ist derjenige mit den meisten richtigen Antworten.
+Wenn mehrere Personen die gleiche Anzahl richtiger Antworten haben
+gewinnt der erste Einsender davon.
+
+-----------------------------------------------------------------------------
+
+
+
+Filmraetsel-Auswertung (Locutus, 17. Mar 1995, 12:25:38):
+Hallo Filmraetselfreunde ! Ich musste leider den Einsendeschluss-
+termin etwas vorverlegen, da ich ab Montag eine Woche nicht er-
+reichbar bin. Hier also nun die richtigen Antworten und die
+Leute, die bei dem Raetsel mitgemacht haben.
+
+Antworten:
+1. Psycho
+2. Schweigen der Laemmer
+3. 2010
+4. 48 Hrs
+5. Naked Gun 2 1/2
+6. Apocalypse Now
+7. Basic Instinct
+8. Bladerunner
+9. Blues Brothers
+10.Aliens
+11.Casablanca
+12.Grand Canyon
+13.Die Harder
+14.The Fugitive
+15.Jurassic Park
+16.Lethal Weapon
+17.The third man
+18.Monty Python & the holy grail
+19.North by northwest
+20.The Princess Bride
+21 Terminator 2
+
+Antwort 20 wurde rausgenommen, da die Antwort ungluecklicherweise
+ins Brett gepostet worden war.
+
+
+Mudname                         Anzahl an richtigen Antworten
+-------------------------------------------------------
+
+Stahldorn                                     4
+Plappermaul                                   7
+Catweazle, Rochus & Jof (ausser Konkurrenz)   19 (!!!) 
+Schrumpfi                                     1
+Snuggle                                       2
+Bahrain                                       8
+                
+
+Also ist der Gewinner (*klatsch, klatsch*):
+
+BAHRAIN !!!
+
+Die 10.000 Muenzen werden sofort ausgehaendigt, sobald Bahrain
+und ich uns im MUD begegnen (sofern Ein EM oder Gott nichts da-
+gegen hat).
+
+Tschoe....
+
+Locutus (macht vielleicht demnaechst nochmal ein anderes Raetsel)
+
+-----------------------------------------------------------------------------
+
+
+
+Mal wieder ein Quiz (Zardoz, 28. Jun 1995, 11:38:37):
+Halloechen!
+Nachdem diese Rubrik schon laengere Zeit leer steht, moechte ich hiermit
+ein Quiz ueber die Daemonenburg ankuendigen. Ich werde es aber via mail
+machen, also teilt mir mit, oder schreibt mir, wenn ihr mitmachen wollt,
+ich schicke euch dann einen Fragebogen. Mitmachen koennen alle Spieler
+und Seher. Wer sich jetzt noch nicht dort auskennt hat genug Zeit sich
+umzuschauen, denn ich werde das Quiz erst in fruehestens 2 Wochen beenden.
+Es wird natuerlich auch eine Belohnung geben, da werde ich mir noch was
+ausdenken....
+
+Zardoz, der auf mails wartet...
+
+-----------------------------------------------------------------------------
+
+
+
+Bin dabei! (Bendeigid, 29. Jun 1995, 10:13:45):
+Na bitte, das hat zur Auflockerung noch gefehlt. Selbstverstaendlich bin ich
+dabei. Und ich hoffe auf Konkurrenz (zwinker Rudiratter und Mesirii zu..)
+
+Gespannt,
+            Bendeigid
+
+-----------------------------------------------------------------------------
+
+
+
+Ich AUCH ;) (Mesirii, 29. Jun 1995, 22:29:54):
+Hallo Zardoz,
+die idee ist super ;) ich freu mich schon, auf die horden von leuten, die
+die burg heimsuchen werden. endlich ist mal was los. viel spass allen
+mitquizzern ;)
+Mesii (zwar fremdenfuehrer, aber nicht alleswisser *zwinker rudi*)
+P.S. na los Bendei*
+
+-----------------------------------------------------------------------------
+
+
+
+Daemonenburg-Quiz (Zardoz, 17. Jul 1995, 13:14:49):
+Hallo an alle, die bei dem Quiz mitmachen!
+Einsendeschluss ist Montag, der 24.07. um 12 Uhr nachts. Wer bis dahin
+den Fragebogen nicht eingesendet hat, kann leider keinen schoenen Preis
+gewinnen...
+
+-----------------------------------------------------------------------------
+
+
+
+Mittelerde-Quiz II (Caradhras,  9. Okt 1995, 08:14:02):
+                     Moin Kinners
+
+Ich such mir grade wieder ein paar Fragen zusammen fuer ein Quiz,
+muss ich mal aus dem Kopf machen jetzt... *gruebel*
+Also es ist ein Quiz ueber Mittelerde natuerlich. Es gibt uebrigens
+auch Teilpunkte fuer Teilantworten. Die Fragen sind ziemlich heftig,
+dafuer ist aber auch lange Ueberlegzeit. Naemlich bis Montag in einer
+Woche, High Noon. Wenn mehrere punktgleich sind, lose ich.
+Magier und Goetter duerfen mitmachen, kriegen aber keine Preise (bzw.
+geben freiwillig (per Definition) ihre Preise weiter an die naechsten
+Spieler ;-) )
+Antworten nur per mudmail oder email an mich (caradhras@fmi.uni-passau.de),
+alles andere zaehlt nicht. Loesungen am Montag mittag von mir.
+
+Preise zu gewinnen gibt es:
+
+1. Platz: 20.000 Muenzen oder
+         1 Blutsauger-Schwert, 1 Krone mit 5 Kristallen, 1 Steinbeisser-
+         Amulett und glaenzende Stiefel
+2. Platz: 15.000 Muenzen oder
+         1 Krone mit 5 Kristallen, 1 Steinbeisser-Amulett, Eispanzer
+         und glaenzende Stiefel
+
+3. Platz: 10.000 Muenzen oder
+         1 Steinbeisser-Amulett, Lichtpanzer, glaenzende Stiefel und
+         Lederhandschuhe
+und
+4. Platz:  5.000 Muenzen oder
+         1 Steinbeisser-Amulett und Lederstiefel
+
+Wer Karateka ist ist eh zu gut :) Der darf an seine Zweities weitergeben
+oder kriegt mal Hilfe von mir und/oder nen Eisstab, Schlammdrachenring,
+2 Bummis geschenkt (wenns ein Spieler ist). Irgendwas werden wir schon
+finden. Am meisten freu ich mich ueber Leute die nur ein paar Antworten
+wissen, sich aber trotzdem trauen mitzumachen.
+
+So, jetzt mal die Fragen aus dem Gedaechtnis schreiben...
+
+
+  1) Wie heisst der zweithoechste der Nazgul?
+  2) An welchem Berg liegt Minas Tirith?
+  3) Wie heisst der Vater von Earendil?
+  4) Nenne mir den hoechsten Berg von Westerniss
+  5) Was heisst 'Galadriel' auf deutsch?
+  6) Und wie waere eine passende Uebersetzung fuer 'Felagund'?
+  7) In welchem Verwandtschaftsverhaeltnis steht Galadriel zu Finrod
+     Felagund?
+  8) Wie heissen die 2 Kinder von Earendil und Elwing?
+  9) Was bedeuten die Namen der 2 Kinder?
+ 10) Wieviele Soehne hatte Feanor?
+ 11) Wer war der Koenig von Gondolin?
+ 12) Welcher Mensch ueberbrachte dem Koenig von Gondolin eine Warnung?
+ 13) Wie endeten die 3 Silmaril?
+ 14) Wer verriet Gondolin an Melkor?
+ 15) Welcher Hochkoenig der Noldor verletzte Melkor schwer in einem Kampf?
+ 16) Wie entstanden die Ringgeister?
+ 17) Was waere mit Frodo passiert wenn Elrond ihn nicht geheilt haette?
+ 18) Wie heisst der Bruder Boromirs?
+ 19) Wie endet Boromir?
+ 20) Wie nennt Gandalf den Balrog auf der Bruecke in Khazad-Dum?
+ 21) Wie nennt sich der groesste Hafen der Korsaren weit suedlich
+     von Gondor?
+ 22) Wie erobern Luthien Tinuviel und Beren einen Silmaril?
+ 23) Nenne mir den Teil Mittelerdes der in der Altvorderenzeit untergeht
+ 24) Wie hiess der Vater von Maeglin?
+ 25) Wie und wo starb dieser Vater?
+ 26) Wieviele Schiffe der Elendili ueberlebten den Untergang Numenors?
+ 27) Wieviele Palanthiri gab es?
+ 28) Wo waren diese?
+ 29) Wie stirbt Grima Schlangenzunge?
+ 30) Wer wird nach Theoden Koenig von Rohan?
+ 31) Wie heisst der Weiher, in dem Gollum in Ithilien verbotenerweise
+     Fische faengt?
+ 32) Nenne mir die 2 Namen der Schwerter von Gandalf und Thorin
+     Eichenschild.
+ 33) Welche besondere Dinge bekam Thorin in sein Grab mit?
+ 34) Welcher Elb geleitete verbotenerweise einen Menschen nach Gondolin?
+ 35) Wie hiess der besten Elbenfreund Turin Turambars?
+ 36) Wie heisst das Zuhause von Mim, dem Zwerg?
+ 37) Wie heissen die Soehne Isildurs, die mit ihm fallen?
+ 38) Was bedeutet in der Sprache der Rohan 'Heiliger Berg'?
+ 39) Was sind die Druedain?
+ 40) Wie heisst der Wald zwischen den Fluessen Teiglin und Sirion
+     in Beleriand.
+
+
+Ein kalter Wind blies hinter ihnen her, als sie dem Rothornpass den
+Ruecken wandten und muede den Hang hinunterstolperten.
+Caradhras hatte sie besiegt.
+
+           Rothorn Caradhras Barazinbar wuenscht bonne chance
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Mittelerde-Quiz II (Caradhras,  9. Okt 1995, 08:49:37):
+#! rn=Caradhras rt=813222842
+Ach so, ich habe noch was vergessen:
+Wenn mir jemand mehr als einmal was schickt zaehlt das letzte, dh.
+Nachbesserungen sind auf alle Faelle moeglich, man kann also erst mal
+einige Fragen beantworten und spaeter die Antwort auf die restlichen
+oder auf einige der restlichen schicken, natuerlich aber nur bis
+Montag 12 Uhr (in einer Woche)
+
+           Caradhras - der grausame Berg Morias
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Mittelerde-Quiz II (Caradhras, 10. Okt 1995, 12:53:13):
+#! rn=Caradhras rt=813222842
+Ach so, *huestel* sind mir natuerlich noch 2 Fehlerchen reingerutscht
+beim Schreiben. Einmal heisst es natuerlich normalerweise Palantiri
+statt Palanthiri, auch wenn ich es glaube ich schon mal mit 'h'
+geschrieben sah. Absolut peinlich war natuerlich, dass ich 'Sprache
+der Rohan' schrieb statt 'Sprache Rohans' oder 'Sprache der Rohirrim'.
+
+Sonst ist nirgends ein Fehler denke ich... hoechstens das mit dem
+groessten Hafen der Korsaren ist etwas 'unkorrekt' formuliert, aber
+nehmt einfach die bekannteste Stadt der Corsaren und ihr habt es. :)
+
+       tschoe
+                Rothorn Caradhras Barazinbar
+
+-----------------------------------------------------------------------------
+
+
+
+Antwort & Loesungen Mittelerde-Quiz II (Caradhras, 16. Okt 1995, 12:06:12):
+                     Huhu
+
+Hier kommen die Gewinner des Quiz und die Aufloesung:
+
+1) THROIN    39.5 Punkte
+2) LI        39.0 Punkte
+2) ARIEN     39.0 Punkte
+4) URZA      37.0 Punkte
+5) TROUBADIX 36.5 Punkte
+6) THINGOL   29.0 Punkte
+7) GOLUM     26.5 Punkte
+8) HADRA     21.0 Punkte
+9) RAALRRA   14.75 Punkte
+
+Drum bekommen die Preise Urza, Troubadix, Hadra und Raalrra, sie werden
+nach dem naechsten Reboot verteilt (jetzt gibts eh noch genug Ruestungen
+& Waffen im Spiel)
+
+
+  1) Wie heisst der zweithoechste der Nazgul?
+     Khamul, der Schatten aus dem Osten bzw der Schwarze Ostling
+     wohnt in Dol Guldur nach der Wiedereroberung
+  2) An welchem Berg liegt Minas Tirith?
+     An den Auslaeufern des Berges Mindolluin
+  3) Wie heisst der Vater von Earendil?
+     Tuor, der Turgons Tochter Idril heiratete
+  4) Nenne mir den hoechsten Berg von Westerniss
+     Meneltarma, das hoechste Heiligtum Numenors
+  5) Was heisst 'Galadriel' auf deutsch?
+     Maedchen, von einem Strahlenkranz gekroent
+     von Alatariel, der Quenya- und Teleriform
+  6) Und wie waere eine passende Uebersetzung fuer 'Felagund'?
+     von Felak-Gundu, der Hoehlenschleifer, spaeter auch
+     interpretiert als Herr der Grotten
+  7) In welchem Verwandtschaftsverhaeltnis steht Galadriel zu Finrod
+     Felagund?
+     Sie ist die Schwester von Finrod
+  8) Wie heissen die 2 Kinder von Earendil und Elwing?
+     Elrond und Elros
+  9) Was bedeuten die Namen der 2 Kinder?
+     Elrond bedeutet Sternendach (Sternenkuppel galt auch),
+     Elros bedeutet Sternenschaum
+ 10) Wieviele Soehne hatte Feanor?
+     7
+ 11) Wer war der Koenig von Gondolin?
+     Turgon
+ 12) Welcher Mensch ueberbrachte dem Koenig von Gondolin eine Warnung?
+     Schon wieder Tuor
+ 13) Wie endeten die 3 Silmaril?
+     Einer in der Luft (an der Stirn von Earendil), einer fiel ins Feuer
+     (Maedhros stuerzte sich in einen Feuerspalt) und einer endete im
+     Wasser (Maglor warf ihn hinein)
+ 14) Wer verriet Gondolin an Melkor?
+     Maeglin
+ 15) Welcher Hochkoenig der Noldor verletzte Melkor schwer in einem Kampf?
+     Fingolfin
+ 16) Wie entstanden die Ringgeister?
+     Wurden zu Geistern durch die 9 Menschenringe, die Sauron gemacht
+     hatte, verdorben durch Streben nach Macht, es heisst, 3 davon
+     seien hohe numenorische Fuersten gewesen und ihr Anfuehrer war
+     der Hexenmeister und Koenig von Angmar
+ 17) Was waere mit Frodo passiert wenn Elrond ihn nicht geheilt haette?
+     Er waere auch ein Geist in der Schattenwelt geworden, allerdings
+     kein Ringgeist (wenigstens nicht lange :-))
+ 18) Wie heisst der Bruder Boromirs?
+     Faramir
+ 19) Wie endet Boromir?
+     Wurde von Orkpfeilen durchbohrt bei der Verteidigung Merrys und
+     Pippins, trieb dann mit einem Boot den Anduin hinunter
+ 20) Wie nennt Gandalf den Balrog auf der Bruecke in Khazad-Dum?
+     Flamme von Udun (Udun ist sozusagen die 'Vorhoelle' von Mordor,
+     das Gebiet direkt hinter dem Morannon, dem Tor im Nordwesten)
+ 21) Wie nennt sich der groesste Hafen der Korsaren weit suedlich
+     von Gondor?
+     Umbar
+ 22) Wie erobern Luthien Tinuviel und Beren einen Silmaril?
+     Luthien tanzt Melkor in den Schlaf und Beren schneidet mit Angrist,
+     einem Messer, einen Silmaril aus dessen eiserner Krone
+ 23) Nenne mir den Teil Mittelerdes der in der Altvorderenzeit untergeht
+     Beleriand
+ 24) Wie hiess der Vater von Maeglin?
+     Eol der Dunkelelb, der Schmied
+ 25) Wie und wo starb dieser Vater?
+     Wurde hingerichtet in Gondolin, vom Caragdur, einem schwarzen
+     Felsvorsprung, hinabgestuerzt
+ 26) Wieviele Schiffe der Elendili ueberlebten den Untergang Numenors?
+     9
+ 27) Wieviele Palanthiri gab es?
+     7
+ 28) Wo waren diese?
+     Emyn Beraid (auf dem westlichsten Turm der Turmberge), Amon Sul,
+     Annuminas, Minas Ithil, Minas Anor, Orthanc und Osgiliath
+ 29) Wie stirbt Grima Schlangenzunge?
+     Von drei Hobbitpfeilen erschossen
+ 30) Wer wird nach Theoden Koenig von Rohan?
+     Eomer
+ 31) Wie heisst der Weiher, in dem Gollum in Ithilien verbotenerweise
+     Fische faengt?
+     Henneth Annun, eigentlich der Name der Grotte hinter dem Wasser-
+     fall, aber auch der Namen des Weihers
+ 32) Nenne mir die 2 Namen der Schwerter von Gandalf und Thorin
+     Eichenschild.
+     Orcrist und Glamdring
+ 33) Welche besondere Dinge bekam Thorin in sein Grab mit?
+     Den Arkenjuwel (das Herz des Berges) mit ins Grab und sein
+     Schwert Orcrist aufs Grab
+ 34) Welcher Elb geleitete verbotenerweise einen Menschen nach Gondolin?
+     Voronwe den lieben Tuor
+ 35) Wie hiess der besten Elbenfreund Turin Turambars?
+     Beleg 'Cuthalion' Langbogen
+ 36) Wie heisst das Zuhause von Mim, dem Zwerg?
+     Bar-en-Danwedh, das Haus der Ausloese
+ 37) Wie heissen die Soehne Isildurs, die mit ihm fallen?
+     Elendur, Aratan und Ciryon
+ 38) Was bedeutet in der Sprache der Rohan 'Heiliger Berg'?
+     Halifirien (die Frage die die wenigsten wussten :))
+ 39) Was sind die Druedain?
+     Die 'Wilden Menschen' der Ered Nimrais
+ 40) Wie heisst der Wald zwischen den Fluessen Teiglin und Sirion
+     in Beleriand.
+     Wald von Brethil, der Wohnsitz der Haladin
+
+Ein kalter Wind blies hinter ihnen her, als sie dem Rothornpass den
+Ruecken wandten und muede den Hang hinunterstolperten.
+Caradhras hatte sie besiegt.
+
+         tschoe
+       Caradhras - der hoechste Berg Morias
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Antwort & Loesungen Mittelerde-Quiz II (Li, 18. Okt 1995, 08:42:45):
+#! rn=Caradhras rt=813841572
+Tja, Halafirien, na egal.
+Zu Frage 20) Das mit Udun stimmt schon, aber ich frage mich, ob gandalf mit
+udun wirklich ddas Gebiet in Mordor gemeint hat. Schliesslich ist der Balrog
+schon etwas aelter, und muss ja wohl den Fall von Thangorodrim ueberlebt
+haben.
+Es sit sowieso schon seltsam, wie er in die Tiefen von Moria kam, wo er ja
+auch eingeschlossen war.
+Jedenfalls war der Balrog doch von Sauron unabhaengig denke ich mal, (zuerst
+zumindestens). Soviel ich weiss, "lebte" Sauron noch nicht wieder in dol
+goldur, als der Balrog erwachte, oder?
+Naja, wer weiss warum Gandalf ihn so genant hat.
+Li (gruebelnd)
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Re: Antwort & Loesungen Mittelerde-Quiz II (Throin, 18. Okt 1995, 08:54:37):
+#! rn=Li rt=814002165
+Tja, mit Udun war in dem Fall wohl Melkors Festung im Ersten Zeitalter in den
+Eisenbergen gemeint :) Und dort hat er eben einige der Maia zu Balrogs
+pervertiert. Dass der Balrog von Sauron unabhaengig sei kann schon sein. Aber
+die wachsende Praesenz in Dol Guldur war glaub' ich etwa zeitgleich mit einer
+erhoehten Aktivitaet der Moria-Orks. Ob da ein Zusammenhang besteht weiss ich
+aber nicht genau.
+Throin
+
+-----------------------------------------------------------------------------
+
+
+
+MIni-Tolkien-Quiz (Li, 18. Okt 1995, 09:13:19):
+Mal eben eine Frage fuer alle Tolkien Kenner:
+Warum war Sauron so bewandert im ringeschmieden?
+(Mal abgesehen davon, dass er ein Maia ist, und damit sicherlich hoeheres
+wissen besass als Celebrimbor, gibt es noch einen anderen Grund)
+
+Li
+
+-----------------------------------------------------------------------------
+
+
+
+Trivial Pursuit (Li, 18. Okt 1995, 09:33:11):
+Hi!
+Nachdem die Quizrubrik wieder auflebt, moechte ich mal ein paar Fragen aus
+dem "Klassischem" Quiz-Spiel, trivial Pursuit, hier posten. Loesungsmail an
+mich.
+Viel Spass!
+
+
+Geographie:      Wie heisst der beliebte Reisschnaps Japans?
+
+Unterhaltung:    Wie hiess der Film, der als Vorbild fuer "Die glorreichen
+                 Sieben" diente?
+
+Geschichte:      Welche Bezeichnung trugen die 12 Begleiter Karls des
+                 Grossen?
+
+Kunst/Literatur: Von welchen Fantasy-Taschenbuch verkaufe dtv 1991 das
+                 einmillionste Exemplar?
+
+Wissenschaft/
+Technik:          Was verstanden die frueheren Alchimisten unter dem
+                  "Stein der Weisen?
+
+Sport:            Welches Volk hat wahrscheinlich den Bumerang erfunden?
+
+
+P.S.      Uebrigens, das sin alles Originalfragen aus der 2.Genus Edition.
+
+-----------------------------------------------------------------------------
+
+
+
+Re: MIni-Tolkien-Quiz (Ancalagon, 18. Okt 1995, 10:44:48):
+#! rn=Li rt=814003999
+moin Li!
+Die Antwort ist einfach. Er hat im Zweiten Zeitalter bei den Elben
+Mitgeschmiedet. Ob er da allerdings was gelernt hat, kann ich nicht
+beurteilen.
+Allerdings konnte er nur so seinen Ring der Macht schmieden.....
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Re: MIni-Tolkien-Quiz (Li, 18. Okt 1995, 10:54:59):
+#! rn=Ancalagon rt=814009488
+Nene, das meine ich nicht, es hat was damit zu tun, was er vorher war.
+Li
+
+-----------------------------------------------------------------------------
+
+
+
+Re^3: MIni-Tolkien-Quiz (Ancalagon, 18. Okt 1995, 11:04:54):
+#! rn=Li rt=814010099
+moin nochmal.
+Ach so, du meinst das er ein Maia ist und aus Aules Mitarbeiterstab kam....
+
+-----------------------------------------------------------------------------
+
+
+
+Re^4: MIni-Tolkien-Quiz (Li, 18. Okt 1995, 11:09:19):
+#! rn=Ancalagon rt=814010694
+Genau, Aules Ex-Maia
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Trivial Pursuit (Caradhras, 18. Okt 1995, 20:12:43):
+#! rn=Li rt=814005191
+Au ja, oefters bitte, ich hab nur Teil 1 mal auswendig gelernt, aber
+Teil 2 kenn ich nicht. :)
+
+    Jeden Tag ne neue Karte *:^)
+                Rothorn Caradhras Barazinbar - versagt bei Teil 2
+
+-----------------------------------------------------------------------------
+
+
+
+Re^5: MIni-Tolkien-Quiz (Felagund, 25. Okt 1995, 08:43:41):
+#! rn=Li rt=814010959
+Dass er von den Elbenschmieden gelernt haette waer auch unlogisch, immerhin
+haben die den mittmachen lassen, um von IHM zu lernen ;)
+gruss...Fela
+
+-----------------------------------------------------------------------------
+
+
+
+Re^6: MIni-Tolkien-Quiz (Ancalagon, 25. Okt 1995, 09:56:05):
+#! rn=Felagund rt=814607021
+Moin Fela!
+Wenn ich mich recht entsinnen kann, haben aber tatsaechlich beide seiten von
+der anderen etwas gelernt. Nicht nur die Elben von sauron, auch
+andersrum.....(wo hab' ich das gleich noch gelesenFela!).
+
+-----------------------------------------------------------------------------
+
+
+
+Re^7: MIni-Tolkien-Quiz (Grimmborn, 25. Okt 1995, 10:11:01):
+#! rn=Ancalagon rt=814611365
+
+Genau! War es nicht Sauron (bzw sein Herrchen), der die Elben zu den Orks
+weiterentwickelt hat? Nur so ein paar Dumpfbacken haben sich an ihren Baeumen
+festgeklammert und sich geweigert, wie jede normale Rasse unter der Erde zu
+leben...
+
+Grimmborn der Atheist und Zwerg
+
+-----------------------------------------------------------------------------
+
+
+
+Re^8: MIni-Tolkien-Quiz (Felagund, 26. Okt 1995, 07:48:58):
+#! rn=Grimmborn rt=814612261
+Liegt Nargothrond denn etwa ueber der Erde????
+Fela....kennt sich anscheinend daheim schlechter aus als Grimmi :)
+
+-----------------------------------------------------------------------------
+
+
+
+Preisfrage (Loco, 14. Nov 1995, 15:17:15):
+Und die ganze Uni Tuebingen wird morgen raetseln ueber die Frage, die Euch
+schon heute aufgetischt wird:
+
+Was bitte ist das spezifisch weibliche an einem Balisto-Riegel?
+
+Die beste Antwort gewinnt ein Studentenpaket. Die Ausgabe fuer Frauen. Mit
+Balisto-Riegel.
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Preisfrage (Olpp, 16. Nov 1995, 08:48:42):
+#! rn=Loco rt=816358635
+Suess und vollwertig :)
+
+Olpp
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Preisfrage (Ancalagon, 16. Nov 1995, 15:04:52):
+#! rn=Loco rt=816358635
+Moin erstmal!
+Au ja, diese Studentenpakete gibts bei uns auch.......Fuer die maeners gabs
+"Old Spice After Shave" und fuer die Frauens Maggi-Tuetensuppen *kicher*
+Das ist bei uns allerdings scvhon etwas laenger her....
+Immer noch grinsend,
+                                     Ancalagon
+                             Draco knuddellensis major
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Re: Preisfrage (Loco, 16. Nov 1995, 15:08:35):
+#! rn=Ancalagon rt=816530692
+Das war ja wenigstens noch ein echter Unterschied - bei uns bestand der
+Unterschied eben nur in den Balistos fuer Frauen. Deswegen auch die Frage.
+Es hat uebrigens bisher noch keine Antwort gegeben - seid ihr denn wirklich
+so unkreativ?
+
+Loco
+
+-----------------------------------------------------------------------------
+
+
+
+Re^3: Preisfrage (Yendi, 16. Nov 1995, 15:30:57):
+#! rn=Loco rt=816530915
+
+Ich habe da eine moegliche Antwort, aber die ist nicht jugendfrei...
+
+
+Also hier die jugendfreie:
+Die Weiblein kaufen sich "Ballisto"-Riegel, die Maennlein spielen mit
+"Ballista".
+(Das kapieren jetzt wieder bloss Historiker oder Rollenspieler...)
+
+
+-----------------------------------------------------------------------------
+
+
+
+Re^3: Preisfrage (Nasim, 16. Nov 1995, 15:56:00):
+#! rn=Loco rt=816530915
+Vielleicht, weil Frauen i.A. mehr auf gesunde Ernaehrung achten als Maenner?
+
+Gruss, Nasim
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Re: Preisfrage (Agnetha, 16. Nov 1995, 22:15:17):
+#! rn=Olpp rt=816508122
+
+HOHOHO :
+
+
+Agnetha
+
+-----------------------------------------------------------------------------
+
+
+
+Re^3: Preisfrage (Olpp, 17. Nov 1995, 00:35:51):
+#! rn=Loco rt=816530915
+Natuerlich hab ich geantwortet..
+
+Olpp
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Re: Preisfrage (Fyt, 17. Nov 1995, 01:40:04):
+#! rn=Ancalagon rt=816530692
+Also bei uns haben auch die Maenner Tuetensuppen bekommen, und
+Ballisto hab ich nicht gesehen :|
+:
+Fyt.
+
+-----------------------------------------------------------------------------
+
+
+
+Re^4: Preisfrage (Li, 17. Nov 1995, 09:17:55):
+#! rn=Nasim rt=816533760
+Ballisto und gesunde Ernaehrung?
+Naja, ich weiss ja nicht!
+
+-----------------------------------------------------------------------------
+
+
+
+Rechenraetsel (Yantro, 17. Nov 1995, 10:09:20):
+ HAllo ihrs alles,
+
+ich bin letztlich bei einer Party ueber ein kleines Spiel gestolpert, dass
+nicht nur das Hirn massiert, sondern auch stark an den Nerven zehrt. Dabei
+handelt es sich um eine aeusserst simple angelegenheit:
+
+Mann hat immer 3mal die selbe Zahl zur verfuegung und soll die nun so mit
+irgendwelchen mathematischen Symbolen, Rechenzeichen oder Operatoren
+verbinden, dass immer 6 rauskommt. Das kann man dann von 1 bis wasweissich
+durchspielen... wir sind damals mal bis 12 gekommen ;)
+
+Beispiel, wie es gemeint ist:
+
+fuer 1:     (1+1+1)! = 6
+fuer 2:      2+2+2   = 6
+fuer 3:      3*3-3   = 6   usw.
+
+manchmal ist es einfach, mal ganz knifflig.
+
+Loesungen, wenn ihr welche habt bitte wenns mehrere sind per mail an mich,
+damit nicht alles zehnfach in der Zeitung steht.... :) Viel Spass beim
+gruebeln...
+
+               Euers Yantros ;)
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Preisfrage (Aranya, 17. Nov 1995, 16:27:05):
+Was hat das mit den Studi-Paketen auf sich? Ich hab noch nie ein Studipaket
+gekriegt. *schnueff* Weder mit noch ohne Balisto.
+Deshalb fuehl ich mich auch ausserstande, die Frage zu beantworten, was das
+spezifisch weibliche an einem Balisto ist. Hab schliesslich noch nie einen
+gegessen.
+
+Aranya
+      NNN
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Re: Preisfrage (Puma, 17. Nov 1995, 16:32:34):
+#! rn=Aranya rt=816622025
+Was hat das ueberhaupt noch mit dem Titel dieser Rubrik zu tun?
+Waere es nicht nett, hier mal wieder etwas zum Thema zu lesen? So frei nach
+der Art, was steht auf dem Monument von Waldfels und wie ist es entstanden.
+Oder wieder ein paar Liedzeilen, etc..
+Oder wieder Mittelerde. Ich als Magier kann nur schlecht Mud-Preise anbieten.
+
+Puma!
+
+
+
+-----------------------------------------------------------------------------
+
+
+
+Re^3: Preisfrage (Cuchullin, 17. Nov 1995, 18:55:51):
+#! rn=Puma rt=816622354
+
+
+Hmmm... Puma, wenn Du ein Quiz machen moechtest und keine Preise vergeben
+darfst, finden sich bestimmt ein paar Seher, die fuer die Preise 'sammeln'
+(*grins*) gehen.
+
+Cuch.-
+
+
+-----------------------------------------------------------------------------
+
+
+
+Re^5: Preisfrage (Nasim, 19. Nov 1995, 13:51:21):
+#! rn=Li rt=816596275
+... behauptet jedenfalls die Werbung - und gesuender als z.B. Pommes
+rot-weiss duerfte ein Ballisto allemal sein.
+
+Gruss, Nasim
+
+-----------------------------------------------------------------------------
+
+
+
+Re^6: Preisfrage (Loco, 20. Nov 1995, 22:08:08):
+#! rn=Nasim rt=816785481
+Mangels besserer Antworten gehen die zwei hier noch gelagerten Pakete an
+Yendi und Olpp. Gebt mir Bescheid, wie ich sie Euch zustellen soll oder was
+ich sonst damit machen soll. So ein Paket wiegt etwa 2 kg und ist meiner
+Meinung nach ungefaehr 3 Mark wert (nach Ladenpreisen etwa 10,-).
+
+P.S.: Hier hatte auch keiner eine sinnvolle Antwort :)
+
+Loco
+
+-----------------------------------------------------------------------------
+
+
+
+artikel Mal wieder Liedzeilen zum Raten... (Hardil, 23. Nov 1995, 12:04:35):
+
+Ich sitz hier grad mal wieder an einem Liedzeilenraetsel, und nachdem die
+ganzen (fuer mich) einfachen Zeilen geloest sind, sind leider immer noch
+einige viele
+Zeilen uebrig. Vielleicht kann von Euch jemand mir helfen? :-)
+Antworten bitte per mud-mail an mich - wenn ihr sie hier postet, krieg ich
+wieder Aerger mit dem Sheriff.
+Die 'krumme' Zaehlung liegt daran, dass ich die bereits herausgefundenen
+Zeilen schon rausgenommen hab aus dem Zettel :-)
+
+3.) turns a building down, splits a family in two
+4.) another red light street
+10.) Na klar, der Mob hat wieder randaliert, der Buerger applaudiert
+14.) grass is always greener over there
+16.) Kannst Du mich schreien hoeren ....
+18.) My mother threw me into the world as a winner
+20.) Das ganze Leben ein Exzess
+26.) Everywhere you look now, questionairesre living in a dream ... you stay
+behind the scenes
+
+27.) Look and dry your eyes
+28.) You're living in a dream ... you stay behind the scenes
+30.) Get a good job with more pay and you're okay
+31.) I'm on the run, no time to sleep, I've got to ...
+33.) Tonight we'll bring you first pictures of the assassination of the
+president ... first picture - first pictures ...
+36.) Wir kommen aus Hamm
+38.) Soviel Glueck am Montag morgen - da komm' ich ins Gruebeln, da mach' ich
+mir Sorgen
+39.) A pre-owned song or a second hand uzi
+
+
+So. Det wars. Merci im Voraus fuers helfen. :)
+
+-Hardil.
+
+-----------------------------------------------------------------------------
+
+
+
+Kleines C-Quiz (Durian, 18. Dez 1995, 13:39:41):
+Hi!
+
+HIer nun ein Quiz bei dem man nix gewinnen kann. Sacht mir mal, was bei
+folgender C-Anweisung als Ergebnis rauskommt:
+
+     a = --a - a--;
+
+Mein Tip lautet -1, es kommt aber 0 raus. So, und nun erklaert mir mal
+warum ...
+
+- Durian
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Kleines C-Quiz (Gum, 18. Dez 1995, 13:58:59):
+#! rn=Durian rt=819290381
+wenn du es genau auseinander nimmst und nachrechnest, kommt wirlkich 0 raus.
+--a ergibt a-1, gleichzeitig wird aber auch a um eins verringert, so dass
+du bei a-- eigentlich (a-1)-- rechnest, also insgesamt
+a = (a-1) - (a-1) und das ist 0 das a-- wird im prinzip uebergangen
+da danach gleich die zuweisung von (a-1) - (a-1) an a erfolgt
+alles klar? :)
+gum
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Re: Kleines C-Quiz (Loco, 18. Dez 1995, 15:54:02):
+#! rn=Gum rt=819291539
+Wie mir Fyt mal nachgewiesen hat, ist das nicht ganz spezifiziert, was
+rauskommt, und es bleibt dem Programmierer ueberlassen, solche Situationen zu
+vermeiden.
+Das Ganze erinnert an folgendes C-Fragment:
+
+  int i; i=2;
+  printf("%d\n",++i + i++ + i++);
+Nach gesundem Programmiererverstand muesste 10 herauskommen, mit
+verschiedenen Compilern und verschiedenen Optimierungsleveln haben wir in
+einer Testreihe _alle_ Werte von 7 bis 13 erzeugen koennen...
+
+Uebrigens hat Klammerung daran auch nichts geaendert.
+
+Das dazu,
+         Loco
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Kleines C-Quiz (Sique, 19. Dez 1995, 00:57:08):
+#! rn=Durian rt=819290381
+Das ist doch klar? --a ist a - 1, danach ist a = a - 1. a-- ist a, danach
+ist a = a - 1. D.h. --a - a-- ist (a_alt - 1) - (a_alt - 1) == 0.
+D.h. dass kurz vor Durchfuehrung von a = expr. a den Wert von a_alt - 2 hat,
+muss ja keinen interessieren :)
+
+                                                       Sique
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Re: Kleines C-Quiz (Boing, 19. Dez 1995, 09:22:17):
+#! rn=Sique rt=819331028
+So logisch ist das offensichtlich nicht ... nachdem ich durch Nachdenken
+zuerst auf 0 und dann auf -1 gekommen bin, hab ich doch mal einen
+Compiler bemueht. Und siehe da: gcc-2.7 errechnet ohne Optimierung
+0 als Ergebnis und mit Optimierung -1 ... :)
+  Boing
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Re: Kleines C-Quiz (Rochus, 19. Dez 1995, 17:25:46):
+#! rn=Handi rt=819385939
+Bloedsinn. C kennt einen Unterschied zwischen --a und a--:
+a=0;printf("%d,",--a);printf("%d\n",a); liefert -1,-1
+a=0;printf("%d,",a--);printf("%d\n",a); liefert 0,-1
+Die Unterschiede in der Quizaufgabe kommen dadurch zustande,
+dass bei laengeren Ausdruecken nicht genau spezifiziert ist,
+ob beim a-- der Abzug direkt nach der Auswertung von a oder erst
+nach der Auswertung des vollstaendigen Ausdrucks durchgefuehrt werden soll.
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Kleines C-Quiz (Fyt, 19. Dez 1995, 17:26:04):
+#! rn=Durian rt=819290381
+wuerg.. staendig die gleichen diskussionen...
+
+Also: Ein konformer Compiler darf Dir nach Eingabe von --i + i--
+die Festplatte formatieren, anfangen zu kiffen und Dir ans Bein
+pinkeln :))
+Das Verhalten ist undefiniert, d.h. es kann was rauskommen, muss aber
+nicht, und wenn er 342 rauskriegt isses immer noch ok, und du solltest
+dankbar sein, dass Deine Platte noch lebt, den die duerfte er auch
+crashen :)
+
+
+Fyt.
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Re: Kleines C-Quiz (Fyt, 19. Dez 1995, 17:38:37):
+#! rn=Handi rt=819385939
+Um noch was konstruktives beizutragen, Auszug aus der C-FAQ-list:
+
+                int i = 7;
+                printf("%d\n", i++ * i++);
+
+        prints 49.  Regardless of the order of evaluation, shouldn't it
+        print 56?
+
+A:      Although the postincrement and postdecrement operators ++ and --
+        perform the operations after yielding the former value, the
+        implication of "after" is often misunderstood.  It is _not_
+        guaranteed that the operation is performed immediately after
+        giving up the previous value and before any other part of the
+        expression is evaluated.  It is merely guaranteed that the
+        update will be performed sometime before the expression is
+        considered "finished" (before the next "sequence point," in ANSI
+        C's terminology).  In the example, the compiler chose to
+        multiply the previous value by itself and to perform both
+        increments afterwards.
+
+        The behavior of code which contains multiple, ambiguous side
+        effects has always been undefined (see question 5.23).  Don't
+        even try to find out how your compiler implements such things
+        (contrary to the ill-advised exercises in many C textbooks); as
+        K&R wisely point out, "if you don't know _how_ they are done on
+        various machines, that innocence may help to protect you."
+
+        References: K&R I Sec. 2.12 p. 50; K&R II Sec. 2.12 p. 54; ANSI
+        Sec. 3.3 p. 39; CT&P Sec. 3.7 p. 47; PCS Sec. 9.5 pp. 120-1.
+        (Ignore H&S Sec. 7.12 pp. 190-1, which is obsolete.)
+
+-----------------------------------------------------------------------------
+
+
+
+Re^3: Kleines C-Quiz (Oetti, 19. Dez 1995, 17:44:42):
+#! rn=Fyt rt=819391117
+*kratz*
+
+Wer so einen Mist programmiert, dem gehoert der Rechner entzogen...
+
+Nur so nebenbei
+
+Oetti
+
+-----------------------------------------------------------------------------
+
+
+
+Re^4: Kleines C-Quiz (Raffi, 19. Dez 1995, 17:59:40):
+#! rn=Oetti rt=819391482
+
+Du meinst C/C++ Programmierern gehoertt standardmaessig der Rechner entzogen
+?
+
+
+Grinsend
+H.
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Kleines C-Quiz (Aell, 21. Dez 1995, 06:00:02):
+#! rn=Durian rt=819290381
+  Das ist implementationsabhaengig.
+
+    -- Aell
+
+-----------------------------------------------------------------------------
+
+
+
+Filmzitate (Silvana,  8. Jan 1996, 08:52:42):
+Ich hab hier nen bischen was fuer die grossen Kenner der Filmbranche:
+Zitate aus verschiedenen (mehr oder weniger) bekannten Filmen. Wer mitraten
+moechte, tut das bitte per Mud-mail an mich, um nicht den anderen den Spass
+zu verderben. Preise? Jo, gibt's auch - auf der Party. Wer nicht kommen
+kann - dumm gelaufen - dann halt hinterher. ;)
+
+So - zum warmwerden erstmal ein paar, die wirklich geschenkt sind:
+1) Es kann nur einen geben.
+
+2) Heute ist kein guter Tag zum sterben.
+
+3) Hasta la vista, baby.
+
+OK, die sollten klar sein. So, jetzt die einfachen:
+4) Mick, Mick, Mick! Verdammt, Mann, sing deutlich.
+
+5) Her kommen sie mal, Frau!
+
+6) Du musst zugeben, dass ich auf dieser Stadt wie auf einer Teufelsharfe
+   gespielt habe.
+
+7) And what charming underclothes you wear...
+8) ...Sie wissen zum Beispiel, dass ich keine Unterwaesche trage.
+
+9) Messer? Das ist doch kein Messer. DAS hier ist ein Messer.
+
+10) Sehr wohl, Euer Majy.  (Ich bin mir hier nicht sicher, ob sich das so
+     schreibt.)
+
+11) Er schleimte mich voll.
+
+12) Quid pro quo, <name>
+
+Zu leicht? OK, wie waer's hiermit?
+13) Das alte Spiel: boeser Bulle - ganz boeser Bulle.
+
+14) Moment mal. Was ist denn, wenn einer im Flugzeug fliegt und durch die
+    Zeitzonen reist? Ich meine: Irgendwo ist doch immer nach Mitternacht.
+
+15) C1: Ah, ich verstehe: boeser Bulle (zu C2), guter Bulle (zu C3).
+    C3: Schnauze.
+    C1: Ach, so: boeser Bulle, noch'n boeser Bulle.
+
+16) C1 (zu vielen Polizisten): Waffen runter und verzieht euch, oder ich leg
+    die Geisel um.
+    C2 (zu C1): Moment mal - Sie legen die Geisel um? Sie SIND die Geisel.
+    C1 (zu C2): Halt die Schnauze und gib mir Deine Kanone.
+
+17) Jippijajeh, Schweinebacke.
+
+18) Wer ist Bernsey?
+
+19) Sie: Die meissten Serienmoerder behalten eine Art Trophae von ihren
+Opfen.
+    Er: Tat ich nie.
+    Sie: Nein. Sie haben sie gegessen.
+
+Auch noch einfach, gell? OK, jetzt wird's langsam schwerer:
+20) Der kaelteste Winter, den ich je erlebt habe, war der Sommer, den ich
+    in San Francisco verbracht habe.
+
+21) Es war, als blickte man in das Antlitz der Liebe.
+
+22) Er: ...und was macht Ihr Buch?
+    Sie: Das schreibt sich ganz von selbst.
+
+23) Gebt dem Luder ordentlich Puder.
+
+24) Sie: ...Dir waechst ein wildes Tier aus der Hose!
+    Er: Danke, Schatz. Ich hab uebrigens einen Hund dabei.
+
+25) Er(1): Fuck...
+    Sie: Was soll's. Die waren doch alle schon halb besoffen, als ich
+rauskam.
+    Er(2): Sie sagt fuck...
+    Sie: Mein Gott, ich hab's gesagt, nicht gemacht!
+
+26) Wir sind mit dem Essen fertig, er langt ueber den Tisch, reisst mir ein
+    Haar aus und putzt sich damit die Essensreste aus dem Zaehnen.
+
+27) (Im Gerichtssaal) Achtung! Ein Offizier ist anwesend!
+
+28) Sie(1): Ausgesprochen huebsch... Entzueckend...
+Wunderschoen...(erschrickt)
+    Sie(2): Und was empfehlen Sie hier?
+    Sie(1): Moeglichst nur nachts zu spielen.
+
+29) Das hier ist Wunderkleber. 1001 Verwendungsmoeglichkeit. Und jetzt
+    gibt's 1002.
+
+30) Ich werde mich biegen wie das Schilf im Winde.
+
+31) Sie: ...du bist so... amerikanisch.
+    Er: Und du, du bist so - hmmm - tschecheslovakisch.
+
+
+So, zum Abschluss noch was fuer Profis   ;)
+32) Ein Mensch, der Blacky heisst, ist niemals aufrichtig, Roberta.
+
+33) 'WIR sind das Volk!' ist nicht das gleiche wie 'Wir SIND das Volk!'.
+    Das verdreht den Sinn. ... Kurz gesagt: Wir werden die Plaketten nicht
+    bezahlen.
+
+34) Er(1): Ist ihr Anwalt da?
+    Er(2): Ich bin der Anwalt.
+    Er(1): Oh... (Mein Vetter Winnie)
+
+Einsendeschluss ist uebrigens der 20.Februar - viel Zeit also, Videotheken
+zu durchsuchen etc.
+
+Have Fun - Silvana
+
+PS: Ach - um Geruechten vorzubeugen: Bei dem Preis geht es NICHT um einen
+    Schlafplatz bei der Party... ;)
+
+-----------------------------------------------------------------------------
+
+
+
+links-rechts (Zardoz,  9. Feb 1996, 14:38:32):
+Hier mal ne kleine Denksportaufgabe:
+
+Also, angenommen man stellt ueber Funkt mit Ausserirdischen einen Kontakt
+her, man lernt die Sprache und loesst alle kommunikativen Probleme.
+Wie erklaert man den Ausserirdischen, was bei uns links und rechts ist,
+wenn man auf keine asymetrischen Sternbilder/Konstellationen verweisen
+kann und man ihnen auch keinen Lichtstrahl polarisierten Lichts schicken
+kann?
+
+Wer diese Aufgabe kennt, soll bitte nicht gleich die richtige Loesung
+hier posten, sondern die anderen mal ueberlegen lassen :)
+Wer Vorschlaege hat, kann sie mir mal mailen, ich werde dann schon
+begruenden, warum es so nicht geht :))
+
+Zardoz
+P.S. Es gibt natuerliche eine (bzw. mehrere Loesungen)
+P.P.S argl, soll natuerlich Funk heissen, um nur einen der vielen Fehler
+zu korrigieren :)
+
+-----------------------------------------------------------------------------
+
+
+
+Affentheater ? (Ryne, 14. Feb 1996, 20:15:33):
+Nur ein kleines Quiz, recht einfach:
+Wo ist diese Sache passiert ?
+
+Nun ja, da der Affe des Hauses nicht mehr unter uns weilt, muss dieses Lokal
+voruebergehend geschlossen werden. Enttaeuscht gehst Du aus der Kneipe.
+
+
+Ueberrascht, in einer (eigentlich bekannten Region des MG auch noch neues zu
+finden,
+
+Rzne.
+
+-----------------------------------------------------------------------------
+
+
+
+Weg mit den Geldnoeten? (Yantro, 15. Feb 1996, 08:40:04):
+
+Heya,
+
+hier mal eine kleine Sache, die ich noch aus alten Zeiten aus einer
+Schuelerzeitung habe, die aber immer wieder fuer Verwirrung (NEIN, nicht DU)
+sorgt:
+
+A leiht sich bei B und C jeweils 25 DM. Mit diesen 50 DM und seiner Freundin
+geht er dann was nettes essen, was ihn von den 50 DM 45 DM kostet. Also hat er
+noch 5 DM ueber. Nun geht er zu B und C und zahlt jeweils 1 DM der Schulden
+zurueck. A hat nun noch 3 DM, aber 2*24 DM Schulden. Dies zusammengezogen
+hiesse aber, dass er nicht 50, sondern 51 DM hat. Wo ist die 1 DM her? Wo
+steckt der Denkfehler? Wieso kann ich nicht zu 2 Banken gehen und damit
+Geldscheffeln?
+
+Loesung bitte per mail an mich. Diskutieren koennt ihr auch hier :)
+
+                       Yantro, demnaechst reich :)
+
+-----------------------------------------------------------------------------
+
+
+
+Links 1 DM, rechts 1 DM Schulden, das sind dann schon 2 DM  (Tryfan, 15. Feb 1996, 14:02:12):
+Also die Aufgabe von Yanrtro ist ja nun fast schon zu einfach.
+Aber das mit dem rechts-links bereitet mir schlaflose Naechte.
+MIr faellt einfach keine Loesung ein. Muss man da mit Spiegelsymetrien ran,
+oder Nichtkummutativitaeten von Drehungen ausnutzen, oder unterscheidet
+Links von Rechts eigentlich gar nicht? *argl*
+Bitte , bitte erloese mich endlich von den Qualen, Zardoz, auf dass ich
+mich ob der einfachen Loesung in meinen Maulwurfsgaengen verlaufen moege.
+ Tryfan ist leicht verwirrt
+
+-----------------------------------------------------------------------------
+
+
+
+Mal was anderes.... (Morgoth, 15. Feb 1996, 18:35:49):
+ 1.) Wie lautet der Spitzname von Lt. Barklay?
+ 2.) Wie lautet der name des groessten, boesen Meister der Kholinaru?
+ 3.) Durch wen wurde das Krisstallinwesen zerstoert?
+ 4.) Wer toetete Worf Eltern und wann und wo geschah es?
+ 5.) Wie hiess der klingonische Austauschoffizier auf der Enterprise?
+ 6.) Wie heisst die klingonische Spezialitaet, die am Besten lebend
+     gegessen wird?
+ 7.) Was heist VISOR (englisch)?
+ 8.) Wie lautet die Seriennummer Jean-Luc Picards?
+ 9.) Wo fand die erste Entscheidungsschlacht mit den Borg statt?
+10.) Was stand auf Kirks T-Shirt zu Beginn von ST 5 ?
+11.) Wie heissen die Wale aus ST 4 ?
+12.) Wer uebernahm die zweite fuenfjahres Mission auf der NCC-1701 ?
+13.) Wie heisst Picards Bruder und dessen Sohn?
+14.) Wer ist der Verursacher der Mutationen in der TNG-Folge 'Genesis'
+     und wie heissen die Gene, die aktiviert wurden?
+15.) Von welcher Rasse war das Schiff, das zusammen mit der Enterprise
+     in der Energiefalle gefangen war?
+16.) Welche drei Symbole waren auf dem psionischen Resonator vorhanden?
+17.) Wie heissen die beiden Rassen in der TNG-Folge 'Kontakte' ?
+18.) Wie heisst die Tetrarchin der Paco?
+19.) Wieviele Personen verkoerpert Data in der TNG-Folge 'Der Komet' ?
+20.) Wie heisst Quarks Neffe?
+
+Diese Fragen sollten nicht allzu schwer sein. Mail bitte an mich.
+Morgoth
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Mal was anderes.... (Grimmborn, 26. Feb 1996, 21:31:32):
+~#! rn=Morgoth rt=824405749
+~#! tid=824405749
+
+Klar sind die Fragen nicht schwer.
+Die Antworten andererseits...
+Nur als Frage meinerseits: Verraetst Du auch, worum es geht? Sowas in der Art
+wie "Mittelerdequiz" oder "Wer kennt die folgenden Liedzeilen" waere nett.
+
+GdA
+
+-----------------------------------------------------------------------------
+
+
+
+3 Toechter (Wendellgee, 27. Feb 1996, 12:48:33):
+Ein Vertreter kommt zu einem Haus. Er klingelt und eine Frau kommt heraus. Er
+fuehrt ihr sein Produkt vor und die Frau ist interessiert. Sie sagt:
+
+Ich kaufe Ihnen das ab, wenn Sie mir sagen koennen, wie alt meine drei
+Toechter sind. Die Summe der drei Zahlen ist meine Hausnummer und das Produkt
+ist 36.
+
+Der Vertreter denkt nach und sagt dann:
+
+Nein, das kann ich leider nicht loesen.
+
+Die Frau entgegnet:
+
+Na gut, noch ein Tip: Meine aelteste Tochter spielt Klavier.
+
+Der Vertreter denkt noch einmal nach, dann kann er ihr die drei Zahlen
+nennen.
+
+Die Fragen lauten nun: Wie alt sind die drei Toechter, und wie ist der
+Vertreter darauf gekommen?
+
+-----------------------------------------------------------------------------
+
+
+
+Re: 3 Toechter (Asmodis, 27. Feb 1996, 17:07:07):
+~#! rn=Wendellgee rt=825421713
+~#! tid=825421713
+Wie ist denn die Hausnummer? hab ich irgendwie nicht gelesen.
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Re: 3 Toechter (Ulo, 27. Feb 1996, 17:07:52):
+~#! rn=Asmodis rt=825437227
+~#! tid=825421713
+das ist ja der gag, die sollst du auch noch rauskriegen :)
+Ulo.
+
+-----------------------------------------------------------------------------
+
+
+
+Re^3: 3 Toechter (Freund, 27. Feb 1996, 20:24:10):
+~#! rn=Ulo rt=825437272
+~#! tid=825421713
+Tja, die Hausnummer BRAUCHT man bei dieser seltenen Aufgabenart auch nicht.
+Ich habe eine Loesung, ich denke, man sollte sie nicht
+hier posten, oder?
+
+Freund, der diese Rubrik sonst immer ueberliest...
+
+-----------------------------------------------------------------------------
+
+
+
+rot oder schwarz, aber warum? (Tryfan, 27. Feb 1996, 21:33:04):
+Hi,
+ hier mal ein etwas komplizierteres Raetsel, wie ich meine. Aber man muss 
+aehnlich, wie bei dem mit dem Vertreter denken.
+
+ Vorrede:
+Also, Ausserirdische kidnappen drei Menschen, die sie fuer sehr intelligent
+halten. Nun wollen sie herausbekommen, wer der intelligenteste von ihnen
+ist. In zahlreichen Tests haben sie ihre Intelligenz unter Beweiss gestellt,
+und es lies sich einfach kein Unterschied herausfinden. 
+ Nun entschliesst man sich zu einer drastischen Massnahme, zu einem letzten 
+Test. Man macht den dreien klar, dass nur der Gewinner des Test ihn ueberleben
+wird. Nur wer die richtige Antwort auf eine Frage als erster gibt, wird
+ueberleben, die anderen getoetet. Falsche Antworten fuehren zum sofortigen Tod!
+
+ Hier kommt die eigentliche Aufgabe:
+Die drei Menschen werden in einem Raum gefuehrt, in dem ein Tisch steht, auf
+dem fuenf Kappen liegen, drei rote und zwei schwarze. Den dreien werden die 
+Augen verbunden und jeweils eine Kappe aufgesetzt. Die zwei uebriggebliebenen
+Kappen werden entfernt. Die drei werden so in einen Kreis gesetzt und gefes-
+selt, dass sie sich nicht bewegen koennen. Nun wird die Frage gestellt. 
+          'Welche Farbe hat die Kappe, die Du aufhast?'
+Allen werden nun gleichzeitig die Augen frei gemacht. Natuerlich koennen sie
+nur die Kappen der jeweils anderen nicht aber die eigene sehen!
+
+ Nun Deine Aufgabe: 
+Stell Dir vor, Du waerest dabei, und die anderen beiden haben rote Kappen auf.
+Wie lautet Deine Antwort und warum? Sei Dir sicher, dass sie stimmt! Eine 
+falsche Antwort bedeutet Deinen Tod. Und sei schnell! Denn deine Mitstreiter 
+sind nicht dumm!
+
+P.S.: Niemand kann mogeln, und die Ausserirdischen haben auch nicht gemogelt.
+
+ Loesungen bitte wie immer NICHT in die MPA, sondern diesmal an mich.
+
+-----------------------------------------------------------------------------
+
+
+
+Re: rot oder schwarz, aber warum? (Cub, 27. Feb 1996, 21:55:43):
+~#! rn=Tryfan rt=825453184
+~#! tid=825453184
+Da ich diesen intellektuellen Kram eh nicht verstehe:
+
+Kriegen wir irgendwann die Antwort auch in der MPA zu lesen ?
+
+Rzne, geht jetzt ausnahmsweise was metzeln.
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Re: rot oder schwarz, aber warum? (Anatol, 27. Feb 1996, 21:58:01):
+~#! rn=Cub rt=825454543
+~#! tid=825453184
+
+Unmittelbar nach Erscheinen des vorigen Artikels:
+"Ryne   I S T   J E T Z T   N I C H T   M E H R   D A !!!"
+
+Wo geht der Kerl metzeln???
+Ueberlegt sich das in Zukunft mit Muenster NOCH genauer,
+Anatol
+
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Re: rot oder schwarz, aber warum? (Mango, 27. Feb 1996, 21:58:32):
+~#! rn=Cub rt=825454543
+~#! tid=825453184
+
+
+          Da kann ich Rzne nur zustimmen.
+
+
+Mango, tierisch dumm.
+
+
+
+
+-----------------------------------------------------------------------------
+
+
+
+Re^4: 3 Toechter (Asmodis, 27. Feb 1996, 22:20:37):
+~#! rn=Freund rt=825449050
+~#! tid=825421713
+Also ich hab da 2 Loesungen, welche soll richtig sein ?
+
+-----------------------------------------------------------------------------
+
+
+
+Re: rot oder schwarz, aber warum? (Tryfan,  4. Mar 1996, 13:14:36):
+~#! rn=Tryfan rt=825453184
+~#! tid=825453184
+  Ein Vertreter ruft: rot!
+Alle, die sich der Aufgabe gestellt haben, haben ihr Leben behalten.
+Ich poste hier mal die Erklaerung von Snuggle. Sie scheint mir am ausfuehr-
+lichsten.
+ich nenn die drei mal a b und c, wobei ich selber c bin.
+angenommen ich habe eine schwarze kappe auf, so denkt a sich: wenn b die
+schwarze kappe von c sieht, muesste er, falls ich selber eine schwarze kappe
+aufhabe,sofort rot schreien, da ers nicht tut, habe ich eine rote kappe auf
+Ergebnis: er schreit rot
+Das selbe gilt fuer b
+da keiner von beiden dieses tut, muessen sie den gleichen komplizierten
+gedankegang verfolgen, wie ich soeben, da ich aber schneller bin, rufe ich
+vorher rot: :-)
+
+Auch Anatol, Snuggle, Mika und Zephyr konnten noch die richtige Loesung und
+Erklaerung geben. Argl, Predator sollte das heissen.
+Also nochmal : Anatol, Predator, Snuggle, Mika und Zephyr
+ Herzlichen Glueckwunsch :)
+	Tryfan
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Re: rot oder schwarz, aber warum? (Amonsul,  5. Mar 1996, 11:40:11):
+~#! rn=Tryfan rt=825941676
+~#! tid=825453184
+Und was ist, wenn einer oder zwei von den anderen farbenblind ist?
+
+-----------------------------------------------------------------------------
+
+
+
+Loesung fuer die 3 Toechter (Wendellgee,  5. Mar 1996, 12:24:37):
+Um endlich Licht in die Sache zu bringen, hier die offizielle Aufloesung:
+
+Es gibt folgende Moeglichkeiten, um das Produkt 36 zu erreichen:
+1 1 36
+1 2 18
+2 2 9
+1 3 12
+2 3 6
+3 3 4
+1 6 6
+
+die hausnummern waeren in diesen faellen:
+38
+21
+13
+16
+11
+10
+13
+
+Wie man sieht, ist die hausnummer bei 2 2 9 und bei 1 6 6 gleich
+
+der vertreter konnte das raetsel nicht sofort loesen, weil die hausnummer 13
+war
+
+die loesung ist 2 2 9, weil es bei 1 6 6 zwei toechter4e gibt, die gleich alt
+sind.
+
+WendellGee.
+
+-----------------------------------------------------------------------------
+
+
+
+ergaenzung zur loesung (Wendellgee,  5. Mar 1996, 12:29:20):
+natuerlich sind auch bei 2 2 9 zwei gleich alt, aber die aelteste ist
+eindeutig definiert.
+Noch mal tschuess, WendellGee
+
+-----------------------------------------------------------------------------
+
+
+
+kugeln (Wendellgee,  5. Mar 1996, 13:12:37):
+Du hast 12 Kugeln, die alle gleich aussehen.
+Alle Kugeln sind gleich schwer, bis auf eine.
+Diese Kugel ist entweder schwerer oder leichter, du weisst jedoch nicht, was.
+
+Du hast eine Waage mit zwei Waagschalen, auf die beliebig viele Kugeln
+passen.
+Du darfst drei Mal die Waage benutzen, dann musst du wissen, welche Kugel
+anders ist, und ob sie leichter oder schwerer ist.
+
+Anmerkung: Ich kenne die Loesung nicht, ich brauche viel Mal, um es zu
+schaffen.
+
+Viel Spass, WendellGee
+
+-----------------------------------------------------------------------------
+
+
+
+Re: kugeln (Terrorist,  5. Mar 1996, 13:16:33):
+~#! rn=Wendellgee rt=826027957
+~#! tid=826027957
+
+Auweia das klingt mir verdammt nach Tarko REub und ich glaube nicht das es
+die AMgs gern sehen wenn man die Loesung und der Zeitung postet.
+Also versuch selber drauf zu kommen
+
+Terrorist weiss wie es geht.
+
+-----------------------------------------------------------------------------
+
+
+
+Re: kugeln (Bloodyharry,  5. Mar 1996, 13:17:09):
+~#! rn=Wendellgee rt=826027957
+~#! tid=826027957
+
+Das ist doch eine Aufgabe aus dem Tarko-Reub_quest!
+Wer die loesung hier oeffendlich postet, wird geloescht!! :-)
+
+BloodyHarry
+
+-----------------------------------------------------------------------------
+
+
+
+Re: kugeln (Morgoth,  5. Mar 1996, 13:21:56):
+~#! rn=Wendellgee rt=826027957
+~#! tid=826027957
+aehm...das ist bestandteil einer quest....nimm das lieber raus
+
+-----------------------------------------------------------------------------
+
+
+
+Re: kugeln (Yendi,  5. Mar 1996, 13:41:57):
+~#! rn=Wendellgee rt=826027957
+~#! tid=826027957
+
+Soll ich auch noch mal?
+OK!
+
+Also, Wendellgee, Du, das ist so, also, dieses Raetsel mit den Kugeln, ja,
+das ist naemlich Bestandteil einer Quest hier, ja, und ich finde es ja ganz
+toll, wenn Du hier so ein Quiz veranstaltest, ja, aber Du, also Du, da koennte
+der Magier, der die Quest geschrieben hat, also echt total sauer werden, ja,
+weil naemlich die Leute, die da reinrennen ja vielleicht schon die Loesung in
+der Zeitung gelesen haben, ja, und das waere dann ja echt nicht so toll,
+nicht?
+Also, ich finds total gut, dass Du da Verstaendnis hast, also echt, Du...
+
+
+
+
+So, sonst noch jemand, dem die Verwandschaft zum Tarko-Reub-Raetsel
+aufgefallen ist?
+
+
+-----------------------------------------------------------------------------
+
+
+
+erklaerung (Wendellgee,  5. Mar 1996, 13:52:54):
+ich hatte keine ahnung, dass dieses raetsel aus einem quest stammt, ich habe
+es von einem freung gehoert (nicht im internet)
+ich wuerde die loesung trotzdem gerne wissen, koennte sie mir jemand
+persoenlich schicken?
+WendellGee
+
+-----------------------------------------------------------------------------
+
+
+
+Re: erklaerung (Yendi,  5. Mar 1996, 13:55:32):
+~#! rn=Wendellgee rt=826030374
+~#! tid=826030374
+
+
+Hey, _so_ schwer ist es wirklich nicht! Versuch es lieber selber! :)
+
+
+-----------------------------------------------------------------------------
+
+
+
+3 matrosen (Wendellgee,  5. Mar 1996, 14:04:04):
+In einer Hafenkneipe sitzen drei Matrosen an einem Tisch, ein Chinese, ein
+Indianer und ein Neger.
+Da sagte der mit der weissen Jacke: Mir faellt gerade auf, dass keiner von
+uns eine jacke traegt, die seiner hautfarbe entspricht.
+stimmt, sagte der chinese.
+
+(das raetsel ist ziemlich leicht)
+Wer traegt welche jacke?
+***
+
+-----------------------------------------------------------------------------
+
+
+
+Re: 3 matrosen (Highlander,  5. Mar 1996, 14:05:35):
+~#! rn=Wendellgee rt=826031044
+~#! tid=826031044
+Der Neger traegt die weisse, der Chinese die gruene und der Indianer die
+violette :>
+  HrT
+
+-----------------------------------------------------------------------------
+
+
+
+theorie (Wendellgee,  5. Mar 1996, 14:07:47):
+wir alle kennen die raetsel, bei denen man eine bestimmte figur in einem
+strich nachziehen muss, ohne abzusetzen.
+
+wie kann man innerhalb weniger sekunden erkennen, ob man eine beliebige figur
+in einem strich nachziehen kann, egal, wie diese aussieht?
+
+-----------------------------------------------------------------------------
+
+
+
+Re: theorie (Ulo,  5. Mar 1996, 14:10:50):
+~#! rn=Wendellgee rt=826031267
+~#! tid=826031267
+Du schaus bei den Schnittstellen, bzw. Kreuzungen nach, ob sich dort eine
+gerade oder eine ungerade Anzahl von Strichen treffen. Wenn es mehr als 2
+Stellen mit ungerader Anzahl gibt, kann man es nicht nachzeichnen.
+Das liegt daran, dass an den Stellen, wo sich eine ungerade Anzahl von
+Strichen trifft, entweder der Startpunkt oder der Endpunkt liegen muss. Und
+mehr als 2 geht nicht gut :)
+
+Ulo.
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Re: 3 matrosen (Oetti,  5. Mar 1996, 14:12:56):
+~#! rn=Highlander rt=826031135
+~#! tid=826031044
+Das mit dem NEger ist aber ueberhaupt nicht p.c., gelle ;-)))
+
+Gruss
+
+Oetti
+,
+
+-----------------------------------------------------------------------------
+
+
+
+Re: theorie (Tryfan,  5. Mar 1996, 14:14:58):
+~#! rn=Wendellgee rt=826031267
+~#! tid=826031267
+Hm, die Theorie nennt sich Pfadtheorie, glaub ich.
+ das, wo zwei Linien zusammenstossen, wird Knoten genannt. Die Verbindungs-
+linien der Knoten sind dann die Pfade. Geht von jedem der Knoten eine
+grade Anzahl von Pfaden ab, aknn ich die Figur in einem Zug malen.
+Dabei muss man noch beachten, dass ich mir den ersten (letzen) Pfad nur
+denken koennte, aber nicht zeichne. Ich kann also auch Figuren duchzeichnen,
+die zwei Punkte haben mit ungrader Knotenanzahl, indem ich mir den Pfad
+denke,
+der diese beiden Knoten verbindet. (Beispiel: Das Haus vom Nikolaus. ;) )
+ Hab ich mich unklar genug ausgedrueckt? ;))
+  Tryfan
+
+-----------------------------------------------------------------------------
+
+
+
+Re: kugeln (Asmodis,  5. Mar 1996, 14:26:41):
+~#! rn=Wendellgee rt=826027957
+~#! tid=826027957
+Hmm, das Problem kenne ich irgendwoher. Tarko Reub ?? :)
+
+-----------------------------------------------------------------------------
+
+
+
+alt (Wendellgee,  5. Mar 1996, 14:27:54):
+Wer noch nicht genug hat, kann ja noch mal das alte Raetsel probieren, wie
+mal mit einem 3-liter-kanister und einem 5-liter-kanister genau 4 liter wasser
+abmessen kann.
+WendellGee
+
+-----------------------------------------------------------------------------
+
+
+
+Re: alt (Ulo,  5. Mar 1996, 14:29:47):
+~#! rn=Wendellgee rt=826032474
+~#! tid=826032474
+Und wer die loesung nicht kennt, schaut sich nochmal Die Hard III an ...
+Ulo.
+
+-----------------------------------------------------------------------------
+
+
+
+Re: alt (Yendi,  5. Mar 1996, 14:31:57):
+~#! rn=Wendellgee rt=826032474
+~#! tid=826032474
+
+Soll ich auch noch mal?
+OK!
+
+Also, Wendellgee, Du, das ist so, also, dieses Raetsel mit den Kanistern,
+das ist naemlich Bestandteil einer Quest hier, ja, und ich finde es ja ganz
+toll, wenn Du hier so ein Quiz veranstaltest, ja, aber Du, also Du, da
+koennte
+der Magier, der die Quest geschrieben hat, also echt total sauer werden, ja,
+weil naemlich die Leute, die da reinrennen ja vielleicht schon die Loesung in
+der Zeitung gelesen haben, ja, und das waere dann ja echt nicht so toll,
+nicht?
+Also, ich finds total gut, dass Du da Verstaendnis hast, also echt, Du...
+
+
+Schon gut, schon gut, ich hoer schon auf...
+
+
+
+-----------------------------------------------------------------------------
+
+
+
+Re: 3 matrosen (Asmodis,  5. Mar 1996, 14:33:31):
+~#! rn=Wendellgee rt=826031044
+~#! tid=826031044
+Hmm, da steht nicht, dass alle Jacke eine Entsprechung in der Hautfarbe eines
+Gegenuebers haben, also kann man nur den Besitzer der weissen Jacke
+ermitteln.
+
+-----------------------------------------------------------------------------
+
+
+
+Re: alt (Asmodis,  5. Mar 1996, 14:37:30):
+~#! rn=Wendellgee rt=826032474
+~#! tid=826032474
+Das gehoert auch zu einem Quest, Shaky-Island :)
+
+-----------------------------------------------------------------------------
+
+
+
+Re: alt (Morgoth,  5. Mar 1996, 15:19:03):
+~#! rn=Wendellgee rt=826032474
+~#! tid=826032474
+auch aus ner quest....
+
+-----------------------------------------------------------------------------
+
+
+
+Nochmal Kugeln!! (Terrorist,  5. Mar 1996, 15:30:37):
+
+Hab ich doch vorhins geschrieben das ich es geschafft hab, stimmt aber nur
+mit der methode wo es eine der letzten 4 sein kann das hab ich aber erst jetzt
+gemerkt und noch ein wenig nachgedacht und kam dann bis das es eine der ersten
+9 is aber nicht weiter.
+
+Wer kann mir mal per mudmail die Loesung schicken das es fuer alle Kugeln
+geht? Denn bis jetzt bin ich noch ueberzeugt fuer alle klappts nicht.
+
+Terrorist hofft auf eine eindeutige Loesung.
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Nochmal Kugeln!! (Asmodis,  5. Mar 1996, 15:32:59):
+~#! rn=Terrorist rt=826036237
+~#! tid=826036237
+Also ich hab ne Loesung, wo es eine von 2 sein kann, besser bekam
+ich es auch nicht hin, naja, es reichte aber :)
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Re: Nochmal Kugeln!! (Terrorist,  5. Mar 1996, 15:33:17):
+~#! rn=Asmodis rt=826036379
+~#! tid=826036237
+Ich wills aber genau :)
+
+-----------------------------------------------------------------------------
+
+
+
+Re^3: Nochmal Kugeln!! (Mars,  5. Mar 1996, 15:54:30):
+~#! rn=Terrorist rt=826036397
+~#! tid=826036237
+Also, es geht definitiv (Ich hab auch die Loesung) :
+Bei jeder Waegung kann entweder die linke Waagschale schwerer
+sein, die rechte Waagschale schwerer sein, oder die Waage ist
+im Gleichgewicht => es gibt 27 verschiedene Faelle fuer die
+drei Waegungen.
+Wenn von 12 Kugeln eine leichter oder schwerer ist, als alle
+anderen, gibt es 24 verschiedene Faelle fuer die falsche
+Kugel.
+Bei guenstiger Verteilung der Kugeln auf die Waagschalen kann
+man die richtige Kugel also eindeutig bestimmem.
+
+-----------------------------------------------------------------------------
+
+
+
+Re^4: Nochmal Kugeln!! (Terrorist,  5. Mar 1996, 16:11:06):
+~#! rn=Mars rt=826037670
+~#! tid=826036237
+
+Ich weiss zephyr hats mir gezeigt :)
+
+Terrorist.
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Re: kugeln (Raffi,  5. Mar 1996, 17:26:47):
+~#! rn=Yendi rt=826029717
+~#! tid=826027957
+
+Auch wenn das mit den Kugeln in Tarko Reub vorkommt, so ist dieses Raetzel
+leider nicht auf dem Mist des entsprechenden Magiers gewachsen (behaupte ich
+einfach mal :) sondern 'Allgemeinbesitz'. Oder kann man jetzt hier einfach
+irgendwelche Raetzel banishen lassen ?
+
+Gruss
+H.
+
+-----------------------------------------------------------------------------
+
+
+
+Re^3: kugeln (Laila,  5. Mar 1996, 17:33:51):
+~#! rn=Raffi rt=826043207
+~#! tid=826027957
+Aber Raetsel die in Questen vorkommen sollen auch dort geloest werden, und
+nicht
+vorher schon in der Zeitung nachzulesen sein
+
+Gruss
+
+Laila
+
+-----------------------------------------------------------------------------
+
+
+
+Re^4: kugeln (Raffi,  5. Mar 1996, 17:37:07):
+~#! rn=Laila rt=826043631
+~#! tid=826027957
+
+Und wenn demnaechst hier einer (nein ich nenne keine Namen) ein
+Mittelerdequiz macht, dann ist das also auch verboten ? (es gibt ja
+schliesslich auch im MG einige von dort Entliehene Sachen :)
+
+Gruss
+H.
+P.S.: Endlich hab ich die MPA durch :)
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Re: theorie (Atoz,  5. Mar 1996, 18:13:28):
+~#! rn=Ulo rt=826031450
+~#! tid=826031267
+Also entweder ich habe deine Antwort falsch verstanden Ulo, oder sie Stimmt
+nicht.
+Einen Drudenfuss kann man auch in einem strich zeichnen, aber da haben alle
+Kreuzungen drei schnittgeraden...
+*gruebelnd* Abiszet :)
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Re: alt (Atoz,  5. Mar 1996, 20:09:53):
+~#! rn=Yendi rt=826032717
+~#! tid=826032474
+Hmmm also, das Raetsel in der Quest ist aber ein bisschen anders Yendi. Die
+mengen angaben sind etwas anders....
+Tschau Atoz
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Nochmal Kugeln!! (Fyt,  6. Mar 1996, 10:01:13):
+~#! rn=Terrorist rt=826036237
+~#! tid=826036237
+Es geht mit drei Waegungen, ich fibd das Problem nichttrivial
+und werde mich hueten irgendwas per MudMail zu verschicken...
+
+Das Raetsel in der QUest is uebrigens etwas entschaerft...
+
+Fyt.
+
+-----------------------------------------------------------------------------
+
+
+
+Re^4: Nochmal Kugeln!! (Fyt,  6. Mar 1996, 10:03:10):
+~#! rn=Mars rt=826037670
+~#! tid=826036237
+Hm, Mars, Du musst freilich sicherstellen, dass Deine
+Waegungen die Moeglichkeite auch ungefaehr dritteln...
+Wenn Du irgendwie wiegst, dass nuetzt Dir auch die t
+theoretische Moeglichkeit der Unterscheidung von 27
+Kugeln nix :)
+
+Fyt.
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Re: alt (Li,  6. Mar 1996, 10:50:34):
+~#! rn=Ulo rt=826032587
+~#! tid=826032474
+oder "kopfball" vom vorletzten Sonntag....
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Re: kugeln (Mango,  6. Mar 1996, 12:57:06):
+~#! rn=Bloodyharry rt=826028229
+~#! tid=826027957
+
+
+
+         Ist das dann eine KL?
+
+
+Mango.
+
+
+-----------------------------------------------------------------------------
+
+
+
+->Artikel 1 in d.gebirge (Paracelsus,  6. Mar 1996, 13:00:16):
+Frage: Was meint bloss Silvana mit:
+"Ich habe eine Kleinigkeit in Cronoertal geaendert." ?
+
+Para.
+
+-----------------------------------------------------------------------------
+
+
+
+Re^5: Nochmal Kugeln!! (Mars,  6. Mar 1996, 17:03:17):
+~#! rn=Fyt rt=826102990
+~#! tid=826036237
+Ja, ich hab aber geschrieben, dass ich eine Loesung habe. Also ist die
+Existenz sichergestellt.
+Falls man uebrigens nur rausfinden will, welche Kugel "falsch" ist, und
+nicht, ob sie leichter oder schwerer ist, kann man sogar 13 Kugel ver-
+wenden :)
+
+-----------------------------------------------------------------------------
+
+
+
+Re: erklaerung (Catweazle,  6. Mar 1996, 19:22:14):
+~#! rn=Wendellgee rt=826030374
+~#! tid=826030374
+Ich geb Dir einen Tip:
+Eine Balkenwaage hat nicht 2 moegliche Positionen, wie man eigentlich
+erst mal annehmen koennte, sondern drei!
+Vielleicht hilfts ja :)
+YTC
+
+-----------------------------------------------------------------------------
+
+
+
+Catweazle weiss auch ein Raetsel :) (Catweazle,  6. Mar 1996, 19:35:35):
+Hiho!
+
+Ok, hier ein uraltes Raetsel, trotzdem nicht einfach.
+
+       HAUS1             HAUS2              HAUS3
+
+
+
+       E-WERK            GAS-WERK           WASSER-WERK
+
+
+Okok. Aufgabe ist es jedes der drei Haeuser mit einer Leitung (Linie)
+mit allen drei Werken zu verbinden. Genauer: Jedes Haus braucht 3 Leitungen
+zu je einem WErk (ich hoffe das ist verstaendlich :-)
+Das Problem: Keine der Linien duerfen sich ueberkreuzen!
+Das Problem ist uebrigens nichttrivial.
+
+Wer die Loesung weiss, bitte mail an mich.
+Ytc
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Catweazle weiss auch ein Raetsel :) (Rochus,  6. Mar 1996, 20:49:06):
+~#! rn=Catweazle rt=826137335
+~#! tid=826137335
+Dazu habe ich folgende Loesung gefunden:
+---
+The problem you describe is to draw a bipartite graph of 3 nodes connected in
+all ways to 3 nodes,
+all embedded in the plane. The graph is called K3,3. A famous theorem of
+Kuratowsky says that all
+graphs can be embedded in the plane, EXCEPT those containing a subgraph that
+is topologically
+equivalent to K3,3 or K5 (the complete graph on 5 vertices, i.e., the graph
+with 5 nodes and 10
+edges). So your problem is a minimal example of a graph that cannot be
+embedded in the plane.
+
+The proofs that K5 and K3,3 are non-planar are really quite easy, and only
+depend on Euler's
+Theorem that F-E+V=2 for a planar graph. For K3,3 V is 6 and E is 9, so F
+would have to be 5.
+But each face has at least 4 edges, so E >= (F*4)/2 = 10, contradiction. For
+K5 V is 5 and E is 10,
+so F = 7. In this case each face has at least 3 edges, so E >= (F*3)/2 =
+10.5, contradiction.
+
+The difficult part of Kuratowsky is the proof in the other direction!
+
+A quick, informal proof by contradiction without assuming Euler's Theorem:
+Using a map in
+which the houses are 1, 2, and 3 and the utilities are A, B, and C, there
+must be continuous lines
+that connect the buildings and divide the area into three sections bounded by
+the loops
+A-1-B-2-A, A-1-B-3-A, and A-2-B-3-A. (One of the areas is the infinite plane
+*around*
+whichever loop is the outer edge of the network.) C must be in one of these
+three areas; whichever
+area it is in, either 1, or 2, or 3, is *not* part of the loop that rings its
+area and hence is inaccessible
+to C. The usual quibble is to solve the puzzle by running one of the pipes
+underneath one of houses
+on its way to another house; the puzzle's instructions forbid crossing other
+*pipes*, but not
+crossing other *houses*.
+
+---
+Mit anderen Worten: Es geht nicht :)
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Re: Catweazle weiss auch ein Raetsel :) (Duvain,  6. Mar 1996, 22:56:09):
+~#! rn=Rochus rt=826141746
+~#! tid=826137335
+Mit ebendiesem Raetsel habe ich vor einiger Zeit einen Mathematiker genervt.
+Schade eigentlich, dass er nicht drauf reingefallen ist, da er auf den
+ersten Blick die Loesbarkeit ueberblickt hat :-(
+Was hab ich heute gelernt? "plaettbar" heisst "embeddable to the plane" :-)
+Duewaeng
+
+-----------------------------------------------------------------------------
+
+
+
+Re^3: Catweazle weiss auch ein Raetsel :) (Rumata,  7. Mar 1996, 00:03:00):
+~#! rn=Duvain rt=826149369
+~#! tid=826137335
+Wieso, ich habe eine Loesung.
+Ich habe sie gerade auf einen Bagel gemalt :-)
+Rumata
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Loesung fuer die 3 Toechter (Acrimon,  7. Mar 1996, 01:46:41):
+~#! rn=Wendellgee rt=826025077
+~#! tid=826025077
+Nein, zwei Toechter, die 6 Jahre alt sind, sind niemals gleich alt!
+Es gibt immer eine Aeltere.
+
+Acrimon der Rote Ritter
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Re: Loesung fuer die 3 Toechter (Jasper,  7. Mar 1996, 01:47:58):
+~#! rn=Acrimon rt=826159601
+~#! tid=826025077
+und wenn sie parallel rausgeflutscht sind ? :)
+
+-----------------------------------------------------------------------------
+
+
+
+Re^6: Nochmal Kugeln!! (Catweazle,  7. Mar 1996, 16:33:55):
+~#! rn=Mars rt=826128197
+~#! tid=826036237
+Hi!
+Deine Rechnung ist interessant, Mars :)
+Wuerde es Dich verblueffen, wenn ich sage, das man es auch aus 14 Kugeln
+eindeutig bestimmen kann? *grins breit und fies*
+Yours truly,
+  Catweazle (hat mit diesem Raetsel schon diverse Kisten Bier gewonnen)
+             noch einen fuer Grimmborn :)
+
+-----------------------------------------------------------------------------
+
+
+
+ACHTUNG ACHTUNG! (Creative, 12. Mar 1996, 12:34:04):
+
+Wer mitmachen mag:
+
+Die schoensten Saetze, deren Woerter mit den Anfangsbuchstaben 'A E I O U'
+beginnen, werden praemiert. Zumindest veroeffentlicht :)
+
+Man kann die Reihenfolge auch vertauschen...
+
+Viel Spass...
+
+-Crea-
+
+-----------------------------------------------------------------------------
+
+
+
+Re: ACHTUNG ACHTUNG! (Creative, 12. Mar 1996, 12:36:22):
+~#! rn=Creative rt=826630444
+~#! tid=826630444
+
+Es gilt nicht:
+Alles Erdreich ist Oesterreich untertan. Das ist naemlich schon alt :)
+War aber gleichzeitig ein Beispiel.
+Have Fun...
+
+-Crea-
+
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Re: ACHTUNG ACHTUNG! (Ulo, 12. Mar 1996, 12:45:11):
+~#! rn=Creative rt=826630582
+~#! tid=826630444
+das ist Alles Ein Idiotischer Organisatorischer Unsinn!
+Ulo.
+
+-----------------------------------------------------------------------------
+
+
+
+Re^3: ACHTUNG ACHTUNG! (Kramka, 12. Mar 1996, 13:32:53):
+~#! rn=Ulo rt=826631111
+~#! tid=826630444
+Ohne Alkohol Ist Eierschaukeln Unmoeglich
+
+-----------------------------------------------------------------------------
+
+
+
+Re^4: ACHTUNG ACHTUNG! (Engywuck, 12. Mar 1996, 13:40:18):
+~#! rn=Kramka rt=826633973
+~#! tid=826630444
+Fast, Loco. Richtig muss es heissen:
+Ohne Alkohol Ist Engywuck Unertraeglich.
+
+Oder so... Ciao, Engy
+
+-----------------------------------------------------------------------------
+
+
+
+Re^5: ACHTUNG ACHTUNG! (Loco, 12. Mar 1996, 13:56:30):
+~#! rn=Engywuck rt=826634418
+~#! tid=826630444
+Huch? Seit wann ist Kramka mein Zweity? Das wusste ich ja noch gar nicht...
+dass alle Tuebinger Mudder meine Zweities sind, ist ja schon bekannt, das
+musste ja Gwynwaiter gestern schon undedingt rumposaunen, nachdem es 3 Jahre
+keiner gemerkt hatte :-( . Aber jetzt auch schon die Dortmunder...
+
+Aehm...
+          Loco oder wer auch immer...
+
+-----------------------------------------------------------------------------
+
+
+
+Zweiti !! (Kramka, 12. Mar 1996, 13:59:59):
+Ich bin immer noch der Zweiti von Laila und nehme meinen Job sehr sehr ernst.
+Also keinen Unterstelltungen oder sontiges bitte
+
+Kramka, Laila's Beschuetzer und Diener
+
+-----------------------------------------------------------------------------
+
+
+
+Re^4: ACHTUNG ACHTUNG! (Fyt, 13. Mar 1996, 01:04:42):
+~#! rn=Kramka rt=826633973
+~#! tid=826630444
+Auch ein Ire operiert Ungarinnen... hm :) mir faellt auf die schnelle
+nix besseres ein :)
+
+Fyt.
+
+-----------------------------------------------------------------------------
+
+
+
+Entfernung PV <-> HE ? (Tryfan, 13. Mar 1996, 21:49:32):
+Hm, es gibt Fragen, die hoeren sich so unmoeglich an, dass ihre Antwort
+fast schon wieder ganz einfach wird, wenn man darueber nachdenkt.
+
+Also: Da starten zwei grosse Schiffe gleichzeit an gegenueberliegenden Ufern 
+ von einem See und fahren direkt auf einander zu. Das eine faehrt dabei genau 
+ dreimal so schnell wie das andere. Zwischen ihnen fahert noch ein schnelleres
+ kleines Schiff immer zwischen ihnen hin und her. Es kann in nullkommanix
+ wenden und ist genau doppelt so schnell wie das schnellere der grossen, mit
+ dem es gleichzeitig gestartet ist. 
+ Wie weit ist nun das kleine Schiff gefahren, wenn die beiden grossen sich
+ treffen?
+
+P.S.: Wir nehmen mal an, dass die Boote keine Ausdehnung haben.
+
+	Antworten bitte an mich, Tryfan
+
+-----------------------------------------------------------------------------
+
+
+
+Mal ne Frage... (Mango, 13. Mar 1996, 22:13:22):
+
+
+kommen zu diversen Raetseln die nicht aus Quests stammen auch mal die
+loesungen?
+
+
+
+Mango, manchmal saudeppert.
+
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Mal ne Frage... (Hadra, 13. Mar 1996, 22:26:15):
+~#! rn=Mango rt=826751602
+~#! tid=826751602
+gegenfrage:
+
+kommen zu all den brachliegenden raetseln auch mal irgendwann quests?
+
+hadra - ueberlegt ob der artikel verlegt gehoert. duhu cahat?
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Entfernung PV <-> HE ? (Anatol, 14. Mar 1996, 16:40:54):
+~#! rn=Tryfan rt=826750172
+~#! tid=826750172
+
+Wenn der Kleine ein Segler ist und kreuzen muss, wird es happig ;-)
+Grinst Tryfans Raetselbuch breit an,
+Anatol.
+
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Re: Entfernung PV <-> HE ? (Tryfan, 14. Mar 1996, 17:40:35):
+~#! rn=Anatol rt=826818054
+~#! tid=826750172
+Da mich auch noch nicht ein Anflug einer Loesung erreicht hat, gebe ich
+noch einen kleinen Tip. Es ist voellig egal, ob das kleine Schiff segeln,
+kreuzen oder sonstwas muss.
+    Tryfan, der leider noch kein Raetselheft hat
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Entfernung PV <-> HE ? (Caradhras, 15. Mar 1996, 19:03:11):
+~#! rn=Tryfan rt=826750172
+~#! tid=826750172
+Wenn die beiden grossen sich treffen, ist das kleine kaputt und weit
+unter die Wasseroberflaeche gesunken, also wird es kaum hin und herfahren
+bis die zwei Schiffe sich treffen, denn die Leutchen wollen ja nicht
+sterben.
+
+        Caradhras + Logik = ? :)
+
+-----------------------------------------------------------------------------
+
+
+
+Loesung: Entfernung PV <-> HE (Tryfan, 20. Mar 1996, 10:13:00):
+Hi, diejenigen, die die Loesung fanden, meinten ja dann auch, dass die
+Aufgabe eigentlich viel zu einfach war.
+ Wenn die beiden grossen Schiffe sich treffen, hat das schneller von ihnen
+3/4 des Abstandes der Ufer zurueckgelegt, da es dreimal so schnell wie das
+langsamere war. Da das kleine doppelt so schnell ist, hat es 3/2 = 1.5 mal
+die Entfernung der Ufer zurueckgelegt. Die Antwort lautet also: Das kleine
+Schiff ist 1.5 mal die Entfernung der Ufer gefahren.
+ Wo es hergefahren ist, ist also wirklich belanglos, solange es nur immer
+schoen mit der selben Geschwindigkeit fuhr.
+ Die Loesung fanden:
+     Grimmy, Mars, Dauergast, Spatz und Wendellgee
+ knapp daran waren :
+     Mika, Durian? und Predator?
+
+PS: Die Aufgabe stammt nicht aus einem Raetselbuch sondern von einem
+    Spaziergang mit Zephyr *knuddel* an der Siegmuendung in Bonn. *grins*
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Loesung: Entfernung PV <-> HE (Fyt, 20. Mar 1996, 17:46:22):
+~#! rn=Tryfan rt=827313180
+~#! tid=827313180
+Hm, Tryfan, Du hast also mit Zephyr vor 20 Jahren Raetselbuecher verfasst?
+
+Oder war das schon das neue Raetsel?
+
+Fyt, grueblend :)
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Loesung: Entfernung PV <-> HE (Tasha, 20. Mar 1996, 20:25:17):
+~#! rn=Tryfan rt=827313180
+~#! tid=827313180
+*staun* Hast Du Zephyr aus Spass ueber die Sieg oder gar den Rhein schwimmen
+lassen? Oder seit Ihr um die Wette geschwommen und habt dabei ein
+Quietscheentchen zwischen euch hin und her flitzen lassen?
+
+Beeindruckt ueber die Herkunft der Raetsel, Tasha
+
+-----------------------------------------------------------------------------
+
+
+
+Re^7: Nochmal Kugeln!! (Predator, 26. Mar 1996, 21:31:29):
+~#! rn=Catweazle rt=826212835
+~#! tid=826036237
+also ich bin nicht ueberzeugt, dass man mit 3 waegungen aus 12 kugeln
+diejenige kugel EINDEUTIG identifizieren kann, wenn man nicht weiss, OB sie
+schwerer oder leichter ist
+
+bin aber trotzdem mal an der loesung interessiert, also mail an mich
+
+Predator :)
+
+-----------------------------------------------------------------------------
+
+
+
+Re^8: Nochmal Kugeln!! (Yendi, 26. Mar 1996, 21:35:26):
+~#! rn=Predator rt=827872289
+~#! tid=826036237
+Doch, kann man.
+Das kann man sogar bei 13 Kugeln.
+Bei 14 allerdings bezweifle ich, dass es geht... Caaaat*?
+
+
+-----------------------------------------------------------------------------
+
+
+
+Re^9: Nochmal Kugeln!! (Bendeigid, 27. Mar 1996, 14:19:57):
+~#! rn=Yendi rt=827872526
+~#! tid=826036237
+Echt? sogar bei 13? Ich schliess mich da Predators Meinung an. Ich bin fast
+sicher, das es OHNE Glucke NICHT eindeutig geht. Ich haette gern den Beweis
+per mail, wenn sich das machen laesst.
+
+Z'par Servu,
+             Bendeigid, hat Tarko Reub schon.
+
+-----------------------------------------------------------------------------
+
+
+
+Re^10: Nochmal Kugeln!! (Paracelsus, 27. Mar 1996, 14:21:10):
+~#! rn=Bendeigid rt=827932797
+~#! tid=826036237
+Jo, das wuerde mich auch mal interressieren.
+Para.
+
+-----------------------------------------------------------------------------
+
+
+
+Re^10: Nochmal Kugeln!! (Engywuck, 27. Mar 1996, 14:25:31):
+~#! rn=Bendeigid rt=827932797
+~#! tid=826036237
+Also, wenn die Waage nur 2 Zustaende kennen wuerde (links bzw. rechts
+schwerer), dann wuerde man meiner Meinung nach nur 2^3=8 Kugeln untersuchen
+koennen. Sie kennt jedoch 3 Zustaende (links schwerer, rechts schwerer und
+gleich schwer) wie Cat* schon richtig bemerkte, und deshalb bin ich mir nicht
+ganz so sicher und glaube, dass man durch sehr geschicktes Waegen genau diese
+Zusaetzliche Information ausnutzen kann.
+Aber so geschickt muss man halt erstmal sein ;)
+
+Engy
+
+-----------------------------------------------------------------------------
+
+
+
+Re^8: Nochmal Kugeln!! (Horschd, 27. Mar 1996, 20:43:46):
+~#! rn=Predator rt=827872289
+~#! tid=826036237
+Hi.
+
+Also, ich weiss definitiv, dass es mit 12 Kugeln geht.
+Musste ich mal in ner Analysis-uebung beweisen.
+Fuer interessierte Magier versuch ich gern mal, den Beweis wieder
+zusammenzubekommen...
+Also, wer es wissen will, mail an mich.
+
+Tschau,
+
+Horschd
+
+
+-----------------------------------------------------------------------------
+
+
+
+Re^9: Nochmal Kugeln!! (Terrorist, 28. Mar 1996, 07:26:56):
+~#! rn=Horschd rt=827955826
+~#! tid=826036237
+
+Ich kann nur sagen ich war auch unglaeubig und zephyr hat mir den Beweis
+erbracht.
+Fragt sie doch mal ob sie euch die loesung schickt.
+
+Terrorist hat Tarko Reub schon hinter sich.
+
+-----------------------------------------------------------------------------
+
+
+
+Re^11: Nochmal Kugeln!! (Highlander, 28. Mar 1996, 09:13:45):
+~#! rn=Engywuck rt=827933131
+~#! tid=826036237
+> koennen. Sie kennt jedoch 3 Zustaende (links schwerer, rechts schwerer und
+> gleich schwer)
+Schoen und gut, aber wie willst Du "links schwerer" von "rechts leichter"
+unterscheiden? Das ist das Problem bei der Sache.
+  HrT
+
+-----------------------------------------------------------------------------
+
+
+
+Re^12: Nochmal Kugeln!! (Plappermaul, 28. Mar 1996, 15:51:59):
+~#! rn=Highlander rt=828000825
+~#! tid=826036237
+> koennen. Sie kennt jedoch 3 Zustaende (links schwerer, rechts schwerer und
+> gleich schwer)
+Schoen und gut, aber wie willst Du "links schwerer" von "rechts leichter"
+unterscheiden? Das ist das Problem bei der Sache.
+Du vergleichst eine Seite mit gleichvielen "Referenzkugeln",
+d.h. die Kugeln, die du noch nicht gewogen hast.
+
+Plappermaul
+
+-----------------------------------------------------------------------------
+
+
+
+Re^10: Nochmal Kugeln!! (Predator, 28. Mar 1996, 16:23:43):
+~#! rn=Terrorist rt=827994416
+~#! tid=826036237
+Ja, Also das Problem laesst mir keine Ruhe :)
+
+Um aus 3 Kugeln eine rauszufinden, die anders ist (also leichter ODER
+schwerer ist),
+sind 2 Waegungen noetig. Und um die 12 Kugeln auf 3 zu reduzieren, soll eine
+Waegung
+ausreichen??? - Kann ich nicht ganz glauben. Naja, irgendwann werd ich mal
+Zephyr
+anhauen, soll ja eine Loesung haben.
+
+
+Aber folgendes Problem:
+27 Kugeln, eine ist leichter, mit 3 Waegungen herausfinden welche. Ist ganz
+easy
+
+Predator, unglaeubig auf Zephyrs Loesung wartend
+
+-----------------------------------------------------------------------------
+
+
+
+Re^12: Nochmal Kugeln!! (Catweazle, 29. Mar 1996, 21:15:50):
+~#! rn=Highlander rt=828000825
+~#! tid=826036237
+Moensch Highlander :)
+ Du hast doch noch eine DRITTE Waegung frei :)
+YTC
+
+-----------------------------------------------------------------------------
+
+
+
+Re^11: Nochmal Kugeln!! (Aves,  2. Apr 1996, 16:35:25):
+~#! rn=Predator rt=828026623
+~#! tid=826036237
+Nach einer langweiliegen Zugfahrt....
+Und 54 Minuten Gehirnzubreidenkens
+hab ich ne loesung gefunden.
+Und zwar folgende:
+Man nehme *****Arghh***** **** boooom*****
+******doing ****** ******zap***** ***banish*****
+
+Aves hat sich grade entschlossen es doch nich hierherzuschreiben....
+
+-----------------------------------------------------------------------------
+
+
+
+Re^8: Nochmal Kugeln!! (Cauno, 18. Apr 1996, 10:36:03):
+~#! rn=Predator rt=827872289
+~#! tid=826036237
+
+Es ist absolut, vollkommen, mit eindeutiger sicherheit moeglich!
+Ich habe die Loesung.
+				C. No
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Nochmal Kugeln! (Jariel, 21. Apr 1996, 03:05:21):
+Kugeln, Kugeln, Kugeln!
+
+Also ich grueble nun auch schon eine Weile, kann aber keinen einzigen
+Ansatz finden, der mich auf die RICHTIGE Loesung bringt! :(
+
+Da ich nicht weiss, ob diese eine interessante Kugel schwerer oder leichter
+ist, beginnen meine Gehirnwindungen schon bei der ersten Auswahl-
+entscheidung zu gluehen. Wenn ich diese 12 Kugeln teile in 6 und 6 Stueck,
+diese waege und zu dem Ergebnis komme, die einen 6 Kugeln sind schwerer als
+die anderen, woher soll ich nun wissen in WELCHEM Kugelhaufen die gesuchte
+Kugel steckt....
+(und dann nur 3 Versuche)
+
+So denn. Ich gruebel mal noch ein wenig :)
+Jariel Tonack.
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Re: Nochmal Kugeln! (Fyt, 21. Apr 1996, 17:32:18):
+~#! rn=Jariel rt=830048721
+~#! tid=830048721
+
+Tja, wo steht geschrieben, dass Du 6:6 teilen musst.
+Das Raetsel ist eh schon etwas entschaerft...
+
+Fyt.
+
+-----------------------------------------------------------------------------
+
+
+
+Re^3: Nochmal Kugeln! (Yendi, 22. Apr 1996, 13:05:12):
+~#! rn=Fyt rt=830100738
+~#! tid=830048721
+
+Soll ich mal einen Tip geben?
+
+(Spielverderberleerzeilen)
+(Spielverderberleerzeilen)
+(Spielverderberleerzeilen)
+(Spielverderberleerzeilen)
+(Spielverderberleerzeilen)
+(Spielverderberleerzeilen)
+(Spielverderberleerzeilen)
+(Spielverderberleerzeilen)
+(Spielverderberleerzeilen)
+(Spielverderberleerzeilen)
+(Spielverderberleerzeilen)
+(Spielverderberleerzeilen)
+(Spielverderberleerzeilen)
+(Spielverderberleerzeilen)
+(Spielverderberleerzeilen)
+(Spielverderberleerzeilen)
+(Spielverderberleerzeilen)
+(Spielverderberleerzeilen)
+(Spielverderberleerzeilen)
+(Spielverderberleerzeilen)
+(Spielverderberleerzeilen)
+(Spielverderberleerzeilen)
+(Spielverderberleerzeilen)
+(Spielverderberleerzeilen)
+(Spielverderberleerzeilen)
+(Spielverderberleerzeilen)
+(Spielverderberleerzeilen)
+(Spielverderberleerzeilen)
+(Spielverderberleerzeilen)
+(Spielverderberleerzeilen)
+(Spielverderberleerzeilen)
+(Spielverderberleerzeilen)
+(Spielverderberleerzeilen)
+(Spielverderberleerzeilen)
+(Spielverderberleerzeilen)
+(Spielverderberleerzeilen)
+(Spielverderberleerzeilen)
+(Spielverderberleerzeilen)
+(Spielverderberleerzeilen)
+(Spielverderberleerzeilen)
+(Spielverderberleerzeilen)
+(Spielverderberleerzeilen)
+(Spielverderberleerzeilen)
+(Spielverderberleerzeilen)
+(Spielverderberleerzeilen)
+(Spielverderberleerzeilen)
+(Spielverderberleerzeilen)
+(Spielverderberleerzeilen)
+(Spielverderberleerzeilen)
+(Spielverderberleerzeilen)
+(Spielverderberleerzeilen)
+(Spielverderberleerzeilen)
+(Spielverderberleerzeilen)
+(Spielverderberleerzeilen)
+(Spielverderberleerzeilen)
+(Spielverderberleerzeilen)
+(Spielverderberleerzeilen)
+(Spielverderberleerzeilen)
+
+
+Die Waage hat 3 moegliche Stellungen:
+  - links schwerer,
+  - rechts schwerer  und
+  - gleich schwer!
+
+So, das muss reichen. Fiel Fergnuegen!
+
+
+        YTY
+
+
+-----------------------------------------------------------------------------
+
+
+
+Rauchzeichen (Jariel, 22. Apr 1996, 14:25:57):
+Tach.
+
+Ich bin nach laengerer Ueberlegung zu dem Schluss gelangt, dass ich mir noch
+eine Woche Zeit gebe um die Loesung zu fingen. Ansonsten.....
+
+
+gebe ich es auf weiter ueber Kugelnachzudenken. (dummes Terminal) Also ich
+habe noch Hoffnung.
+
+Bis in einer Woche dann
+Jariel Tonack.
+
+-----------------------------------------------------------------------------
+
+
+
+Loesung? (Jariel, 22. Apr 1996, 18:32:34):
+Ich glaub ich habe eine fast loesung ;)
+Ich bin waehrend meiner Vorlesung drauf gekommen. Das einzigste Problem liegt
+nur noch darin, dass In der Aufgabenstellung gesagt wurde, es ist NICHT
+bekannt, ob die gesuchte KUGEL leichter ODER schwerer ist. Fuer diesen Fall
+brauche ich 4 Waegungen.
+Aber nettes Raetzel. *grins*
+
+Gruss
+Jariel Tonack.
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Loesung? (Fyt, 22. Apr 1996, 20:09:19):
+~#! rn=Jariel rt=830190754
+~#! tid=830190754
+Vier Waegungen sind aber zuviel.
+
+Fyt.
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Re: Loesung? (Jariel, 22. Apr 1996, 23:29:00):
+~#! rn=Fyt rt=830196559
+~#! tid=830190754
+Ja klar, aber wenn mir bekannt ist, ob die kugel schwerer oder leichter ist,
+dann brauche ich 3 Waegungen. Soweit kein Problem. Aber bei der totalen
+Unwissenheit?????? sollen auch 3 reichen? das kann ich mir fast nicht
+vorstellen.
+Ich denke aber weiter ueber dieses Problem nach. :)
+
+Mit Gruss.
+Jariel Tonack.
+
+-----------------------------------------------------------------------------
+
+
+
+Re^3: Loesung? (Engywuck, 23. Apr 1996, 10:52:56):
+~#! rn=Jariel rt=830208540
+~#! tid=830190754
+Also ich hab den test gemacht mit jemandem, der es kann.
+Ich hab die Waage gespielt und derjenige hat gewogen, und ich hab moeglichst
+die Antworten gegeben, die zu den wenigsten Informationen fuehren.
+Trotzdem reichen 3 Waegungen aus, man kann dann sogar sagen, ob die Kugel
+leichter oder schwerer ist.
+Klappt wirklich ;)
+
+Engy
+
+-----------------------------------------------------------------------------
+
+
+
+Re^3: Loesung? (Fyt, 23. Apr 1996, 14:22:40):
+~#! rn=Jariel rt=830208540
+~#! tid=830190754
+Mit den drei Waegungen kannst Du in der Groessenordnung 3^3=27 Zustaende
+unterscheiden. Du hast 2 (leichter/schwerer) * 12 (Anzahl der Kugeln) = 24
+'Moeglichkeiten' die zu unterscheiden sind. Alles allem ein Indiz dafuer,
+dass es gehen koennte...
+
+Fyt.
+
+-----------------------------------------------------------------------------
+
+
+
+abgruebeln (Jariel, 23. Apr 1996, 15:37:08):
+Hi!
+Ich bin schon am ueberlegen, ob hier bei mir andere physikalische und
+mathematische Grundsaetze eine Rolle spielen, aber es kann auch gut sein, dass
+ich mich einfach bisher zu "bloed" angestellt habe ;)
+
+Das grosse Gruebeln geht weiter.....
+
+Mit Gruss
+Jariel Tonack.
+
+-----------------------------------------------------------------------------
+
+
+
+Re^4: Loesung? (Ulo, 23. Apr 1996, 16:09:03):
+~#! rn=Fyt rt=830262160
+~#! tid=830190754
+Die Abschaetzung mit den Anzahlen der moeglichen Zustaende und der Anzahl
+der mit der Waage unterscheidbaren eignet sich uebrigens gut dazu, Sackgassen
+zu erkennen. Wer z.B. im ersten Waegegang je 3 Kugeln in beide Schalen legt,
+wird im Fall, dass die Waage im Gleichgewicht bleibt, mit 12 Moeglichkeiten
+verbleiben (6 Kugeln X 2(leichter/schwerer) ). Das ist aber mehr als die
+9 (=3 hoch 2) Moeglichkeiten, die die Waage unterscheiden kann.
+---> Sackgasse
+Bei konsequentem Vermeiden der Sackgassen laesst sich die Loesung leichter
+(schneller) finden.
+
+Ulo.
+
+-----------------------------------------------------------------------------
+
+
+
+Re^5: Loesung? (Ulo, 23. Apr 1996, 16:24:13):
+~#! rn=Ulo rt=830268543
+~#! tid=830190754
+Obigen Gedankengang kann man auch darauf anwenden, die Frage mit den 13
+Kugeln zu klaeren (selbes Problem, aber 13 Kugeln).
+Wenn man im ersten Waegegang 4 Kugeln in beide Schalen legt, so verbleibt man
+im Fall, dass die Waage im Gleichgewicht bleibt bei 10 (=5 uebrige x 2)
+Moeglichkeiten, was halt >9 ist :(
+Andererseits, wenn man im ersten Gang jeweils 5 Kugeln miteinander
+vergleicht, bleibt man, falls sich eine der Schalen neigt ebenfalls mit 10
+Moeglichkeiten (etweder eine der 5 in der gesenkten schale ist schwerer oder
+eine der 5 in der leichteren Schale ist leichter) der Dumme.
+--> Ich behaupte, dass es mit 13 Kugeln nicht loesbar ist.
+
+Ulo.
+
+-----------------------------------------------------------------------------
+
+
+
+Re^6: Loesung? (Zephyr, 23. Apr 1996, 17:20:37):
+~#! rn=Ulo rt=830269453
+~#! tid=830190754
+Da muss ich aber widersprechen.. auch mit 13 Kugeln kann man die falsche
+noch rausfiltern, allerdings laesst sich in 1/13 der Faelle nicht sagen,
+ob diese dann leichter oder schwerer ist.
+
+Zephyr, zu jedem diesbezueglichen Test bereit
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Re: Nochmal Kugeln! (Cauno, 24. Apr 1996, 11:32:00):
+~#! rn=Jariel rt=830048721
+~#! tid=830048721
+
+Falscher Ansatz!
+Man legt nie ALLE Kugeln auf die Waage.
+
+		C. No (hat die Loesung)
+
+-----------------------------------------------------------------------------
+
+
+
+Um ein Ende zu finden ... (Cauno, 24. Apr 1996, 11:37:23):
+
+Nichts gegen die Diskussion, aber ist das noch noetig?
+DIe Loesung des Problems habe ich in einem 30 Jahre alten Buch auf meinem
+Tisch stehen. Warum soll man dann noch Monate darueber diskutieren, ob es
+moeglich ist oder nicht?
+Wer allerdings die Loesung lesen moechte, wird sie in der Zeitung wohl
+vergeblich suchen.
+
+		Nicht fuer ungut, C. No
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Um ein Ende zu finden ... (Jariel, 24. Apr 1996, 16:04:56):
+~#! rn=Cauno rt=830338643
+~#! tid=830338643
+Vieleicht sollte man eine Rubrik Loesungen aufmchen ;)
+
+*kicher*
+Jariel Tonack.
+(dern noch immer keine Loesung hat)
+
+-----------------------------------------------------------------------------
+
+
+
+Re^6: Loesung? (Catweazle, 24. Apr 1996, 21:30:55):
+~#! rn=Ulo rt=830269453
+~#! tid=830190754
+Ich glaube ich wiederhole mich, es geht auch mit 14 :)
+YTC
+
+-----------------------------------------------------------------------------
+
+
+
+ ?  (Jariel, 24. Apr 1996, 22:04:30):
+Also ich habe ja nix dagegen, das es auch mit 13 und 14 gehen soll, aber das
+was mich zur Zeit brennend interessiert ist, Wie mache ich es mit 12 ;)
+
+Jariel Tonack. (immernoch am Gruebeln)
+
+-----------------------------------------------------------------------------
+
+
+
+Re^7: Loesung? (Fyt, 25. Apr 1996, 02:11:10):
+~#! rn=Catweazle rt=830374255
+~#! tid=830190754
+
+Nach meiner 'Rechnung'  sollte es eigentlich klar sein, dass es mit
+14 nicht gehen *kann*, einziger Streitfall waeren 13, da ist der
+Aufwand, nachzuweissen, dass es nicht geht etwas groesser...
+
+Fyt.
+
+-----------------------------------------------------------------------------
+
+
+
+Re:  ?  (Morgoth, 25. Apr 1996, 07:12:39):
+~#! rn=Jariel rt=830376270
+~#! tid=830376270
+wie? also mit zweien ist es ja ok, drei auch, aber ZWOELF ???
+
+-----------------------------------------------------------------------------
+
+
+
+Re^8: Loesung? (Zephyr, 25. Apr 1996, 12:46:52):
+~#! rn=Fyt rt=830391070
+~#! tid=830190754
+Mit 13 gehts es aber, Fyt ;)
+Zephyr, mit Loesung fuer 13 und heut 'was quengelig
+
+-----------------------------------------------------------------------------
+
+
+
+Re^9: Loesung? (Ulo, 25. Apr 1996, 12:49:04):
+~#! rn=Zephyr rt=830429212
+~#! tid=830190754
+Nee, eben nicht, Zephyr. Die Loesung verlangt nicht bloss, dass du die
+falschgewichtige Kugel identifizierst, sondern auch, dass du immer sagen
+kannst, ob sie schwerer oder leichter ist. wenn das in 1/13 der Faelle nicht
+moeglich ist, hast du die aufgabe nicht geloest.
+Zur begruendung der unloesbarkeit der aufgabe verweise ich nochmals auf
+meinen vorherigen artikel.
+
+Ulo.
+
+-----------------------------------------------------------------------------
+
+
+
+Re^10: Loesung? (Zephyr, 25. Apr 1996, 12:56:24):
+~#! rn=Ulo rt=830429344
+~#! tid=830190754
+Hmm.. in Tarko Reub musste man aber meines Wissens nur sagen,
+welche Kugel die flasche ist, und NICHT, ob sie leichter oder
+schwerer ist.. also gehts in diesem Fall auch mit 13
+In allen andern Faellen hast Du natuerlich recht :)
+Zephyr, heute senfophil
+
+-----------------------------------------------------------------------------
+
+
+
+Re^11: Loesung? (Ulo, 25. Apr 1996, 13:04:37):
+~#! rn=Zephyr rt=830429784
+~#! tid=830190754
+Hmm, hab Tarko nie gemacht. Wenns nur darum geht, die falschgewichtige zu
+finden, sollte man sogar die 13 noch ueberschreiten koennen. Ich glaube mal,
+dass Cat*s 14 sich auch auf die einfacherer Aufgabenstellung beziehen. Wo
+liegt eigentlich die Hoechstzahl an Kugeln, bei denen man mit drei Waegungen
+die falschgewichtige ermitteln kann?
+Eine einfache Abschaetzung nach oben begrenzt die Zahl auf 27, aber vmtl
+liegt die Zahl wohl deutlich darunter.
+
+Ulo (setzt ein Glas Knoblauchwasser als Preisgeld aus)
+
+-----------------------------------------------------------------------------
+
+
+
+Re^11: Loesung? (Cauno, 25. Apr 1996, 13:06:53):
+~#! rn=Zephyr rt=830429784
+~#! tid=830190754
+
+Wenn es anders waere, wuerden die Quest nur die Haelfte geschafft haben.
+Die Tatsache, dass die letzte Frage weggelassen wurde, erleichtert sie nun
+einmal ein wenig.
+Aber zu dem klassischen Problem gehoert nun einmal, auch den Rest zu wissen!
+
+	C. No, der die Loesung auch gerne weitergibt
+
+		(sofern man selber schon mal drueber nachgedacht hat).
+
+
+-----------------------------------------------------------------------------
+
+
+
+Re: Re:  ?  (Jariel, 26. Apr 1996, 04:13:45):
+~#! rn=Morgoth rt=830409159
+~#! tid=830376270
+ooooooops.  *erroet*
+
+Jariel Tonack.
+
+-----------------------------------------------------------------------------
+
+
+
