логика сломалась, может хотя бы просто в массив?
Допустим 717192848494 7 массив[0] 1 массив[1] и т.д.?
Да. и лучше в обратном порядке хранить — проше итерироваться будет. 4 - [0] 9 - [1] и так далее.
int stepen(int a, int n) { int res = 1; while(n) { if(n&1) { res*=a; --n; } else { a*=a; n>>=1; } } return res; } Хранится в res эта большая цифра․ Мне нужно получить количество, ведь так? Для этого нужно разделить на 10 и т․д․, но на самом деле в res 0․․․
я не знаю что это за код, но выглядит он страшно даже для меня.
За logn надо было решать, ну ладно, допустим вот такой код։ int stepen(int a, int n) { int res = 1; for(int i=1;i<=n;i++) { res*=a; } return res; }
битовые операции со знаковыми переменными могут привести к неожиданным результатам
начните с того, чтоб число int 764 представить в виде массива {4,6, 7}
Всё ещё неправильно :( Оберните код в теги: 3 символа ` до и после кода (в случае одиночной конструкции достаточно 1 ` с обеих сторон). Спасибо!
Обсуждают сегодня