Смекни!
smekni.com

Генерация матриц (стр. 8 из 8)

}

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 02-100100
2 -103-50 50
3 -13-2450
4 502-100 100
5 1134-100 100 Проверьте правильность ввода данных! Размерность должна быть > или равно 2. Определитель должен входить в диапазон, если является простым числом, или раскладываться на простые множители принадлежащие данному диапазону!!!
6 13-24 50