Control Dynamically Multi-Dimension Matrix on fprintf
2 visualizzazioni (ultimi 30 giorni)
Mostra commenti meno recenti
Merih Dikbas
il 10 Mag 2021
Commentato: Merih Dikbas
il 10 Mag 2021
Hi, I have 3x3x3 array and I can print elements on txt like this:
A(:,:,1)=[1 2 4 ; 5 2 1 ; 6 2 1];
A(:,:,2)=[4 6 1 ; 8 0 3 ; 1 2 4];
A(:,:,3)=[5 8 2 ; 4 4 4 ; 1 0 0];
function PrintArray(A)
MyText=fopen('Text1.txt','wt');
for i=1:size(A,1)
for j=1:size(A,2)
for k=1:size(A,3)
PrintedVal=A(i,j,k);
fprintf(MyText,'A(%d,%d,%d) = %d \n',i,j,k,PrintedVal) ;
end
end
end
fclose(MyText);
end
I am looking for a script that it will automatically detect the number of dimensions, will be able to perform in 2D or 4D.
Thanks for helping.
0 Commenti
Risposta accettata
Stephen23
il 10 Mag 2021
Modificato: Stephen23
il 10 Mag 2021
A(:,:,1) = [1,2,4;5,2,1;6,2,1];
A(:,:,2) = [4,6,1;8,0,3;1,2,4];
A(:,:,3) = [5,8,2;4,4,4;1,0,0];
D = ndims(A);
F = repmat(',%d',1,D);
F = sprintf('A(%s) = %%d\n',F(2:end));
C = cell(1,D);
for k = 1:numel(A)
[C{:}] = ind2sub(size(A),k);
fprintf(F,C{:},A(k))
end
Più risposte (0)
Vedere anche
Categorie
Scopri di più su Elementary Math in Help Center e File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!