Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
Форум программистов > Математические пакеты > модифицировать код матлаба |
Автор: Александр92 22.3.2015, 20:39 |
clear all; clc Q=[1 1 1 1;1 1 1 0;1 1 0 1;1 1 0 0;1 0 1 1;1 0 1 0;1 0 0 0]; q=[1 1 0 0]; % str = input('Введите элемент (через запятую)','s'); % q = str2num(str); q1 = repmat(q, size(Q,1), 1); % повторяем строку q до размера матрицы Q L = all(Q==q1, 2); % находим логический индекс, где строка совпадает с вектором A=[-3;-3;-3;-3;-1;-1;-1;]; B=[3;1;-1;-3;3;1;-1]; A(L) % соответствующий элемент A B(L) % соответствующий элемент B k = find(L) % индекс элемента(номер строки матрицы Q) На основе этого кода модернизировать его так чтобы он работал не только при одной q(то есть например при q=[1111] но и при любом колличестве q кратным четырем.то есть при q=[1111 1110] мы должны получить на выходе соответствующие значения A и B для 1111(А=-3.В=3) и 1110(А=-3.В=1).получившиеся значения записать в массив |