Ich brauche Hilfe mit der Matrix

3 visualizaciones (últimos 30 días)
Maximilian Dickmeis
Maximilian Dickmeis el 13 de Mayo de 2019
Comentada: Maximilian Dickmeis el 14 de Mayo de 2019
%Eingabe der Maximalen Leistung des großen Gleichrichters
Max_Leistung_Gleichrichter=10;
%Einlesen der Daten
[Leistungswert ,Name, everything] = xlsread('D:\Dokumente\Eingabe.xlsx','Tabelle1','A2:C23');
A = xlsread('D:\Dokumente\Eingabe.xlsx','Tabelle1','A2:C23');
disp(everything);
[r,l]=find(strcmp(everything,'DC'));
verbraucher_DC=everything(r,1);
leistung_DC=Leistungswert(r,1);
[s,t]=find(strcmp(everything,'AC'));
verbraucher_AC=everything(s,t);
leistung_AC=Leistungswert(s,t); (Diese Zeile loest den Fehler aus/Here is the Problem)
fprintf('Die Gesamte Leistung durch DC beträgt: ');
b=sum(leistung_DC);
disp(b);
M = [verbraucher_DC,num2cell(leistung_DC)];
W = [verbraucher_AC,num2cell(leistung_AC)];
disp(M);
disp(W);
Hallo zusammen, ich bin absoluter Matlab-Anfänger brauche das Ganze aber jetzt für ein Projekt in der UNI.
Ich habe eine Excel-Tabelle die ich einlese, welche aus 3 Spalten besteht (Name, Leistung, AC/DC)
Zu Beginn hatte ich nur die Ausgabe von DC, also das suche der Zeilen, wo DC vorhanden ist und dies dann für weitere Berechnung nutzen. Das klappte alles.
Jetzt benötige ich die gleiche Funktion für AC.
Also habe ich, vllt etwas blauäugig, das Ganze 1 zu 1 so umzusetzen, wie ich es für DC bereits gemacht hatte.
Die werte die für "s" und "t" ausgegeben werden passen auch mit den Zeilen, die es laut dem Excel-Dok sein müssen überein, jedoch versucht die Funktion leitungs_AC=Leistungswert(s,t) folgenden Fehlermeldung:
% Index exceeds matrix dimensions.
%
% Error in Untitled (line 16)
% leistung_AC=Leistungswert(s,t);
Zudem wird verbraucher_AC als 15x15 Matrix ausgegeben mit dem Inhalz "AC" in jeder Zelle.
Ich weiß leider momentan keinen Ansatz, wie ich das Ganze ändern kann und hoffe, dass vielleicht hier jemand eine Idee hat oder mir ggfs. einen offensichtlichen Fehler nennen kann, den ich schlichtweg übersehe.
Bereits jetzt schonmal vielen Dank, falls hier jemand eine Antwort geben kann.

Respuesta aceptada

Thorsten
Thorsten el 13 de Mayo de 2019
1:1 umgesetzt muss es doch 1 statt l heißen:
verbraucher_AC=everything(s,1);
leistung_AC=Leistungswert(s,1);
  4 comentarios
madhan ravi
madhan ravi el 13 de Mayo de 2019
Dann bitte die Antwort zustimmen.
Maximilian Dickmeis
Maximilian Dickmeis el 14 de Mayo de 2019
Ja habe ich gemacht. Vielen Dank!

Iniciar sesión para comentar.

Más respuestas (0)

Productos

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!