Файл: ИНДИВИД ЗАДАНИЕ ЭКОНОМИСТЫ _Методичка.pdf

ВУЗ: Не указан

Категория: Не указан

Дисциплина: Не указана

Добавлен: 10.07.2024

Просмотров: 132

Скачиваний: 0

ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.

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

В четвертых, поскольку при организации цикла с пред- или постусловием перебор параметров цикла (переменная i) следует производить программным образом, в теле цикла должен присутст- вовать оператор, обеспечивающий переход к следующему значению параметра цикла

i:= i + 1.

В пятых, с учетом особенностей операторов цикла с пред- и постусловием, в случае использо-

вания оператора цикла с предварительной проверкой условия тело цикла будет выполняться до тех пор, пока логическое условие в заголовке цикла истинно, выполнение будет прекращено, как только логическое условие становится ложным. При этом в теле цикла допускается только один оператор языка Паскаль и придется использовать составной оператор. В случае использования оператора цикла с постусловием тело цикла будет выполняться до тех пор, пока логическое ус- ловие в заголовке цикла является ложным, выполнение прекращается, как только условие стано- вится истинным. При этом в теле цикла допускается произвольная последовательность операто- ров языка Паскаль, и нет необходимости использовать составной оператор. Поэтому, в случае использования оператора цикла с предусловием, логическое условие следует формулировать в виде проверки на не превосходство значения слагаемого значения точности, а в случае исполь- зования оператора цикла с постусловием, логическое условие следует формулировать в виде про-

верки на превосходство значения слагаемого значения точности

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

ABS (a) >= eps,

а для цикла с постусловием в виде

ABS (a) < eps.

В седьмых, поскольку первое слагаемое в сумме не учтено до начала циклических вычислений, при организации цикла следует сначала добавить его к сумме, затем перейти к новому слагаемо- му, изменив значение параметра i, и только потом рассчитать новое слагаемое.

Сучетом этих особенностей реализация алгоритма на языке Паскаль выглядит так:

Сиспользованием цикла с предусловием:

Program TASK (input, output);

{Заголовок программы}

Const eps = 0.001;

{Описание константы}

Var a,s: real; i: integer;

{Описание переменных}

Begin

{Начало программы}

Clrscr:

{Процедура очистки экрана}

Writeln(’Программа расчета суммы’);

{Вывод пояснений к программе}

i:= 1; a:= -1; S:= 0;

{Установка начальных значений }

While ABS(a) >= eps do begin

{Заголовок цикла }

S:= S+a;

{Добавление слагаемого в сумму}

i:= i + 1;

{Переход к новому параметру цикла}

a:=(-1)/i*a; end;

{Расчет слагаемого }

Writeln(’Сумма

 

 

{Вывод результата на экран}

равна, S = ’,S:6:4);

Repeat Until Keypressed;

{Процедура «задержки» экрана }

End.

{Конец программы}

- 27 -


С использованием цикла с постусловием:

Program TASK (input, output);

{Заголовок программы}

Const eps = 0.001;

{Описание константы}

Var a,s: real; i: integer;

{Описание переменных}

Begin

{Начало программы}

Clrscr:

{Процедура очистки экрана}

Writeln(’Программа расчета суммы’);

{Вывод пояснений к программе}

i:= 1; a:= -1; S:= 0;

{Установка начальных значений }

Repeat

{Заголовок цикла }

S:= S+a;

{Добавление слагаемого в сумму}

i:= i + 1;

{Переход к новому параметру цикла}

a:=(-1)/i*a;

{Расчет слагаемого }

Until ABS(a) < eps;

{Заголовок цикла}

Writeln(’Сумма равна, S = ’,S:6:4);

{Вывод результата на экран}

Repeat Until Keypressed;

{Процедура «задержки» экрана }

End.

{Конец программы}

- 28 -

Задание 1. Задачи для самостоятельного решения

Вариант задания выбирается по последней цифре номера зачетной книжки.

