Я хочу знать, возможно ли использовать научную запись с переменными?
Например:
int n;
cin >> n;
int x = 1en;
вместо
int x = 1e8
Является ли это возможным? Если да, то как?
Нет. Научная запись только для постоянных значений. Эти значения определяются во время компиляции, а значение, которое вы хотите получить, определяется во время выполнения.
Вам придется использовать что-то вроде int result = pow(10,n)
, Имейте в виду, что std::pow
возвращает двойные значения
Самое близкое, что вы можете сделать, это определить макрос следующим образом:
Вы не можете избежать использования pow, так как n вычисляется во время выполнения. Это так же, как С работает.
#define e(n) *pow(10,n)
И вы используете это:
int n; cin >> n; int x = 1 e(n);