варіант
Введення N
F=1
N>0 ?
F=F*N
N=N-1
Виведення F
Кінець
да
Нет
Виділимо пам'ять під дані:
Величина | F | N | |
Адреса комірки | 1C |
Запишемо програму на ММК.
Адреса | КОП | А1 | А2 | А3 | Пояснення |
00 | FC | введення N | |||
04 | 1С | F:=1 | |||
08 | F:=F*N | ||||
0C | 1C | N:=N - 1 | |||
10 | 0A | при N>0 йти до 08 | |||
14 | FC | виведення F | |||
18 | стоп | ||||
1C | константа 1 |
Тут не знадобилися команда безумовного переходу і додаткова змінна Q. Управлінням циклу займається команда умовного переходу, що розташована за адресою 10. Поки значення N>0 ця команда передає управління на комірку 08. Коли в результаті виконання команди в осередку 0С вийде нуль, ознака W стане рівною нулю і цикл закінчить роботу. Управління передасться в осередок 14.
Висновок.
Другий варіант програми разом з даними займає 10 комірок, тоді як перший варіант - 15 комірок. .
Додаток 1.
Варіанти індивідуальних завдань|задавань|.
17) | | 18) | |
19) | 20) | ||
21) | 22) | ||
23) | 24) | ||
25) | 26) | ||
27) | 28) | ||
29) | 30) | ||
31) | 32) |