У вас вопросы?
У нас ответы:) SamZan.net

Контрольная работа- Численное интегрирование методом прямоугольников

Работа добавлена на сайт samzan.net:

Поможем написать учебную работу

Если у вас возникли сложности с курсовой, контрольной, дипломной, рефератом, отчетом по практике, научно-исследовательской и любой другой работой - мы готовы помочь.

Предоплата всего

от 25%

Подписываем

договор

Выберите тип работы:

Скидка 25% при заказе до 29.12.2024

Содержание

График выполнения курсового проекта

Введение

Общая часть. Обзор элементов языка программирования

Специальная часть. Общая постановка задачи

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

Заключение

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


График выполнения курсового проекта

№ п/п

Наименование работы

Сроки исполнения

1

Вводный инструктаж. Выдача заданий. Общая постановка задачи.

24.11

2

Составление плана работы.

25.11

3

Анализ программных средств.

27.11

4

Описание набора данных

29.11

5

Составление алгоритма работы программы.

1.12

6

Организация ввода-вывода данных.

2.12

7

Создание заставки программы.

4.12

8

Организация меню.

6.12

9

Описание проблемной процедуры.

8.12

10

Разработка блок-схемы проблемной процедуры.

9.12

11

Разработка алгоритма проблемной процедуры.

11.12

12

Отладка проблемной процедуры.

13.12

13

Тестирование проблемной процедуры.

18.12

14

Исправление ошибок проблемной процедуры.

20.12

15

Обработка дополнительных процедур.

22.12

16

Отладка дополнительных процедур.

22.12

17

Тестирование дополнительных процедур.

23.12

18

Отладка программного комплекса.

24.12

19

Тестирование программного комплекса.

25.12

20

Исправление ошибок программного комплекса.

26.12

21

Оформление интерфейса программы.

27.12

22

Окончательное оформление программы.

27.12

23

Оформление пояснительной записки.

28.12

24

Защита курсового проекта.

29.12


Введение

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

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

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


Общая часть. Обзор элементов языка программирования

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

Процедуры и функции, используемые в программе, должны быть соответствующим образом описаны до первого их упоминания. Вызов процедуры или функции производится по их имени. Подпрограммы в языке Паскаль могут иметь параметры (значения, передаваемые в процедуру или функцию в качестве аргументов). При описании указываются так называемые формальные параметры (имена, под которыми будут фигурировать передаваемые данные внутри подпрограммы) и их типы. При вызове подпрограммы вместе с ее именем должны быть заданы все необходимые параметры в том порядке, в котором они находятся в описании. Значения, указываемые при вызове подпрограммы, называются фактическими параметрами.

Формат описания процедуры:

Procedure <Имя процедуры> (<Имя форм. параметра 1>: <Тип>;

< Имя форм. параметра 2>: <Тип>?);

<Раздел описаний> Begin <Тело процедуры> End;

Раздел описаний может иметь такие же подразделы, как и раздел описаний основной программы (описание процедур и функций - в том числе). Однако все описанные здесь объекты "видимы" лишь в этой процедуре. Они здесь локальны также, как и имена формальных параметров. Объекты, описанные ранее в разделе описаний основной программы и не переопределенные в процедуре, называются глобальными для этой подпрограммы и доступны для использования.

Формат описания функции:

Function <Имя функции> (<Имя форм. параметра 1>: <Тип>;

< Имя форм. параметра 2>: <Тип>?): <Тип результата>;

<Раздел описаний> Begin <Тело функции> End;

Файл - это совокупность упорядоченных и взаимосвязанных записей, имеющая описание для идентификации отдельных записей, таким образом, файл - это структура данных.

Структура данных файл в зависимости от типа элементов делится на типизированные, текстовые и нетипизорованные файлы.

Текстовые файлы - это файл последовательного доступа и в которых:

а) информация представлена в текстовом виде посредством символов из набора ASCII;

б) информация может разделяться на строки произвольной длины. Признаком конца строки служат два специальных символа #10 и #13;

в) в конце файла присутствует символ #26;

Стандартные процедуры и функции для работы с текстовыми файлами

1. ReadLn (var F: Text)

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

2. WriteLn (var F: Text)

Процедура записывает символ "Конец строки" в текстовый файл.

3. EOLN (var F: Text): Boolean

Функция возвращает TRUE, если в файле F найден символ "Конец строки" или символ "Конец файла" и FALSE - в противном случае.

Замечание. С символом EOLN оперируют следующие процедуры:

