Исходный код программы сложения и умножения матриц на Delphi.
Элементы TStringGrid.

Простейший код для первокурсников… Открыт для скачивания и доработки…

Сложение и умножение матриц

                   Рис.1       Результат перемножения матриц

Данная программа является простейшим калькулятором для решения примеров с использованием матричной арифметики.

Сложение матриц

Обязательным условием для сложения (вычитания) матриц является полное совпадение их размеров… И результирующая матрица будет иметь то же самое количество строк и столбцов, какое имели матрицы-слагаемые… Каждый элемент новой матрицы (с индексами ij) будет равен сумме элементов слагаемых матриц (с теми же индексами ij).

Вычитание матриц

Как и всегда, вычитание отличается от сложения только знаком… Чтобы поменять все знаки в матрице, достаточно умножить ее на «минус-единичную-матирцу» (т.е. такую матрицу, в которой главная диагональ полностью состоит из -1, а остальные элементы равны 0). Экспериментируйте…

Умножение матриц

Обязательным условием для умножения матриц является совпадение количества столбцов первой матрицы и количество строк второй матрицы… А результирующая матрица будет иметь то же самое количество строк, что и первая матрица, и то же самое количество столбцов, что и вторая матрица…

Так если имеем матрицу А с размерами i,k и матрицу B с размерами k,j то результатом будет матрица С с размерами i,j. Каждый элемент новой матрицы (с индексами ij) будет равен сумме произведений элементов
i-строки первой матрицы на элементы j-столбца второй матрицы.

Формула элемента при умножении матриц

Или можно сказать, что каждый элемент новой матрицы будет равен скалярному произведению i-вектора-строки первой матрицы на j-вектор-столбец второй матрицы…

А количество элементов в этих векторах должно обязательно совпадать

Деление матриц

Деление заменяется операцией умножения на обратную матрицу… Алгоритм получения обратной матрицы (которая и обозначается как матрица в -1 степени) не сложен, но чтобы его описать пришлось бы описывать алгоритм вычисления определителя матрицы и так до бесконечности… одно понятие строится на базе других понятий… Если Вам это понадобится , то Вы без труда найдете эту информацию на просторах интернета…

Исходный код на Delphi

Поскольку исходный код открыт, то приводить листинг не буду… Краткие пояснения:

  1. Объекты класса TStringGrid (строковая таблица) не имеют метода очистки всех своих ячеек, поэтому очистка проводится через методы строк или столбцов… См. процедуры-обработчики событий кнопок очистки, которые вызывают одну и ту же процедуру SG_clear, посылая в нее в виде параметра соответствующую StringGrid.
  2. Процедура заполнения нулями procedure Full_0(sg:TStringGrid); необходима чтобы исключить ошибки конвертации пустых ячеек в числа… Т.е. перед вычислениями производится проверка содержимого всех ячеек и если ячейка, по недосмотру пользователя, осталось пустой, то в нее помещается 0. Логично?

Скачать ехе-файл для тестирования…

Скачать архив проекта для доработки (изменения под свои требования) бесплатно !

А здесь новый вариант платный с большими возможностями !

Другие примеры на тему «Матрицы и операции вычислений с ними»

Другие примеры на языке «Delphi»


Здесь перчислены другие варианты, тех заданий, которые я уже делал.

Скоро и до них дойдет очередь. Появятся среди примеров. Но если кому-то они нужны срочно, (или что-то похожее), то такие задания я делаю быстро и не дорого. Заказывайте...

  1. Нахождение произведения скаляра и двух матриц
  2. Определение номера столбца матрицы, содержащего min элемент
  3. Перестановка строк в матрице
  4. Нахождение количества элементов матрицы больших 2.5
  5. Перестановка min элемента каждой строки матрицы с элементом главной диагонали
  6. Поиск mах элемента главной диагонали матрицы
  7. Упорядочение массива в порядке возрастания значений элементов
  8. Определение номера столбца матрицы, содержащего mах элемент
  9. Перестановка крайних элементов массива
  10. Поиск mах элемента в матрице
  11. Формирование массива из min элементов строк матрицы
  12. Поиск mах и min элемента массива
  13. Упорядочение строки матрицы по убыванию значений элементов
  14. Определение номера строки матрицы, содержащего mах (min) элемент
  15. Вычисление значения следа матрицы
  16. Транспонирование матрицы

Удачи!



Поделиться в соц сетях:




Если на этой странице не нашлось того, что Вы так искали...

         Не расстраивайтесь, не все потеряно... Смело щелкайте...

исходный код на заказ. orenstudent.ru Автоматизация документов MS Office. orenstudent.ru исходный код на заказ. orenstudent.ru Помогите найти и устранить ошибку в исходном коде программы. orenstudent.ru Skype-консультирование по программированию
Скайп-консультации

Акция !!!
исходный код комментарии цена минимальная


Не попадайтесь на удочку мошенников-кидал... требуются
школьники!


и СТУДЕНТЫ!
Кому не плевать
на деньги!
Сайт помощи студентам по программированию и информатике

Program code