clear all x=rand(16,1) % СКРИПТ СОРТИРОВКИ ДЛЯ ВЕКТРОА x n=length(x); while (n > 2) for k=1:(n-1) if (x(k) > x(k+1)) buf = x(k+1); x(k+1)=x(k); x(k)=buf; end; end; n=n-1; end; --- % ФУНКЦИЯ СОРТИРОВКИ ДЛЯ ВЕКТРОА x % Синтаксис: % x=fvsort(x) % Например, вариант №1: % x=rand(1,8); % x=fvsort(x); % Например, вариант №2: % x=rand(8,1); % x=fvsort(x); function x=fvsort(x) n=length(x); while (n >= 2) for k=1:(n-1) if (x(k) > x(k+1)) buf = x(k+1); x(k+1)=x(k); x(k)=buf; end; end; n=n-1; end; clear all; x=rand(1,16); x=fvsort(x); --- % СОРТИРОВКА ДЛЯ ТАБЛИЧНОЙ ФУНКЦИИ, % ЗАДАННОЙ МАТРИЦЕЙ ДВУМЯ СТРОКАМИ % Синтаксис: % m=fvsort(m) % x - первая строка матрицы (m) % y - вторая строка матрицы (m) % Например: % m=rand(2,8); % m=fmsort(m); % function m=fvsort(m) if (size(m,2)<2) || (size(m,1)~=2) disp ('Размер матрицы должен быть 2 - строки, (k > 2) - столбцов '); return; end; n=size(m,2); while (n > 2) for k=1:(n-1) if (m(1,k) > m(1,k+1)) % Обменять местами X buf = m(1,k+1); m(1,k+1)=m(1,k); m(1,k)=buf; % Обменять местами Y buf = m(2,k+1); m(2,k+1)=m(2,k); m(2,k)=buf; end; end; n=n-1; end; --- clear all m=rand(2,16); m=fmsort(m); ---