Wie kann man ein Programm schreiben das Zahlenmuster erkennt?

... komplette Frage anzeigen

2 Antworten

Das Wort "Muster" ist schwammig in der wissenschaftlichen Sprache.

Ich vermute Du meinst die "Erkennung eines Algorithmus zu einer gegebenen endlich großen Zahlenfolge".

Antwort: zu jeder endlich großen Zahlenfolge gibt es unendlich viele mögliche Algorithmen (Bildungsgesetze, Formeln).

Aber fangen wir mit dem einfachsten, immer lösbaren an:

§1: Interpolationspolynom:

http://www.gerdlamprecht.de/Mittelwerte.html

oben eine Zahlenfolge eingeben (Komma getrennt)

und ganz unten steht das fertige Polynom.

§2: Nachkommastellen irrationaler Zahlen: da sie unendlich viele haben, ist jede Kombination ("Muster") garantiert enthalten.

http://pi.gerdlamprecht.de/

biete ich die interessantesten an...

§3: nichtlineare Regression: nimmt man für physikalische Messreihen, wo man grob den Verlauf (oft Exponentialfunktion) grob vermutet.

Aus einer Liste von bekannten Funktionen sucht man sich die Parameter so, dass der Gesamt-Fehler minimal wird.

§4: Pseudo-Zufallsgenerator: er erzeugt (meist per Iteration) Zahlenkolonnen, hat aber eine endliche Periodendauer (kann so groß sein, dass PC über 100 Jahre brauchen würde). Stimmen die gesuchten Ziffern, muss man sich nur die aktuellen Parameter merken und als Startparameter einsetzen.

Könnte stundenlang so weiterschreiben...

Unter http://www.gerdlamprecht.de/Zahlenfolgen.html

kann man sich per Iterationsrechner zu vielen Folgen je etwa 3 unterschiedliche Lösungen online vorrechnen lassen.

Das Schreiben eines Computer-Programmes zum Algorithmus, ist dann reine Fleißarbeit (Anpassung an die jeweilige Sprache -> deshalb sind Mathe und Informatik untrennbar miteinander verbunden).

Antwort bewerten Vielen Dank für Deine Bewertung

Das was du wahrscheinlich suchst ist eine Heuristik. Aber du wirst dein Problem schon weiter eingrenzen müssen, um eine Lösung dafür zu finden.

https://de.wikipedia.org/wiki/Heuristik

Außerdem musst du natürlich Programmieren können und eine passende Entwicklungsumgebung haben.

Antwort bewerten Vielen Dank für Deine Bewertung