калькулятор — тип C ++ с 200 цифрами после запятой?

У меня есть проект для моей школы, и его цель — создать простую «Виртуальную машину», которая выполняет операции.

Для этого мы можем хранить некоторые числа с типами:
int8, int16, int32, float, double и big decimal.

Единственный тип, который я не знаю, это «большое десятичное число», оно описывается следующим образом: «Максимальное количество цифр, отображаемых после десятичной точки, это float (7), double (15), bigdecimal (200)».

Такой большой десятичный тип может иметь 200 цифр после десятичной точки.

Любой тип в C ++ может это сделать? Если мне приходится иметь дело со строками, это более сложный для операций …

Заранее спасибо!

PS: «• все (внешние) библиотеки, кроме STL, запрещены для всех»

0

Решение

В C ++ нет типа «большой десятичный»; Исходя из вашего описания проблемы, кажется, что вы должны реализовать свой собственный тип с очень высокой точностью.

Существует несколько способов сделать это. Вот некоторые советы / потенциальные направления:

  • Если д1 … dК являются цифрами, то к-цифрой 0.d1d2…dК равно 10 * д1 d2 … dК (то есть думаю мантисса и показатель степени).
  • 200 = много. Не пытайтесь вручную вписать свой номер в достаточно основных типов, чтобы получить 200 цифр.
  • Стандартная библиотека имеет несколько классов, которые вы можете использовать. Тем не менее, вы можете вряд ли ошибетесь, основав свою работу на std::vector. Конечно, что именно вы хотите поместить в этот вектор, это другой вопрос.
3

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]