Главная    Почта    Новости    Каталог    Одноклассники    Погода    Работа    Игры     Рефераты     Карты
  
по Казнету new!
по каталогу
в рефератах

Turbo Paskal Операции над матрицами

                   for i1:=1 to m1 do begin {Вывод транспонированной
матрицы}
                                          for j1:=1 to n1 do
                                          Write (MAS2[i1,j1]);
                                          WriteLn;
                                      end;
                 end;

              4,5: begin {Сложение/вычитание матриц}
                         {Ввод второй матрицы}
                       WriteLn ('Введите кол-во строк второй
матрицы');
                       ReadLn (m2);
                       Writeln ('Введите кол-во столбцов второй
матрицы');
                       ReadLn (n2);
                       If (n2<>n1) or (m2<>m1)
                        then WriteLn ('OSHIBKA!!!') {Условие ошибки}
                        else begin
                                 WriteLn ('Введите вторую матрицу');
                                 for i1:=1 to m1 do
                                   for j1:=1 to n1 do
                                    Read (MAS2[i1,j1]);
                             end;
                       for i1:=1 to m1 do   {Вывод второй матрицы}
                           begin
                             for j1:=1 to n1 do
                             Write (MAS2[i1,j1]);
                             WriteLn;
                           end;

                       if operation = 4 then k := 1;
                       if operation = 5 then k := -1;
                       for i1:=1 to m1 do
                          for j1:=1 to n1 do
                            MAS3[i1,j1]:=MAS1[i1,j1]+k*MAS2[i1,j1];
{Итоговая формула}

                       writeln('Сумма/разность:');
                       for i1:=1 to m1 do
                           begin
                             for j1:=1 to n1 do Write(MAS3[i1,j1]);
                             WriteLn;
                           end;

                   end;


              6:  begin {Умножение матриц}
                    {Ввод второй матрицы}
                    WriteLn ('Введите кол-во строк второй матрицы');

                    ReadLn (m2);
                    Writeln ('Введите кол-во столбцов второй
матрицы');
                    ReadLn (n2);
                    If ((1>=m2) or  (m2>=10) or (1>=n2) or  (n2>=10)
{Условие ошибки}
                                or  (n2<>m1)) then WriteLn
('ОШИБКА!!!')
                       else begin
                              WriteLn ('Введите вторую матрицу');
                              for i2:=1 to m2 do
                                 for j2:=1 to n2 do Read
(MAS2[i2,j2]);
                            end;
                    for i2:=1 to m2 do begin {Вывод второй матрицы}
                                         for j2:=1 to n2 do
                                         Write (MAS2[i2,j2]);
                                         WriteLn;
                                       end;
                    m3:=m1; n3:=n2;
                    for i3:=1 to m3 do
                        for j3:=1 to n3 do begin
                                             MAS3[i3,j3] := 0;
                                             for i2:= 1 to m2 do
                                  {Итоговая формула}
                                  MAS3[i3,j3] :=MAS3[i3,j3] +
MAS1[i3,i2] * MAS2[i2,j3];
                                           end;
                    begin {Вывод произведения}
                      writeln;
                      writeln('Произведение:');
                      for i3:=1 to m1 do begin
                                           for j3:=1 to n2 do Write
(MAS3[i3,j3]);
                                           WriteLn;
                                         end;
                    end;
              end;
          End; {End Case}
          ReadKey;
END.   {Конец программы}



                           Пример работы программы

      1.   Операция нахождения определителя:

     1) При появлении на экране меню с выбором операций, выбираем 1.
     2) На предложение ввести кол-во строк матрицы, выбираем 3.
     3) Кол-во столбцов – 3.
     4) Вводим матрицу:           (  1  4  5  (
                         (  5  3  7  (
                         (  8  1  4  (
     5) Программа выдает ответ:  det = 54.

     2.   Операция нахождения обратной матрицы:

     1)   При появлении на экране меню с выбором операций, выбираем 2.
     2)   На предложение ввести кол-во строк матрицы, выбираем 3.
     3)   Кол-во столбцов – 3.
     4)   Вводим матрицу:      (  1  4  5  (
                         (  5  3  7  (
                         (  8  1  4  (
     5)   Программа выдает ответ:      (   1,851*100   9,259*100   1,481*10
     (
                                       (  7,407*100  5,555*100  1,851*100  (
                                       (  9,259*100   1,296*10     7,407*100
                         (.

     3. Операция транспонирования матрицы:

     1)   При появлении на экране меню с выбором операций, выбираем 3.
     2)   На предложение ввести кол-во строк матрицы, выбираем 3.
     3)   Кол-во столбцов – 3.
     4)   Вводим матрицу:      (  1  4  5  (
                         (  5  3  7  (
                         (  8  1  4  (
     5)   Программа выдает ответ:      (  1  5  8  (
                                       (  4  3  1  (
                                       (  5  7  4  (.

     4. Операция сложения матриц:

     1)   При появлении на экране меню с выбором операций, выбираем 3.
     2)   На предложение ввести кол-во строк матрицы, выбираем 3.
     3)   Кол-во столбцов – 3.
     4)   Вводим матрицу:      (  1  4  5  (
                         (  5  3  7  (
                         (  8  1  4  (
     5)   На предложение ввести кол-во строк матрицы, выбираем 3.
     6)   Кол-во столбцов – 3.
     7)   Вводим матрицу:      (    2  8  10  (
                         (  10  6  14  (
                                               (  16  2    8  (.
     8)   Программа выдает ответ:      (    3  12  15  (
                                       (  15    9  21  (
                                                             (  24    3  12
      (.



     5. Операция вычитания матриц:

     1)   При появлении на экране меню с выбором операций, выбираем 3.
     2)   На предложение ввести кол-во строк матрицы, выбираем 3.
     3)   Кол-во столбцов – 3.
     4)   Вводим матрицу:      (  1  4  5  (
                         (  5  3  7  (
                         (  8  1  4  (
     5)   На предложение ввести кол-во строк матрицы, выбираем 3.
     6)   Кол-во столбцов – 3.
     7)   Вводим матрицу:      (    2  8  10  (
                         (  10  6  14  (
                                               (  16  2    8  (.
     8)   Программа выдает ответ:     (  -1  -4  -5  (
                                      (  -5  -3  -7  (
                                      (  -8  -1  -4  (.

     6. Операция перемножения матриц:

     1)   При появлении на экране меню с выбором операций, выбираем 3.
     2)   На предложение ввести кол-во строк матрицы, выбираем 3.
     3)   Кол-во столбцов – 3.
     4)   Вводим матрицу:      (  1  4  5  (
                         (  5  3  7  (
                         (  8  1  4  (.
     5)   На предложение ввести кол-во строк матрицы, выбираем 3.
     6)   Кол-во столбцов – 3.
     7)   Вводим матрицу:      (    2  8  10  (
                         (  10  6  14  (
                                               (  16  2    8  (.
     8)   Программа выдает ответ:     (  122  42  106  (
                                      (  152  72  148  (
                                      (   90   78  126  (.

     7. Первый исключительный случай:

     1)   При появлении на экране меню с выбором операций, выбираем 1.
     2)   На предложение ввести кол-во строк матрицы, выбираем 0.
     3)   Кол-во столбцов – 3.
     4) Программа выдает: «ОШИБКА!!!».

     8. Второй исключительный случай:

     1)   При появлении на экране меню с выбором операций, выбираем  1  (2,
     3).
     2)   На предложение ввести кол-во строк матрицы, выбираем 3.
     3)   Кол-во столбцов – 2.
     4)   Вводим матрицу:      (  1  4  (
                         (  5  3  (
                         (  8  1  (.
     5) Программа выдает: «ОШИБКА!!!».

     9. Третий исключительный случай:

     1)   При появлении на экране меню с выбором операций, выбираем 4.
     2)   На предложение ввести кол-во строк матрицы, выбираем 3.
     3) Кол-во столбцов – 3.

     4)   Вводим матрицу:      (  1  4  5  (
                         (  5  3  7  (
                         (  8  1  4  (.
     5)   На предложение ввести кол-во строк матрицы, выбираем 2.
     6)   Кол-во столбцов – 2.
     6) Программа выдает: «ОШИБКА!!!».

    10. Четвертый исключительный случай:

     1)   При появлении на экране меню с выбором операций, выбираем 6.
     2)   На предложение ввести кол-во строк матрицы, выбираем 3.
     3)   Кол-во столбцов – 3.
     4)   Вводим матрицу:      (  1  4  5  (
                         (  5  3  7  (
                         (  8  1  4  (.
     5)   На предложение ввести кол-во строк матрицы, выбираем 2.
     6)   Кол-во столбцов – 2.
     7) Программа выдает: «ОШИБКА!!!».


                              Выводы по работе

      Для  проверки  результатов,   выдаваемых   программой,   использовался
математический пакет MathCAD 2001 Professional.
      Существенный недостаток программы в том, что при  нахождении  обратной
матрицы  и  определителя,  программа  может  работать  только  с  матрицами,
размером  не  
123
скачать работу

Turbo Paskal Операции над матрицами

 

Отправка СМС бесплатно

На правах рекламы


ZERO.kz
 
Модератор сайта RESURS.KZ