Файл: Отчет по лабораторной работе 3 Программирование арифметического цикла.doc

ВУЗ: Не указан

Категория: Отчет по практике

Дисциплина: Не указана

Добавлен: 04.12.2023

Просмотров: 96

Скачиваний: 4

ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.
Министерство образования и науки Российской ФедерацииФедеральное государственное бюджетное образовательное учреждение высшего образования«Уфимский государственный нефтяной технический университет»Кафедра вычислительной техники и инженерной кибернетикиОтчетпо лабораторной работе №3«Программирование арифметического цикла»вариант ____Студент гр. Б___-21-0_ ____________ _____________(подпись, дата)Ст. преподаватель ____________ Р.М. Харисов(подпись, дата)Уфа 2022Лабораторная работа №3

«Программирование арифметического цикла»

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

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

2. Анализ задачи

Задача состоит в многократном вычислении значений аргумента x и функции y при изменении параметра x от начального значения xн =1 до конечного значения xк =3 с шагом ∆x = 0,25. Исходных данных для расчета достаточно. Результаты расчёта удобно представить в виде таблицы. Число строк в таблице N можно вычислить заранее по формуле:N = Целое((αк - αн)/∆α) + 1,причём при выделении целого дробную часть числа следует отбросить.Для проверки корректности постановки задачи и выявления ограничений на исходные данные найдём области определения и области возможных значений всех расчётных функций.Область определения функции fi= fi (x,ka) Dfi = {x >0}, её возможные значения fi R.Область определения функции y = y(fi, x) Dy = {
fi ≥ 0, α R}, её возможные значения y ≥ 0. Из области определения Dy: fi ≥ 0.Исходные данные не противоречат области определения расчётных функций.Подготовим тестовый пример для последующей проверки правильности созданной программы (для контрольного расчёта). Правильность программирования расчётных формул можно проверить по одному значению параметра α, а его изменение можно проконтролировать по результатам расчёта.Для упрощения ручного расчёта возьмем x= 2.Тогда ,

3. Таблица переменных для алгоритма Work2a, Work2b, Work2ac


Смысл переменных

Обозначение

Тип переменной

Примечания

в алгор.

в прогр.

Исходные данные:

Начальное значение параметра

Конечное значение параметра

Шаг изменения параметра


xн

xк



k


xn

xk

xa

k


веществ.

веществ.

веществ.


x ≠ -1,

x R

kR


Промежуточные данные:

*Количество строк

*Номер строки

Аргумент


n

i

fi


n

i

fi


целый

целый

веществ.



i = 1,n,1

fi>0

Результаты

Функция


y


y


веществ.


y>0
Примечания: в таблицах переменных алгоритмов Work_2b и Work_2c переменные, помеченные в таблице *.

4. Алгоритмы решения задачи

Многократно повторяющиеся действия описывается циклическим алгоритмом. Так как число повторений в данной задаче заранее известно, алгоритм решения задачи можно описать в виде арифметического цикла (схема Work_2a), а также в виде цикла “Пока” (Work_2b) и цикла “До” (Work_2c).

П
Work_2a

Ввод

Ka,xн, xк, ∆x



1

2

3

4

5

6

7

8

9

7



3

5

6

Вывод

fi,y,x

8



Конец

9

да

Ввод

Ka,xн, xк, ∆x

Work_2b

1

2

5

Work_2c

1

Ввод

Ka,xн, xк, ∆x

2



3

4

Вывод

fi,y,x,

6

7



8



9

Конец

нет

да

9

4

8
ри организации арифметического цикла число повторений N вычис­ляет­ся, а параметром цикла служит вспомогательная переменная i - номер строки.

5. Интерфейс программы

Ввод исходных данных запланируем в форме диалога: данные нужно будет вводить с клавиатуры при появлении соответствующего запроса на экране монитора после запуска программы.

Спланируем вид таблицы с результатами расчёта для алгоритма Work_2a: её заголовок, шапку, тело в следующем виде

Результаты табулирования функции

*************************************

* i * x * fi * y *

*************************************

* 00 * 0.00 * 0.000 * 00.00000 *

* 00 * 0.00 * 0.000 * 00.00000 *

* 00 * 0.00 * 0.000 * 00.00000 *

*************************************

Примечания: в таблицах результатов расчёта алгоритмов Work_2b и Work_2c исключим столбец номера строки i , так как эта переменная в них не используется.

6. Тексты программ на Паскале

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

Программа решения задачи с использованием оператора цикла “ПОКА”. Текст программы можно получить из предыдущего варианта путём внесения необходимых изменений: исключения переменных i и n из раздела описаний, не требуется расчёт n, нужно заменить опрератор цикла, убрать в таблице колонку номера строки.


Программа решения задачи с использованием оператора цикла “ДО”.

7. Результаты решения задачи


Результаты расчёта по программе Work_2a.pas



Значения x и y в таблице при α = 2 совпали с точностью до трёх знаков со значениями ручного тестового расчёта, следовательно, расчётные формулы записаны правильно.

Результаты расчёта по программе Work_2b.pas


Результаты расчёта по программе Work_2c.pas полностью совпадает с содержимым файла Work_2b.dat.

Результаты табулирования функции по трём вариантам решения задачи полностью совпадают.