In the following in program, I want print only the resultant Matrix D which its sum is zero also their corresponding combinations Matrix E a using any conditional statements

1 Ansicht (letzte 30 Tage)
A = [0 1 0 0 0 1 ; 1 0 1 0 0 0 ; 0 1 0 1 0 0 ; 0 0 1 0 1 0; 0 0 0 1 0 1 ; 1 0 0 0 1 0];
B = [1; 2; 3; -3; -2; -1];
C = perms (B);
E=C
D=C*A
output:
E = 3 2 1 -1 -2 -3
3 2 1 -1 -3 -2
3 2 1 -2 -1 -3
3 2 1 -2 -3 -1
3 2 1 -3 -1 -2
3 2 1 -3 -2 -1 and so on...
D = -1 4 1 -1 -4 1
0 4 1 -2 -3 0
-1 4 0 0 -5 2
1 4 0 -2 -3 0
0 4 -1 0 -5 2 and so on...
Here i have lot of outputs for E and D.
so, I want print only the resultant Matrix D with two conditions
i) Matrix D has atmost one zero.
ii) Sum of all elements in D = 0.
and also their corresponding combination of Matrix E
by using any conditional statements (example for , if conditions).
  • if exist such matrix D & E, then display "Matrix D and corresponding Matrix E"
  • if does not exist such Matrix, then display " there is no such combination".

Antworten (1)

Enrico Gambini
Enrico Gambini am 1 Mär. 2022
Bearbeitet: Enrico Gambini am 1 Mär. 2022
If I got it right...
if ((sum(any(D,'all'))<=1) & (sum(D,'all'))==0 &(sum(any(E,'all'))<=1) & (sum(E,'all'))==0)
fprintf("Matrix D and corresponding Matrix E\n");
else
fprintf("There is no such combination \n");
end

Kategorien

Mehr zu Creating and Concatenating Matrices finden Sie in Help Center und File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by