процедура WriteLn (F) записывает символ "Конец строки" (EOLN) в компонент файла, на который установлен указатель файла;

процедура ReadLn (F) пропускает оставшуюся часть текущей строки и устанавливает указатель файла на первый символ новой строки.

4. EOF (var F: Text): Boolean

При работе с текстовым файлом функция возвращает результат TRUE, если указатель файла расположен в позиции символа "Конец файла" ("CTRL"+"Z") и FALSE - в противном случае.

5. SeekEOLN (var F: Text): Boolean

Аналогична функции EOLN, но пропускает символы "Пробел" перед проверкой на достижение символа "Конец строки".

6. SeekEOF (var F: File): Boolean

Аналогична функции EOF, но пропускает символы "Пробел" и символы "Конец строки" перед проверкой на достижение символа "Конец файла".

В. Нетипизированные файлы

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

Описание нетипизированного файла: var F: File;

Для обработки файлов без типа применяют те же функции, что и для файлов с типом (т.е. функции EOF, FileSize, FilePos).

Типизированные файлы - это файлы прямого доступа.

Типизированный файл - это файл, состоящий из последовательности элементов (называемых компонентами) одного типа. Количество компонентов файла при задании файла не ограничивается.

Так как все компоненты файла имеют одинаковую "длину", то позиция каждого компонента в файле может быть вычислена.

Длиной файла называется число находящихся в нём компонентов. Пустым файлом называется файл, не содержащий компонентов. Длина пустого файла равна нулю.

Не допускается использование файловых переменных в операторах присваивания и в выражениях. Над файлами можно выполнять два явных вида действий:

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

2. Просмотр файла. Он выполняется в результате последовательного продвижения по файлу, начиная с его начала. При этом в каждый момент времени доступен лишь один компонент файла. В процессе просмотра файла изменять значения компонентов на новые запрещается.

Начать писать в файл можно только с самого его начала, дописывая новые компоненты последовательно одну за другой; для чтения также надо начинать просмотр файла с самого начала. Вследствие такой организации на одном просмотре файла нельзя совмещать и чтение, и запись информации: можно либо только читать из файла, либо только писать в файл. Однако, работая с различными файлами A и B, можно одновременно читать файл A и писать в файл B (и наоборот).

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

Условные операторы предназначены для изменения порядка выполнения инструкций программы, в соответствии с некоторым условием.

IF условие THEN оператор 1 ELSE оператор 2; (полная форма)

Блок-схема:

Добавление к конструкции служебного слова ELSE позволяет выполнить определенные действия в случае, когда условие не выполняются.

Циклы с параметром.

При использовании цикла со счетчиком следует задать переменную-счетчик. При этом надо помнить, что тип такой переменной должен быть скалярным: Integer, Char, Boolean, перечисляемый тип.

For <начальное значение счетчика> To <конечное значение> Do <тело цикла>;

Счетчик меняется от меньшего к большему с шагом 1

For <начальное значение счетчика> Downto <конечное значение> Do <тело цикла>; Счетчик меняется от большего к меньшему с шагом - 1

Специальная часть. Общая постановка задачи

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

Описание программ комплекса.

В данной программе использованы следующие программные средства:

Модули:

Graph- подключение графического режима;

Crt - подключение текстового режима;

Файлы:

rezyltat. txt - результаты вычислений.

Процедуры:

Procedure BMP, BMP2, BMP 3- Выводит 256-цветный точечный рисунок;

Zastavca-вывод заставки на экран;


Макро блок-схема комплекса

Таблица идентификаторов комплекса.

Переменные

тип

Значения

1

a

string

Массив для хранения пункта меню

2

Gm, gd

 integer 

Переход в графический режим

3

k

integer

Выбор пункта меню

4

f

text

Текстовый файл

5

n

integer

количество отрезков

6

i

integer

Параметр цикла

7

s

real

Вычисление конечного результата

8

a

real

нижний предел интегрирования

9

b

real

верхний предел интегрирования

10

x

 real

Аргумент функции

11

h

real

Шаг интегрирования

12

x, y

integer

Координаты вывода меню

13

с

 char

Запоминает код нажатой клавиши

Структура записей файлов.

Постановка проблемной программы (процедуры).

Проблемной программой является процедура вывода на экран 256-цветного точечного рисунка.

Описание проблемной программы.

procedure BMP; (Процедура вывода на экран 256-цветного точечного рисунка)

var f: file of byte; (Раздел описания переменных)