Составить блок-схему алгоритма и программу на языке Turbo Pascal для расчета таб- лицы заданной функции на отрезке [а, b] с шагом h.

Вариант

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Функция

 

Отрезок

Шаг

1

ì

 

 

 

 

 

ex ,

x > 5,

 

 

 

 

ï

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

[-10,10]

h = 0,2

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

x, 0 < x £ 5,

 

 

y = í3x2 - 8

 

 

 

 

 

 

 

 

 

 

ï

 

 

 

 

 

tg 4x,

 

 

 

x £ 0.

 

 

 

 

î

 

 

 

 

 

 

 

 

 

 

 

2

ì(4x + 2)×

 

9 -3x

 

, x >10,

 

 

 

 

 

 

 

 

 

ï

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

[-20,20]

h = 0,1

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

3x2 - 7x, 5 < x £10,

 

 

y = í

3

 

 

 

ï

 

 

 

 

 

 

e

3x

,

 

 

 

 

x £ 5.

 

 

 

 

î

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

3

ì(x + 5)× 4

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

2x -5x2 , x >1,

 

 

 

 

ï

 

 

 

 

 

2x2 , 0 < x £1,

 

[-2,2]

h = 0,05

 

y = í

 

 

 

 

 

 

 

ï

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

4x + 8,

 

 

 

x £ 0.

 

 

 

 

ï

 

 

 

 

 

 

 

 

 

 

 

 

 

î

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

4

ì

 

 

 

 

 

 

 

esin x ,

x > 2,

 

 

 

 

ï

 

 

 

 

3x -8

 

 

 

 

×tg 2 x, - 2 < x £ 2,

 

[-4,7]

h = 0,1

 

y = í5×

 

 

 

 

 

 

 

ï

 

 

 

 

 

2x + 3,

 

x £ -2.

 

 

 

 

î

 

 

 

 

 

 

 

 

 

5

ì

 

 

 

 

 

x3 + 5x2 , x > 5,

 

 

 

 

ï

8x2 × tg3 2x, 0 < x £ 5,

 

[-10,10]

h = 0,2

 

y = í

 

 

ï

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

4x - 2sin 5x

 

, x £ 0.

 

 

 

 

 

 

 

 

 

 

 

î

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

6

ì

 

3

 

 

 

 

 

 

 

 

 

 

 

 

 

x > 4,

 

 

 

 

x + 5,

 

 

 

 

 

 

ï

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

[0,10]

h = 0,5

 

y = ícos3x, 2 < x £ 4,

 

 

ï

 

 

Sin x,

 

 

x £ 2.

 

 

 

 

î

 

 

 

 

 

 

 

7

ì ln

 

3x - 8

 

,

 

 

x > 3,

 

 

 

 

 

 

 

 

 

 

ï

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

[-1,11]

h = 0,2

 

 

x2 , 1 < x £ 3,

 

 

y = í

 

 

 

ï

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Sin x

 

,

 

 

 

 

 

x £ 1.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

î

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

8

ì

2x2 + 5

 

 

 

 

 

, x > 7,

 

 

 

3x

 

 

 

 

ï

 

 

 

 

23x , 3 < x £ 7,

 

[0,10]

h = 0,2

 

y = í

 

 

 

 

 

 

ï3

 

 

 

 

, x £ 3.

 

 

 

 

5x2 ×tg3x

 

 

 

 

î

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

9

ìarctg(1- 2x),

 

x > 0,

 

 

 

 

ï

 

 

 

 

x2 , - 5 < x £ 0,

 

[-10,10]

h = 0,5

 

y = í

 

 

 

 

 

 

ï

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Sin

 

x

 

,

 

 

 

x £ -5.

 

 

 

 

 

 

 

 

 

 

 

 

 

î

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

10

ì x + 5, x >10,

 

 

 

 

ï

 

2

, 5

< x

£10,

 

 

[-15,15]

h = 0,2

 

y = íx

 

 

 

 

 

ï

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

