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

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

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

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

Добавлен: 04.12.2023

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

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

ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.


Министерство образования и науки Российской Федерации

Федеральное государственное бюджетное образовательное учреждение

высшего образования

«Уфимский государственный нефтяной технический университет»

Кафедра вычислительной техники и инженерной кибернетики

Отчет

по лабораторной работе №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.

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