Я пытаюсь найти наибольший простой множитель числа 600851475143.
Я затемнил двойной тип в VBA, который прикрепил знак # к концу числа, так что я думаю, что это указывает назначение превышает ограничение двойного типа, но я все равно могу выполнять арифметику с ним, если я не хочу делать что-то вроде функции модуля.Если я запускаю приведенный ниже код, это вызывает ошибку переполнения:
Sub test()
Dim x As Double
x = 600851475143#
x = x - 1
x = x Mod 11
End Sub
Но если я изменю код и не объявлю свою переменную и не позволю VBA это сделать, функция модуля будет работать без переполнения.Ниже показано:
Sub test()
x = 600851475143#
x = x - 1
x = x Mod 11
End Sub
Итак, во втором наборе кода, какой тип переменной для х?