Составить подпрограмму, определяющую число положительных и отрицательных элементов выше главной диагонали матрицы А размерностью 5Х5
Здравствуйте! Изучаю матлаб на первом курсе,и застрял вот на таком задании:
Составить подпрограмму, определяющую число положительных и отрицательных элементов выше главной диагонали матрицы А размерностью 5Х5 (Вообще в задании написано n#n (n<6)) Но разрешено взять любое конкретное значение чтобы было проще. Нужно матрицу считать из файла. У меня получилась такая вот программа:
function massiv6_primer2
f=fopen('matrix.txt', 'rt');
str1=fgetl(f);
str2=fgetl(f);
str3=fgetl(f);
str4=fgetl(f);
fclose(f);
x=str2num (str1);
y=str2num (str2);
z=str2num (str3);
v=str2num (str4);
n=length(x);
b=0;
h=0;
for n=length(x):1;
for j=1:4
if x(n)>0
h=h+1;
disp('+ >0 =');
h
else
b=b+1;
disp('- <0 =');
b
end
end
end
Но даже этот кусочек не работает. Нашел функцию по составлению верхнетреугольной матрицы,но не знаю как к ней подступиться.
Не мог бы кто-нибудь мне немного помочь?
Лучший ответ
решение:
a=dlmread('matrix.txt')
disp(['+>0=' num2str(sum(sum(triu(a,1)>0)))])
disp(['-<0=' num2str(sum(sum(triu(a,1)<0)))])
Ответы
решение:
a=dlmread('matrix.txt')
disp(['+>0=' num2str(sum(sum(triu(a,1)>0)))])
disp(['-<0=' num2str(sum(sum(triu(a,1)<0)))])
Спасибо Вам большое!
Осталось только разобраться как она работает)