Mathematik online lernen im Mathe-Forum. Nachhilfe online
Startseite » Forum » Formel bzw. Algorithmus aus Matrix ableiten

Formel bzw. Algorithmus aus Matrix ableiten

Universität / Fachhochschule

Tags: Algorithmus, Excel, Excelformel, Formel aufstellen, Matrix, Zahlenfolgen

 
Antworten Neue Frage stellen Im Forum suchen
Neue Frage
feige73e

feige73e aktiv_icon

15:07 Uhr, 11.01.2019

Antworten
Hallo OnlineMathe Community,

es soll aus einer Matrix (siehe Bild) eine Formel bzw. folgend daraus ein Algorithmus abgeleitet werdem, mit dem sich jeder beliebige Wert der Matrix bestimmen lässt.

Konstante: Intervall i=4 (theoretisch funktioniert es mit jedem beliebigen Intervall von 2 bis 128)

Es gibt einen Baum, dessen Knoten in folgender Reihenfolge besucht werden sollen:

Für jeden Knoten, muss die Schrittnummer ermittelt werden können. Umgekehrt muss aus der Schrittnummer, die Position im Baum ermittel werden können.

Die Matrix ist folgendermaßen aufgebaut:
In der ersten Zeile 0 wird von 0 in ganzen Zahlen aufwärts gezählt, wobei nach jedem Intervall (4 Spalten) die nächst höhere ganze Zahl in nächste Zeile geschrieben wird.
Zu Beginn, benötige ich die 1 in Zeile 1 Spalte 0, um das erste Intervall der Zeile 0 "vervollständigen" zu können.
Immer, wenn ein Intervall in Zeile 0 "voll" ist, wird die nächst höhere Zahl in die darunterliegende Zeile ganz links geschrieben, bevor das nächste Intervall in Zeile 0 fortgesetzt wird.
Ist das Intervall der darunterliegenden Zeile "voll", wird die nächst höhere Zahl wiederum in die darunterliegende Zeile geschrieben, danach die nächst höhere Zahl in die darüberliebende Zeile, bevor ein ganzes Intervall in Zeile 0 geschrieben wird. Dies wiederholt sich, bis man wieder in Zeile 0 weiterzählen kann.

Es ist mir bereits gelungen, die Formel für die Spalte 0 aufzustellen. Die Formel soll jedoch letztendlich alle Werte der Matrix auslesen können und muss daher auch die x Komponente (horizontal) enthalten und daher w[i](x,y)=... lauten.

Hier ist die Formel für Spalte 0:

w[i](0,y)=iy-1i-1

Das Intervall i beträgt in diesem Beispiel wie bereits erwähnt 4. Wenn ich nun in der obigen Formel für die Zeilennummer y die entsprechenden Werte eintage, komme ich genau auf die Werte der Spalte 0 der Matrix. Die Formel ist in Spalte B der Matrix in der Excel Datei bereits eingesetzt.

Mir gelingt es jedoch nicht, die horizontale Dimension x einzubauen, sodass ich jeden beliebigen Wert berechnen kann.

Es wäre mir sehr geholfen, wenn jemand die Lösung zu diesem Problem findet.

Danke schonmal im Voraus!

LG
feige73e





Index_Matrix

Für alle, die mir helfen möchten (automatisch von OnlineMathe generiert):
"Ich möchte die Lösung in Zusammenarbeit mit anderen erstellen."
Hierzu passend bei OnlineMathe:
Mitternachtsformel

Online-Übungen (Übungsaufgaben) bei unterricht.de:
 
Online-Nachhilfe in Mathematik
Neue Frage
feige73e

feige73e aktiv_icon

15:10 Uhr, 11.01.2019

Antworten
Hier ist außerdem der Link zur Excel Datei, falls dies bei der Lösungsfindung hilft:

1drv.ms/x/s!ApyVZ5JjWqZPg9RGpLpjaduFWGXRqQ
Antwort
maxsymca

maxsymca

15:43 Uhr, 11.01.2019

Antworten
A weng verwirrende und widersprüchliche Angaben:

>In der ersten Zeile 0 wird von 0 in ganzen Zahlen aufwärts gezählt, wobei nach jedem
>Intervall (4 Spalten) die nächst höhere ganze Zahl in nächste Zeile geschrieben wird.

Wie passt dazu
0:0234
1:
2:5
Wenn ich von 0 aufwärts zähle dann kommt 0123 zustande und die 4 nach C4. An Deinen Intervallgrenzen kommt es zu ganz unterschiedlichen "Löchern" was nicht kompatibel ist zu Deiner Aussage
>Immer, wenn ein Intervall in Zeile 0 "voll" ist, wird die nächst höhere Zahl in die
>darunterliegende Zeile ganz links geschrieben, bevor das nächste Intervall in Zeile 0
>fortgesetzt wird.

