КРАТКИЕ ТЕОРЕТИЧЕСКИЕ СВЕДЕНИЯ
Суммирование членов бесконечного ряда осуществляется до члена ряда, меньшего ε. Так как при суммировании заранее неизвестно число членов ряда, то в этом случае нецелесообразно пользоваться оператором цикла FOR. Задача вычисления суммы членов бесконечного ряда требует организации итерационного цикла, окончание которого определяется условием у<ε, где у - значение члена ряда. Для некоторых рядов при вычислении члена ряда целесообразно использовать прием накопления произведения, что позволяет уменьшить затраты времени на его вычисление. Начальное значение суммы необязательно равно нулю, если значение первого члена ряда вычислять нет необходимости. Пример 1.Составить программу для вычисления суммы членов бесконечного ряда с точностью до члена ряда, меньшего ε:
При этом вычисление текущего члена ряда выполнить по формуле , где yп - текущий член ряда; уп-1 - предыдущий член ряда. Программа с оператором цикла REPEAT имеет вид PROGRAM RYD (INPUT,OUTPUT); VAR X,EPS,Y,Z:REAL; N:INTEGER; BEGIN READ (X,EPS); Z:=l; N:=0; Y:=l; REPEAT N:=N+1; Y:=Y*X/N; Z : =Z+Y UNTIL Y<EPS; WRITE (Z) END. Вычисление полинома. При вычислении полинома n-й степени вида удобно использовать схему Горнера . Этот прием позволяет сократить затраты времени на вычисление за счет замены многократного возведения х в степень k, где k=1, 2, ..., n, рекуррентной формулой у= ух + аk, где k=2,...,n+1. Коэффициенты полинома и свободный член необходимо свести в массив размерностью n+1, где n - степень полинома. Если член, содержащий х в какой-либо степени, отсутствует, то это значит, что соответствующий коэффициент равен нулю. Перед циклом необходимо задать начальное значение полинома, равное коэффициенту в наибольшей степени, а внутри цикла вычислять значение полинома, используя оператор присваивания Y:=Y*X + A[I]; Итак, для вычисления полинома необходимо: 1) перед циклом задать начальное значение полинома, равное коэффициенту при Х в наибольшей степени; 2) внутри цикла вычислять текущее значение полинома с использованием оператора присваивания Y=Y*X+A(I), где Y - текущее значение полинома; 3) коэффициенты полинома и свободный член свести в массив размерностью n+1, где n - степень полинома. Если член, содержащий Х какой-либо степени, отсутствует, то это значит, что соответствующий коэффициент равен нулю. Пример 2. Составить программу для вычисления полинома степени (п - 1), . Программа имеет вид PROGRAM POLINOM (INPUT,OUTPUT); CONST NN=30; VAR I,N:INTEGER; X,Y:REAL; A:ARRAY [1..NN] OF REAL; BEGIN READ (X,N); FOR I:=l TO NN DO READ (A[I]); Y:=A[1]; FOR I:=2 TO N DO Y:=Y*X+A[I]; WRITE (Y) END.
КОНТРОЛЬНЫЕ ВОПРОСЫ. 1. Что такое полином? 2. Какие правила необходимо соблюдать при вычислении полинома? 3. Чему должно быть равно начальное значение полинома? 4. Как определить размерность массива, в который сводятся коэффициенты полинома и свободный член? ©2015 arhivinfo.ru Все права принадлежат авторам размещенных материалов.
|