Home › Forum › Lösungen / Solutions 2021 › Aufgabe 23 / Challenge 23 › Lösung Augabe 23
- This topic has 12 replies, 10 voices, and was last updated 2 years, 3 months ago by Anonymous.
-
AuthorPosts
-
January 1, 2022 at 10:54 #15199Anonymous
Die Idee der Augabe ist schön. Die Verbindungsgeraden schneiden die x-Achse an der Stelle m*n. Da m,n>1, sind die zulässigen Zahlen sämtlich zusammengesetzte Zahlen. Die gesuchte Zahl muss prim sein. Die einzige Primzahl ist 2.517.849.199.
Die Kritik an der Aufgabe war die Auswahl der Lösungsmöglichkeiten. Hier hatte man die Nichtprimzahlen auf solche mit kleinen Faktoren beschränken sollen. Bei drei Zahlen gelang der Nachweis nur mit Computerhilfe, da sie selbst aus 5-stelligen Primfaktoren bestehen.
January 1, 2022 at 17:12 #15280AnonymousJa, dies fand ich sehr merkwürdig. Die naheliegende Lösung war eine brut-force Zerlegung der Antworten in Prim-Faktoren. Zum Glück gibt es im Internet eine (deutschsprachige) Seite, die für die Primfaktorzerlegung sehr großer Zahlen einen Webservice anbietet…
Angeblich gibt es ja eine noch naheliegendere, einfache Lösung, die ohne brut-force auskommt. Ich bleibe gespannt.
January 1, 2022 at 18:57 #15334AnonymousWenn man für beliebiges n und m (natürliche Zahlen größer 1) die Verbindungsgerade aufstellt und dann deren Nullstelle bestimmt, dann gilt: x = n * m (mit m >=n) [Es genügt wegen der Symmetrie, die Geraden mit positiver Steigung zu betrachten].
Somit werden alle natürlichen Zahlen getroffen, die keine Primzahlen sind. Gesucht ist also die einzige Primzahl unter den genannten 10 Zahlen zu finden.
Jetzt kann man auf einen Blick, ohne Rechnung, die Zahlen von Antwort 4, 7 und 8 sofort ausschließen, da sie jeweils gerade sind.
Mithilfe der Quersummenberechnung fällt leider keine weitere Zahl raus.
Ab jetzt braucht man den Rechner. Leider liefert die PFZ unseres kleinen CASIOs (Frac) nur Primfaktoren die max. dreistellig sind und man kann nur Zahlen die maximal 10 stellig sind untersuchen.
So konnte ich mithilfe des WTR noch die Zahlen der Antworten 6 (Faktor 59) und 9 (Faktor 23) ausschließen.
Dann habe ich im Netz nach einem “Primzahlrechner” gesucht und bin beim guten alten Walter Fendt fündig geworden (bis 10^12).
Zahl 1 ist: 10 091 mal 99 989
Zahl 3 ist: 54 577 mal 64 081
Zahl 5 ist: 74 597 mal 77 237
Zahl 10 ist: 43 mal 103 mal 23 806 057
Übrig bleibt also die Zahl von Antwort 2, die ist laut Walter Fendts Rechner eine Primzahl.
Das war echt schade, dass diese eigentlich tolle Aufgabe (sie gehört von der Idee zu meinen TOP 5 dieses Jahr) leider NUR mit einem Rechner zu lösen war. Ich bin (vielleicht auch auf Grund meines Alters) eher ein Fan von Stift und Papier (zumindest beim Mathekalender).
January 1, 2022 at 20:00 #15364Anonymous>> Fan von Stift und Papier
…gibt’s kein Tafelwerk für „Alle bis zu 12stelligen Primzahlen“? 😉
January 1, 2022 at 21:44 #15394AnonymousIch fand diese Aufgabe auch richtig nett. Ich habe für die Primzahlen dann aber auch ein Onlineprogramm genutzt. Der Weg vorher war wirklich schön, vor allem für SuS.
https://www.dropbox.com/t/pDobWlDGyyLB3f8LJanuary 1, 2022 at 23:50 #15445AnonymousHallo Raaadi, die gibt es leider meines Wissens nicht, aber etwas anderes “lustiges” gibt es in manchem Tafelwerken (z.B. H.Sieber Mathematische Tafeln, Ernst Klett Verlag, Auflage 1974)
Auf Seite 112 findet man die 12- stelligen Zehnerlogarithmen der ersten 30 Primzahlen:z.B. log(37) = ca. 1,568 201 724 067
Sheldon hätte eine Freude dies zu lesen.
January 2, 2022 at 19:38 #15589AnonymousDie notwendige Eigenschaft als zusammengesetzte Zahl für die Nullstellen war schnell erkannt, danach benötigte ich für einige der Zahlen den universellen Rechenknecht: https://www.wolframalpha.com/input/?i=Prime+factorization+2517849199
January 2, 2022 at 20:50 #15610AnonymousIch fand auch folgende Seite hilfreich: http://factordb.com/index.php?query=2517849199
January 3, 2022 at 00:52 #15649Anonymous>> die 12-stelligen Zehnerlogarithmen der ersten 30 Primzahlen
Damit kann man schon sehr schnell die Zehnerlogarithmen von Zahlen berechnen, die nur diese 30 Primzahlen als Primfaktoren haben. Darüber hinaus ist die Primfaktorzerlegung wohl aufwändiger gewesen als das manuelle Berechnen des Logarithmus…
Sheldon hätte seine wahre Freude gehabt, wenn Antwort 2 „2.147.483.647“ gewesen wäre; dieser Zahl sieht man doch direkt an, dass es eine Primzahl ist!
January 3, 2022 at 06:33 #15652AnonymousSheldon hätte seine wahre Freude gehabt, wenn Antwort 2 „2.147.483.647“
Das glaube ich auch, hehe.
Und MatheJürgen hätte als weitere Antwortmöglickeit “4.398.046.511.103” sicher auch gut gefunden.
January 3, 2022 at 10:25 #15655AnonymousMan kann sich auch einfach ein Programm schreiben ^^
package Task23; import java.util.ArrayList; import java.util.List; public class Task23 { public static void main(String[] args) { long starttime = System.currentTimeMillis(); List<Integer> Primes = new ArrayList<>(); Primes.add(2); List<Long> Numbers = new ArrayList<>(); Numbers.add(1008988999L); Numbers.add(2517849199L); Numbers.add(3497348737L); Numbers.add(4142454642L); Numbers.add(5761648489L); Numbers.add(6556849301L); Numbers.add(7481075262L); Numbers.add(8991101800L); Numbers.add(9768956129L); Numbers.add(10567846453L); int end = (int) Math.floor(Math.sqrt(Numbers.get(Numbers.size()-1))); for (int i = 3; i <= end; i++) { double limit = Math.sqrt(i); if(prime(i, 0, Primes, limit)) Primes.add(i); } for (int n = 0; n < Numbers.size(); n++) { System.out.print(Numbers.get(n)+" = "); for (int i = 0; i < Primes.size(); i++) { if (Numbers.get(n)%Primes.get(i) == 0) { Numbers.set(n, Numbers.get(n)/Primes.get(i)); if (Numbers.get(n) == 1) System.out.print(Primes.get(i)+"\n"); else System.out.print(Primes.get(i)+","); i--; } } if (Numbers.get(n) > 1) System.out.print(Numbers.get(n)+"\n"); } long stoptime = System.currentTimeMillis(); System.out.println(stoptime-starttime+"[ms], "+Primes.size()+"[primes]"); } public static boolean prime(int num, int pos, List<Integer> Primes, double limit) { if (Primes.get(pos) > limit) return true; if (num % Primes.get(pos) == 0) return false; pos++; return prime(num, pos, Primes, limit); } }
Und liefert:
1008988999 = 10091,99989
2517849199 = 2517849199
3497348737 = 54577,64081
4142454642 = 2,3,3,3,73,1050851
5761648489 = 74597,77237
6556849301 = 59,111133039
7481075262 = 2,3,109,11438953
8991101800 = 2,2,2,5,5,44955509
9768956129 = 23,193,2200711
10567846453 = 43,103,2386057
30[ms], 9839[primes]January 3, 2022 at 12:54 #15658AnonymousJa die 4.398.046.511.103 wäre eine mit Stift und Papier besser zugängliche Antwort gewesen.
Wobei mir die 1 398 046 511 103 noch lieber gewesen wäre und nicht nur weil die Quersumme “schön” ist, sondern auch deren PFZ.January 3, 2022 at 13:03 #15661AnonymousOder man nutzt unter Linux das Standard shell-Programm factor (https://www.gnu.org/software/coreutils/factor).
Wenn man zu faul zum Zahlen eintippen ist, kann man auch das dem PC überlassen:
curl https://www.mathekalender.de/wp/de/kalender/aufgaben/aufgabe-23/ | grep -Pio "\d+\.[\.\d]{10}\d" | sed -e "s/\.//g" | factor | nl
liefert:
% Total % Received % Xferd Average Speed Time Time Time Current Dload Upload Total Spent Left Speed 100 60574 0 60574 0 0 181k 0 --:--:-- --:--:-- --:--:-- 181k 1 1008988999: 10091 99989 2 2517849199: 2517849199 3 3497348737: 54577 64081 4 4142454642: 2 3 3 3 73 1050851 5 5761648489: 74597 77237 6 6556849301: 59 111133039 7 7481075262: 2 3 109 11438953 8 8991101800: 2 2 2 5 5 44955509 9 9768956129: 23 193 2200711 10 10567846453: 43 103 2386057
-
AuthorPosts
- The topic ‘Lösung Augabe 23’ is closed to new replies.