Файл: Семененко В.А. Вычислительная техника в инженерных и экономических расчетах учеб. пособие для студентов всех специальностей.pdf

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

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

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

Добавлен: 18.06.2024

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

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

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

 

 

 

 

 

П р о д о л ж е н и е

I

2

3

4

5

6

 

 

N + 6

1—1

«2

“о

І(“а)І > І(°а)І.

<■>=

0'

 

 

 

 

 

І Ы К І Ы І .

“>=

1

N + 7

УПШо

 

N +

1

/—/ — это команда вы­

 

 

 

 

 

читаниямодулей

чи­

 

 

 

 

 

сел

 

 

N +

10

пч

°3

 

 

N +

11

ост

 

 

Пример

4.

найти у =

,

если

погрешность

г и у0.

 

 

Составим

блок-схему

программы

Поместим числа уо, 2, х и е в ячейках:

Содержимое ячеек

ячеек

 

° і

Уо

“а

2

°з

X

“ 4

е

уп+\ = Уп&~ Уп'х ) и заданы

Т а б л и ц а 54 *

Примечание

В дальнейшем у„

Программа для 3-адресной ЦВМ:

217


 

к о п

^1

Аг

As

ячеек

N +

1

X

“1

<*з

Pi

N + 2

“2

Рі

Pi

N +

3

X

“1

Рі

Pi

N +

4

— '

Рі

°1

Pa

N +

5

'—

Р2

at

 

N +

6

п

Рі

 

“1

N + 7

УГК

 

N + 1

 

 

 

 

 

 

N +

10

пч

Рі

 

 

N + 1 1

ост.

 

 

 

N +

12

0 0

0000

0000

0000

N +

13

0 0

0000

0000

0000

Т а б л и ц а 55

Примечание

Уп-х -*Pi

2 - y n- x ^ P i

Уп+і -* Pi

(Pi) — (al) =

®/l+ l —> P2

(pa) — £ > 0,

TO B = 0

(p2) — E < 0,

TO U) = 1

Пересылка yn -> аг

 

Переход к N +

1,

если

со = 0 и к N +

10,

если

СО— 1

 

 

 

уна печать

Рабочие ячейки

РіРа

§ 2—8. Организация циклов на АЛГОЛе при задании определенных условий

Напомним, что оператор вида

forV: — £ \while В do S

задает многократное выполнение оператора S для значений переменной V = Е, пока не будет выполнено условие, задан­ ное булевоким выражением В.

Пример

1.

Вычислить

 

уі =

}/~ xf — 0,1 пока не встретится первое

значение х г

для

которого

подкоренное

выражение отрицательно

begin real

х,

у;

integer

і;

 

 

 

 

 

/ : = 0 ;

 

 

while x\i\ f 2 —0,1 >

 

 

 

for і: =

I +

1

0

do

y[i]: =

sqrt

(*[/] 1 2 — 0,1);

output

((/[!]) end

Пример 2.

Вычислить ex, разложенное в ряд до тех пор пока ип+г член

ряда не станет меньше е.

 

 

 

 

 

 

 

 

 

 

 

 

 

•X

 

 

!

 

 

 

 

^

=

! +

 

+

2 ,

Частная сумма ряда

Sn+1 =

Sn +

 

£/я+1,

218


п

п + 1

Начальные значения S0 = 1, U0 ~ 1.

Обозначим S как sum, U через U1 и е — eps. Тогда на АЛГОЛе программа будет записана в виде:

begin real Ul, sum, eps, x;

integer n; Ul: = sum: = 1; «; = I

for n := n +

1 while abs (£/l)*> eps do

 

 

begin U l : =

(Ul X x)/n; sum-. =

sum + Ul;

 

output (sum)

end

end

 

 

 

 

 

 

 

 

Пример 3. Найти

у — V х ,

пользуясь

алгоритмом Герона:

 

 

 

 

 

Уо

1 і

Уп+і —

 

Уп j

/2

с точностью до I упг X I <

Е.

 

 

 

 

 

Программа' на АЛГОЛе:

 

 

 

 

 

 

begin

real

л:,

у,

eps,

г;

 

 

 

 

 

 

 

у. = 1 ; for г: =

у while у ] 2

—х > eps V х — у I 2

> eps do

у: =

(х I у +

у) /2; output

(у)

end

 

 

 

 

Пример 4. Вычислить

у

=

у х ,

если

 

 

 

 

 

 

Уп+1=

 

/ 3

-

 

У«2

\

 

 

 

 

 

 

 

—^ Г

) и заданы

 

 

 

 

 

 

Уо и (у3 -х )

 

Программа на АЛГОЛе:

 

 

 

 

 

 

begin

real

х,

у,

eps,

г;

 

 

 

 

 

 

 

у: =

у0;

for

г: = у while

у |

3 — х ^ e p s

do

 

У : =

У X (3/2 — у t 2/(2 X х)); outpul

(у)

end.

 

Пример 5. Найти

• у =

 

1

,

пользуясь алгоритмом

 

 

уя+і = у„(2 — Уп'Х), если заданы уо и допустимая погрешность

— 1 + х. у <

Е.

 

 

Можно написать на АЛГОЛе программу:

begin real х,

у,

eps,

г;

у : = у0; for

г: =

у while — 1 + х X У < eps do

у : = у.ѵХ (2 — у X х);

output (у) end



П Р И Л О Ж Е Н И Е 1

 

 

 

 

СПИСОК ЗНАКОВ АЛГОЛА

 

 

 

Большие и малые латинские буквы

 

 

 

 

 

 

Малые русские буквы (в русском варианте АЛГОЛА)

 

 

 

Десятичные цифры, десятичная точка, опущенная десятка

 

Булевские числа

 

 

true

и false

 

 

 

 

 

 

 

Разделительные знаки

 

 

 

 

 

 

 

 

Скобки (

) [

{

]

{

} ,

;

 

 

 

begin

end

 

Вместо скобок

 

) можно* писать иероглифы

 

Знаки арифметических действии +

XI

t

 

 

 

Знаки сравнений

 

<

<

=

Ф

>

>

 

 

 

 

Знаки булевских действий

==

}

V

Л 1

 

 

 

 

Двадцать четыре иероглифа в русской и английской

записи:

if

(иф)

если

 

 

 

true

(тру)

истинно

then

(дзэн)

 

то

 

 

 

false

(фоле)

 

ложно

go to

(гоу ту)

перейти к

 

switch

(свитч)

 

ключ

else

(элз)

 

иначе

 

 

 

procedure (просиджэ)

процедура

for

(фо)

для

 

 

 

begin

(бэгин)

начало

step

(степ)

 

шаг

 

 

 

end

(энд)

конец

 

until

(антил)

 

до

 

 

 

label

(лэйбл)

метка

while

(вайл)

 

 

пока

 

 

 

string

(стринг)

строка

integer

(интеджэр)

целый

 

do

(ду)

выполнить

real

(рил)

 

действительный

value

(вэлыо)

значение

Boolean

(Булей)

булевский

 

own

(оун)

собственный

array

(эррей)

 

массив

 

 

comment

(коммент)

комментарий