Внимание! Студландия не продает дипломы, аттестаты и иные документы об образовании. Наши специалисты оказывают услуги консультирования в области образования: в сборе информации, ее обработке, структурировании и оформления в соответствии с ГОСТом. Все услуги на сайте предоставляются исключительно в рамках законодательства РФ.
Нужна индивидуальная работа?
Подберем литературу
Поможем справиться с любым заданием
Подготовим презентацию и речь
Оформим готовую работу
Узнать стоимость своей работы
Дарим 200 руб.
на первый
заказ

Дипломная работа на тему: Вычисление определителя разложением по элементам строки

Купить за 600 руб.
Страниц
14
Размер файла
51.85 КБ
Просмотров
21
Покупок
0

Введение

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

Целью работы является составление учебно-методического текста по теме "Указатели". В частности, планируется:

) на нетривиальном примере продемонстрировать метод перехода от массивов к указателям, изложенный на сайте В.З. Цалюка [1];

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

Теоретическая часть курсовой работы написана на основе лекций и материалов, расположенных сайте В.З. Цалюка [1]. Также использовались материалы сайта Санкт-Петербургского государственного университета телекоммуникаций [2] и свободные интернет материалы [3].

Правильное понимание и использование указателей особенно необходимо для составления хороших программ по следующим причинам:

*указатели позволяют повысить эффективность программирования (к примеру, в некоторых ситуациях с помощью указателей можно существенно повысить скорость прохода массива);

*указатели обеспечивают поддержку динамических структур данных (таких как связанные списки и динамические массивы);

*при помощи указателей выполняется динамическое распределение памяти.

Однако написание программ с использованием указателей требует значительного напряжения и предельного внимания. Указатель может вызвать ряд затруднений, например, если указатель содержит неправильное значение, программа может быть неработоспособной. Можно легко ошибиться при использовании указателей; к тому же ошибки, связанные с неправильными значениями указателей, найти очень трудно. Но преимущества программирования с использованием указателей компенсируют все сложности.

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

Ярким примером подобной ситуации может послужить потребность в процедуре, которая должна работать с массивами различной длины. Приведем банальный пример: ввод элементов массива. Иногда для решения такой задачи достаточно объявить тип массива с константой в определении, например:

CONST NN = 3;= ARRAY[1..NN] ОF REAL; WriteVec(v: Vec);i: WORD;i := 1 ТО NN DО(v[i]);

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

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

CONST NN = 15;= ARRAY[1..NN] ОF REAL; WriteVec(v: Vec; к: WORD);i: WORD;i := 1 ТО к DО(v[i]);

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

Для данной дипломной работы не случайно была выбрана задача, использующая рекурсию, а именно: вычисление определителя матрицы разложением по элементам строки. Методы, использующие рекурсивные процедуры, значительно расходуют ограниченное пространство стека, что рождает потребность в точном использовании динамической памяти. Использование ресурсоемкой рекурсии оправдывается удобством программирования. А в заявленном методе, в отличие от более эффективных с точки зрения скорости и ресурсоемкости, но менее точных методов, появляется возможность вычисления определителей целочисленных матриц без погрешности.

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

Оглавление

- Введение

- Теоретическая часть

- Указатели

- Динамическая память

- Верстка веб страниц

- Практическая часть

- Постановка задачи

- Алгоритм перехода от индексов к указателям

- Требования к учебному тексту

- Требования к веб-странице

- Решение поставленной задачи Заключение

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

- функция определитель матрица алгоритм

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

1. В.З. Цалюк Этюды по алгоритмизации:

2. Учебные материалы Санкт-Петербургского государственного университета телекоммуникаций им. проф. М.А. Бонч-Бруевича:

Студия "Вэл Дизайн". Верстка - определения терминов <http://welldesign.ru/studio/process/markup/markup-definitions>

Как купить готовую работу?
Авторизоваться
или зарегистрироваться
в сервисе
Оплатить работу
удобным
способом
После оплаты
вы получите ссылку
на скачивание
Страниц
14
Размер файла
51.85 КБ
Просмотров
130
Покупок
0
Вычисление определителя разложением по элементам строки
Купить за 600 руб.
Похожие работы
Сумма к оплате
500 руб.
Купить
Заказать
индивидуальную работу
Гарантия 21 день
Работа 100% по ваши требованиям
от 1 000 руб.
Заказать
Прочие работы по предмету
Сумма к оплате
500 руб.
Купить
Заказать
индивидуальную работу
Гарантия 21 день
Работа 100% по ваши требованиям
от 1 000 руб.
Заказать
103 972 студента обратились
к нам за прошлый год
2081 оценок
среднее 4.9 из 5
Иван Все хорошо, в процессе работы отвечали.
Сергей Все отлично! Спасибо
Сергей Как всегда все отлично, спасибо!
Александр Работа выполняется и сдаётся в срок. Не требуется корректировки. Прошлую работу приняли на отлично. Спасибо. Рекомендую!
Александр Приятно было работать с Александром. Работа выполнена в срок, правки вносились быстро и без возражений. При...
Александр Обращалась к Александру дважды. Обе работы были выполнены качественно и в сорок, по вопросу корректировки проблем не...
Александр Очень рада, что мне попался Александр. Второй раз к нему обращаюсь, он всегда на связи и всё выполняет во время,...
Александр Спасибо большое! Александр очень ответственный ! Все 3 работы выполнил в сроки ! Все очень понравилось ! Это...
Олег Благодарю за работу!
Александр Спасибо большое за статью, очень повезло, что выбрал Вас