|
|
Subscript indices must either be real positive integers or |
|
Stud |
Forum-Anfänger
|
|
Beiträge: 26
|
|
|
|
Anmeldedatum: 12.03.10
|
|
|
|
Wohnort: ---
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 07.05.2010, 23:43
Titel: Subscript indices must either be real positive integers or
|
|
Hallo,
ich sitze verzweifelt und versuche bestimmte Elementen aus vielen Matrizen zu addieren (z.B. zuerst nur die Zahl in der ersten Zeile und Spalte in allen Matrizen...)
Ich habe 6x8 Matrizen in einer Spalte untereinander gespeichert und damit ich die j-ten Elementen aller Vektoren der Matrizen summieren kann, habe ich folg. Code geschrieben:
for i=1:100;
j = 1:6;
try
a{1,2}(j,1) = sum(a{i,1}(j,1))
a{1,2}(j,1) = sum(a{i,1}(j,1))
a{1,2}(j,1) = sum(a{i,1}(j,1))
a{1,2}(j,1) = sum(a{i,1}(j,1))
a{1,2}(j,1) = sum(a{i,1}(j,1))
a{1,2}(j,1) = sum(a{i,1}(j,1))
catch exception
disp('Vektor ist leer')
end;
end;
bekomme aber immer wieder die Fehlermeldung:
'Subscript indices must either be real positive integers or logicals.'
Was mache ich falsch?
|
|
|
|
|
ibejustme |
Forum-Anfänger
|
|
Beiträge: 17
|
|
|
|
Anmeldedatum: 12.10.09
|
|
|
|
Wohnort: ---
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 08.05.2010, 08:41
Titel:
|
|
Hallo,
wenn du schreibst du hast 6x8 Matrizen meinst du damit das deine Matrizen
6 Zeilen und 8 Spalten haben, richtig?
Wenn ja, dann frage ich mich wieso du i bis 100 laufen lässt.
Wäre da
nicht die bessere Wahl?
Gruß
|
|
|
Stud |
Themenstarter
Forum-Anfänger
|
|
Beiträge: 26
|
|
|
|
Anmeldedatum: 12.03.10
|
|
|
|
Wohnort: ---
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 08.05.2010, 09:47
Titel: Hallo
|
|
Hallo,
danke für die Antwort, ich definiere meine Schleif mit 100, weil ich 100 Matrizen habe in 100 Zeilen und ich muss alle Zeilen durchlaufen:? , um zu einer Matrix zu gelangen...
Ich habe den Code jetzt so geändert:
for i=1:100;
try
a{1,2}(1,1)= sum(a{i,1}(1,1))
a{1,2}(2,1)= sum(a{i,1}(2,1))
a{1,2}(3,1)= sum(a{i,1}(3,1))
a{1,2}(4,1)= sum(a{i,1}(4,1))
a{1,2}(5,1)= sum(a{i,1}(5,1))
a{1,2}(6,1)= sum(a{i,1}(6,1))
catch exception
disp('Vektor ist leer')
disp (exception)
end;
end;
Ich bekomme keinen Fehler mehr, aber statt am Ende die Gesamtsumme aller ersten, zweiten, dritten und s.w. Einträge der MAtrix zu sehen, habe ich nur die der letzten Matrix
|
|
|
Stud |
Themenstarter
Forum-Anfänger
|
|
Beiträge: 26
|
|
|
|
Anmeldedatum: 12.03.10
|
|
|
|
Wohnort: ---
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 08.05.2010, 11:00
Titel: Hallo
|
|
ich habe es
var1=0
var2=0
...
for i=1:100;
try
var1= var1 + a{i,1}(1,1)
var2= var2 + a{i,1}(2,1)
...
a{1,2}(1,1)=var1;
a{1,2}(2,1)=var2;
...
catch exception
disp (exception)
end;
end;
|
|
|
|
|
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 - 2025
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.
|
|