Генерация матриц

Сущность теории матриц, ее основные понятия и определения. Теоремы теории матриц, дающие научную основу для разработки алгоритма генерации. Свойства определителя как основной числовой характеристики квадратных матриц. Проблемы при составлении алгоритма.

Рубрика Программирование, компьютеры и кибернетика
Вид курсовая работа
Язык русский
Дата добавления 16.05.2009
Размер файла 273,7 K

Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже

Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.

{

int i, j=0, d, r;

int *mass1,*mass2;

mass1=(int*) malloc (n*sizeof(int));

mass2=(int*) malloc (n*sizeof(int));

if (det<0) d=-1*det;

else if (det>=0) d=det;

for (i=2; i<=d; i++)

{

while (d % i==0)

{

d/=i;

*(mas_fakt+j)=i;

j++;

}

}

if (j<n)

{

while (j<=n)

{

*(mas_fakt+j)=1;

j++;

}

}

else if (j>n)

{

r=i=0;

while (i<j)

{

if (i<n)

*(mass1+i)=*(mas_fakt+i);

else if (i>=n)

{

*(mass2+r)=*(mas_fakt+i);

r++;

}

i++;

}

for (i=0; i<r; i++)

{

j=*(mass2+i);

*(mass1+i)=*(mass1+i)*j;

}

for (i=0; i<n; i++)

*(mas_fakt+i)=*(mass1+i);

}

if (det<0)

{r=*(mas_fakt+0);*(mas_fakt+0)=-1*r;}

free(mass1);

free(mass2);

}

int prost (int det)

