Prinzip! 5000 Ziffern in Zahlenreihe bis X? |
08.07.2011, 11:20 | hotgrafx | Auf diesen Beitrag antworten » | |||||||||||||
5000 Ziffern in Zahlenreihe bis X? Wir sitzen hier grade vor einem - für uns - unlösbarem Rätsel: Ein Kunde von uns benötigt 5000 einzelne Ziffern von 0 bis 9. Aber in der Verteilung, wie oft die einzelnen Ziffern in den Zahlen vorkommen. Außerdem bis zu der Zahl, die aus den 5000 Ziffern als höchste Zahl möglich ist. Wä??? Hat jemand eine Idee, wie das zu lösen ist? Ich komme mir grade unendlich dumm vor. Danke!!! Michael |
|||||||||||||||
08.07.2011, 11:28 | Steffen Bühler | Auf diesen Beitrag antworten » | |||||||||||||
RE: 5000 Ziffern in Zahlenreihe bis X?
Geht's hier vielleicht um das Benfordsche Gesetz? Viele Grüße Steffen |
|||||||||||||||
08.07.2011, 11:32 | hotgrafx | Auf diesen Beitrag antworten » | |||||||||||||
Frag mich was einfacheres. Sieht auf alle Fälle schon mal irgendwie gut aus. Ich krieg trotzdem noch immer Stresspickel! Komme einfach auf kein nachvollziehbares Ergebnis. |
|||||||||||||||
08.07.2011, 11:49 | Steffen Bühler | Auf diesen Beitrag antworten » | |||||||||||||
Ich hab mich nicht sehr viel damit beschäftigt, und kann Dir die Formel auch nicht erklären, dazu müßtest Du am besten einen neuen Thread starten. Allerdings kannst Du auch brute force verwenden: eine Anwendung programmieren (lassen), die das Auftreten der Ziffern 0 bis 9 in den Zahlen bis (also füntausend Neunen hintereinander) feststellt und den prozentualen Anteil bestimmt. Viele Grüße Steffen |
|||||||||||||||
08.07.2011, 11:55 | hotgrafx | Auf diesen Beitrag antworten » | |||||||||||||
Es sind ja keine 5000 Neunen oder Einsen. ...es sollen INSGESAMT 5000 Ziffern in der tatsächlichen Zahlenverteilung sein, die damit erreichbar ist. Ich denke da komme ich bei einer Brute Force Methode auch nicht weiter, da ich dort ja ein Ziel brauche, welches ich erst ermitteln muss. Das ist ja mein Dilemma. |
|||||||||||||||
08.07.2011, 12:00 | Steffen Bühler | Auf diesen Beitrag antworten » | |||||||||||||
Kannst Du eventuell die genaue Anforderung Deines Kunden hinschreiben? Viele Grüße Steffen |
|||||||||||||||
Anzeige | |||||||||||||||
|
|||||||||||||||
08.07.2011, 12:07 | hotgrafx | Auf diesen Beitrag antworten » | |||||||||||||
Okay. Ich probiers mal: Er benötigt 5000 einzelne Ziffern, die er verkleben will um daraus Zahlen zu bilden. Ziffern sind logischerweise dann 0 - 9. Da aber nicht jede Ziffer gleich oft in den Zahlen vorkommt, möchte er diese in der Tatsächlich vorkommenden möglichen Anzahl gefertigt bekommen. Da er aber insgesamt 5000 EINZELNE Ziffern haben möchte, und nicht sagen kann, bis zu welcher ZAHL seine gewünschte Produktion gehen soll, steh ich echt wie der Ochse vor dem Berg. Also: 5000 Stück einzelne Ziffern 0 bis 9. Das ganze hin zu der Zahl, die sich daraus bilden lässt, bis die Menge von 5000 Stück ausgeschöpft ist. Ich glaube jetzt hab ichs deutlich ausgedrückt, oder? Danke! Michael |
|||||||||||||||
08.07.2011, 12:58 | René Gruber | Auf diesen Beitrag antworten » | |||||||||||||
Was bedeutet dieses den in deiner Beschreibung
darauf hast du bisher immer noch nicht klar und deutlich geantwortet. Deinen letzten Beitrag, insbesondere den Start
würde ich jetzt so deuten: Es werden fortlaufend (!) die Seriennummern von bis aus Ziffern gelegt, so dass am Ende dafür 5000 Ziffern verbraucht werden. Zu bestimmen ist (zumindest als Hilfsgröße) sowie die tatsächlich benötigten Anzahlen der Ziffern 0,1,...,9. |
|||||||||||||||
08.07.2011, 13:09 | hotgrafx | Auf diesen Beitrag antworten » | |||||||||||||
Ganz genau so!!! |
|||||||||||||||
08.07.2011, 13:18 | Steffen Bühler | Auf diesen Beitrag antworten » | |||||||||||||
Na, dann eben doch mit brute force:
Die Ausgabe ist dann: 1528 - 5001 Das heißt, Dein Kunde kann Zahlen bis 1527 damit legen und hat dann noch drei Ziffern übrig. Viele Grüße Steffen |
|||||||||||||||
08.07.2011, 13:20 | hotgrafx | Auf diesen Beitrag antworten » | |||||||||||||
Wow!!! Aber damit habe ich noch immer nicht die Anzahl der einzelnen Ziffern, die ich dafür produzieren muss. Wie bekomme ich denn DIE dann raus? |
|||||||||||||||
08.07.2011, 13:23 | René Gruber | Auf diesen Beitrag antworten » | |||||||||||||
@Steffen Und jetzt bitte noch das Programm anpassen, dass die einzelnen Ziffernanzahlen ausgegeben werden. Ganz ehrlich: Muss es hier wirklich Brutforce sein, wo es doch auch so ganz gut und schnell zu lösen ist? Aber vielleicht sollte ich die Klappe halten, da ich auch ganz gern brutforce. P.S.: Im übrigen hast du dich verzählt, es geht nur bis 1526 mit 3 übrigbleibenden Ziffern. Das Inkrement i++ am Ende der Schleife erweist sich als verhängnisvoll. |
|||||||||||||||
08.07.2011, 13:27 | hotgrafx | Auf diesen Beitrag antworten » | |||||||||||||
Gut und schnell?! Aaaaaaaaargh! Ich werd noch doof. Sag mir bitte wie!!! |
|||||||||||||||
08.07.2011, 13:30 | René Gruber | Auf diesen Beitrag antworten » | |||||||||||||
Erstmal durchzählen * alle einstelligen Zahlen 1..9: Ziffern * alle zweistelligen Zahlem 10..99: Ziffern * alle dreistelligen Zahlem 100..999: Ziffern Macht bisher summa summarum Ziffern für alle Zahlen bis einschließlich 999. Das gesuchte ist ganz offenbar eine vierstellige Zahl, für alle vierstelligen Zahlen von bis braucht man nun noch zusätzliche Ziffern. Aus der Bestimmungs(un)gleichung kann man nun das maximal mögliche bestimmen. |
|||||||||||||||
08.07.2011, 13:35 | hotgrafx | Auf diesen Beitrag antworten » | |||||||||||||
Muss das nicht 89 x 2 sein? |
|||||||||||||||
08.07.2011, 13:44 | Steffen Bühler | Auf diesen Beitrag antworten » | |||||||||||||
Stimmt, hab ich überlesen:
Ausgabe: 0 - 402 1 - 1040 2 - 510 3 - 503 4 - 503 5 - 430 6 - 403 7 - 402 8 - 402 9 - 402
Natürlich nicht. Aber ich kam nicht auf Deine Lösung.
Hab ich beim Zusammenzählen der obigen Ergebnisse auch gemerkt. Sorry. Aber Programmierer verzählen sich halt maximal um Eins. Viele Grüße Steffen |
|||||||||||||||
08.07.2011, 13:46 | René Gruber | Auf diesen Beitrag antworten » | |||||||||||||
@hotgrafx Nein: Von 10 bis 99 (Grenzen einschließlich) sind es 90 Zahlen. Zu den einzelnen Ziffernanzahlen: Das ist in der Tat zu Fuß etwas mühselig.
|
|||||||||||||||
08.07.2011, 13:48 | hotgrafx | Auf diesen Beitrag antworten » | |||||||||||||
Ich könnt euch knutschen!!!! 1000 Dank! |
|||||||||||||||
09.07.2011, 18:32 | tigerbine | Auf diesen Beitrag antworten » | |||||||||||||
Boardprinzip
Ich darf hier auf das Boardprinzip verweisen, wohl eher in Richtung Zukunft. Auch wenn das Problem interessant ist, arbeiten wir nicht für Firmen und stellen gratis Know-How zur Verfügung. Nutzungsbedingungen.
|
|
Verwandte Themen
Die Beliebtesten » |
Die Größten » |
|
Die Neuesten » |
|