|
|
Zahl auf Merkmale überprüfen + Primzahltest |
|
BNI |

Forum-Newbie
|
 |
Beiträge: 5
|
 |
|
 |
Anmeldedatum: 13.11.09
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 13.11.2009, 15:16
Titel: Zahl auf Merkmale überprüfen + Primzahltest
|
 |
|
 |
|
Hallo liebe Forumsgemeinde!
Ich bin Maschbau Student in Wolfsburg, habe erst wenig Erfahrung mit MatLab und brauche mal eure Hilfe, da ich nichts Konkretes zu dem Thema gefunden habe!
Ich möchte ein Rätsel lösen, und zwar sind alle 11 stelligen Primzahlen gesucht, die so aussehen:
Primzahl "abcdefghikl" (a,b,c usw stehen für die einzelnen Stellen)
mit
a ungleich 0
c=k
f=h=l
e=i
Durch diese Eingrenzung kann es nicht mehr allzuviele Zahlen geben, bei denen ein Primzahltest durchgeführt werden müsste.
Ich habe mir also gedacht bei 10.000.000.000 anzufangen und dann immer pro Schleife + 1 zu rechnen.
In der Schleife werden die Bedingungen der Stellen überprüft, also ob die 3. Stelle den gleichen Wert wie die 10. Stelle hat usw.
Falls alle Bedingungen erfüllt sind kommt der Primzahltest, falls nicht, geht es von vorne los.
Fall sich heraus stellt, dass eine Primzahl vorliegt, wird sie in eine .txt Datei geschrieben, die dann fortlaufend gefüllt wird.
Nun ein paar Fragen:
Würde das Klappen und wenn ja, wäre es überhaupt zeitlich in einem zumutbaren Rahmen?
Wie krieg ich die Überprüfung der Stellen hin?
Welchen Primzahltest könnte ich verwenden?
schonmal vielen Dank für eure Antworten
mfg
Benni
|
|
|
|
|
Andreas Goser |

Forum-Meister
|
 |
Beiträge: 3.654
|
 |
|
 |
Anmeldedatum: 04.12.08
|
 |
|
 |
Wohnort: Ismaning
|
 |
|
 |
Version: 1.0
|
 |
|
|
 |
|
Verfasst am: 13.11.2009, 15:59
Titel:
|
 |
Das ist ja zur Abwechslung mal eine wirklich nette Aufgabe. (Ich würde gerne wissen - PN oder Email - wer die gestellt hat).
Der Primzahltest ISPRIME dürfte bekannt sein.
Alle 11-stelligen Zahlen passen aber ja nicht in den Speicher, d.h. man muss die "constraints" tatsächlich vorher anwenden und kann nicht einfac darauf losrechen. Intelligent gemacht!
Ich glaube nicht, dass die grosse Schleife zeitlich funktioniert. Vielleicht funktioniert es besser indem man die Zeichen der Zahlen zusammenfügt und dann in ene Zahl umwandelt? Sorry, ich kann gerade zeitlich kein Beispiel machen wie ich es meine.
Andreas
|
|
|
Harald |

Forum-Meister
|
 |
Beiträge: 24.501
|
 |
|
 |
Anmeldedatum: 26.03.09
|
 |
|
 |
Wohnort: Nähe München
|
 |
|
 |
Version: ab 2017b
|
 |
|
|
 |
|
Verfasst am: 13.11.2009, 16:09
Titel:
|
 |
Hallo,
das wären 89.999.999.999 Iterationen... also quasi nicht machbar.
Meine Idee wäre in etwa so (Pseudo-Code) :
for a=1:9
for b=0:9
for c=0:9
for d=0:9
for e=0:9
for f=[1 3 7 9] %alle anderen sind durch 2 oder 5 teilbar
for g=0:9
zahl = a*1e10 + b*1e9 + c*1e8 + d*1e7 + e*1e6 + f*1e5 + g*1e4 + f*1e3 + e*1e2 + c*1e1 + f;
Damit sind es nur noch 3600000 Kombinationen.
Primzahltest: ich würde normal isprime vorschlagen, der läuft aber nur bis 2^32.
Dumme Frage: für was soll das denn gut sein??
Grüße,
Harald
|
|
|
BNI |
Themenstarter

Forum-Newbie
|
 |
Beiträge: 5
|
 |
|
 |
Anmeldedatum: 13.11.09
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 13.11.2009, 16:13
Titel:
|
 |
Hallo,
danke für die Antworten!
Ich möchte das Rätsel lösen, um damit einen Standort mittels Koordinaten zu bestimmen, das ganze nennt sich geocaching, ist einigen von euch sicher bekannt
schaut doch mal rein
http://www.geocaching.com/seek/cach.....bd-4d7b-bf03-0fcc0ddc0f25
scheint ja echt ziemlich kompliziert zu sein .. hm .. weitere Vorschläge?
mfg
|
|
|
BNI |
Themenstarter

Forum-Newbie
|
 |
Beiträge: 5
|
 |
|
 |
Anmeldedatum: 13.11.09
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 14.11.2009, 17:22
Titel:
|
 |
keine weiteren antworten?
|
|
|
Harald |

Forum-Meister
|
 |
Beiträge: 24.501
|
 |
|
 |
Anmeldedatum: 26.03.09
|
 |
|
 |
Wohnort: Nähe München
|
 |
|
 |
Version: ab 2017b
|
 |
|
|
 |
|
Verfasst am: 14.11.2009, 19:30
Titel:
|
 |
Hallo,
eine Anregung: MuPAD (kommt mit der Symbolic Math Toolbox) erlaubt es, mit ISPRIME auch größere Zahlen zu testen. Zusammen mit meinem vorherigen Vorschlag müsste das also gehen.
Grüße,
Harald
|
|
|
Andreas Goser |

Forum-Meister
|
 |
Beiträge: 3.654
|
 |
|
 |
Anmeldedatum: 04.12.08
|
 |
|
 |
Wohnort: Ismaning
|
 |
|
 |
Version: 1.0
|
 |
|
|
 |
|
Verfasst am: 16.11.2009, 13:35
Titel:
|
 |
Also ich kann jetzt das oben beschriebene Problem lösen. Allerdings dauert es ca. 1 Tag das durchzurechnen und ergibt weit über 100000 Ergebnisse. Daher vermute ich, dass es noch ein paar Randbedingungen mehr gibt, oder ein Fehler bei der Umformulierung geschehen ist.
Andreas
P.S. Die Methode für den Primzahltest von grossen Zahlen_
|
|
|
|
|
Einstellungen und Berechtigungen
|
|
Du kannst Beiträge in dieses Forum schreiben. Du kannst auf Beiträge in diesem Forum antworten. Du kannst deine Beiträge in diesem Forum nicht bearbeiten. Du kannst deine Beiträge in diesem Forum nicht löschen. Du kannst an Umfragen in diesem Forum nicht mitmachen. Du kannst Dateien in diesem Forum posten Du kannst Dateien in diesem Forum herunterladen
|
|
Impressum
| Nutzungsbedingungen
| Datenschutz
| FAQ
| RSS
Hosted by:
Copyright © 2007 - 2025
goMatlab.de | Dies ist keine offizielle Website der Firma The Mathworks
MATLAB, Simulink, Stateflow, Handle Graphics, Real-Time Workshop, SimBiology, SimHydraulics, SimEvents, and xPC TargetBox are registered trademarks and The MathWorks, the L-shaped membrane logo, and Embedded MATLAB are trademarks of The MathWorks, Inc.
|
|