Файл: Семененко В.А. Вычислительная техника в инженерных и экономических расчетах учеб. пособие для студентов всех специальностей.pdf
ВУЗ: Не указан
Категория: Не указан
Дисциплина: Не указана
Добавлен: 18.06.2024
Просмотров: 117
Скачиваний: 0
Пример 10. Составить на АЛГОЛе программу расчета зарплаты в соот ветствии с примером 3 § 2—5:
begin integer i, л; real А , D, Р\
real |
array X, |
Y, |
В, |
V, |
Z, |
[1:л]; ' |
|
Boolean array |
d [1://]; |
|
|
||||
for i: = |
1 |
step I until |
n do |
|
|
||
begin |
A: = A'[/'j X Г[/] |
+ |
B[/]; |
|
|||
|
D: = if d[t] then |
о |
else |
0.06XA; |
|||
|
if |
A > 100 then |
P: |
= 8,2 |
+ 0,13 X (A - 100)e!seP: = 8.2; |
Z[i): = A — V[i] — D - P -
output (/, X[i], У[і], ß[/], Г[/], D, P , Z{i\)
end end
§2—7. Циклы с заранее неизвестным числом прохождений
иих обработка в машинных командах
Циклами с заранее неизвестным числом прохождений на зываются такие циклы, для которых критерий окончания цикла должен быть выработан самой машиной в ходе реше ния задачи. Программист задает лишь косвенный критерий, которым чаще всего является точность полученного решения.
Лрнмер 1. Вычислить sin а " , разложенный в ряд
Вычисления прекратить, когда вычисленный член ряда станет меньше |
||||||||||||
заданного числа |
е. |
|
|
|
|
между |
членами |
ряда Лл+1 и |
||||
Воспользуемся |
соотношениями |
|||||||||||
частными суммами S,І+1: |
|
|
|
|
|
|
|
|||||
|
|
Un+1— |
X1 |
——- |
, |
|
где |
= 2/1(2/1+ 1) |
||||
|
|
|
|
|
|
|
Яя+1 |
|
|
|
|
|
|
|
Sn+i = |
Sn + |
Un+i- |
|
|
п — 1,2... |
|
||||
Для организации цикла по этим формулам составим соотношение для |
||||||||||||
п Обозначим Ъ,, = |
Гл, |
сп = 2/і + 1. |
|
|
|
|||||||
Тогда |
: сп = |
Ьп + |
1, |
сп + 1 |
= |
Ьп + 1 |
+ |
1, |
|
|
|
|
bn+1= |
2(л + |
1) = |
2/1+ |
1 + |
1 — сп + |
1, |
|
|
|
|||
1 |
= ^Vi+ l'C/i+ i- |
|
|
|
|
|
|
|
|
|
||
По данным Un, Sn, сп |
определим |
Un+,, S„+1, |
сл+1. |
|||||||||
Начальные значения величин |
U, |
S |
и С: |
|
|
|||||||
|
|
|
|
|
UQ = X , S0 = X, CQ = 1. |
|
212
Распределяем память для числовой информации.
Т а б л и ц а 48
JMfe |
|
|
Исходная числовая информация |
|
ячеек |
|
|
||
|
|
|
|
|
<ч |
X = ІІп, в дальнейшем Uл+1 член ряда |
|||
«2 |
S0= |
x, |
в дальнейшем |
5 П+ 1 сумма |
«8 |
С„ = |
1, |
в дальнейшем |
Ся+1. |
“а |
|
X |
|
|
“6 |
|
1 |
|
|
«0 |
|
е |
|
|
Составляем рабочую программу для 3-х адресной ЦВМ'.
№ |
|
|
коп |
ячеек |
|
||
|
|
||
N + |
1 |
. |
X |
N + 2 |
|
— |
|
N + 3 |
|
+ |
|
N + |
4 |
|
+, |
N + 5 |
|
X |
|
N + 6 |
|
X |
|
N + |
t |
|
: |
N + |
10 |
|
+ |
N + |
И |
‘ |
н |
N + 12 |
|
УПы0 |
|
N + |
13 |
|
п ч |
N + |
14 |
|
ост |
|
|
|
|
|
|
Т а б л и ц а |
49 |
|
А\ |
а 2 |
Az |
|
Примечание |
|
|||
“4 |
ч |
ч |
Х~ -> ад |
|
|
|
||
|
Ч |
°4 |
— Х г |
|
ец |
|
|
|
®3 |
ч |
Рі |
6і = |
Со + |
1 |
Рі |
|
|
Рз |
°6 |
«3 |
Ci = |
by + |
1 -+ а3 |
|
||
Рі |
«3 |
Pi |
Ч - |
by Су -> Px |
|
|||
а1 |
ч |
а1 |
— X 2-V„ ■* at |
|
|
|||
“1 |
Рі |
“1 |
U1 ->■а, |
|
|
|
||
а2 |
“1 |
ч |
Вычитание модулей чисеі |
|||||
“1 |
Ов |
|
||||||
|
|
|
l(oi) 1> І(ч)1. |
IO « = |
0 |
|||
|
|
|
l(“,)l |
< |
l(a o)l. |
TO 0) = |
1 |
|
|
N 4 - 3 |
|
|
|
|
|
|
|
“2 |
|
|
S„ +1 |
на печать |
|
Пример 2• Вычислить cos х, разложенный в ряд с точность до е.
213
где:
Un+, член ряда равен
Un+i = -г2 |
, Яп+х= (2я+ 1)(2п+2у |
ал + 1
ичастичная сумма 5,1+і — Un+t + S„.
Начальные значения: |
л = 0, |
{/„ = |
!, |
S 0 — 1. |
|
|
|||
|
|
|
Распределим |
числовую информацию. |
|
||||
|
|
|
|
|
|
|
|
Т а б л и ц а |
50 |
|
№ |
|
|
|
Исходная информация |
|
|||
ячеек |
|
|
|
|
|||||
|
|
|
|
|
|
|
|
||
|
“ і |
|
U0, |
в дальнейшем |
Н,!+1 |
|
|
||
|
а3 |
|
S0, |
в дальнейшем |
5 Л+1- |
|
|
||
|
° 8 |
|
X, |
в дальнейшем |
— х г |
|
|
||
|
а 4 |
|
п = |
0, в дальнейшем |
п |
|
|
||
|
“ S |
|
1 |
|
|
|
|
|
|
|
а в |
|
2 |
|
|
|
|
|
|
|
а 7 |
|
е |
|
|
|
|
|
|
Составляем 3-х адресную циклическую программу. |
|
||||||||
|
|
|
|
|
|
|
|
Т а б л и ц а |
51 |
№ |
|
к о п |
|
Аі |
Ä2 |
|
|
Примечание |
|
ячеек |
|
|
|
|
|||||
,і |
|
2 |
|
3 |
4 |
|
5 |
6 |
|
N + 1 |
X |
|
“3 |
аз |
|
“3 |
х г -*■03 |
|
|
N + 2 |
— |
|
|
аз |
|
а 8 |
— х г - a3 |
|
|
N + |
3 |
X |
|
°в |
“4 |
|
Pi |
2я - ►pi |
|
N + |
4 |
+ |
|
Рі |
°6 |
|
Рг |
2л -f- 1 —>“p2 |
|
N 4- 5 |
+ |
|
Pi |
аѳ |
|
Pi |
2 n + 1 2 - P! |
|
|
N + |
6 |
X |
|
ь |
рі |
|
Pi |
S/l+ l Pl |
|
N + |
7 |
- |
|
а1 |
pi |
|
Pi |
Un |
|
|
|
|
Pl |
|
|||||
N + |
10 |
|
|
|
|
|
|
fln+l |
|
X |
|
“8 |
Pi |
|
“l |
Un+l -* al |
|
||
N + |
11 |
+ |
|
а2 |
“i |
|
“a |
5 n+l -*■ “j |
|
214
|
|
|
|
|
П р о д о л ж е н и е |
1 |
2 |
3 |
4 |
5 |
2 |
N + 12 |
1—1 |
“1 |
“ 7 |
|
Вычитание модулей |
N + 13 N + 14 N + 15 N + 16
|
|
|
|
ІЮІ - |
ІЮІ |
|
|
|
|
І(аі)І > |
ЮІ> “ •= 0 |
|
|
|
|
ІЮ) < ІЮІ. ш = 1 |
|
+ |
° 4 |
ав |
*4 |
П а4 |
|
УПШ„ |
|
N + 3 |
|
|
|
пч |
«г |
|
|
S„+j |
печать |
ост. |
|
|
|
|
|
Пример |
3. Вычислить |
f{x) = е~х' |
с точностью до е.Функция f(x) = |
||||||
= е~х может быть разложена в ряд |
|
|
|||||||
|
|
е' |
|
|
X |
|
|
дг3 |
|
|
|
|
|
1! |
|
|
+ . . . |
|
|
|
|
|
|
|
|
|
3! |
|
|
Воспользуемся соотношениями между членами ряда |
и частны |
||||||||
ми суммами Sn+1, |
где n = |
0, |
1, |
2 . .. |
|
||||
|
Uп+1= —и п. |
|
■ ■ |
, 5 П+1 = Sn + U,Jfl. |
|
||||
|
|
|
|
|
п + |
1 |
|
|
|
Начальные значения |
п = |
О, |
U0 = |
1, |
S 0 = 1 |
|
|||
Распределим память для числовой информации. |
|
||||||||
|
|
|
|
|
|
|
|
|
Т а б л и ц а 52 |
№ |
|
|
|
Исходная числовая информация |
|
||||
ячеекі |
|
|
|
|
|||||
|
|
|
|
|
|
|
|
|
|
“1 |
л =0, в дальнейшем п + |
1 |
|
||||||
а3 |
U0, |
в дальнейшем |
Un+i |
|
|
||||
аз |
S 0, |
в дальнейшем |
Sn+x |
|
|||||
“4 |
X |
|
|
|
|
|
|
|
|
“6 |
1 |
|
|
|
|
|
|
|
|
°в |
8 |
|
|
|
|
|
|
|
|
|
* |
|
|
|
|
|
|
|
|
215