• Регистрация
Chishok
Chishok0.00
н/д
  • Написать
  • Подписаться

Составить подпрограмму, определяющую число положительных и отрицательных элементов выше главной диагонали матрицы А размерностью 5Х5

Анализ данных или машинное обучение 
05.11.2019

Здравствуйте! Изучаю матлаб на первом курсе,и застрял вот на таком задании:

Составить подпрограмму, определяющую число положительных и отрицательных элементов выше главной диагонали матрицы А размерностью 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

Но даже этот кусочек не работает. Нашел функцию по составлению верхнетреугольной матрицы,но не знаю как к ней подступиться.

Не мог бы кто-нибудь мне немного помочь?

 

Теги

  • #Matlab
  • МАТЛАБ для образования
  • вычисления
    05.11.2019

    Лучший ответ

    • JESUS DAVID ARIZA ROYETH +434
      6.11.2019 12:00

      решение:

      a=dlmread('matrix.txt')

      disp(['+>0=' num2str(sum(sum(triu(a,1)>0)))])

      disp(['-<0=' num2str(sum(sum(triu(a,1)<0)))])

    Ответы

    • Н/Д
      Н/Д0
      6.11.2019 00:59
      Ответ был удален
      • JESUS DAVID ARIZA ROYETH
        JESUS DAVID ARIZA ROYETH +11.00
        6.11.2019 01:17

        решение:

        a=dlmread('matrix.txt')

        disp(['+>0=' num2str(sum(sum(triu(a,1)>0)))])

        disp(['-<0=' num2str(sum(sum(triu(a,1)<0)))])

        • Chishok
          Chishok0.00
          7.11.2019 21:22

          Спасибо Вам большое!

          Осталось только разобраться как она работает)