1. ホーム
  2. c++

[解決済み] C++ - 整数の長さを求める方法

2022-03-02 22:39:32

質問

整数の長さ(桁数)を求めて、それを整数配列に入れる方法を探しています。課題では、STLからのクラスを使用せずにこれを行うことを求めていますが、プログラム仕様では、"一般的なCライブラリ"を使用できると述べています(私はlog10(num)+1が最も簡単な方法だと仮定しているので、cmathを使用できるか教授に聞いてみますが、他の方法があるか疑問に思っていました)。

あ、これって負の数を扱わなくていいんだ。あくまで非負の数。

動的配列を使用してより広い範囲の値を扱うことができるバリアント "MyInt" クラスを作成しようとしています。何かヒントがあれば幸いです。ありがとうございます。

どのように解決するのですか?

整数の桁数 n は、どの基数でも、終わるまで割り算をすれば、自明です。

unsigned int number_of_digits = 0;

do {
     ++number_of_digits; 
     n /= base;
} while (n);