Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

КР №2 В-26

.doc
Скачиваний:
9
Добавлен:
01.04.2014
Размер:
49.15 Кб
Скачать

 

БЕЛОРУССКИЙ ГОСУДАРСТВЕННЫЙ УНИВЕРСИТЕТ

ИНФОРМАТИКИ И РАДИОЭЛЕКТРОНИКИ

Кафедра программного обеспечения информационных технологий

 

 

Факультет НиДО

Специальность ПОИТ

 

 

Контрольная работа № 2

по дисциплине «Основы алгоритмизации и программирования»

часть 1

Вариант № 26

 

 

Выполнил студент:

группа

Зачетная книжка №

  

  

 

 

Минск 2011

1). Задание

Ввести массив Х (10) и точность вычислений ε. Для каждого элемента массива Х вычислить с точностью ε значение функции

ex = 1 + x + (x2 / 2!) + (x3 / 3!) + (x4 / 4!) + ...

2)

Ввод элементов массива «х» и значения коэффициента «е»

For i=1 to 10 do

S1:=0, S2:=0, j:=0, n:=0

S2:=S1

S1:=S1+(exp(n*ln(x[i])))/(fact(n))

n:=n+1

abs(S1-S2)<=e

Вывод S2

Рис. 1. Схема алгоритма Насси-Шнайдермана

Описание алгоритма.

Вводятся значения элементов массива «х» и желаемого коэффициента точности «е». Присваиваются нулевые значения текущего члена S2, последующего члена S1, а также n (показатель степени и факториала). S1присваивается значению S2. Вычисляется значение S1.Значение nувеличивается на 1. Данные операции проводятся до достижения необходимой точности и для каждого элемента массива «х».

3)

programmassive;

usescrt;

var

i, n: integer;

S1, S2, e :real;

x: array[1..10] ofreal;

functionfact(n:integer):real; {вычисление значения факториала "n"}

begin

if n=0 then fact:=1

else fact:=fact(n-1)*n;

end;

begin

clrscr;

for i:=1 to 10 do {Ввод значений, принимаемых переменной "х"}

begin

writeln('Введите ', i, ' элемент массива');

readln(x[i]);

end;

write('e='); {Ввод значения коэффициента точности вычислений}

readln(e);

for i:=1 to 10 do

begin;

S1:=0;

S2:=0;

n:=0;

repeat

S2:=S1;

S1:=S1+(exp(n*ln(x[i])))/(fact(n)); {Вычисление значения суммы предыдущих и последующего членов}

n:=n+1;

until

abs(S1-S2)<=e; {Проверка достижения заданной точности}

writeln(S2); {Вывод значения суммы}

readln;

end;

end.

4) Результаты выполнения программыпри е=0,01:

X

S2

1

2.70833333333576E+0000

2

7.38095238095411E+0000

3

2.00796651785786E+0001

4

5.45939826428657E+0001

5

1.48402917371131E+0002

6

4.03421694338787E+0002

7

1.09662819474190E+0003

8

2.98094688156620E+0003

9

8.10307611395419E+0003

10

2.20264602662623E+0004

Соседние файлы в предмете Основы алгоритмизации и программирования