x,y, i,Gd,Gm: integer;

c: byte;

begin

Gd: =Detect; (Определяет тип графического режима (номер драйвера))

InitGraph (Gd, Gm, ' '); (Устанавливает графический режим экрана)

If GraphResult <> grOk Then Halt (1);

assign (f,'tityl. bmp'); (Связывает файл с файловой переменной)

reset (f); (Открывает файл для чтения)

for i: =0 to 1077 do (Переход на 1077 позицию)

read (f,c); (ввод данных)

for y: =479 downto 0 do

for x: =0 to 639 do

begin

read (f,c); (Считывает информацию с файла)

putpixel (x,y,c); (Вывод рисунка)

end;

readkey; (Ожидание нажатия клавиши)

close (f); (Закрывает файл)

closegraph; (Закрывает графический режим экрана)

end;

Блок-схема проблемной программы.


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

Системные требования:

Операционная система MS DOS или Windows 98-XP.

Среда программирования Turbo Pascal 7.0.

Инструкция пользователю по работе с программой.

Для функционирования Pascal 7.0, так как приложение написано в этом режиме. Сама программа установки не требует, необходимо скопировать файлы в папку Turbo Pascal.

Запуск программы осуществляется автоматически при её открытии.

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

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

Данная программа вычисляет значение интеграла функции. Интервал интегрирования вводятся пользователем. Программа вычислит результат и выдаст его (в числовом виде) на экран монитора.


Заключение

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

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

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


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

1. Немнюгин С.А. Turbo PASCAL С-П Изд-во Питер 2000.

2. Фаронов В.В. Turbo Pascal 7.0. М. "Нолидж", 1999

3. Семакин И.Г., Шестаков А.П. Основы программирования Москва Из-во "Академия" 2007

4. Васюкова Р.Д., Практикум по основам программирования, Язык ПАСКАЛЬ, М, ВШ, 1991

5. Новичков В.С., Алгоритмические языки в техникуме, ПАСКАЛЬ, М, 1990

6. Культин Н. Turbo Pascal в задачах и примерах Санкт - Петербург "БХВ - Петербург" 2007

7. А.И. Марченко, Л.А. Марченко. Программирование в среде Turbo Pascal 7.0 Москва из-во "Юниор" 1997

8. Кирнос В.И. Язык Паскаль и численные методы. Из-во "Келеш-2030" 2004.


условие

Действие 2

Действие 1

начало

  okno

   BMP

  BMP3

     zastavca

меню

   BMP2

 Integral3

 Integral2

 Integral1

rezyltat

 выход

конец

     Программа

Титульный лист

Теория

Заставка

Результат

начало

   f

  i:=0,1077,1

f, c

  y:=479,0,-1

  x:=0,639,1

f, c

x, y, c

Конец




1. Томашевского СОНЕТЫ НА ЖИЗНЬ МАДОННЫ ЛАУРЫ I В собранье песен верных юной страсти Щемящий отзвук в
2. Биологическая стадия эволюции Биосферы Солнце является поставщиком энергии для большинства процессов пр
3. Дворцы Петербурга
4. Пир уже давно готов и уже давно все званы на него; но один купил землю другой женится третий пробует быков ч
5. передача земли в собственность граждан и юридических лиц приватизация земель; введение множественности
6. НУЛОЦИТОЗ АГРАНУЛОЦИТОЗ уменьшение числа лейкоцитов
7. Франц Ксавьер фон Баадер
8. образовательной системы в стране обеспечение ее целостности.
9. Проблема метода в бихевиоризме
10. і. Яка організація зобов~язана розслідувати скласти акт за формою Н1 та взяти на облік цей нещасний випад
11. Вариант30 СанктПетербург 2004 ЗАДАНИЯ К ЛАБОРАТОРНОЙ РАБОТ
12. Экономико-географическое обоснование размещение предприятий цветной металлурги
13. Пойманные за книгой 1
14. Реферат- Интеллектуальный террор и социально-экономические методы борьбы с ним
15. СТУДЕНТАМ На сегодня в Высших и Средних учебных заведениях города Запорожья обучаются около 100 000 студент
16. период времени имеющий начало продолжительность и окончание
17. Эдуард Вениаминович Лимонов (Савенко) Статьи в газете «Известия»
18. Идея является компонентом- [] маркетинговой концепции 0существление товарной политики ~ это- [] серия конк.html
19. Выборы и избирательные системы
20. Франция в эпоху Ренессанса