Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > ger.ct > #287998 > unrolled thread
| Started by | Thomas Wildgruber <excpronto@web.de> |
|---|---|
| First post | 2016-12-14 14:04 +0100 |
| Last post | 2016-12-19 10:05 +0000 |
| Articles | 20 on this page of 55 — 20 participants |
Back to article view | Back to ger.ct
Zahlenrätsel mit Computer lösen Thomas Wildgruber <excpronto@web.de> - 2016-12-14 14:04 +0100
Re: Zahlenrätsel mit Computer lösen "Peter Heitzer" <peter.heitzer@rz.uni-regensburg.de> - 2016-12-14 13:30 +0000
Re: Zahlenrätsel mit Computer lösen Bernd Mayer <beam.bam.boom@knuut.de> - 2016-12-14 14:44 +0100
Re: Zahlenrätsel mit Computer lösen Bernd Mayer <beam.bam.boom@knuut.de> - 2016-12-14 14:48 +0100
Re: Zahlenrätsel mit Computer lösen Thomas Wildgruber <excpronto@web.de> - 2016-12-14 15:03 +0100
Re: Zahlenrätsel mit Computer lösen Dorothee Hermann <DorotheeHermann@gmx.net> - 2016-12-14 16:35 +0100
Re: Zahlenrätsel mit Computer lösen Mike Grantz <beatclubs@stoiseland.de> - 2016-12-14 18:34 +0100
Re: Zahlenrätsel mit Computer lösen Thomas Wildgruber <excpronto@web.de> - 2016-12-14 15:00 +0100
Re: Zahlenrätsel mit Computer lösen Bernd Mayer <beam.bam.boom@knuut.de> - 2016-12-14 15:29 +0100
Re: Zahlenraetsel mit Computer loesen Thomas Wildgruber <excpronto@web.de> - 2016-12-14 16:18 +0100
Re: Zahlenraetsel mit Computer loesen Frank Klingenhoefer <frank.private@t-online.de> - 2016-12-14 18:17 +0100
Re: Zahlenraetsel mit Computer loesen Stefan+Usenet@Froehlich.Priv.at (Stefan Froehlich) - 2016-12-16 07:31 +0000
Re: Zahlenraetsel mit Computer loesen Bernd Mayer <beam.bam.boom@knuut.de> - 2016-12-14 18:28 +0100
Re: Zahlenrätsel mit Computer lösen Herwig AQSR <herwig.huener@t-online.de> - 2016-12-14 11:26 -0800
Re: Zahlenrätsel mit Computer lösen Bernd Mayer <beam.bam.boom@knuut.de> - 2016-12-14 20:36 +0100
Re: Zahlenrätsel mit Computer lösen Herwig AQSR <herwig.huener@t-online.de> - 2016-12-14 13:07 -0800
Re: Zahlenrätsel mit Computer lösen Dennis Preiser <d__p@d--p.de> - 2016-12-14 21:24 +0000
Re: Zahlenrätsel mit Computer lösen Thomas Wildgruber <excpronto@web.de> - 2016-12-15 09:16 +0100
Re: Zahlenrätsel mit Computer lösen Gottfried Helms <helms@uni-kassel.de> - 2016-12-15 13:32 +0100
Re: Zahlenrätsel mit Computer lösen Herwig AQSR <herwig.huener@t-online.de> - 2016-12-15 16:02 -0800
Re: Zahlenrätsel mit Computer lösen Wolfgang Kynast <wky@gmx.de> - 2016-12-16 16:46 +0100
Re: Zahlenrätsel mit Computer lösen Herwig AQSR <herwig.huener@t-online.de> - 2016-12-16 16:26 -0800
Re: Zahlenrätsel mit Computer lösen Wolfgang Kynast <wky@gmx.de> - 2016-12-17 10:30 +0100
Re: Zahlenrätsel mit Computer lösen Bernd Mayer <beam.bam.boom@knuut.de> - 2016-12-15 09:44 +0100
Re: Zahlenrätsel mit Computer lösen Dorothee Hermann <DorotheeHermann@gmx.net> - 2016-12-15 10:34 +0100
Re: Zahlenrätsel mit Computer lösen Bernd Mayer <beam.bam.boom@knuut.de> - 2016-12-15 13:59 +0100
Re: Zahlenrätsel mit Computer lösen Bernd Mayer <beam.bam.boom@knuut.de> - 2016-12-15 14:49 +0100
Re: Zahlenrätsel mit Computer lösen Diedrich Ehlerding <diedrich.ehlerding@t-online.de> - 2016-12-15 18:39 +0100
Re: Zahlenrätsel mit Computer lösen Stefan+Usenet@Froehlich.Priv.at (Stefan Froehlich) - 2016-12-15 18:21 +0000
Re: Zahlenrätsel mit Computer lösen Diedrich Ehlerding <diedrich.ehlerding@t-online.de> - 2016-12-15 19:26 +0100
Re: Zahlenrätsel mit Computer lösen Stefan+Usenet@Froehlich.Priv.at (Stefan Froehlich) - 2016-12-16 07:30 +0000
Re: Zahlenrätsel mit Computer lösen Diedrich Ehlerding <diedrich.ehlerding@t-online.de> - 2016-12-16 19:24 +0100
Re: Zahlenrätsel mit Computer lösen Bernd Mayer <beam.bam.boom@knuut.de> - 2016-12-16 20:26 +0100
Re: Zahlenrätsel mit Computer lösen Bernd Mayer <beam.bam.boom@knuut.de> - 2016-12-16 20:28 +0100
Re: Zahlenrätsel mit Computer lösen Bernd Mayer <beam.bam.boom@knuut.de> - 2016-12-16 20:36 +0100
Re: Zahlenrätsel mit Computer lösen Stefan+Usenet@Froehlich.Priv.at (Stefan Froehlich) - 2016-12-17 09:27 +0000
Re: Zahlenrätsel mit Computer lösen Diedrich Ehlerding <diedrich.ehlerding@t-online.de> - 2016-12-17 10:49 +0100
Re: Zahlenrätsel mit Computer lösen Mike Grantz <beatclubs@stoiseland.de> - 2016-12-15 11:53 +0100
Re: Zahlenrätsel mit Computer lösen Gottfried Helms <helms@uni-kassel.de> - 2016-12-15 13:36 +0100
Re: Zahlenrätsel mit Computer lösen Stefan+Usenet@Froehlich.Priv.at (Stefan Froehlich) - 2016-12-15 08:56 +0000
Re: Zahlenrätsel mit Computer lösen Andreas Karrer <ak-6b@gmx.ch> - 2016-12-15 10:26 +0000
Re: Zahlenrätsel mit Computer lösen Mike Grantz <beatclubs@stoiseland.de> - 2016-12-15 11:58 +0100
Re: Zahlenrätsel mit Computer lösen Mike Grantz <beatclubs@stoiseland.de> - 2016-12-15 11:55 +0100
Forum vs Usenet (was:Re: Zahlenrätsel mit Computer lösen) Mike Grantz <beatclubs@stoiseland.de> - 2016-12-15 11:47 +0100
Re: Forum vs Usenet (was:Re: Zahlenrätsel mit Computer lösen) Holger Marzen <holger@marzen.de> - 2016-12-15 10:53 +0000
Re: Forum vs Usenet "Ulrich F. Heidenreich" <from!not-for-mail@tremornet.de> - 2016-12-15 12:33 +0100
Re: Forum vs Usenet (was:Re: Zahlenrätsel mit Computer lösen) Thomas Wildgruber <excpronto@web.de> - 2016-12-15 13:40 +0100
Re: Forum vs Usenet Gottfried Helms <helms@uni-kassel.de> - 2016-12-15 13:42 +0100
Re: Forum vs Usenet (was:Re: Zahlenrätsel mit Computer lösen) Rainer Wahl <usnet.10.boof@spamgourmet.com> - 2016-12-15 17:10 +0100
Re: Forum vs Usenet "Ulrich F. Heidenreich" <from!not-for-mail@tremornet.de> - 2016-12-15 18:07 +0100
Re: Forum vs Usenet "Dr. Joachim Neudert" <neudert@5sl.org> - 2016-12-16 08:58 +0100
Re:Zahlenrätsel mit Computer lösen Volker Neurath <volker.neurath@gmx.de> - 2016-12-18 22:34 +0100
Re: Zahlenrätsel mit Computer lösen Lothar Frings <Lothar.Frings@gmx.de> - 2016-12-18 22:55 -0800
Re: Zahlenrätsel mit Computer lösen Matthias Eißing <meissing@gmx.de> - 2016-12-19 09:44 +0100
Re: Zahlenrätsel mit Computer lösen Stefan+Usenet@Froehlich.Priv.at (Stefan Froehlich) - 2016-12-19 10:05 +0000
Page 1 of 3 [1] 2 3 Next page →
| From | Thomas Wildgruber <excpronto@web.de> |
|---|---|
| Date | 2016-12-14 14:04 +0100 |
| Subject | Zahlenrätsel mit Computer lösen |
| Message-ID | <kkrv3c8kwqs2.dlg@prontosystems.org> |
Hi Group, die SZ hat heute ein Rätsel gepostet, welches man natürlich durch stupides ausprobieren lösen könnte: Eins + Eins + Eins + Drei + Drei = Neun Jeder Buchstabe steht dabei für eine Zahl, es darf keine Zahl mit einer Null beginnen. Man kann jetzt natürlich hergehen und zB feststellen, dass N größer 5 sein muss, weil fünf (vierstellige) Zahlen addiert werden und dabei eine Zahl rauskommen muss, die mindestens mit 5 beginnt. Es lässt sich weiter eingrenzen, weil zwei unterschiedliche Zahlen in der Addition verwendet werden, also müsste mindestens N = 7 gelten (1+1+1+2+2). Aber gut, könnte man das nicht mit einem Script irgendwie eleganter lösen? Anregungen wären hoch willkommen... Thx & Bye Tom -- "Wenn Sie am Montag und Dienstag schon sehnsüchtig auf den Mittwoch warten, weil nach dem Donnerstag endlich der Freitag kommt, sollten Sie das Wochenende dazu nutzen, sich zu fragen ob Sie den richtigen Job haben" (derStandard.at)
[toc] | [next] | [standalone]
| From | "Peter Heitzer" <peter.heitzer@rz.uni-regensburg.de> |
|---|---|
| Date | 2016-12-14 13:30 +0000 |
| Message-ID | <ebcvqqFcn7mU5@mid.individual.net> |
| In reply to | #287998 |
Thomas Wildgruber <excpronto@web.de> wrote: >Hi Group, >die SZ hat heute ein Rätsel gepostet, welches man natürlich durch stupides >ausprobieren lösen könnte: >Eins + Eins + Eins + Drei + Drei = Neun >Jeder Buchstabe steht dabei für eine Zahl, es darf keine Zahl mit einer >Null beginnen. Man kann jetzt natürlich hergehen und zB feststellen, dass N >größer 5 sein muss, weil fünf (vierstellige) Zahlen addiert werden und >dabei eine Zahl rauskommen muss, die mindestens mit 5 beginnt. Es lässt >sich weiter eingrenzen, weil zwei unterschiedliche Zahlen in der Addition >verwendet werden, also müsste mindestens N = 7 gelten (1+1+1+2+2). Zahl != Ziffer Wenn wirklich Zahl und nicht Ziffer gemeint ist, gibt es IMO mehr als eine Lösung. Wenn Zahl==Ziffer gemeint ist, dann ist die Aufgabenstellung Sc**e. -- Dipl.-Inform(FH) Peter Heitzer, peter.heitzer@rz.uni-regensburg.de
[toc] | [prev] | [next] | [standalone]
| From | Bernd Mayer <beam.bam.boom@knuut.de> |
|---|---|
| Date | 2016-12-14 14:44 +0100 |
| Message-ID | <o2ribm$6jf$1@gwaiyur.mb-net.net> |
| In reply to | #287998 |
Am 14.12.2016 um 14:04 schrieb Thomas Wildgruber: > Hi Group, > > die SZ hat heute ein Rätsel gepostet, welches man natürlich durch stupides > ausprobieren lösen könnte: > > Eins + Eins + Eins + Drei + Drei = Neun > > Jeder Buchstabe steht dabei für eine Zahl, es darf keine Zahl mit einer > Null beginnen. Man kann jetzt natürlich hergehen und zB feststellen, dass N > größer 5 sein muss, weil fünf (vierstellige) Zahlen addiert werden und > dabei eine Zahl rauskommen muss, die mindestens mit 5 beginnt. Es lässt > sich weiter eingrenzen, weil zwei unterschiedliche Zahlen in der Addition > verwendet werden, also müsste mindestens N = 7 gelten (1+1+1+2+2). > > Aber gut, könnte man das nicht mit einem Script irgendwie eleganter lösen? > Anregungen wären hoch willkommen... Hallo, mit ein paar Schleifen sollte sich das lösen lassen. Das wäre allerdings unelegant. Als Kind hatte ich solche Rätsel immer gerne gemacht. N muss sogar mindestens 8 sein wegen des Übertrags der zweit-höchsten Stellen (r und i). Diese wären bei E und D 1 oder 2 ja 3 oder 4 und es entsteht dann ein Übertrag auf die höchste Stelle. Wenn E und D nicht 1 oder 2 wären dann wäre N ebenfalls grösser als 7. Sind N großgeschrieben und n kleingeschrieben verschiedene Zahlen im Rätsel? Ich schau mal auf sz nach. ... Die Seite lässt mich wegen Adblocker leider nicht rein. E und D sind maximal 3 sonst wäre das Ergebnis 5-stellig. Bernd Mayer
[toc] | [prev] | [next] | [standalone]
| From | Bernd Mayer <beam.bam.boom@knuut.de> |
|---|---|
| Date | 2016-12-14 14:48 +0100 |
| Message-ID | <o2riip$77p$1@gwaiyur.mb-net.net> |
| In reply to | #288010 |
Am 14.12.2016 um 14:44 schrieb Bernd Mayer: > > N muss sogar mindestens 8 sein wegen des Übertrags der zweit-höchsten > Stellen (r und i). Diese wären bei E und D 1 oder 2 ja 3 oder 4 und es > entsteht dann ein Übertrag auf die höchste Stelle. Wenn E und D nicht 1 > oder 2 wären dann wäre N ebenfalls grösser als 7. > > Sind N großgeschrieben und n kleingeschrieben verschiedene Zahlen im > Rätsel? > > Ich schau mal auf sz nach. > ... > Die Seite lässt mich wegen Adblocker leider nicht rein. > > E und D sind maximal 3 sonst wäre das Ergebnis 5-stellig. Nachtrag: sorry, 0 übersehen - die 3 letzten Stellen können ja auch 0 sein. Bernd Mayer
[toc] | [prev] | [next] | [standalone]
| From | Thomas Wildgruber <excpronto@web.de> |
|---|---|
| Date | 2016-12-14 15:03 +0100 |
| Message-ID | <18cpe1pv5pt6.dlg@prontosystems.org> |
| In reply to | #288012 |
On Wed, 14 Dec 2016 14:48:10 +0100, Bernd Mayer wrote: > sorry, 0 übersehen - die 3 letzten Stellen können ja auch 0 sein. stimmt... Bye Tom -- "Gewissen Geistern muss man ihre Idiotismen lassen" (Johann Wolfgang von Goethe)
[toc] | [prev] | [next] | [standalone]
| From | Dorothee Hermann <DorotheeHermann@gmx.net> |
|---|---|
| Date | 2016-12-14 16:35 +0100 |
| Message-ID | <ebd76kFg6mlU1@mid.individual.net> |
| In reply to | #288012 |
Am 14.12.2016 um 14:48 schrieb Bernd Mayer: >> Ich schau mal auf sz nach. >> Die Seite lässt mich wegen Adblocker leider nicht rein. Mich schon. Trotz! Also bitte: *Zitat*: |Das Rätsel der Woche |In der Gleichung müssen Sie die Buchstaben so durch Zahlen |ersetzen, dass die Rechnung aufgeht. Dabei darf jede Zahl nur |einmal verwendet werden, verschiedene Buchstaben entsprechen |verschiedenen Ziffern und eine Zahl darf nicht mit Null |beginnen. |Ein Beispiel: |Der Code I + BB = ILL hat die Lösung 1 + 99 = 100. Dann kommt ein Kästchen mit Text: |EINS + EINS + EINS |+ DREI + DREI |= NEUN |Und jetzt mit Zahlen, bitte! *Ende des Zitats*. http://www.sueddeutsche.de/bildung/knobelei-der-woche-knacken-sie-das-buchstabenraetsel-1.3292436 Dorothee -- Qvr Yöfhat vfg yrvqre orxnaag
[toc] | [prev] | [next] | [standalone]
| From | Mike Grantz <beatclubs@stoiseland.de> |
|---|---|
| Date | 2016-12-14 18:34 +0100 |
| Message-ID | <o2rvog$rv7$1@dont-email.me> |
| In reply to | #288030 |
On 14.12.2016 16:35, Dorothee Hermann wrote: > |EINS + EINS + EINS > |+ DREI + DREI > |= NEUN > |Und jetzt mit Zahlen, bitte! > *Ende des Zitats*. E I N S + E I N S + E I N S + D R E I + D R E I = ------- N E U N
[toc] | [prev] | [next] | [standalone]
| From | Thomas Wildgruber <excpronto@web.de> |
|---|---|
| Date | 2016-12-14 15:00 +0100 |
| Message-ID | <hjgvoe8y2dy8$.dlg@prontosystems.org> |
| In reply to | #288010 |
Servus Bernd, On Wed, 14 Dec 2016 14:44:22 +0100, Bernd Mayer wrote: > N muss sogar mindestens 8 sein wegen des Übertrags der zweit-höchsten > Stellen (r und i). Diese wären bei E und D 1 oder 2 ja 3 oder 4 und es > entsteht dann ein Übertrag auf die höchste Stelle. Wenn E und D nicht 1 > oder 2 wären dann wäre N ebenfalls grösser als 7. Stimmt, bliebe für N eine 8 oder eine 9 > Sind N großgeschrieben und n kleingeschrieben verschiedene Zahlen im Rätsel? Nein, die SZ hat nur Großbuchstaben verwendet. > Ich schau mal auf sz nach. > ... > Die Seite lässt mich wegen Adblocker leider nicht rein. Stünde auch auf der Facebookseite der SZ, da hab ich das her. > E und D sind maximal 3 sonst wäre das Ergebnis 5-stellig. E kann nicht 3 sein, sonst wäre das Ergebnis auch schon 5-stellig, weil D dann mindestens 1 wäre aber zweimal vorkommt: 3 + 3 + 3 + 1 + 1 = 11 (hätte auch einen Übertrag) D hingegen könnte auch eine 3 sein, wenn E eine 1 wäre: 1 + 1 + 1 + 3 + 3 = 9 Thx & Bye Tom -- "Manches Gewissen ist nur rein, weil es nie benutzt wurde" (Robert Lembke)
[toc] | [prev] | [next] | [standalone]
| From | Bernd Mayer <beam.bam.boom@knuut.de> |
|---|---|
| Date | 2016-12-14 15:29 +0100 |
| Message-ID | <o2rl09$d8k$1@gwaiyur.mb-net.net> |
| In reply to | #288014 |
Am 14.12.2016 um 15:00 schrieb Thomas Wildgruber: > > On Wed, 14 Dec 2016 14:44:22 +0100, Bernd Mayer wrote: > >> N muss sogar mindestens 8 sein wegen des Übertrags der zweit-höchsten >> Stellen (r und i). Diese wären bei E und D 1 oder 2 ja 3 oder 4 und es >> entsteht dann ein Übertrag auf die höchste Stelle. Wenn E und D nicht 1 >> oder 2 wären dann wäre N ebenfalls grösser als 7. > > Stimmt, bliebe für N eine 8 oder eine 9 > >> E und D sind maximal 3 sonst wäre das Ergebnis 5-stellig. > > E kann nicht 3 sein, sonst wäre das Ergebnis auch schon 5-stellig, weil D > dann mindestens 1 wäre aber zweimal vorkommt: > > 3 + 3 + 3 + 1 + 1 = 11 (hätte auch einen Übertrag) > > D hingegen könnte auch eine 3 sein, wenn E eine 1 wäre: > > 1 + 1 + 1 + 3 + 3 = 9 Hallo, und eine 1 (entweder E oder D) muß auf alle Fälle an erster Stelle stehen d.h. I, R, S und U sind auf keinen Fall 1. N sowieso. Wegen N>=7 hat die zweithöchste Stelle einen Übertrag von 2 oder 3 (3*7 =21) N kann 7, 8 oder 9 sein. Bernd Mayer
[toc] | [prev] | [next] | [standalone]
| From | Thomas Wildgruber <excpronto@web.de> |
|---|---|
| Date | 2016-12-14 16:18 +0100 |
| Subject | Re: Zahlenraetsel mit Computer loesen |
| Message-ID | <rb090vd1088h.dlg@prontosystems.org> |
| In reply to | #287998 |
On 14 Dec 2016 14:48:16 GMT, Stefan Ram wrote:
> Ich habe die Schleife umgeschrieben, so daß jetzt mehr oder alle
> Lösungen ausgegeben werden.
Beim Überfliegen ist mir aufgefallen, dass du einzelne Ziffern mehrfach mit
Buchstaben belegst zB D=1 und E=1. Ich denke das sollte so nicht sein.
Aber kannst du mal kurz auf den Ablauf der Schleifen eingehen, ohne dass
man gleich über die Lösung gestolpert ist?
Thx & Bye Tom
--
"Sie wissen, wir leben im Zeitalter der Abkürzungen. Ehe ist die Kurzform
für lateinische "errare humanum est" ("Irren ist menschlich")." (Robert
Lembke)
[toc] | [prev] | [next] | [standalone]
| From | Frank Klingenhoefer <frank.private@t-online.de> |
|---|---|
| Date | 2016-12-14 18:17 +0100 |
| Subject | Re: Zahlenraetsel mit Computer loesen |
| Message-ID | <peb8id-4uk.ln1@320040907424-xxx.dialin.t-online.de> |
| In reply to | #288027 |
Stefan Ram wrote:
[...]
> Aha, dann bleibt nur noch folgende Moeglichkeit
> (manuell ausgewaehlt):
>
> {D=2, E=1, I=3, N=8, R=0, S=4, U=7}
Hier ist eine kleines Haskellprogramm, welches aus einem Programm aus
einem Blog-Posting abgeleitet wurde:
<https://blog.jle.im/entry/unique-sample-drawing-searches-with-list-and-statet>
$ cat nnn-sch2.hs
import Control.Monad (guard, mfilter)
import Control.Monad.Trans.State
import Data.List (foldl')
asNumber :: [Int] -> Int
asNumber = foldl' (\t o -> t*10 + o) 0
select :: [a] -> [(a, [a])]
select [] = []
select (x:xs) = (x,xs) : [(y,x:ys) | (y,ys) <- select xs]
main :: IO ()
main = print . flip evalStateT [0..9] $ do
e <- StateT select
guard $ e > 0 && e < 3
--
d <- StateT select
guard $ d > 0 && d < 4
--
n <- StateT select
guard $ n > 6
--
s <- StateT select
i <- StateT select
r <- StateT select
u <- StateT select
let eins = asNumber [e,i,n,s]
drei = asNumber [d,r,e,i]
neun = asNumber [n,e,u,n]
guard $ eins + eins + eins + drei + drei == neun
return (eins, drei, neun)
$ ghc --make -O2 nnn-sch2.hs
$ ./nnn-sch2
[(1384,2013,8178)]
$
*******************Snip
Frank
[toc] | [prev] | [next] | [standalone]
| From | Stefan+Usenet@Froehlich.Priv.at (Stefan Froehlich) |
|---|---|
| Date | 2016-12-16 07:31 +0000 |
| Subject | Re: Zahlenraetsel mit Computer loesen |
| Message-ID | <5t58539831i1003n3e8%sfroehli@Froehlich.Priv.at> |
| In reply to | #288027 |
On Thu, 15 Dec 2016 19:25:13 Stefan Ram wrote: > Das besondere an meinem Program (siehe die neue Version, > welche unten folgt) ist, daß es keine Hilfe von einem > Menschen bei der Suche nach der Lösung benötigt. Aber es ist halt immer noch brute force und insofern todlangweilig. Servus, Stefan -- http://kontaktinser.at/ - die kostenlose Kontaktboerse fuer Oesterreich Offizieller Erstbesucher(TM) von mmeike Stefan. Für echte Hennen, dazu hat man Zeit! (Sloganizer)
[toc] | [prev] | [next] | [standalone]
| From | Bernd Mayer <beam.bam.boom@knuut.de> |
|---|---|
| Date | 2016-12-14 18:28 +0100 |
| Subject | Re: Zahlenraetsel mit Computer loesen |
| Message-ID | <o2rvg5$7vf$1@gwaiyur.mb-net.net> |
| In reply to | #287998 |
Am 14.12.2016 um 15:48 schrieb Stefan Ram:
> ram@zedat.fu-berlin.de (Stefan Ram) writes:
>> {D=1, E=1, I=0, N=5, R=0, S=5, U=8}
>
> Ich habe die Schleife umgeschrieben, so daß jetzt mehr oder alle
> Lösungen ausgegeben werden.
>
> Nun habe ich nicht alle wieder manuell überprüft. Also mache ich
> mal eine Stichprobe mit der vorletzten:
>
> EINS+EINS+EINS+DREI+DREI=NEUN
> 1699+1699+1699+2016+2016=9129
>
> Man könnte also noch als Zusatzanforderung verlangen, daß das
> aktuelle Jahr in der Lösung vorkommen muß.
Hallo,
oder daß verschiedene Buchstaben auch verschiedene Ziffern darstellen
sollen. Bei Dir sind N und S beide 9.
Bernd Mayer
[toc] | [prev] | [next] | [standalone]
| From | Herwig AQSR <herwig.huener@t-online.de> |
|---|---|
| Date | 2016-12-14 11:26 -0800 |
| Message-ID | <f9007535-cc08-4402-8825-1a41c73760c8@googlegroups.com> |
| In reply to | #287998 |
2016-12-14 20:25:00 +0100
> ...
> die SZ hat heute ein Rätsel gepostet, welches man natürlich durch stupides
> ausprobieren lösen könnte:
>
> Eins + Eins + Eins + Drei + Drei = Neun
>
> Jeder Buchstabe steht dabei für eine Zahl, es darf keine Zahl mit einer
> Null beginnen.
Nicht weiterlesen, denn ich gehe jetzt in den SpielVerderberModus,
weil ich schon länger nichts mehr programmiert habe - bitte sehr,
alle 19 Lösungen:
-------------------------------------------------------------------------------
$ cat ZahlenRaetsel.2016-12-14.c ; make ZahlenRaetsel.2016-12-14 ; ./ZahlenRaetsel.2016-12-14 ; rm -v ./ZahlenRaetsel.2016-12-14
#include <stdio.h>
main ()
{
int e, i, n, s, d, r, u;
for (e = 1 ; e < 10 ; e++)
{
for (i = 0 ; i < 10 ; i++)
{
for (n = 1 ; n < 10 ; n++)
{
for (s = 0 ; s < 10 ; s++)
{
for (d = 1 ; d < 10 ; d++)
{
for (r = 0 ; r < 10 ; r++)
{
for (u = 0 ; u < 10 ; u++)
{
/* printf (" %1i%1i%1i%1i%1i%1i%1i\n", e, i, n, s, d, r, u ); */
if (
1000 * e + 100 * i + 10 * n + s +
1000 * e + 100 * i + 10 * n + s +
1000 * e + 100 * i + 10 * n + s +
1000 * d + 100 * r + 10 * e + i +
1000 * d + 100 * r + 10 * e + i ==
1000 * n + 100 * e + 10 * u + n )
{
/* printf (" %1i%1i%1i%1i%1i%1i%1i\n", e, i, n, s, d, r, u ); */
printf (" " );
printf ("%1i%1i%1i%1i + ", e, i, n, s );
printf ("%1i%1i%1i%1i + ", e, i, n, s );
printf ("%1i%1i%1i%1i + ", e, i, n, s );
printf ("%1i%1i%1i%1i + ", d, r, e, i );
printf ("%1i%1i%1i%1i = ", d, r, e, i );
printf ("%1i%1i%1i%1i \n", n, e, u, n );
}
}
}
}
}
}
}
}
}
cc ZahlenRaetsel.2016-12-14.c -o ZahlenRaetsel.2016-12-14
1055 + 1055 + 1055 + 1010 + 1010 = 5185
1168 + 1168 + 1168 + 1311 + 1311 = 6126
1175 + 1175 + 1175 + 1811 + 1811 = 7147
1182 + 1182 + 1182 + 2311 + 2311 = 8168
1295 + 1295 + 1295 + 2612 + 2612 = 9109
1360 + 1360 + 1360 + 1013 + 1013 = 6106
1377 + 1377 + 1377 + 1513 + 1513 = 7157
1384 + 1384 + 1384 + 2013 + 2013 = 8178
1391 + 1391 + 1391 + 2513 + 2513 = 9199
1497 + 1497 + 1497 + 2314 + 2314 = 9119
1579 + 1579 + 1579 + 1215 + 1215 = 7167
1586 + 1586 + 1586 + 1715 + 1715 = 8188
1699 + 1699 + 1699 + 2016 + 2016 = 9129
1788 + 1788 + 1788 + 1417 + 1417 = 8198
1891 + 1891 + 1891 + 1718 + 1718 = 9109
1980 + 1980 + 1980 + 1119 + 1119 = 8178
2086 + 2086 + 2086 + 1020 + 1020 = 8298
2199 + 2199 + 2199 + 1321 + 1321 = 9239
2391 + 2391 + 2391 + 1023 + 1023 = 9219
„./ZahlenRaetsel.2016-12-14“ entfernt
[toc] | [prev] | [next] | [standalone]
| From | Bernd Mayer <beam.bam.boom@knuut.de> |
|---|---|
| Date | 2016-12-14 20:36 +0100 |
| Message-ID | <o2s706$r7a$1@gwaiyur.mb-net.net> |
| In reply to | #288062 |
Am 14.12.2016 um 20:26 schrieb Herwig AQSR: > 2016-12-14 20:25:00 +0100 > >> die SZ hat heute ein Rätsel gepostet, welches man natürlich durch stupides >> ausprobieren lösen könnte: >> >> Eins + Eins + Eins + Drei + Drei = Neun >> >> Jeder Buchstabe steht dabei für eine Zahl, es darf keine Zahl mit einer >> Null beginnen. > > Nicht weiterlesen, denn ich gehe jetzt in den SpielVerderberModus, > weil ich schon länger nichts mehr programmiert habe - bitte sehr, > alle 19 Lösungen: Gratulation! Wie lange hat die Schleife gebraucht? Ich vermute die Doppelbelegung verschiedener Buchstaben mit identischen Ziffern sollte man noch eliminieren. Chapeau! Bernd Mayer
[toc] | [prev] | [next] | [standalone]
| From | Herwig AQSR <herwig.huener@t-online.de> |
|---|---|
| Date | 2016-12-14 13:07 -0800 |
| Message-ID | <182fd474-cc0d-43e1-9caf-dd8eb981e1e5@googlegroups.com> |
| In reply to | #288065 |
2016-12-14 22:09:00 +0100 > Gratulation! Wozu? Dass ich mehrmals bash-Konstrukte aus einem C-Programm herausdebuggen musste? Jahrelang Shell- und ExpectScripte schreiben müssen verdirbt den ProgrammiererCharakter. > Wie lange hat die Schleife gebraucht? Eine Viertel Sekunde, und deshalb ... > Ich vermute die Doppelbelegung verschiedener Buchstaben mit identischen > Ziffern sollte man noch eliminieren. ... lohnen sich Optimieungen nicht. Grundsatz fürs Optimieren: Nicht! Oder wenigstens noch nicht. Herwig
[toc] | [prev] | [next] | [standalone]
| From | Dennis Preiser <d__p@d--p.de> |
|---|---|
| Date | 2016-12-14 21:24 +0000 |
| Message-ID | <0Td3v23lI1dpNfm%dennis@coredump.d--p.de> |
| In reply to | #288081 |
Herwig AQSR <herwig.huener@t-online.de> wrote: >> Wie lange hat die Schleife gebraucht? > > Eine Viertel Sekunde, und deshalb ... > >> Ich vermute die Doppelbelegung verschiedener Buchstaben mit identischen >> Ziffern sollte man noch eliminieren. > > ... lohnen sich Optimieungen nicht. Die eineindeutige Abbildung von Buchstaben auf Zahlen war gerade der Witz der Aufgabe ... Dennis
[toc] | [prev] | [next] | [standalone]
| From | Thomas Wildgruber <excpronto@web.de> |
|---|---|
| Date | 2016-12-15 09:16 +0100 |
| Message-ID | <ok5m58swksu7$.dlg@prontosystems.org> |
| In reply to | #288081 |
On Wed, 14 Dec 2016 13:07:09 -0800 (PST), Herwig AQSR wrote: > Eine Viertel Sekunde, und deshalb ... Wuppt und das erstaunlicherweise sogar wirklich in einer viertel Sekunde aber nochmal zurück zu der Optimierung der ganzen Geschichte. Kann man bei der Initalisiering der Variablen nicht festlegen, dass zB e !0 i sein darf usw? Das wär schon eine edle Sache... Gestern Abend im Bett habe ich mir das auch mit so verschachtelten Schleifen vorgestellt und das Ergebnis jeweils überprüft aber meine Programmierkenntnisse sind eher rudimentär und ich hätte schon Stunden mit der Syntax zu kämpfen gehabt aber C wäre auch mein Werkzeug gewesen. Danke für diese Lösung Thx & Bye Tom -- "Der Retter der Welt ist ein Pinguin und Linus Torvalds ist sein Prophet "
[toc] | [prev] | [next] | [standalone]
| From | Gottfried Helms <helms@uni-kassel.de> |
|---|---|
| Date | 2016-12-15 13:32 +0100 |
| Message-ID | <o2u2ii$fkn$1@news.albasani.net> |
| In reply to | #288123 |
Am 15.12.2016 um 09:16 schrieb Thomas Wildgruber:
> On Wed, 14 Dec 2016 13:07:09 -0800 (PST), Herwig AQSR wrote:
>
>> Eine Viertel Sekunde, und deshalb ...
>
> Wuppt und das erstaunlicherweise sogar wirklich in einer viertel Sekunde
> aber nochmal zurück zu der Optimierung der ganzen Geschichte. Kann man bei
> der Initalisiering der Variablen nicht festlegen, dass zB e !0 i sein darf
> usw? Das wär schon eine edle Sache...
>
> Gestern Abend im Bett habe ich mir das auch mit so verschachtelten
> Schleifen vorgestellt und das Ergebnis jeweils überprüft aber meine
> Programmierkenntnisse sind eher rudimentär und ich hätte schon Stunden mit
> der Syntax zu kämpfen gehabt aber C wäre auch mein Werkzeug gewesen.
>
> Danke für diese Lösung
>
> Thx & Bye Tom
>
Die einfachste Methode, bei der schon beachtet wird,
daß E nur 1 oder 2,
D nur 1,2,3 und
N nur 7,8,9 sein kann
\\ (Pari/GP- Interpreter)
{for(d=1,3,
for(e=1,2, if((e-d)==0,next());
for(i=0,9, if((i-d)*(i-e)==0,next());
for(n=7,9, if((n-d)*(n-e)*(n-i)==0,next());
for(r=0,9, if((r-d)*(r-e)*(r-i)*(r-n)==0,next());
for(s=0,9, if((s-d)*(s-e)*(s-i)*(s-n)*(s-r)==0,next());
for(u=0,9, if((u-d)*(u-e)*(u-i)*(u-n)*(u-r)*(u-s)==0,next());
if( 2000*d + 2920*e + 302*i -971*n + 200*r + 3*s - 10*u ,next()) ;
print( 3*(1000*e+100*i+10*n+s)+2*(1000*d+100*r+10*e+i) ," = ", (1000*n+100*e+10*u+n));
EINS=Str( 1000*e+100*i+10*n+s);
DREI=Str( 1000*d+100*r+10*e+i);
NEUN=Str( 1000*n+100*e+10*u+n);
print(" ",EINS,"\n+",EINS,"\n+",EINS,"\n+",DREI,"\n+",DREI,"\n=",NEUN);
print("[D,E,I,N,R,S,U]=",[d,e,i,n,r,s,u]);
)))))));"ok"}
\\ output
8178 = 8178
1384
+1384
+1384
+2013
+2013
=8178
[D,E,I,N,R,S,U]=[2, 1, 3, 8, 0, 4, 7]
%79 = "ok"
Wenn man das wirklich optimieren will, daß also die inneren Schleifen nur die erlaubten
Werte ausprobieren, muß man das mit Listen handeln. In Pari/GP kann man das z.B.
mit "Set"-s machen, weil diese ein einfaches Sprachkonstrukt zum Löschen eines
Wertes aus einer Liste haben ("setminus")
{S0_9 = Set([0,1,2,3,4,5,6,7,8,9]);
S1_3 = Set([1,2,3]); \\ e und d können nur Werte hieraus haben
S7_9 = Set([7,8,9]); \\ n kann nur Werte hieraus haben
for(e=1,2, S2= setminus(S1_3,Set(e)); \\ "E" setzen und Auswahlliste für D verkürzen
for(id=1,#S2, d=eval(S2[id]);
for(n=7,9, S3 = setminus(S0_9,Set([e,d,n])); \\ S3 hat nur noch Werte, die für I,R,S,U verfügbar sind.
for(ii = 1,#S3, i=eval(S3[ii]); S4=setminus(S3,Set(i));
for(ir = 1,#S4, r=eval(S4[ir]); S5=setminus(S4,Set(r));
for(is = 1,#S5, s=eval(S5[is]); S6=setminus(S5,Set(s));
for(iu = 1,#S6, u=eval(S6[iu]);
if( 2000*d + 2920*e + 302*i -971*n + 200*r + 3*s - 10*u ,next()) ;\\wenn keine Lösung dann weiter
print( 3*(1000*e+100*i+10*n+s)+2*(1000*d+100*r+10*e+i) ," = ", (1000*n+100*e+10*u+n));
EINS=Str( 1000*e+100*i+10*n+s);
DREI=Str( 1000*d+100*r+10*e+i);
NEUN=Str( 1000*n+100*e+10*u+n);
print(" ",EINS,"\n+",EINS,"\n+",EINS,"\n+",DREI,"\n+",DREI,"\n=",NEUN);
print("[d,e,i,n,r,s,u]=",[d,e,i,n,r,s,u]);
)))))));"ok"}
Gottfried
[toc] | [prev] | [next] | [standalone]
| From | Herwig AQSR <herwig.huener@t-online.de> |
|---|---|
| Date | 2016-12-15 16:02 -0800 |
| Message-ID | <234cdc07-7a16-44b0-88b3-63b57713c593@googlegroups.com> |
| In reply to | #288123 |
2016-12-16 01:03:00 +0100 > ... > Gestern Abend im Bett habe ich mir das auch mit so verschachtelten > Schleifen vorgestellt und das Ergebnis jeweils überprüft aber meine > Programmierkenntnisse sind eher rudimentär und ich hätte schon Stunden mit > der Syntax zu kämpfen gehabt aber C wäre auch mein Werkzeug gewesen. > > Danke für diese Lösung Aber jetzt keine Gewähr für die Richtigkeit der Lösung. Das HauptThema meines ganzen BerufsLebens waren Programme, die *nicht* das taten, was sie sollten - darunter viele aus meiner eigenen Tastatur. Man wird auf diese Weise bescheiden, was die Einschätzung der eigenen intellektuellen Ressourcen betrifft - und man braucht zur Begründung nicht einmal das defezitäre ArbeitsUmfeld, das einige IT-Konzerne ihren MitArbeitern zur Verfügung stellen. Nochmal zum Mitmeisseln: Es gibt keine fehlerfreien Programme! Herwig
[toc] | [prev] | [next] | [standalone]
Page 1 of 3 [1] 2 3 Next page →
Back to top | Article view | ger.ct
csiph-web