Преобразование десятичной дроби в простую с заданной точностью по рекуррентным формулам:
pk = pk−1ak + pk−2
qk = qk−1ak + qk−2
Перед началом расчётов требуемая точность заносится в #0.
Десятичная дробь, которую нужно перевести в простую, заносится в #X, после чего нажимаются клавиши . После останова в #X и #1 находится числитель, а в #Y и #2 — знаменатель искомой дро́би. Исходная дробь остаётся в #6.
00. X→П6 01. К[x] 02. X→П3 03. CX 04. 1 05. X→П4 06. FВx 07. К{x} 08. F1/x 09. К[x]
10. FВx 11. К{x} 12. X→П5 13. F⟳ 14. П→X3 15. ↔ 16. × 17. FВx 18. F⟳ 19. +
20. X→П1 21. ↔ 22. F⟳ 23. F⟳ 24. F⟳ 25. П→X4 26. × 27. + 28. X→П2 29. ÷
30. П→X6 31. − 32. К|x| 33. П→X0 34. ↔ 35. − 36. Fx<0 37. 49 38. П→X4 39. П→X2
40. X→П4 41. F⟳ 42. П→X3 43. П→X1 44. X→П3 45. F⟳ 46. П→X5 47. БП 48. 08 49. П→X2
50. П→X1 51. С/П
По сравнению с оригинальной программой эта длинее на 3 шага, зато за счёт оптимизации хранения данных в стеке использует на 3 адресуемых регистра меньше.
Источник: журнал «Наука и жизнь», № 4 / 1990, стр. 102.
Авторы: ученик 10-го класса Е. Фенюшин (Кольчугин).
Оптимизировал, перевёл в формат эмулятора и составил эту инструкцию: Адам Лаврик — 2026-05-08.