как сравнить элементы матрицы и заполнить другую матрицу элементами вектора

то, что я пытаюсь сделать, это заполнить матрицу нулей элементами вектора, но сначала мне нужно сравнить с матрицей 1 и 0, чтобы узнать, какое значение должно идти

эти векторы представляют доступность и неготовность группы компонентов электрической системы, если элемент матрицы равен 1, он принимает значение готовности, если он равен нулю, он должен принимать значение неготовности

код, который я предлагаю, заполняет только первый столбец матрицы нулей соответствующими элементами a и b, но я не могу заставить другие столбцы быть заполненными соответствующими элементами

n=5;
 a=[0.9 0.8 0.7 0.6 0.5];
 b=[ 0.1 0.2 0.3 0.4 0.5];
 t=ff2n(n);
 t1=zeros(size(t));
 for i = 1:length(t)
       
    if t(i)==1
       t1(i) =a(1,1);
       
    else
       t1(i) = b(1,1);
     
    end
  
 end
disp(t1)

Отвечать:

Поскольку ваша матрица t заполнена 0 и 1, вы можете воспользоваться этим и просто сделать это

a = [0.9 0.8 0.7 0.6 0.5];
b = [0.1 0.2 0.3 0.4 0.5];
t = ff2n(n);
t1 = t.*a
t1 =
         0         0         0         0         0
         0         0         0         0    0.5000
         0         0         0    0.6000         0
         0         0         0    0.6000    0.5000
         0         0    0.7000         0         0
         0         0    0.7000         0    0.5000
         0         0    0.7000    0.6000         0
         0         0    0.7000    0.6000    0.5000
         0    0.8000         0         0         0
         0    0.8000         0         0    0.5000
         0    0.8000         0    0.6000         0
         0    0.8000         0    0.6000    0.5000
         0    0.8000    0.7000         0         0
         0    0.8000    0.7000         0    0.5000
         0    0.8000    0.7000    0.6000         0
         0    0.8000    0.7000    0.6000    0.5000
    0.9000         0         0         0         0
    0.9000         0         0         0    0.5000
    0.9000         0         0    0.6000         0
    0.9000         0         0    0.6000    0.5000
    0.9000         0    0.7000         0         0
    0.9000         0    0.7000         0    0.5000
    0.9000         0    0.7000    0.6000         0
    0.9000         0    0.7000    0.6000    0.5000
    0.9000    0.8000         0         0         0
    0.9000    0.8000         0         0    0.5000
    0.9000    0.8000         0    0.6000         0
    0.9000    0.8000         0    0.6000    0.5000
    0.9000    0.8000    0.7000         0         0
    0.9000    0.8000    0.7000         0    0.5000
    0.9000    0.8000    0.7000    0.6000         0
    0.9000    0.8000    0.7000    0.6000    0.5000
t2 = not(t.*a).*b
t2 =
    0.1000    0.2000    0.3000    0.4000    0.5000
    0.1000    0.2000    0.3000    0.4000         0
    0.1000    0.2000    0.3000         0    0.5000
    0.1000    0.2000    0.3000         0         0
    0.1000    0.2000         0    0.4000    0.5000
    0.1000    0.2000         0    0.4000         0
    0.1000    0.2000         0         0    0.5000
    0.1000    0.2000         0         0         0
    0.1000         0    0.3000    0.4000    0.5000
    0.1000         0    0.3000    0.4000         0
    0.1000         0    0.3000         0    0.5000
    0.1000         0    0.3000         0         0
    0.1000         0         0    0.4000    0.5000
    0.1000         0         0    0.4000         0
    0.1000         0         0         0    0.5000
    0.1000         0         0         0         0
         0    0.2000    0.3000    0.4000    0.5000
         0    0.2000    0.3000    0.4000         0
         0    0.2000    0.3000         0    0.5000
         0    0.2000    0.3000         0         0
         0    0.2000         0    0.4000    0.5000
         0    0.2000         0    0.4000         0
         0    0.2000         0         0    0.5000
         0    0.2000         0         0         0
         0         0    0.3000    0.4000    0.5000
         0         0    0.3000    0.4000         0
         0         0    0.3000         0    0.5000
         0         0    0.3000         0         0
         0         0         0    0.4000    0.5000
         0         0         0    0.4000         0
         0         0         0         0    0.5000
         0         0         0         0         0
t1+t2
ans =
    0.1000    0.2000    0.3000    0.4000    0.5000
    0.1000    0.2000    0.3000    0.4000    0.5000
    0.1000    0.2000    0.3000    0.6000    0.5000
    0.1000    0.2000    0.3000    0.6000    0.5000
    0.1000    0.2000    0.7000    0.4000    0.5000
    0.1000    0.2000    0.7000    0.4000    0.5000
    0.1000    0.2000    0.7000    0.6000    0.5000
    0.1000    0.2000    0.7000    0.6000    0.5000
    0.1000    0.8000    0.3000    0.4000    0.5000
    0.1000    0.8000    0.3000    0.4000    0.5000
    0.1000    0.8000    0.3000    0.6000    0.5000
    0.1000    0.8000    0.3000    0.6000    0.5000
    0.1000    0.8000    0.7000    0.4000    0.5000
    0.1000    0.8000    0.7000    0.4000    0.5000
    0.1000    0.8000    0.7000    0.6000    0.5000
    0.1000    0.8000    0.7000    0.6000    0.5000
    0.9000    0.2000    0.3000    0.4000    0.5000
    0.9000    0.2000    0.3000    0.4000    0.5000
    0.9000    0.2000    0.3000    0.6000    0.5000
    0.9000    0.2000    0.3000    0.6000    0.5000
    0.9000    0.2000    0.7000    0.4000    0.5000
    0.9000    0.2000    0.7000    0.4000    0.5000
    0.9000    0.2000    0.7000    0.6000    0.5000
    0.9000    0.2000    0.7000    0.6000    0.5000
    0.9000    0.8000    0.3000    0.4000    0.5000
    0.9000    0.8000    0.3000    0.4000    0.5000
    0.9000    0.8000    0.3000    0.6000    0.5000
    0.9000    0.8000    0.3000    0.6000    0.5000
    0.9000    0.8000    0.7000    0.4000    0.5000
    0.9000    0.8000    0.7000    0.4000    0.5000
    0.9000    0.8000    0.7000    0.6000    0.5000
    0.9000    0.8000    0.7000    0.6000    0.5000

для получения помощи по другим заданиям посетите этот сайт:

  1. матлабхелперс
  2. матлабрешения
  3. акула программирования

СМОТРИТЕ ПОЛНЫЙ ОТВЕТ НАЖМИТЕ НА ССЫЛКУ