x £ 5.

 

 

 

 

î Sin x,

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

- 29 -

 

 


Задание 2. Задачи для самостоятельного решения

Вариант задания выбирается по предпоследней цифре номера зачетной книжки.

Составить программу на языке Turbo Pascal для вычисления значения бесконечной

суммы с заданной точностью

Вариант

 

 

 

 

 

 

 

 

Сумма

Точность

1

(-2) i

 

 

 

 

 

 

ε = 0.001

 

S = å

i!

 

 

 

 

 

 

 

i = 0

 

 

 

 

 

 

 

2

(-5) i

 

 

 

 

 

 

ε = 0.001

 

S = å

(2i)!

 

 

 

 

 

 

 

i = 0

 

 

 

 

 

 

 

3

(-3)

i

 

S = å

 

 

 

 

 

ε = 0.001

 

(2i +1)!

 

i = 0

 

4

(-4) i

 

 

 

 

 

 

ε = 0.001

 

S = å

i!

 

 

 

 

 

 

 

i = 2

 

 

 

 

 

 

 

5

(-1) i

 

 

 

 

 

 

ε = 0.001

 

S = å

(3i)!

 

 

 

 

 

 

 

i =1

 

 

 

 

 

 

 

6

(-7) i

 

 

 

 

 

 

ε = 0.001

 

S = å

i!

 

 

 

 

 

 

 

i = 2

 

 

 

 

 

 

 

7

(-1) i (2i)

 

 

S = å

 

 

 

 

 

 

 

 

ε = 0.001

 

 

i!

 

 

 

 

 

 

i =1

 

 

 

 

 

 

8

(-1) i (5i2 )

 

 

S = å

 

 

 

 

 

 

 

 

ε = 0.001

 

 

i!

 

i =1

 

9

(-1)

i

 

 

 

 

 

 

S = å

 

 

 

 

 

 

ε = 0.001

 

(i +1)!

 

i =1

 

10

(-3) i (2i)

 

 

S = å

 

 

 

 

 

 

 

 

ε = 0.001

 

 

i!

 

 

 

 

 

 

i = 2

 

 

 

 

 

 

- 30 -



Тема 3

Регулярный тип данных (тип – массив)

Краткая теория

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

Основные характеристики этого типа:

1- число компонентов всегда заранее известно; 2- все компоненты массива имеют один и тот же тип;

3- отдельные компоненты отделяются с помощью индекса.

При описании массива указывается его имя, число его компонентов которое остается постоянным во время всего выполнения программы и указывается тип компонентов. Все компоненты массива имеют общее имя и отделяются только индексами. В описании регулярный тип имеет следующий вид:

type <имя регулярного типа> = array [<тип индекса>] of <тип компонент>;

type vector= array[1.. 3] of real; var a, b, c : vector ;

или

matr = array [1.. 3, 1..3] of real;

Доступ к компонентам массива осуществляется указанием имени массива, за которым в квад- ратных скобках следует значение индекса (или индексов).

a = ( ax ay az) = (a1 a2 a3)

аi - A[i]

Размерность массива может быть любой. Компоненты массива могут быть любого (в том числе и структурированного) типа. В качестве типа индекса может выступать любой скалярный тип, кроме вещественного и типа LongInt, так как число компонент должно быть заранее известно. Вместо це- лого типа используют ограничение на целый тип. Можно использовать символьный, перечислимый, логический типы. При этом, индексы могут быть как значениями-постоянными, так и значениями- переменными и выражениями.

Например:

type vector= array[1..3] of real; var a, b, c : vector ;

a[1], c[3], b[i], b[i+1]

Кроме операции присваивания над полной переменной регулярного типа не разрешено ни одно действие. Одному массиву можно присвоить значения другого массива а:=b, но в этом случае следу- ет помнить, что операция присваивания выполняется только для идентичных массивов

var A,B: array [1..3] of integer; C: array [1..3] of real;

A:=B;

A:=C; - не допустимо!

- 31 -