Страница 1 из 1
Математика больших чисел
Добавлено: 16 апр 2017, 02:49
DmitriyL
Столкнулся с проблемой вычисления больших чисел. Получаемое после вычислений число от 0 до 99999. Промежуточные числа в процессе вычисления формулы еще больше. Блоки математических вычислений работают с целыми числами от -32768 до 32767. Каким образом можно победить эту проблему?
Как пример:
1000xA/B, где А от 0 до 9999, а В от 20 до 100
Математика больших чисел
Добавлено: 16 апр 2017, 07:44
Bogomil
Используйте
Типу <Unsigned long Integer> соответствуют целые числа от: 0 до: 4294967295
Математика больших чисел
Добавлено: 16 апр 2017, 07:46
slavushka64
DmitriyL, Вот так
Математика больших чисел
Добавлено: 16 апр 2017, 14:09
DmitriyL
Bogomil писал(а):ИспользуйтеТипу <Unsigned long Integer> соответствуют целые числа от: 0 до: 4294967295
Спасибо. А - это переменная со счетчика. В - вводится с меню. В общем, получилось через константу 1000 в формате Long Integer. По остальным блокам в цепочке в этом же формате ушло до самого LCD.
slavushka64 писал(а):DmitriyL, Вот так
В Вашем варианте будет приличная погрешность, потому что на выходе первого блока будут целые числа, и после умножения к числу просто добавятся три нуля вместо трех чисел после запятой, получившихся бы после деления в первом блоке. Если блоки ставить в цепочке ровно так же, как в формуле, то все норм.
Математика больших чисел
Добавлено: 16 апр 2017, 15:54
slavushka64
DmitriyL, Вот в двух вариантах получилось