Матричный Калькулятор

Эта утилитка зародилась, когда я учился на 3 курсе университета. Часто приходилось иметь дело с матричными операциями: выполнять простые операции типа сложения, умножения, нахождения обратной матрицы и т.д. Поэтому я решил создать простой и эффективный матричный калькулятор.
Конечно, существуют и другие программы для выполнения таких действий, например MathLab или бесплатный продукт SciLab.

Коротко о возможностях калькулятора:

  1. Основные операции: умножение, сложение, скалярные произведения матриц;
  2. Нахождение обратной и псевдообратной матрицы inv() , pinv();
  3. Нахождение определителя (детерминанта) матрицы. Можно также вычислить в он-лайн версии;
  4. Транспонирование: transpose();
  5. Диагонализация (метод Гаусса) gauss();
  6. Решение системы линейных уравнений: slae();
  7. Ранг матрицы: rank().

При разработке использовались:

  • Генераторы лексического и синтаксического анализаторов flex и byacc.
  • Библиотека матриц с сайта http://unicyb.kiev.ua/mss
  • Компилятор MS Visual Studio .NET C++

Последнее обновление проекта 20.09.2004

Техническая информация:

             Матричный калькулятор. Версия 1.0
             Синтаксис максимально приближен к синтаксису языка MatLab.
                                 ---Помощь---
             операторы:
             Здесь IDN - любой корректный идентификатор. Примеры: a,b,m1 и т.д.
             IDN(rows,cols)  - создание матрицы размерности rows x cols
             IDN=[число число... число]  - заполнение элементов матрицы из масива.
                                           масив можно вводить в несколько строк,
                                           тогда размеры матрицы будут устанавливаться
                                          автоматически.
             IND[row,col] = число        - установка значения одного элемента матрици
             iden(INT) - единичная матрица размерности Int x Int
             det(IDN) - вычисление определителя матрицы IDN
             slae(IDN) - решение системы линейный уравнений, IDN - расширеная матрица системы
             Выражения. результат записывается в матрицу с именем rez
               transpose(IDN) - транспонирование матрицы
               inv(IDN) - нахождение обратной
               pinv(IDN) - нахождение псевдо-обратной (формула Гравилля)
               rank(IDN) - ранг матрицы
               gauss(IDN) - метод гаусса (диагонализация матрицы)
               IDN+IDN, IDN*IDN, IDN-IDN - арифметические операции с матрицами
               IDN1/IDN2 = inv(IDN2)*IDN1
             Внешний ввод-вывод
             load 'file_name' - загрузка даных из файла. Формат даных в файле должен быть таким:
              IDN rows cols
              n n n n n n n n n n n - rows*cols чисел (значения елементов матрицы)
          
Last updated: 22.05.2017,
created: 22.05.2017.