Реферат: Задачи на длинную арифметику

VspRez := A[I] * B[J] + P + C[I + J - 1];

C[I + J - 1] := VspRez Mod 10;

P := VspRez Div 10

End;

C[I + J] := P

End

End;

{Основная программа}

Begin

Repeat {повторяем ввод, пока число не будет введено правильно}

Write('Введите первый множитель: ');

ReadLn(S); Translate(S, M, Logic)

Until Logic;

Repeat

Write('Введите второй множитель: ');

ReadLn(S); Translate(S, N, Logic)

Until Logic;

Multiplication(M, N, R); Print(R)

End.

В приведенном листинге Print — процедура вывода длинного числа. Предоставим читателю самостоятельно разобраться в алгоритме ее работы.

Вернемся к вычислению факториала. Используя разработанные подпрограммы, определим, значение факториала какого максимального числа можно разместить в памяти при таком представлении длинных чисел.

Вот измененный фрагмент основной программы, решающий поставленную задачу.

Begin

MaxF := 810;

Zero(F);

F[1] := 1;

For I := 1 To MaxF Do

Begin

Str(I, S); {преобразование числа I к строковому типу S}

К-во Просмотров: 1178
Бесплатно скачать Реферат: Задачи на длинную арифметику