1.3 桁数の表示

番号   内  容
(1)  繰返しによる桁数のカウント
(2)  繰返しを使わない方法


(1)繰返しによる桁数のカウント


10未満になるまで,整数を10で割る処理を繰り返し,
その回数をカウントすることで,
桁数を求めることができます。


@) R ← 1, NN ← Nとする。

A) NN≧の間,以下を繰り返す。

  ・ NN ← NN / 10
  ・ R ← R + 1

B) Rを桁数とする。



[Program 1−5] 桁数の表示    

 private int 桁数設定(int N)
  {
    int R = 1; int NN = N;
    while (NN>=10) { NN /= 10; R++; }
    return R;
  }
 private void cmdCompute_Click(object sender, System.EventArgs e)
  {
    int N = int.Parse(txtValue.Text);
    int 桁数 = 桁数設定(N);
    lblResult.Text = N.ToString() + "の桁数は"
               + 桁数.ToString() + "桁です"
}



(2)繰返しを使わない方法


10の対数を使うと,繰返しを使わないで桁数を求めることができます。
すなわち,

    

ですから,10の対数をとり,小数点以下を無視すると
桁数−1の値が求まります。


[Program 1−6] 繰返しを使わず桁数を表示

 private int 桁数設定2(int N)
  {
    if (N == 0) return 1;
    int X=( (int)Math.Log10(N)) +1;
    return X;
  }
 private void cmdOther_Click(object sender, System.EventArgs e)
  {
    int N = int.Parse(txtValue.Text);
    int 桁数 = 桁数設定2(N);
    lblResult.Text = N.ToString() + "の桁数は"
              + 桁数.ToString() + "桁です"
  }




番号   内  容
(1)  繰返しによる桁数のカウント
(2)  繰返しを使わない方法

1. 基本的なアルゴリズム

2. 基本的なデータ構造

3. 操作を伴うデータ構造

4. 探索

5. 再帰的アルゴリズム

6. ソート

7. 集合

8. 文字列処理

9. 色々なアルゴリズム


上のタイトルをクリックします