... lautet der Ausruf mancher Programmierer, die aus Erfahrung noch 20 Fehlermeldungen erwartet hatten. Manchmal klappt´s ja doch!
Willkommen im 28. Kapitel der Algorithmen-Reihe!
... lautet der Ausruf mancher Programmierer, die aus Erfahrung noch 20 Fehlermeldungen erwartet hatten. Manchmal klappt´s ja doch!
Willkommen im 28. Kapitel der Algorithmen-Reihe!
Kleine Hiobsbotschaft: Mein Provider seit 27 Jahren, die privatisierte Österreichische Post & Telekom, seit dem Einstieg eines mexikanischen Multimillionärs "A1" genannt und offenbar auf Kapitalisten-Kurs, hat mir den mit privaten Member-Seiten verbundenen Webspace gekündigt, ohne dass sich am monatlichen Tarif etwas geändert hätte. Ich habe daher momentan keinen Webspace, um das elektronische Inhaltsverzeichnis zu den Algorithmen-Kapiteln I bis 27 samt dem Beamer-Schnellöffnungsprogramm bereitzustellen.
"Diese Schweinerei muss eine andere werden!" - Bin auf der Suche nach einem freundlichen Provider.
Gruss
Abt. Was wurde eigentlich aus ... ?
======================
... aus ASIMO, dem ersten humanoidalen Roboter und seinen spezialisierten Spießgesellen?
Interessantes Youtube-Link (engl.)
Abt. JaNeinDochOh-(JANDO)-Rätsel 1
==================================
Geg.: 1,2,2,3,3,3,4,4,4,4,...
Ges.: Arithmetischer Mittelwer der ersten 55 Terme (Terme sind durch Beistriche getrennt).
Abt. JANDO-2 ´Erstmalig´
================
Was ist das kleinste ganzzahlige X, bei dem SQRT(24*X) ganzzahlig wird?
Lösung zum JaNeinDochOh-(JANDO)-Rätsel 1
----------------------------------------
Geg.: 1,2,2,3,3,3,4,4,4,4,...
Ges.: Arithmetisches Mittel der ersten 55 Terme (Terme sind durch Beistriche getrennt).
Die Folge 1,2,2,3,3,3,4,4,4,4,... hat 1+2+3+4+...+(n-1)+n Terme.
Mittels des kleinen Gauß schauen wir, für welches n die 55 Terme zustandekommen:
n * (n+1) / 2 = 55
n^2 + n = 110, normalisiert:
n^2 + 1*n - 110 = 0
Mitternachtsformel:
n_1,2 = -p/2 +\- Sqrt((p/2)^2 - q )
Da uns nur positive n interessieren:
n = -1/2 + Sqrt( 1/4 - (-110)) = Sqrt(110.25)-0.5 = 10
Mit n = 10 hat obige Folge genau 55 Terme.
Damit können wir nun weiterarbeiten:
Da ein Durchschnittswert der ersten 55 Terme gefragt ist, müssen wir alle Elemente der Folge aufaddieren.
Die Folge wird somit zur "Reihe":
1 + 2+2 + 3+3+3 + 4+4+4+4 + ...
Das kann man auch schreiben als
1^2 + 2*2 + 3*3 + 4*4 + ... , bzw.
1^2 + 2^2 + 3^2 + 4^2 + ... bis + n^2
oder als Formel ausgedrückt:
SUMME(i=1..n, i^2)
Dafür aber gibt es (wie mittlerweile bekannt) auch eine elegante Formel:
SUMME(i=1..n, i^2) = n * (n+1) * (2*n+1) / 6
Mit n = 10, wie oben berechnet, ergibt sich eingesetzt:
10*11*21 / 6 = 5*11*21/3 = 5*11*7 = 35*11 = 385 als Summe.
Antwort: Das arithmetische Mittel der ersten 55 Terme dieser Folge ist 385 / 55 = 7
====================================================
Abt. Zu schweres Rätsel - gelöst per Programm
==============================
Ungelöst gebliebenes Rätsel eines Mathematik-Kopfrechenwettbewerbs; selbst compiliertes XProfan benötigt 2,5 min zur vollständigen Auflistung aller Lösungen. Das Rätsel:
Du erhältst 12 gleich große Holzplättchen mit den Ziffern 0 bis 9 sowie einem Malzeichen und einem "="-Zeichen darauf. Bilde aus allen Plättchen eine korrektes Produkt aus einer zweistelligen Zahl mal einer dreistelligen Zahl, die eine fünfstellige Zahl ergibt.
WindowTitle "Gegeben sei die Menge der 10 Ziffern: Welche Anordnungen xx * xxx = xxxxx gibt es?"
WindowStyle 24:cls $a0a044:Print "\n Berechnung läuft ... (ca. 4 min)\n"
Declare t$,t$[],n&,k&,j&,u&,v&,e%,z&,q$, tm&
e%=1:z&=0:q$=" ":font 2
t$="0 1 2 3 4 5 6 7 8 9"
t$=trim$(t$):t$=translate$(t$," "," "):case instr("|",t$):q$="|"
t$=translate$(t$," ","|"):t$[]=explode(t$,"|"):n&=SizeOf(t$[])
clearclip:tm&=&gettickcount
While e%:inc z&
if (val(t$[0]+t$[1])*val(t$[2]+t$[3]+t$[4]))=val(t$[5]+t$[6]+t$[7]+t$[8]+t$[9])
case t$[5]<>"0":print " "+t$[0]+t$[1],"*", t$[2]+t$[3]+t$[4],"=", t$[5]+t$[6]+t$[7]+t$[8]+t$[9]+" "
case t$[5]<>"0":putclip t$[0]+t$[1]+" * "+t$[2]+t$[3]+t$[4]+" = "+t$[5]+t$[6]+t$[7]+t$[8]+t$[9]+"\n"
endif
if n&<2:e%=0:break:endif
k&=n&-2:While t$[k&]>=t$[k&+1]:Dec k&:case k&<0:break:EndWhile
if k&<0:e%=0:break:endif
j&=n&-1:While t$[j&]<=t$[k&]:dec j&:EndWhile
t$=t$[k&]:t$[k&]=t$[j&]:t$[j&]=t$:u&=k&+1:v&=n&-1
:While u&<v&:t$=t$[u&]:t$[u&]=t$[v&]:t$[v&]=t$:inc u&:dec v&:EndWhile
EndWhile
tm&=&gettickcount-tm&
print "\n Alle in Zwischenablage! Rechendauer ";tm&,"ms"
waitinput
Alles anzeigen
Abt. Interessante Links
==============
Wie sich die Europäischen Geheimdienste organisiert haben: ChaosComputerClub-Vortrag
Auch nicht uninterssant: Elon Musk´s Feuerwerk beim Starship SN-9 Testflug vom 2.02.2021
SpaceX Starship SN-9 Test aus anderer Perspektive und mit IR-Kamera (2.02.2021, Boca Chica, Texas)
Fun-fact: Boca Chica = span. für ´Kleines Loch´
Abt. Schwerkrafttheorie ohne Dunkle Materie
============================
Schon wieder eine Weltbild-Änderung? Einem Vorschlag von Physiker Mordehai MILGROM (IL) zufolge kommt man durch ergänzende Terme bei galaxisgroßen Strukturen zu einer Schwerkraft-Theorie, die den Newtonschen Gesetzen bei Nichtrelativistischen Geschwindigkeiten weitestgehend entspricht. Seine MOND-Theorie (Modified Newtonian Dynamics) funktioniert folgenermaßen:
Aus F=m*a wird F=m*µ*a²/a0 ,
aus F=F*m1*m2/r² wird F=G*m1*m2/(µ*a*r²/a0)
wobei der Mittelwert µ=0.011 +/- 0.013 bisher nur mit Standardabweichung von Sigma=0.11 bestimmt wurde. Diese Theorie hat ihre Probleme, beispielsweise sagt sie eine Geschwindigkeit von Gravitationswellen deutlich unterhalb der Lichtgeschwindigkeit voraus (Durch die LIGO-Messungen widerlegt), andererseits behebt sie durch die saubere Unterscheidung von "träger Masse" von "Gravitativer Masse" einen Punkt, dessen Gleichheit auf unserer Erde schon früh die Physiker\innen verwunderte. Zurückgeführt wird das auf einen "Gravitationsfeld-Verdichtungseffekt" durch den Einfluss naher Galaxien - was nun an über 150 Galaxien nachgewiesen wurde!
Quelle: Youtube (engl.)
Lösung zu JANDO-2
----------------------
Aufgabe: Min(X) und Sqrt(24*X) sollen ganzzahlig sein.
Ansatz:
Für X=24 wäre die Ganzzahligkeit der Quadratwurzel garantiert.
Aber ist das auch das kleinstmögliche X?
Formulieren wir um: Sqrt(24*X)=a ==> 24*x = a^2
Das klappt, weil wenn a ganzzahlig ist, ist es auch a^2.
Da auch X ganzzahlig, gilt: X = a^2 / 24
Das bedeutet, 24 ist ein Teiler von a^2.
Sind vielleicht große Teiler von 24 auch Teiler von X ?
Wir testen:
X = 24/2 = 12: 24*12 = 288 ... keine Quadratzahl, da 17^2=289
X = 24/3 = 8: 24 * 8 = 192 ... nö, auch nicht,13^2=169, 14^2=196
X = 24/4 = 6: 24 * 6 = 144 ... HA! Das ist doch 12 x 12, eine QUADRATZAHL!
Antwort: Das kleinstmögliche X ist X = 6
---------------------------------------------
Abt. Interessante Links
==============
Wer sich per "Dynamischer Zeitablauf in Video-Form" über die Marktanteile der TOP-Firmen im Bereich Computer, Mobilphone, Laptops, Spielekonsolen seit den Achzigerjahren bis 2020 informieren lassen will, ist im Youtube-Kanal von Captain Gizmo goldrichtig. Musikuntermalung inklusive, und spannend wie ein Pferderennen: LINK
Ähnliches Konzept über die jeweils zeitgenössische Medienlandschaft: DataIsBeautiful LINK
Abt. Zahlentheorie: Quadratzahlen
======================
Quadrate von ganzen Zahlen sind bekanntlich immer positive ganze Zahlen. Weniger bekannt ist, daß die QuersummenQuersumme - betrieben bis zu einer einstelligen Ziffer (Die sog. Ziffernwurzel) - bei Quadratzahlen nie bestimmte Ziffern annehmen kann. Man kann dadurch selbst an vielstelligen Zahlen (zB solche, die selbst den Windows-Desktoptaschenrechner überfordern würden) manchmal sofort erkennen, daß sie keine Quadratzahlen sind. Das nachstehende Programm berechnet diese "verbotenen" Ziffernwurzeln.
Weitere Details zu Quadratzahlen finden sich HIER.
WindowTitle " Check eines Quadratzahl-Vortests"
WindowStyle 24
declare ww$,zw&,z&[9]
z&[]=&index
cls $FFA000
print "\n Überprüfung läuft!"
whileloop 10000
ww$=str$(sqr(&Loop))
Repeat
zw&=0
whileloop len(ww$)
zw&=zw&+val(mid$(ww$,&Loop,1))
endwhile
ww$=str$(zw&)
until len(ww$)=1
z&[zw&]=0:print zw&;
endwhile
cls $FFFF00
Print "\n Folgende Ziffernwurzeln (Ziffernsummensummensummen..)"
print " kommen in Quadratzahlen nie vor (Geprüft bis 10000²):\n\n ";
font 2:whileloop 0,9:case z&[&Loop]:print z&[&Loop],:endwhile
beep:waitinput
'1524157875019052
Alles anzeigen
Abt. Zahlentheorie 2: Dreieckszahlen
=======================
Im Gegensatz zu Quadratzahlen folgen Dreiecksrzahlen der Gesetzmäßigkeit Z = n*(n+1)/2 - eine Formel, die der kleine Gauß in der Volksschule bereits kannte (... weshalb sie auch Gaußzahlen genannt werden - bitte nicht zu verwechseln mit Gaußschen Zahlen in der komplexen gaußschen Zahlenebene!). Genau wie bei Quadratzahlen gibt es hier auch wieder "verbotene" Ziffernwurzeln. Ein gegenüber oben etwas modifiziertes Programm berechnet diese bei Dreieckszahlen nie vorkommenden Quersummenquersummen.
Gruss
P.S.: Weitere Details HIER.
WindowTitle " Check eines Gausszahl-Vortests"
WindowStyle 24
declare ww$,zw&,z&[9]
z&[]=&index
cls $FFA000
print "\n Überprüfung läuft!"
whileloop 10000
ww$=str$(int(&Loop*(&Loop+1)*0.5))
Repeat
zw&=0
whileloop len(ww$)
zw&=zw&+val(mid$(ww$,&Loop,1))
endwhile
ww$=str$(zw&)
until len(ww$)=1
z&[zw&]=0:print zw&;
endwhile
cls $FFFF00
Print "\n Folgende Ziffernwurzeln (Ziffernsummensummensummen...ziffer)"
print " kommen in Gausszahlen nie vor (Geprüft bis 10000²/2):\n\n ";
font 2:whileloop 0,9:case z&[&Loop]:print z&[&Loop],:endwhile
beep:waitinput
Alles anzeigen
Abt. JANDO-03
==========
Wächter Joe soll alle 17 Gänge eines Einkaufszentrums überwachen. Dazu fährt er am Abend mit der Straßenbahn ins Einkaufszentrum, begeht alle Gänge, und am Morgen holt ihn seine Frau an einem beliebigen Eingang wieder ab. Das ebenerdig gebaute Einkaufszentrum hat 12 Geschäfte (A bis L), die durch Gänge und Quergänge verbunden sind. Der Floorplan sieht so aus:
Natürlich will er dabei so wenig wie möglich wandern - Schuhe sind schließlich teuer! Joe ist klar, dass er nicht umhin kommt, manche Gänge zweimal zu begehen. Die Wege zwischen den Geschäften sind alle gleich lang. Alle Wege müssen begangen werden, was durch Magnetkarten kontrolliert wird. Joe kann an einem beliebigen Punkt beginnen und an einem beliebigen Eingang abgeholt werden. Aufgabe: Finde einen kürzesten Weg, etwa durch Angabe der Reihenfolge der Geschäfte.
Abt. Kapitelname
===========
Link
Abt. JANDO-03
==========
My Way:
>BCFILKJGDABE FIHGDE HK>
2 doppelte Wege
Rabe
Bravo, eine gültige Optimallösung, Herr von Rabe!
Abt. JANDO-04
==========
Was kommt raus, wenn man 50 % durch 1/2 dividiert?
Aiiiinfach…
Antwort: 1 bzw 100%
: 1/2 = mal 2
(Durch Bruch teilen = mit Kehrwert multiplizieren; 1/1 : 1/2 = 1/1 * 2/1 = 1 * 2 = 2)
50% = 1/2
1/2 * 2 = 1 = 100%
Rabe
Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!