Verfasst am: 27.04.2011, 16:24
Titel: Stringwerte aus For-Schleife in einen Vektor speichern
Hallo,
ich hab folgendes Problem: Längen und Breitengrade wurde in bereits über eine For-Schleife aus dem gegebenen Format z.b. N 47 5679 bzw. E 012 1225
in 47.5679 bzw. 12.1225 umgewandelt.
Nun will ich dies jedoch auch rück gängig machen, dies funktioniert auch ganz gut nur haut das speicher in einen Vektor/Matrix nicht hin.
Also "in" ist in diesem 47.5679 bzw. 12.1225 Format.
Fehlermeldung:
??? Subscripted assignment dimension mismatch.
Error in ==> Copy_of_cornum2str at 8
out(i,1:9)=Lat1
Code:
function[out]=Copy_of_cornum2str(in)
n = length(in(:,1));
if in(1,1)>40 for i = 1 : n
Lat1=num2str(in(i,1));
Lat1=strrep(Lat1,'.',' ');
Lat1=['N ',Lat1];
out(i,1:9)=Lat1;
end else for i = 1 : n
Lon1=num2str(in(i,1));
Lon1=strrep(Lon1,'.',' ');
Lon1=['E 0',Lon1];
out(i,1:10)=Lon1;
end end
ich hatte anscheinend ein brett vorm kopf, ist zwar nicht sehr elegant gelöst aber es funktioniert
Code:
function[out]=Copy_of_cornum2str(in)
n = length(in(:,1));
if in(1,1)>40 for i = 1 : n
Lat1=num2str(in(i,1));
k = length(Lat1(1,:));
if k==6
Lat1=[Lat1,'0'];
elseif k==5
Lat1=[Lat1,'00'];
elseif k==4
Lat1=[Lat1,'000'];
elseif k==3
Lat1=[Lat1,'0000'];
end
Lat1=strrep(Lat1,'.',' ');
Lat1=['N ',Lat1];
out1{i,1}=Lat1;
end
out = cat(1, out1{:});
else for i = 1 : n
Lon1=num2str(in(i,1));
k = length(Lon1(1,:));
if k==6
Lon1=[Lon1,'0'],
elseif k==5
Lon1=[Lon1,'00'];
elseif k==4
Lon1=[Lon1,'000'];
elseif k==3
Lon1=[Lon1,'0000'];
end
Lon1=strrep(Lon1,'.',' ');
Lon1=['E 0',Lon1];
out1{i,1}=Lon1;
end
out = cat(1, out1{:});
end end
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
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.