{

int d, i, flag=1;

d=det;

if((d % 2==0 && d!=0 && d!=2) || d<0)

flag=0;

else

for (i=3; i<sqrt(d); i+=2)

if (d % i==0)

flag=0;

return flag;

Заключение

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

Целью данной курсовой работы было составить алгоритм генерации матриц по введенному определителю, размерности и диапазона элементов матрицы.

Чтобы выполнить поставленную цель, необходимо было решить три задачи:

1. Поиск литературы по предмету данной курсовой работы.

2. Составление алгоритма для выполнения поставленной цели.

3. Написание программы, реализующей составленный алгоритм.

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

Основными источниками, помогавшими выполнить поставленную цель, явились:

1. Книги по линейной алгебре, в которых содержался материал по теории матриц.

2. Книги по информатике и программированию.

Результатом данной курсовой работы стал алгоритм генерации матриц и написанная на его основе программа. Данная программа предназначена для работы с целыми числами. Одной из перспектив развития данного алгоритма является его улучшение для работы с действительными и комплексными числами, а программы - написание ее для работы со всеми числами: целыми, вещественными, комплексными.

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

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

Список литературы

1. Ланкастер П. Теория матриц / Ланкастер П. - М.: Наука, 1982. - 272 с.

2. Линейная алгебра / Ильин В.А., Позняк Э.Г. - М.: Наука, 1978. - 304 с.

3. Кострикин А.И. Введение в алгебру / Кострикин А.И. - М.: Физико-математическая литература, 2001. - 368 с.

4. Писанецки С. Технология разряженных матриц / Писанецки С. - М.: Мир, 1988. - 410 с.

5. Гантмахер Ф.Р. Теория матриц / Гантмахер Ф.Р. - М.: Наука, 1988. - 552 с.

6. Подбельский В.В. Язык С++ / Подбельский В.В. - М.: Финансы и статистика, 2003. - 560 с.

7. Кетков Ю.Л., Кетков А.Ю. Практика программирования: Бейсик, Си, Паскаль. Самоучитель. / Кетков Ю.Л., Кетков А.Ю. - СПб.: БХВ - Петербург, 2002. - 480 с.

8. Мальцев А.И. Основы линейной алгебры / Мальцев А.И. - М.: Наука, 1970. - 400 с.

9. Крячков А.В., Сухинина И.В., Томшин В.К. Программирование на С и С++ / Крячков А.В., Сухинина И.В., Томшин В.К. - М.: Горячая линия - Телеком, 2000. - 344 с.

Приложение

Таблица тестов.

В таблице приведены результаты некоторых тестов программы.

номер теста

входные данные

выходные данные

1

0

2

-100 100

2

-10

3

-50 50

3

-1

3

-24 50

4

50

2

-100 100

5

113

4

-100 100

Проверьте правильность ввода данных! Размерность должна быть > или равно 2. Определитель должен входить в диапазон, если является простым числом, или раскладываться на простые множители принадлежащие данному диапазону!!!

6

1

3

-24 50


Подобные документы

  • Строение жидкокристаллического монитора. Нематические жидкокристаллические субстанции. Рассеивание светового потока. Проблема TN матриц. Горизонтальные углы обзора матриц. Улучшенные матрицы S-IPS и SA-SFT. Технология Multi-Domain Vertical Alignment.

    презентация [235,8 K], добавлен 04.09.2012

  • Особенности работы с массивами с помощью MS Excel. Вычисление определителей матриц, произведения матриц и матрицы на вектор. Скалярное произведения найденных векторов. Поиск обратных матриц. Решение системы линейных уравнений, проверка найденных решений.

    лабораторная работа [270,9 K], добавлен 05.06.2015

  • Создание информационной системы обработки матриц. Общая характеристика программного обеспечения, которое реализует выполнение заданных функций. Программа разработана с использованием среды визуального программирования Delphi 7 и языка Object Pascal.

    курсовая работа [373,4 K], добавлен 14.01.2011

  • Си - стандартизированный процедурный язык программирования. Алгоритм и программа на языке Си для формирования двух матриц с определенной размерностью и значением элементов. Применение матриц в математике. Исходный текст программы и результаты выполнения.

    реферат [1,4 M], добавлен 23.12.2010

  • История и задачи разработки языка программирования Pascal. Понятие и характерные особенности типизированного файла, основные операции с файловыми переменными. Блок-схема алгоритма и исходный текст программы для обработки сведений об учениках школы.

    контрольная работа [55,3 K], добавлен 31.07.2013

  • Использование ранжированных переменных в программном пакете Mathcad. Создание матриц без использования шаблонов матриц, описание операторов для работы с векторами и матрицами. Решение систем линейных и нелинейных уравнений с помощью функций Mathcad.

    контрольная работа [964,6 K], добавлен 06.03.2011

  • Схема и коэффициент эффективности дискретного канала. Функции блоков, свойства канальных матриц, информационные характеристики источника сообщений и приемника. Теоремы Шеннона о критической скорости, криптографическому и помехоустойчивому кодированию.

    учебное пособие [994,9 K], добавлен 06.05.2011

  • Понятие матрицы, определение ее составных частей и границ, обосновывающие теории. Арифметические операции над матрицами, способы их представления в Mathcad. Формирование уравнений цепи на основе теории графов. Характеристика топологических матриц графа.

    учебное пособие [982,4 K], добавлен 03.05.2010

  • Задача нахождения кратчайшего покрытия булевой матрицы. Алгоритмы поиска кратчайших покрытий методом Патрика и методом Закревского. Метод предварительного редуцирования булевой матрицы. Описание программы "Нахождение кратчайшего покрытия булевых матриц".

    курсовая работа [884,1 K], добавлен 12.12.2010

  • Обоснование необходимости разработки программного комплекса. Обзор методов восстановления трёхмерных сцен. Общая структура алгоритма восстановления 3D сцен и сравнительный анализ его методов. Сравнительный анализ приближений и оценка его результатов.

    дипломная работа [2,6 M], добавлен 10.01.2013

Работы в архивах красиво оформлены согласно требованиям ВУЗов и содержат рисунки, диаграммы, формулы и т.д.
PPT, PPTX и PDF-файлы представлены только в архивах.
Рекомендуем скачать работу.