Autor |
Beitrag |
Horst_H
Beiträge: 1653
Erhaltene Danke: 243
WIN10,PuppyLinux
FreePascal,Lazarus
|
Verfasst: Mo 19.12.16 14:29
Hallo,
Narses schrieb vor langer Zeit:
Zitat: | Wir haben vor ein paar Minuten ein Update der Kalender-Server-API gemacht, um das Problem mit den falsch berechneten Lösungszeiten zu korrigieren. Es wird jetzt ab sofort - wie in der Ankündigung beschrieben - die Zeit vom ersten Start bis zum Registrieren der korrekten Lösung gemessen |
Alles schön und gut, man könnte die Zeit eigentlich komplett wegfallen lassen, denn bei Problemen wie heute mit den Lampen, wird ja bei jedem Neustart eine andere Anordnung geschaffen.Zudem trennt sich meine Fritzbox nach 45 Sekunden nicht Internet-Nutzung eben davon und hat dann ein größeres Time-Out bis die Verbindung wieder steht, dann auch mit neuer IP und der Server gilt dann als unerreichbar.
Ich wünsche allen weiterhin viel Vergnügen an den Knobeleien
Gruß Horst
|
|
trm
Beiträge: 491
Erhaltene Danke: 19
Windows 7x64
Delphi 7
|
Verfasst: Mo 19.12.16 16:09
_________________ In Erfurt gibt es eine Pension, in der es gemütlich ist, Google einfach nach Pension Fiege
|
|
Narses
Beiträge: 10182
Erhaltene Danke: 1255
W10ent
TP3 .. D7pro .. D10.2CE
|
Verfasst: Di 20.12.16 05:53
Moin!
Horst_H hat folgendes geschrieben : | Zudem trennt sich meine Fritzbox nach 45 Sekunden nicht Internet-Nutzung eben davon und hat dann ein größeres Time-Out bis die Verbindung wieder steht, dann auch mit neuer IP und der Server gilt dann als unerreichbar. |
Zunächstmal ist es ja schon deine Entscheidung gewesen, ein 45s-Idle-Timeout einzustellen. Weiterhin möchte ich darauf hinweisen, dass der Zusammenhang zwischen neuer Client-IP und Nichterrreichbarkeit des EE-Servers nicht gegeben ist. Hier schlägt lediglich die Timeout-Zeit des internen http-Requests zu - deine Fritzbox scheint außergewöhnlich lange für eine Einwahl zu brauchen...
Trotzdem vielen Dank für den Hinweis, wir werden in einer möglichen nächsten Version den http-Timeout konfigurierbar machen (dann kannst du das deinen speziellen Gegebenheiten anpassen).
Und was die Lösungszeit angeht: bei Desinteresse empfehle ich, diese Angabe einfach zu ignorieren.
cu
Narses
_________________ There are 10 types of people - those who understand binary and those who don´t.
Für diesen Beitrag haben gedankt: Mathematiker
|
|
Gausi
Beiträge: 8538
Erhaltene Danke: 475
Windows 7, Windows 10
D7 PE, Delphi XE3 Prof, Delphi 10.3 CE
|
Verfasst: Di 20.12.16 10:46
Bei dem Buch-Rätsel bin ich mal auf die offizielle Lösung gespannt. Ich hab die Lösung zwar, aber mein Lösungsweg ist alles andere als mathematisch elegant ...
_________________ We are, we were and will not be.
|
|
baumina
Beiträge: 305
Erhaltene Danke: 61
Win 7
Delphi 10.2 Tokyo Enterprise
|
Verfasst: Di 20.12.16 11:47
|
|
Gausi
Beiträge: 8538
Erhaltene Danke: 475
Windows 7, Windows 10
D7 PE, Delphi XE3 Prof, Delphi 10.3 CE
|
Verfasst: Di 20.12.16 12:12
_________________ We are, we were and will not be.
|
|
Oliver Marx
Beiträge: 80
Erhaltene Danke: 18
Win 7 Prof.
Delphi XE Prof.
|
Verfasst: Di 20.12.16 12:35
Ich konnte es mathematisch lösen (bis auf einen Vorzeichenfehler ). Man muss nur das richtige Stichwort kennen, dann wird es ganz einfach.
|
|
Jumpy
Hält's aus hier
Beiträge: 23
Erhaltene Danke: 5
|
Verfasst: Di 20.12.16 12:50
|
|
baumina
Beiträge: 305
Erhaltene Danke: 61
Win 7
Delphi 10.2 Tokyo Enterprise
|
Verfasst: Di 20.12.16 14:42
|
|
Mathematiker
Beiträge: 2622
Erhaltene Danke: 1447
Win 7, 8.1, 10
Delphi 5, 7, 10.1
|
Verfasst: Mi 21.12.16 14:33
Hallo,
die Lösung des Buchrätsels:
Der Euro-Betrag des korrekten Wechselgeldes sei euro, der Cent-Betrag cent. Das Wechselgeld ist also 100 euro + cent.
Das vertauschte Wechselgeld ist demnach euro + 100 cent, alles in Cent gerechnet.
Damit ergibt sich die Gleichung:
euro + 100*cent = 2*(cent + 100*euro) + 5
Die schnellste, aber wenig mathematische Methode ist nun ein winziges Programm:
Delphi-Quelltext 1: 2: 3: 4: 5: 6: 7: 8: 9:
| procedure TForm1.Button1Click(Sender: TObject); var euro,cent:integer; begin for euro:=0 to 99 do for cent:=0 to 99 do begin if euro+100*cent=2*(100*euro+cent)+5 then listbox1.Items.add(inttostr(euro)+','+inttostr(cent)); end; end; | mit dem einzigen Ergebnis euro = 31, cent = 63. Einzugeben ist also 3163.
Aber es geht auch mathematisch.
euro + 100*cent = 2*(cent + 100*euro) + 5
euro + 100*cent = 2*cent + 5 + 100*(2*euro)
Euro- (der Summand mit dem Faktor 100) und Cent-Betrag müssen auf beiden Seiten der Gleichung identisch sein, wodurch sich zwei Gleichungen ergeben:
euro = 2*cent + 5
cent = 2*euro
Einsetzen ergibt euro = 4*euro + 5 , d.h. euro = -5/3.
Das ist aber ein Widerspruch, da der Euro-Betrag ganzzahlig und größer Null sein muss.
Wo ist der Denkfehler?
Es ist der Übertrag von 2*cent+5, der auftritt wenn cent > 47 ist. In diesem Fall verändern sich die 2 Gleichungen zu
euro = 2*cent + 5 - 100 ; Übertrag 100 Cent subtrahieren
cent = 2*euro + 1 ; Übertrag 1 € addieren
d.h. euro = 2*cent - 95
cent = 2*euro + 1
mit der Lösung
euro = 2*(2*euro +1)-95 , d.h. euro = 31.
cent = 63 folgt automatisch.
Beste Grüße
Mathematiker
_________________ Töten im Krieg ist nach meiner Auffassung um nichts besser als gewöhnlicher Mord. Albert Einstein
Für diesen Beitrag haben gedankt: Christian S., Narses
|
|
Oliver Marx
Beiträge: 80
Erhaltene Danke: 18
Win 7 Prof.
Delphi XE Prof.
|
Verfasst: Mi 21.12.16 16:39
Hi,
meine Version war etwas aufwendiger, vielleicht hilft es jemanden bei einem anderen Problem weiter oder interessiert sich für eine alternative Berechnung:
Zunächst habe auch ich die Gleichung
2*(100*E+C)+5=100*C+E
aufgestellt. E entspricht dem Euroanteil des korrekten Wechselgelds und C entsprechend dem Centanteil des korrekten Wechselgelds.
Nach kurzer trivialer Umformung erhält man
98*C-199*E-5=0
und mit F=-E
98*C+199*F-5=0
Dies entspricht einer linearen diophantischen Gleichung und können diese mit einem Standardalgorithmus lösen:
Zunächst stellen wir die Gleichung zu
98*C+199*F=5
um und berechnen den ggT von 199 und 98:
199 = 2*98 + 3
98 = 32* 3 + 2
3 = 1* 2 + 1
2 = 2* 1 + 0
==> ggT(199,98 ) = 1.
Wir lösen zunächst:
98*C+199*F=ggT(199,98 )=1
Um C und F zu erhalten, nutzen wir die Schritte zur Berechnung des ggT:
(1) 199 = 2*98 + 3
(2) 98 = 32* 3 + 2
(3) 3 = 1* 2 + 1
Gleichung (3) formen wir zu
(4) 3 - 1*2 = 1
und (2) zu
(5) 2 = 98 - 32*3
um. (5) in (4) eingesetzt ergibt:
(6.1) 3 - 1*(98 - 32*3) = 1
(6.2) 3 - 98 + 32*3 = 1
(6.3) -98 + 33*3 = 1
Aus Gleichung (1) erhalten wir:
(7) 199 - 2*98 = 3
Diese in (6.3) ergibt:
(8.1) -98 + 33*(199 - 2*98 ) = 1
(8.2) -98 + 33*199 - 66*98 = 1
(8.3) 33*199 - 67*98 = 1
Um die ursprüngliche Gleichung 98*C+199*F=5 zu lösen, multiplizieren wir beide Seiten mit 5
(9) 165*199 - 335*98 = 5
Aus (9) können wir alle Lösungen für C und F ermitteln:
C = -335 + 199*t
F = 165 - 98*t
da wir allerdings einschränken können, dass 0<=C<99 und 0<=E<=100 gilt, muss für unsere gesuchte Lösung t=2 gelten.
t=2 führt zu:
C = -335 + 199*2 = 63
und
F = 165 - 98*2 = -31
mit unsrer Substitution vom Anfang (F=-E) erhalten wir
E = -F = 31
==> korrektes Wechselgeld: 31,63€
Für diesen Beitrag haben gedankt: Gausi, Mathematiker, Narses
|
|
Mathematiker
Beiträge: 2622
Erhaltene Danke: 1447
Win 7, 8.1, 10
Delphi 5, 7, 10.1
|
Verfasst: Mi 21.12.16 17:26
Hallo,
Oliver Marx hat folgendes geschrieben : | Zunächst habe auch ich die Gleichung
2*(100*E+C)+5=100*C+E
aufgestellt. ... Dies entspricht einer linearen diophantischen Gleichung |
Selbstverständlich. Das ist auch der eigentliche Hintergedanke dieser Aufgabe gewesen.
Ich wollte bei meiner Lösungsvariante nur nicht auf die Lösung diophantischer Gleichungen eingehen.
Nebenbei: Ohne das Einführen von F, führt
199*E - 98*C = -5
sofort auf E = 31 und C = 63.
Man kann zur Lösung auch entsprechende Software nutzen. Sollte jemand wieder einmal eine diophantischen Gleichung lösen müssen, so empfehle ich natürlich mathematikalpha.de/diophantisches-system.
Beste Grüße
Mathematiker
_________________ Töten im Krieg ist nach meiner Auffassung um nichts besser als gewöhnlicher Mord. Albert Einstein
|
|
trm
Beiträge: 491
Erhaltene Danke: 19
Windows 7x64
Delphi 7
|
Verfasst: Mi 21.12.16 18:02
_________________ In Erfurt gibt es eine Pension, in der es gemütlich ist, Google einfach nach Pension Fiege
|
|
Physli
Hält's aus hier
Beiträge: 7
MacOS, Win 10
|
Verfasst: Do 22.12.16 16:50
Ein großes Lob an das Rätsel heute. Ist mal was anderes
|
|
baumina
Beiträge: 305
Erhaltene Danke: 61
Win 7
Delphi 10.2 Tokyo Enterprise
|
Verfasst: Do 22.12.16 16:54
Da bin ich ja mal auf die Lösung gespannt, denn ich seh da nur schwarz und weiß
|
|
Delphi-Laie
Beiträge: 1600
Erhaltene Danke: 232
Delphi 2 - RAD-Studio 10.1 Berlin
|
Verfasst: Do 22.12.16 21:59
|
|
Mathematiker
Beiträge: 2622
Erhaltene Danke: 1447
Win 7, 8.1, 10
Delphi 5, 7, 10.1
|
Verfasst: Do 22.12.16 22:04
Hallo,
Delphi-Laie hat folgendes geschrieben : | Kann man es nur am Computer (mit welcher Software?) lösen ... |
Nein, man braucht keine spezielle, zusätzliche Software oder Hardware. Die Grundausstattung eines Windows 3.1-Rechners hätte auch genügt.
Beste Grüße
Mathematiker
_________________ Töten im Krieg ist nach meiner Auffassung um nichts besser als gewöhnlicher Mord. Albert Einstein
Für diesen Beitrag haben gedankt: Delphi-Laie
|
|
Physli
Hält's aus hier
Beiträge: 7
MacOS, Win 10
|
Verfasst: Do 22.12.16 23:52
Nur mit Windowssoftware?
Da bin ich mal gespannt.
|
|
Cybersurfer
Hält's aus hier
Beiträge: 7
Erhaltene Danke: 3
|
Verfasst: Fr 23.12.16 01:48
Ich habe das Rätsel Nr. 23 gelöst. Habe aber am Ende eine Fehlermeldung bekommen. Es wird keine Schneeflocke angezeigt und ich kann das Rätsel auch nicht erneut lösen.
Es scheint aber trotzdem als erfolgreich gelöst gewertet zu werden. In der Auswertung habe ich für den 23. eine Wertung.
Komisch
|
|
Narses
Beiträge: 10182
Erhaltene Danke: 1255
W10ent
TP3 .. D7pro .. D10.2CE
|
Verfasst: Fr 23.12.16 04:24
Moin!
Cybersurfer hat folgendes geschrieben : | Ich habe das Rätsel Nr. 23 gelöst.
[...]
Es scheint aber trotzdem als erfolgreich gelöst gewertet zu werden. |
Jap.
Cybersurfer hat folgendes geschrieben : | Habe aber am Ende eine Fehlermeldung bekommen. |
Möglicherweise gab es ein Problem beim Empfang der Antwort vom Server, im Server-Log ist jedenfalls nichts auffälliges zu sehen.
Da du nix zur Meldung selbst gesagt hast und die Anwendung vermutlich auch schon geschlossen ist, war's das, da finden wir nix mehr raus.
cu
Narses
_________________ There are 10 types of people - those who understand binary and those who don´t.
|
|