|
|
2 Stellen/Indices eines Vektors miteinander addieren |
|
Ristrafil |
Forum-Anfänger
|
|
Beiträge: 32
|
|
|
|
Anmeldedatum: 03.12.20
|
|
|
|
Wohnort: ---
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 17.02.2021, 12:32
Titel: 2 Stellen/Indices eines Vektors miteinander addieren
|
|
Hallo zusammen,
hier ist mein kleines Anliegen. Vielen dank für eure Hilfe und Ratschläge.
Ich habe eine A: Jetzt möchte ich diese anders darstellen zu einer Matrix B. Diese Matrix B soll - je Zeile- 2 indices miteinander addieren, wobei bei der addition der gespeicherte Wert der letzten Addition verwendet werden soll. ABER die zahl an der ersten stelle bleibt stehen. Das unten angegebene Beispiel sollte die Logik eig. gut erklären
z.B.
A = [ 2 4 5 4; 1 2 3 4] --> B = [ 2 6 11 15; 1 3 6 10]
Wie kommt die erste Zeile aus der Matrix B beispielsweise zustande?
1 Stelle: Zahl bleibt stehen !!
2 Stelle: 1 + 2 = 3
3 Stelle: 3 + 3 = 6
4 Stelle: 6 + 4 = 10
Vielen Dank für eure Hilfe
LG
Ristrafil
|
|
|
|
|
Mmmartina |
Forum-Meister
|
|
Beiträge: 745
|
|
|
|
Anmeldedatum: 30.10.12
|
|
|
|
Wohnort: hier
|
|
|
|
Version: R2020a
|
|
|
|
|
|
Verfasst am: 17.02.2021, 12:51
Titel:
|
|
Gibt es irgendwelche Vorgaben, wie es zu lösen ist?
Mit Schleifen, Zuweisung über Indexe oder nur ganz doof und langweilig cumsum?
_________________
LG
Martina
"Wenn wir bedenken, daß wir alle verrückt sind, ist das Leben erklärt." (Mark Twain))
|
|
|
Ristrafil |
Themenstarter
Forum-Anfänger
|
|
Beiträge: 32
|
|
|
|
Anmeldedatum: 03.12.20
|
|
|
|
Wohnort: ---
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 17.02.2021, 12:54
Titel:
|
|
Hallo Martina,
es gibt keine Vorgaben wie es gelöst wird.
Hauptsache die matrix wird umgewandelt
dankeschön
lg ristrafil
|
|
|
Ristrafil |
Themenstarter
Forum-Anfänger
|
|
Beiträge: 32
|
|
|
|
Anmeldedatum: 03.12.20
|
|
|
|
Wohnort: ---
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 17.02.2021, 12:56
Titel:
|
|
ok passt mit cumsum geht das ja easy....
vielen dank martina
|
|
|
Mmmartina |
Forum-Meister
|
|
Beiträge: 745
|
|
|
|
Anmeldedatum: 30.10.12
|
|
|
|
Wohnort: hier
|
|
|
|
Version: R2020a
|
|
|
|
|
|
Verfasst am: 17.02.2021, 12:56
Titel:
|
|
Ristrafil hat Folgendes geschrieben: |
ok passt mit cumsum geht das ja easy....
vielen dank martina |
deshalb schrieb ich ja doof und langweilig!
_________________
LG
Martina
"Wenn wir bedenken, daß wir alle verrückt sind, ist das Leben erklärt." (Mark Twain))
|
|
|
Ristrafil |
Themenstarter
Forum-Anfänger
|
|
Beiträge: 32
|
|
|
|
Anmeldedatum: 03.12.20
|
|
|
|
Wohnort: ---
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 17.02.2021, 13:27
Titel:
|
|
So ich hab zu dem Thema nochmal ne zusätzliche frage - sorry
wenn wir das beispiel von vorhin betrachten, bei dem die Matrix B das Ergebnis ist nach dem cumsum-Befehl.
A = [ 2 4 5 4; 1 2 3 4] --> B = [ 2 6 11 15; 1 3 6 10]
JETZT will ich das aber duplizieren im folgendem Sinne. ich betrachte die 1 Zeile aus B, welche 4 zahlen hat: Ergebniss nach "duplikation" ist Matrix C.
C = [ 2 6 11 15 17 23 34 51]
Die 1 Zeile hat jetzt 8 Zahlen, wobei die 4 zusätzlichen Zahlen durch Addition entstanden sind.
15 +2 = 17
17+6 = 23
23+ 11 = 34
34+15 = 51
ich hoffe ich habe es verständlich ausgedrückt
danke
lg ristrafil
|
|
|
Ristrafil |
Themenstarter
Forum-Anfänger
|
|
Beiträge: 32
|
|
|
|
Anmeldedatum: 03.12.20
|
|
|
|
Wohnort: ---
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 17.02.2021, 13:30
Titel:
|
|
und ich möchte das quasi in jeder zeile meiner matrix beliebig oft machen...
wobei die zahlen die ich zur addition nehme, bei jedem duplikationsschritt sind immer die aus dem cumsum-befehl
in dem beispiel eben immer: +2 +6 +11 +16
lg ristrafil
|
|
|
Ristrafil |
Themenstarter
Forum-Anfänger
|
|
Beiträge: 32
|
|
|
|
Anmeldedatum: 03.12.20
|
|
|
|
Wohnort: ---
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 17.02.2021, 14:35
Titel:
|
|
das ist bis jetzt mein Ansatz:
als FALSCHES ergebniss bekomme ich
c = 2 6 11 15 17 23 34 49
c = 2 6 11 49 51 57 68 117
RICHTIGES ERgebniss wäre - 1 Zeile!
c = 2 6 11 15 17 23 34 49 51 57 68 117
|
|
|
Mmmartina |
Forum-Meister
|
|
Beiträge: 745
|
|
|
|
Anmeldedatum: 30.10.12
|
|
|
|
Wohnort: hier
|
|
|
|
Version: R2020a
|
|
|
|
|
|
Verfasst am: 17.02.2021, 17:25
Titel:
|
|
Dein erstes Ergebnis ist richtig.
Du hast dich verrechnet.
Ristrafil hat Folgendes geschrieben: |
Die 1 Zeile hat jetzt 8 Zahlen, wobei die 4 zusätzlichen Zahlen durch Addition entstanden sind.
15 +2 = 17
17+6 = 23
23+ 11 = 34
Falsch: 34+15 = 51 => muss 49 sein |
c = 2 6 11 15 17 23 34 49
Aber die schleife ist überflüssig kompliziert.
Du willst doch nur cumsum über b haben, und die Werte um 15 erhöht und an b angehängt.
_________________
LG
Martina
"Wenn wir bedenken, daß wir alle verrückt sind, ist das Leben erklärt." (Mark Twain))
|
|
|
Ristrafil |
Themenstarter
Forum-Anfänger
|
|
Beiträge: 32
|
|
|
|
Anmeldedatum: 03.12.20
|
|
|
|
Wohnort: ---
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 19.02.2021, 12:50
Titel:
|
|
Hallo Martina,
vielen Dank für deine Hilfe - ich hab das echt zu kompliziert gemacht
Ich hänge jetzt noch an der frage wie ich daraus eine Schleife machen kann, sodass ich das beliebig oft duplizieren kann..
wenn ich was habe werde ich mal mein Ansatz reinposten
LG
Ristrafil
|
|
|
Ristrafil |
Themenstarter
Forum-Anfänger
|
|
Beiträge: 32
|
|
|
|
Anmeldedatum: 03.12.20
|
|
|
|
Wohnort: ---
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 19.02.2021, 13:27
Titel:
|
|
so das wäre mal mein Ansatz für den Anfang..
ich hab jetzt z.B. 3 mal dupliziert. muss aber eben für jede weitere duplikation eine neue zeile schreiben, wenn ich das 100 mal duplizieren will sprengt das natürlich den rahmen.
die 49 und 83 kommen zustande, indem ich immer +34 rechne (wegen der Abfolge einfach): 15+34 = 49 usw...
|
|
|
Mmmartina |
Forum-Meister
|
|
Beiträge: 745
|
|
|
|
Anmeldedatum: 30.10.12
|
|
|
|
Wohnort: hier
|
|
|
|
Version: R2020a
|
|
|
|
|
|
Verfasst am: 19.02.2021, 13:54
Titel:
|
|
Erkennst du denn, wie das ganze funktioniert?
Was tust du denn derzeit?
Beschreibe das doch mal für dich. Schritt für Schritt.
Ristrafil hat Folgendes geschrieben: |
die 49 und 83 kommen zustande, indem ich immer +34 rechne (wegen der Abfolge einfach): 15+34 = 49 usw... |
Ja, aber es geht einfacher. Die Werte sind doch alle da.
Gib sie dir mal aus und schaue sie dir genau an.
_________________
LG
Martina
"Wenn wir bedenken, daß wir alle verrückt sind, ist das Leben erklärt." (Mark Twain))
|
|
|
Ristrafil |
Themenstarter
Forum-Anfänger
|
|
Beiträge: 32
|
|
|
|
Anmeldedatum: 03.12.20
|
|
|
|
Wohnort: ---
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 19.02.2021, 15:09
Titel:
|
|
ok - ich hab deinen Rat befolgt und mir nochmal alles in Ruhe angeschaut. Ich verstehe das jetzt folgendermaßen.
wenn ich weiter duplizieren möchte wird jede zahl immer um die selbe zah vergrößert - in unserem fall um +34*i ( i = 3 wenn ich z.B. 3 mal duplizieren will). diese zahl 34 kann ich mir ja immer raussuchen - in meinem Ansatz heist das jetzt Duplikationswert.
wenn ich aber die forschleife auf 1:2 stelle - passts wieder nicht.
ist mein Ansatz mit dem "Duplikationswert" richtig? oder bin ich da wieder komplett falsch und denke zu kompliziert?
tut mir leid ich bin nicht so der experte ;(
trotzdem danke für die Denkansätze
lg ristrafil
|
|
|
Mmmartina |
Forum-Meister
|
|
Beiträge: 745
|
|
|
|
Anmeldedatum: 30.10.12
|
|
|
|
Wohnort: hier
|
|
|
|
Version: R2020a
|
|
|
|
|
|
Verfasst am: 19.02.2021, 15:40
Titel:
|
|
Müsste vermutlich auch mit deiner Denkweise irgendwie gehen.
Aber es geht viel einfacher: den letzten Wert des alten Vektors zur cumsum addieren.
Und das einfach an den Vektor anhängen.
_________________
LG
Martina
"Wenn wir bedenken, daß wir alle verrückt sind, ist das Leben erklärt." (Mark Twain))
|
|
|
Ristrafil |
Themenstarter
Forum-Anfänger
|
|
Beiträge: 32
|
|
|
|
Anmeldedatum: 03.12.20
|
|
|
|
Wohnort: ---
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 22.02.2021, 11:25
Titel:
|
|
Hallo Martina,
ja stimmt so geht es auch - super danke dir
Ich hab jetzt trotzdem noch Probleme das in eine schleife zu packen, sodass ich selbst , vor dem start des Programms, entscheiden kann wie oft ich das duplizieren möchte.
quasi:
ich gebe z.b. x = 4 ein - und es wird 4mal dupliziert.
da hänge ich jetzt noch bisschen
hast du / oder hat jemand da noch ein kleinen Tipp/Denkanstoß wie ich das formulieren könnte.
lg Ristrafil
|
|
|
|
Gehe zu Seite 1, 2 Weiter
|
Einstellungen und Berechtigungen
|
|
Du kannst Beiträge in dieses Forum schreiben. Du kannst auf Beiträge in diesem Forum antworten. Du kannst deine Beiträge in diesem Forum nicht bearbeiten. Du kannst deine Beiträge in diesem Forum nicht löschen. Du kannst an Umfragen in diesem Forum nicht mitmachen. Du kannst Dateien in diesem Forum posten Du kannst Dateien in diesem Forum herunterladen
|
|
Impressum
| Nutzungsbedingungen
| Datenschutz
| FAQ
| RSS
Hosted by:
Copyright © 2007 - 2024
goMatlab.de | Dies ist keine offizielle Website der Firma The Mathworks
MATLAB, Simulink, Stateflow, Handle Graphics, Real-Time Workshop, SimBiology, SimHydraulics, SimEvents, and xPC TargetBox are registered trademarks and The MathWorks, the L-shaped membrane logo, and Embedded MATLAB are trademarks of The MathWorks, Inc.
|
|