Тексты программ на Паскале
Лабораторная работа №2
«Программирование арифметического цикла»
Постановка задачи
Разработать программу табулирования (вычисления таблицы значений) функции для произвольного диапазона изменения независимого параметра или аргумента. Выполнить расчет для заданных значений исходных данных.
Результаты расчетов вывести в табличной форме.
; ; ; .
Анализ задачи
Задача состоит в многократном вычислении значений аргумента x и функции y при изменении параметра α от начального значения αн =0,5 до конечного значения αк =2,5 с шагом ∆α = 0,5. Исходных данных для расчета достаточно.
Результаты расчёта удобно представить в виде таблицы. Число строк в таблице N можно вычислить заранее по формуле:
N = Целое((αк - αн)/∆α) + 1,
причём при выделении целого дробную часть числа следует отбросить.
Для проверки корректности постановки задачи и выявления ограничений на исходные данные найдём области определения и области возможных значений всех расчётных функций.
Область определения функции x = x (α) Dx = {α >0}, её возможные значения x Î R.
Область определения функции y = y(α, x) Dy = {x ≥ 0, αÎ R}, её возможные значения y ≥ 0. Из области определения Dy: x ≥ 0, следовательно, ≥0 => ≥ 1 => α ≤ 2*π ≈ 6,283.
Исходные данные не противоречат области определения расчётных функций.
Подготовим тестовый пример для последующей проверки правильности созданной программы (для контрольного расчёта).
Правильность программирования расчётных формул можно проверить по одному значению параметра α, а его изменение можно проконтролировать по результатам расчёта.
Для упрощения ручного расчёта возьмемα = 2.
Тогда ,
≈ ≈
≈ ≈ 1,250
Алгоритмы решения задачи
Многократно повторяющиеся действия описывается циклическим алгоритмом. Так как число повторений в данной задаче заранее известно, алгоритм решения задачи можно описать в виде арифметического цикла (схема Work_2a), а также в виде цикла “Пока” (Work_2b) и цикла “До” (Work_2c).
При организации арифметического цикла число повторений N вычисляется, а параметром цикла служит вспомогательная переменная i - номер строки.
Таблица переменных для алгоритма Work_2a
Смысл переменных | Обозначение | Тип переменной | Примечания | |
в алгор. | в прогр. | |||
Исходные данные: Начальное значение параметра Конечное значение параметра Шаг изменения параметра | αн αк | an ak da | веществ. веществ. веществ. | 0<αн<6,28 6,28>αк >αн ≠0 |
Промежуточные данные: *Количество строк *Номер строки Аргумент | n i x | n i x | целый целый веществ. | i = 1,n,1 x>0 |
Результаты Функция | y | y | веществ. | y>0 |
Примечания: в таблицах переменных алгоритмов Work_2b и Work_2c переменные, помеченные в таблице *.
Интерфейс программы
Ввод исходных данных запланируем в форме диалога: данные нужно будет вводить с клавиатуры при появлении соответствующего запроса на экране монитора после запуска программы.
Спланируем вид таблицы с результатами расчёта для алгоритма Work_2a: её заголовок, шапку, тело в следующем виде
Результаты табулирования функции
*************************************
* i * a * x * 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 , так как эта переменная в них не используется.
Тексты программ на Паскале
Программа решения задачи с использованием оператора арифметического цикла.
Программа решения задачи с использованием оператора цикла “ПОКА”. Текст программы можно получить из предыдущего варианта путём внесения необходимых изменений: исключения переменных i и n из раздела описаний, не требуется расчёт n, нужно заменить опрератор цикла, убрать в таблице колонку номера строки.
Программа решения задачи с использованием оператора цикла “ДО”.