Soll das für beliebige i funktionieren oder nur für ein bestimmtes. Im ersten Fall würd ich über VBA nachdenken...
feige73e

feige73e aktiv_icon

16:53 Uhr, 11.01.2019

Antworten
Eine Bedingung der Matrix / des Baums ist, dass in der nächsten Zeile immer ein Wert stehen MUSS, um das obere Intervall zu vervollständigen.

Daher steht unter der 0 eine 1.

Die Vorgehensweise ist folgendermaßen:

Ich trage die 0 in Zeile 0 Spalte 0 ein. Nun darf ich aber in Zeile 0 nicht weiterzählen, weil in Zeile 1 kein Wert steht, daher trage ich in Zeile 1 Spalte 0 die 1 ein. Jetzt kann ich weiter zählen.

In Zeile 0 ist das Intervall bei 4 vollständig, und es bezieht sich bereits eine Zahl (nämlich die 1 in Zeile 1) auf das obige Intervall. Daher trage ich in Zeile 2 die 5 ein. Um das 2. Intervall in Zeile 0 befüllen zu können, muss ich erst eine Referenz in der darunterliegenden Zeile eintragen, daher trage ich die 6 in Zeile 1 Spalte 1 ein. Jetzt kann ich im 2. Intervall weiterzählen.

Ich hoffe, dass es jetzt verständlicher ist.

>Soll das für beliebige i funktionieren oder nur für ein bestimmtes. Im ersten Fall würd ich >über VBA nachdenken...

Es soll für jedes beliebige i funktionieren. Die Formel wie sie jetzt besteht, funktioniert auch für jedes beliebige i, aber leider nur in Spalte 0...
Antwort
maxsymca

maxsymca

17:07 Uhr, 11.01.2019

Antworten
Hm,

reden wir über die XL-Tabelle weiter?
Schreib einfach unten in der B-Spalte weiter.
Ich glaub nicht, dass das per Formel geht - Du hast Abhängigkeiten von Spalte, Zeile, Modulo i, und von der ersten Spalte...
feige73e

feige73e aktiv_icon

17:26 Uhr, 11.01.2019

Antworten
>reden wir über die XL-Tabelle weiter?

Ja, es geht weiterhin um die Excel Tabelle.

Das Ziel ist nicht die Spalte B weiterzubefüllen, sondern immer Zeile 0.
Jedoch benötige ich für jedes Intervall in Zeile 0 genau einen Referenzwert in der darunterliegenden Zeile.

Wenn sich eine Formel für die erste Spalte herleiten lässt, dann muss es doch auch möglich sein, alle anderen Werte der Matrix zu bestimmen, immerhin ergeben sich die Werte in Spalte 0 aus den restlichen Werten der Matrix...

Das Modulo i kann in diesem Beispiel als Konstante angenommen werden und später durch jede beliebige Zahl ersetzt werden.
Frage beantwortet
feige73e

feige73e aktiv_icon

11:23 Uhr, 14.01.2019

Antworten
Liebe onlinemathe Comunnity!

Ich habe alle relevanten Antworten in folgendes Forum übertragen, damit ein gemeinsamer Thread in einem Forum statt in 4 verschiedenen ist. Von nun an würde ich mich freuen wenn wir weiterhin an dem Problem auf in folgendem Thread arbeiten können!

matheplanet.com/default3.html?topic=239694=5103

Ich bin sehr dankbar für jeden Hinweis der zu einer Lösung führen würde!

LG

feige73e
Antwort
maxsymca

maxsymca

14:02 Uhr, 15.01.2019

Antworten
Adenauer: "Wat konnense dajechen haben, dass ich von Tach zu Tach klücher werde"

Der Tabellenaufbau sieht doch annerst aus, als beschrieben. Damit eröffnen sich Möglichkeiten die erste Zeile zu berechnen und von der aus die anderen Zeilen zu bedienen. Ich bin zuerst davon ausgegangen von einem Knoten die Tabellenposition zu berechnen - was formeltechnisch nicht umzusetzen ist. Annerst rum funktioniert es für das 4er Intervall entsprechend der Vorlage...
Bspl===>mathelonge
Frage beantwortet
feige73e

feige73e aktiv_icon

11:57 Uhr, 17.01.2019

Antworten
Ich habe einen Ansatz für die Lösung gefunden, und zwar hat der Baum den ich konstruiere sogar einen Namen, er wird nach der Regel "depth-first in-order enumeration" gebildet.

math.stackexchange.com/questions/1670012/determine-depth-of-node-in-perfect-binary-tree-with-depth-first-in-order-enumera

stackoverflow.com/questions/30013591/binary-tree-find-position-in-inorder-traversal

Ich denke, die einzelnen Zellen lassen sich per Formel nicht definieren, sondern nur rekursiv.

Falls jemand dennoch eine Formel findet, lasst es mich bitte wissen :-)