>
Числа, для представлення яких в стандартних комп'ютерних типах даних не вистачає кількості двійкових розрядів, називаються "довгими". Реалізація арифметичних операцій над такими "довгими числами" отримала назву "довгої арифметики".
Організація роботи з "довгими числами" багато в чому залежить від того, як ми представити в комп'ютері ці числа. "Довге число" можна записати, наприклад, за допомогою масиву десяткових цифр, кількість елементів в такому масиві дорівнює кількості значущих цифр в "довгому числі". Але якщо реалізувати арифметичні операції з цим числом, то розмір масиву повинен бути достатнім, щоб розмістити в ньому і результат, наприклад, множення.
Існують і інші представлення "довгих чисел". Розглянемо одне з них.
Представимо наше число
30! = 265252859812191058636308480000000
у вигляді:
30!=2-(104)8+6525∙(104)7+2859∙(104)6+8121∙(104)5+9105∙(104)4+8636∙(104)3+
+3084∙(104)2+8000∙(104)1+0000∙(104)0.
Запишемо це представлення у вигляді таблиці 1.
Номер елемента в масиві А |
0 |
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
Значення |
9 |
0 |
8000 |
3084 |
8636 |
9105 |
8121 |
2859 |
6525 |
2 |
Вважаємо, що наше "довге число" представлене в 10000—10 системі числення (десятитисячно-десяткова система числення), а "цифрами" числа є чотиризначні числа.
Працюємо лише з додатними числами.