Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Дорошенко.doc
Скачиваний:
0
Добавлен:
01.04.2025
Размер:
658.94 Кб
Скачать

Задание к лабораторной работе №3.

Тема: применение операторов цикла с параметром, с предусловием и с постусловием. Программирование рекуррентных соотношений.

Часть 1 .

1. Задается целое положительное число N. Набрать и запустить на решение программу вычисления значения Y по формуле:

Y = (1+(2+(3+…(N-1+(N)1/2)1/2…)1/2 )1/2 )1/2.

Здесь принципиально важно применить вариант оператора цикла с параметром с изменением значения параметра по нисходящей, так как вычисление начинается с оператора sqrt(n) и заканчивается оператором sqrt(1+sqrt(…)).

{ Программа вычисления вложенных друг в друга N корней квадратных.}

program sqrt_n;

var i,n:integer;y:real;p:char;

begin write (‘Введи целое положительное N= ’);readln(n);

y:=0;

for i:=n downto 1 do y:=sqrt(y+i);

writeln(‘При N = ’,n,’ Y = ‘,y:8:3);

readln

end.

2. Внести в программу изменения, позволяющие выдавать на монитор результаты вычисления Y на каждом шаге i.

3. Внести в программу изменения, позволяющие вычислять Y до тех пор, пока разность значений Y на двух последующих шагах больше некоторой заданной (введенной с клавиатуры) величины Е.

Часть 2.

Разработать самостоятельно, набрать на ПК и отладить программу вычисления и выдачи на монитор последовательности чисел Фибоначчи:

А1=А2=1; Аii-1 + Аi-2.

В программе предусмотреть три варианта задания условия окончания вычисления последовательности:

Вариант 1. Вычислить N чисел последовательности (N вводить с клавиатуры).

Вариант 2. Вычислять последовательность чисел Фибоначчи до тех пор, пока последнее число не станет больше некоторого заданного с клавиатуры числа М.

Вариант 3. Вычислять до тех пор, пока разность между двумя последними числами последовательности на станет больше некоторого заданного R.

Задание к лабораторной работе №4.

Тема: вычисление суммы ряда сходящейся последовательности, программирование рекуррентных соотношений.

  1. Разработать программу вычисления c заданной точностью Е суммы ряда

S = X2/4! – X4/6! + X6/8! – X8/10! + … - + X2i /(2i+2)!+ -…

Вычисление суммы заканчивается, если модуль очередного слагаемого оказывается меньше заданного значения точности Е, вводимого с клавиатуры. Для оценки правильности результата предусмотреть вычисление по контрольной формуле:

S = (cos(X) - 1)/(X**2) + 0.5.

Примечание. Вычисление очередного члена ряда ai , i=2,3,… следует проводить по формуле

ai = a (i-1) *d

на основе значения предыдущего члена ряда ai-1 , умноженного на дополнение d. Дополнение d следует определить из отношения d = ai /ai-1 , где выражения для вычисления двух соседних членов ряда записываются в общем виде.

Тогда для приведенного выше ряда дополнение получается в виде:

d = (- (X2i /(2i+2)!) )/ (X2(i-1) /(2(i-1)+2)!) = - X2 / ((2i+1)(2i+2)),

и первый член ряда а1 = X2/4!