Zahlenreihe gegeben, suche Folge

Neue Frage »

THE_Scientist Auf diesen Beitrag antworten »
Zahlenreihe gegeben, suche Folge
Meine Frage:
Ich habe eine Zahlenfolge gegeben und brauche eine Function, die sie beschreibt:

n Fx(n) Fy(n)
0 0 0
1 0 1
2 1 1
3 1 0
4 1 -1
5 0 -1
6 -1 -1
7 -1 0
8 -1 1
9 -1 2
10 0 2
11 1 2
12 2 2
13 2 1
14 2 0
15 2 -1
16 2 -2
17 1 -2
18 0 -2
19 -1 -2
20 -2 -2
21 -2 -1
22 -2 0
23 -2 1
24 -2 2
25 -2 3
26 -1 3
27 0 3
28 1 3
29 2 3
30 3 3
. . .
. . .
. . .



Meine Ideen:
Ich habe es wirklich lange versucht und komme auf keine Lösung.
Vielen Dank für die Hilfe
Luscinia Auf diesen Beitrag antworten »

Huhu Wink

für sowas gibt es OEIS. Schau mal hier:

https://oeis.org/A268038
und
https://oeis.org/A174344

Die erste Folge scheint bei OEIS gespiegelt zu sein hinsichtlich des Vorzeichens.
Luscinia Auf diesen Beitrag antworten »

Oder anders: zeichne dir die Punkte mal nacheinander in ein Koordinatensystem ein, dann siehst du schon, wo der Hase hinläuft.

P.S. irgendwie konnte ich meinen Beitrag nicht editieren.
THE_Scientist Auf diesen Beitrag antworten »
Zahlenreihe gegeben, suche Folge
Danke für die Schnelle antwort, die Webseite hat schonmal sehr geholfen. Ich brauche die Funktion um zwei motoren zu steuern die eine rechteckige Spirale abfahren sollen. Daher funktioniert das mit dem Aufzeichnen nicht, ich brauche eine Formel, die ich in einer Schleife ansprechen kann.

Die Formel kam auf der Webseite vor und gibt mir die zahlen, die ich möchte.

a(n) = a(n-1) + sin(mod(floor(sqrt(4*(n-2)+1)),4)*Pi/2)

Ich verstehe allerdings nicht genau was mod und floor für funktionen sind. Gibt es da keine einfachere Funktion die mir das Ergebniss liefert?
Luscinia Auf diesen Beitrag antworten »

Ich würde stark davon ausgehen, dass das, was da angegeben ist, schon die einfachst-mögliche Formel ist, die sich geschlossen angeben lässt.

Wenn du das ganze allerdings programmieren willst, solltest du wegen Rundungsfehlern eher eine Fallunterscheidung machen und den Sinus und den Pi-Term weglassen. Der ganze Sinusterm kann nur die Werte -1,0,1 annehmen, je nachdem, was das Argument ist. Also den Sinus weglassen und nur das Argument ansehen:



mod(x, 4) bestimmt den Rest der Devision von x durch 4. In C etwa wäre das das gleiche, wie x % 4.
Floor rundet ab. Ist der Rest 0, soll 0 herauskommen, bei 1 soll 1 rauskommen, bei 2 soll 0 rauskommen, bei 3 soll -1 rauskommen, das kannst du wie gesagt perfekt mit Fallunterscheidung machen.
HAL 9000 Auf diesen Beitrag antworten »

In den verlinkten OEIS-Links fällt das Stichwort, ich will es nur noch mal besonders hervorheben:

Offenbar handelt es sich hier um eine Ulam-Spirale.

Wäre ein passender Threadtitel: Explizite Koordinatenformeln für die Ulam-Spirale Wink
 
 
Neue Frage »
Antworten »



Verwandte Themen

Die Beliebtesten »
Die Größten »
Die Neuesten »