ALGORITHMEN - Teil XIV: Jetzt noch irrer!

    Diese Seite verwendet Cookies. Durch die Nutzung unserer Seite erklären Sie sich damit einverstanden, dass wir Cookies setzen. Weitere Informationen

    • @RGH: Du hast recht, die Originallösung scheint tatsächlich falsch zu sein!
      Mit 420 als ´Kleines gemeinsames Vielfaches kgV´ führt das dann aber auf die richtige Spur:

      Lösungsalgorithmus zu NR 24 "Mohameds Erben":
      ----------------------------------------------------------
      Gesucht war eine Zahl, die durch 7,6,5,4,3 und 2 dividiert ganzzahlige Ergebnisse liefert, wobei aber auch die (über 100% liegende) SUMME dieser Ergebnisse durch 7, 6, 5, 4, 3 und 2 ganzzahlig teilbar ist. Die kleinste Herde besteht demnach aus 93600 Kamelen:

      Quellcode

      1. cls
      2. declare z&,s&
      3. whileloop 420,2^31-1,420:z&=&Loop
      4. s&=z&/7+z&/6+z&/5+z&/4+z&/3+z&/2
      5. ifnot s& mod 420
      6. print z&,s&
      7. waitinput
      8. endif
      9. endwhile
      10. while 1:print "---eof---";:waitinput:endwhile
    • Abt. Neue Rätselecke Nr. 27: ´Minus mal minus´
      ------------------------------------------------------
      Eine Zahlenfolge beginne mit 1, −1, −1, 1, −1. Jede neue Zahl berechnet sich als Produkt der beiden vorangegangenen Zahlen. Zum Beispiel ist die sechste Zahl das Produkt aus der vierten und der fünften. Wie groß ist die Summe der ersten 2017 Zahlen?

      Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von p. specht ()

    • Abt. NRE Nr. 28 ´Farbkugeln´
      ----------------------------------
      Ein Sack enthält Kugeln in verschiedenen Farben: 2 rote, 3 blaue, 10 weiße, 4 grüne und 3 schwarze
      Kugeln. Man nimmt Kugeln aus dem Sack, ohne zu schauen und ohne sie wieder zurückzulegen.
      Wie viele Kugeln muss man mindestens aus dem Sack nehmen, um sicher zwei Kugeln derselben Farbe zu erwischen?
    • Abt. NRE Nr. 29 ´Farbkugeln II´
      ------------------------------------
      Ein Sack enthält Kugeln in verschiedenen Farben: 2 rote, 3 blaue, 10 weiße, 4 grüne und 3 schwarze
      Kugeln. Man nimmt Kugeln aus dem Sack, ohne zu schauen und ohne sie wieder zurückzulegen.
      Wie viele Kugeln muss man mindestens aus dem Sack nehmen, um sicher drei Kugeln derselben Farbe zu erwischen?
    • Lösung zu Nr. 27 ´Minus mal minus´:
      Spoiler anzeigen

      Der Algorithmus ergibt stets das Muster "1,-1,-1".
      Die Summe so einer Dreierpartie ist also stets -1.
      -1 * 2017 / 3 = -672 + 1= -671

      Quellcode

      1. cls:font 2
      2. declare s&,z&,z1&,z2&
      3. s&=0
      4. z2&= 1 :s&=s&+z2&
      5. z1&=-1 :s&=s&+z1&
      6. whileloop 3,2017
      7. z&=z1&*z2& :s&=s&+z&
      8. z2&=z1& :z1&=z&
      9. endwhile
      10. print s&:beep:waitinput


      Lösung zu Nr. 28:
      Spoiler anzeigen
      Es gibt nur 5 verschiedene Farben. Zieht man also 6 Kugeln, sind notwendigerweise 2 von gleicher Farbe.

      Lösung zu Nr. 29:
      Spoiler anzeigen
      Es gibt 5 verschiedene Farben. Zieht man 6 Kugeln, hat man mindestens 2 gleiche. Tritt nun der schlimmste Fall ein, dass die weiteren 4 gezogenen Kugeln jeweils 2 gleiche Farben ergeben, zeigt sich, daß DREI gleichfarbige Kugeln erst bei der 11. Kugel sichergestellt sind.

      Dieser Beitrag wurde bereits 2 mal editiert, zuletzt von p. specht ()

    • Abt. Sonntagsbeweise Nr. 1
      =====================
      1. Ein Elefant wiegt e, eine Mücke wiege m, wobei üblicherweise gilt: m < e

      2. Der Elefant wiegt also soviel wie die Mücke plus eine Differenz d:
      e = m + d

      3. Wir multipliziern auf beiden Seiten mit (e - m), das ergibt:
      e * (e - m) = (m + d) * (e - m), bzw.:
      e^2 - e*m = e*m - m^2 + e*d - d*m

      4. Nun ziehen wir auf beiden Seiten ab: ..-(e*d), das ergibt:
      e^2 - e*m - e*d = e*m - m^2 - d*m

      5. Nach Umformung gibt das:
      e*(e - m - d) = m*(e - m - d)

      6. Wir können beide Seiten dividieren durch ... /(e - m - d), und es ergibt sich:

      7.: e = m , woraus klar folgt:

      Mücken wiegen gleich viel wie Elefanten,
      q.n.e.d.!

      Gruss

      P.S.: Quellenlink

      Dieser Beitrag wurde bereits 2 mal editiert, zuletzt von p. specht ()

    • p. specht schrieb:

      P.S.: Was für Freaks: Harte Nuss im Internet gefunden: LINK
      Da hat man aber was zum Knabbern.
      Gibt es da auch eine Auflösung im Netz ?

      Habe schon mal das Grundgerüst nachgeproggt :

      Quellcode

      1. Declare Handle imageA[18], imageB[18], Edit[18], String pfad
      2. Declare Long x, y[]
      3. y[] = 20, 70, 120, 170, 220, 270, 320, 370, 20, 70, 120, 170, 220, 270, 320, 370, 420, 470
      4. pfad = "H:\Tafel\" ' bitte anpassen
      5. WhileLoop 0, 17
      6. imageA[&LOOP] = Create("hSizedPic", -1, (pfad + Str$(&LOOP + 1) + ".bmp"), 120, 40, 0)
      7. imageB[&LOOP] = Create("hSizedPic", -1, (pfad + Str$(&LOOP + 1) + "b.bmp"),250, 40, 0)
      8. EndWhile
      9. x = 50
      10. Window 1200, 800
      11. WhileLoop 0, 17
      12. If &LOOP > 7
      13. x = 650
      14. EndIf
      15. DrawText x - 40, y[&LOOP], Str$(&LOOP + 1)
      16. DrawPic imageA[&LOOP], x, y[&LOOP]; 0
      17. Edit[&LOOP] = Create("Edit", %HWnd, "", x + 140, y[&LOOP], 50, 30)
      18. Select &LOOP
      19. CaseOf 0, 8
      20. DrawText x - 40, y[&LOOP], Str$(&LOOP + 1)
      21. DrawSizedPic imageB[&LOOP], (x + 200), (y[&LOOP] - 15) - 250, 60; 0
      22. Otherwise
      23. DrawPic imageB[&LOOP], x + 200, y[&LOOP]; 0
      24. EndSelect
      25. EndWhile
      26. WaitKey
      27. End
      Alles anzeigen
      Die Bilder dort habe ich mir mal einfach als 1.bmp + 1b.bmp, 2.bmp, 2b.bmp usw. in einen Ordner gespeichert.
      Sieht schon nicht schlecht aus.
    • @Heinz: Für private Zwecke ist das kein Problem, ansonsten dürften Rechte Dritter bestehen (Siehe Fussnoten-Angabe). Lösungen hab ich (durch mutwilliges Ankreuzen bei mehreren Durchgängen rausgekriegt, ist halt etwas aufwändig). Ich sehe sich spaltenweise weiterbewegende Stangen, drehende Stangen (auch mehrere gleichzeitig) und 2-mal einen im Kreis kriechenden Wurm, bei dem mir die Lösung allerdings nicht einleuchtet. Aber ich bin ja auch kein Hirni-Mitglied ;-)
      Gruss
    • Deshalb habe ich die Bildchen auch nicht hier rein gestellt, sondern nur
      den Ansatz zur Verwendung. Die Bilder kann sich ja jeder selber speichern.

      Da die Bilder ja nur eine 5x5 - Matrix darstellen, könnte man sie auch leicht
      mit den jeweiligen Zuständen selber malen.

      Also durchaus vergleichbar mit den Seitenflächen eines Würfels.

      PS: Was muß ich da nach Eingabe eines Buchstabens (A - F) auf
      dem Formular drücken, um zu sehen, ob ich richtig liege ?

      Bei mir passiert da gar nichts. Kann auch kein Spanisch.

      Dieser Beitrag wurde bereits 2 mal editiert, zuletzt von H.Brill ()

    • Auflösung von Sonntagsbeweis Nr. 1
      ==================================
      Spoiler anzeigen

      Der Fehler passiert in Schritt 3:

      3. Wir multipliziern auf beiden Seiten mit (e - m), das ergibt:
      e * (e - m) = (m + d) * (e - m)

      Erklärung: Wegen (e - m) = d entspricht das ja eigentlich

      e * d = (m + d) * d,

      was auf d^2 + d * m - d * e = 0 führt, bzw. zu einer um das
      Absolutglied verkürzten Quadratischen Gleichung in d:

      d^2 + d *(m-e) + 0 = 0

      Wir wenden die "Mitternachtsformel" an (die heißt so, weil man
      sie auch um Mitternacht richtig hersagen können sollte!):
      Die Standardform der Quadratischen Gleichung lautet bekanntlich

      x^2 + p*x + q = 0, und sie wird gelöst mit den beiden ´Ästen´:

      x_1 = -p/2 + sqrt( (p/2)^2 - q ) und
      x_2 = -p/2 - sqrt( (p/2)^2 - q )

      Wir identifizieren x mit d; p mit (m-e) und q mit 0 und setzen ein:

      d_1 = -(m-e)/2 + sqrt( (m-e)^2/4 - 0 )
      d_2 = -(m-e)/2 - sqrt( (m-e)^2/4 - 0 )

      oder einfacher ausgedrückt:

      d_1 = -(m-e)/2 + (m-e)/2 = 0 ... dieses Ergebnis wurde uns
      als einziges vorgegaukelt, sodaß aus e = m + d1 wurde
      e = m + 0 , was zu e = m geführt hat und Unsinn ergibt.

      d_2 = -(m-e)/2 - (m-e)/2 = -2(m-e)/2 = e - m = d
      entspricht schon eher der Wahrheit.

      Ergebnis: Die meisten "falschen Beweise" beruhen auf solchen Wurzelfehlern, die mehr oder weniger geschickt verborgen werden. Die Lösungsmenge ist eben nicht mehr die selbe, sobald quadriert wurde...
    • Sonntagsbeweis Nr. 2 - Lösung:
      Spoiler anzeigen
      Die gleiche Geschichte wie bei Sonntagsbeweis Nr. 1: Multiplizieren mit der Hauptvariablen ist eigentlich quadrieren. Dann gibt es 2 "Lösungsäste", von denen oft nur einer eine reale Lösung darstellt.


      Abt. Neue Rätselecke Nr. 30: Bruchsummen
      =================================
      Gesucht sind die Natürlichen Zahlen a,b und c , die die Gleichung 1/a + 1/b + 1/c = 1 erfüllen.
      Gruss

      P.S.: Lösungen gelten nicht als unterschiedlich, wenn sich nur die Reihenfolge der Bruchzahlen dabei ändert.

      Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von p. specht ()

    • Lösung zu BR 30 Bruchsummen
      Spoiler anzeigen
      WindowTitle "Nenne alle Natürlichen Zahlen, die die Gleichung 1/a+1/b+1/c=1 erfüllen!"
      '1/a+1/b+1/c=1
      '1/a + 1/b = c/c - 1/c
      '(b+a)/(a*b) = (c-1)/c
      '(b+a)*c = (a*b)*(c-1)
      ' a*c + b*c + a*b = a*b*c (Gut überprüfbare Form)
      cls:font 2:declare a&,b&,c&
      whileloop 1,500:a&=&Loop
      whileloop a&,500:b&=&Loop
      whileloop b&,500:c&=&Loop
      case (a&*b&*c&)=(a&*b&+b&*c&+c&*a&)
      print "1/ ";int(a&);" + 1/ ";int(b&);" + 1/ ";int(c&);" = 1"
      endwhile
      endwhile
      endwhile
      print " ... und (jedenfalls bis 1/500) keine weiteren!":beep
      waitinput


      So kann man übrigens auch ähnliche Aufgaben lösen, wenn die Summe z.B. 3/4 ergeben soll:
      Spoiler anzeigen
      WindowTitle "Nenne alle Natürlichen Zahlen, die die Gleichung 1/a+1/b+1/c=3/4 erfüllen!"
      '1/a+1/b+1/c=3/4
      'b*c+a*c+a*b = 3/4*a*b*c
      cls:font 2:declare a&,b&,c&
      whileloop 1,500:a&=&Loop
      whileloop a&,500:b&=&Loop
      whileloop b&,500:c&=&Loop
      case (0.75*a&*b&*c&)=(a&*b&+b&*c&+c&*a&)
      print "1/ ";int(a&);" + 1/ ";int(b&);" + 1/ ";int(c&);" = 3/4"
      endwhile
      endwhile
      endwhile
      print " ... und (jedenfalls bis 1/500) keine weiteren!":beep
      waitinput
    • Sonntagsbeweis Nr. 4: ´3 ist größer als 12´
      ------------------------------------------
      5 > 2
      (5 - 6) > (2 - 6)
      (-1) > (-4)
      (-1) * (-3) > (-4) * (-3)
      3 > 12
      q.n.e.d.

      P.S.: Hilfreich zu Klärung: Berühmtes Mathematiklehrbuch der Princeton University (pdf, Engl., Stand 2008): LINK

      Dieser Beitrag wurde bereits 4 mal editiert, zuletzt von p. specht ()

    • Hinweis: Die Internationale Raumstation ISS fliegt am Zeitrückstellungs-Sonntag, den 29.10.2017 um ca. 06:50 Uhr MEZ
      knapp über dem Horizont sichtbar über unseren europäischen Himmel. Da ist in Berlin und München gerade Sonnenaufgang, bei uns in Wien dagegen ist es vermutlich schon zu hell.
    • Lösung des Sonntagsbeweises Nr. 4:
      -----------------------------------
      Spoiler anzeigen
      Die Zahlengerade (sie kommt von -Unendlich und geht über 0 nach +Unendlich) kennt nur LINKS und RECHTS. Steht eine Zahl weiter links, gilt sie jedenfalls als KLEINER als alle weiter rechts davon stehenden Zahlen. Ein Vorzeichentausch (z.B. durch eine Multiplikation mit -3) ist aber eine Art Spiegelung an der Null, und daher wird das Kleiner-als-Zeichen < zum Größer-als-Zeichen >. Oder einfacher ausgedrückt: 3 < 12, aber -3 > -12. Da lag der Hund begraben!