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

Тип работы:
Контрольная
Предмет:
Программирование


Узнать стоимость

Детальная информация о работе

Выдержка из работы

Оглавление

Работа в Pascal

Теория рядов

Постановка задачи

Условные обозначения принятые в программе

Исходный текст программы

Результаты выполнения программы

Список литературы

Работа в Pascal

Язык назван в честь выдающегося французского математика, физика, литератора и философа Блеза Паскаля, который создал первую в мире механическую машину, складывающую два числа.

Язык Паскаль был создан Никлаусом Виртом в 1968—1969 годах после его участия в работе комитета разработки стандарта языка Алгол-68. Он был опубликован в 1970 году Виртом как небольшой и эффективный язык, чтобы способствовать хорошему стилю программирования, использовать структурное программирование и структурированные данные.

Особенностями языка являются строгая типизация и наличие средств структурного (процедурного) программирования. Паскаль был одним из первых таких языков. По мнению Н. Вирта, язык должен способствовать дисциплинированию программирования, поэтому, наряду со строгой типизацией, в Паскале сведены к минимуму возможные синтаксические неоднозначности, а сам синтаксис автор постарался сделать интуитивно понятным даже при первом знакомстве с языком.

Тем не менее, первоначально язык имел ряд ограничений: невозможность передачи функциям массивов переменной длины, отсутствие нормальных средств работы с динамической памятью, ограниченная библиотека ввода-вывода, отсутствие средств для подключения функций написанных на других языках, отсутствие средств раздельной компиляции и т. п. Подробный разбор недостатков языка Паскаль того времени был выполнен Брайаном Керниганом в статье «Почему Паскаль не является моим любимым языком программирования» (эта статья вышла в начале 1980-х, когда уже существовал язык Модула-2, потомок Паскаля, избавленный от большинства его пороков, а также более развитые диалекты Паскаля). Некоторые недостатки Паскаля были исправлены в ISO-стандарте 1982 года, в частности, в языке появились открытые массивы, давшие возможность использовать одни и те же процедуры для обработки одномерных массивов различных размеров.

Необходимо заметить, что многие недостатки языка не проявляются или даже становятся достоинствами при обучении программированию. Кроме того, по сравнению с основным языком программирования в академической среде 1970-х (которым был Фортран, обладавший гораздо более существенными недостатками), Паскаль представлял собой значительный шаг вперёд. В начале 1980-х годов в СССР для обучения школьников основам информатики и вычислительной техники академик А. П. Ершов разработал алголо-паскалеподобный «учебный алгоритмический язык».

Наиболее известной реализацией Паскаля, обеспечившей широкое распространение и развитие языка, является Turbo Pascal фирмы Borland, выросшая затем в объектный Паскаль для DOS (начиная с версии 5. 5) и Windows и далее в Delphi, в которой были внедрены значительные расширения языка.

Паскаль, в его первоначальном виде, представляет собою чисто процедурный язык и включает в себя множество алголоподобных структур и конструкций с зарезервированными словами наподобие if, then, else, while, for, и т. д. Тем не менее, Паскаль также содержит большое количество возможностей для структурирования информации и абстракций, которые отсутствуют в изначальном Алголе-60, такие как определение типов, записи, указатели, перечисления, и множества. Эти конструкции были частично унаследованы или инспирированы от языков Симула-67, Алгол-68, созданного Никлаусом Виртом AlgolW и предложены Хоаром.

Теория рядов

Теория рядов является важнейшей составной частью математического анализа и находит как теоретические, так и многочисленные практические приложения. Различают ряды числовые и функциональные.

Постановка задачи

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

При

рascal ряд массив программа

Исходный текст программы

Programm Sum1;

Uses crt;

Const n = 5;

X1 = array [1. 6] of real = (0. 55, 0. 833, 1. 21, 1. 8, 2. 222, 2. 45);

Var i, j, k: integer;

X, a, s: real;

Function f (k: intejer):real;

Begin

If k=0 then f: =1;

Else f:= k*f (k-1)

End;

Function znak (m: integer):integer;

Begin

If odd (m) = true then znak: = -1

Else znak:= 1

End;

Function OCR (d: integer; x: real): real;

Begin

OCR: = znak (d) * (exp (2*d)*ln (x) / (2*d*f (d));

End;

Begin

Clrscr;

For i: = 1 to 6 Do

Begin

X: = x1 [i];

S: = 0;

For j = 1 to n Do

Begin

Writeln (OCR (j, x): 6: 3);

S: = S + OCR (j, x);

End;

Writeln (` x = ', x: 6: 3, ` s = ', s: 6: 3);

End;

Readln;

End.

Результаты выполнения программы

-0,704

1,301

-2,136

2,960

-3,499

X = 1,210 S = -9,789

-2,950

5. 449

-8. 947

12,396

-14,655

X = 2. 222 S = -13,655

-3,311

6,116

-10,042

13,913

-16. 448

X = 2,450 S = -15,448

Список литературы

1. Вирт Н. Алгоритмы + структуры данных = программы. — М.: Мир, 1985. — С. 406.

2. Вирт Н., Йенсен К. Паскаль. Руководство для пользователя и описание языка. — М.: Финансы и статистика, 1982. — С. 151.

3. http: //window. edu. ru/resource/176/47 176/files/mstuca41. pdf

4. http: //bookre. org/reader?file=816 320

ПоказатьСвернуть
Заполнить форму текущей работой