【C言語】数値から上〇桁、下〇桁など特定の桁数を取り出すプログラム

プログラマのメモ帳

この記事では、C言語を使って数値から特定の桁数を取り出す処理について紹介しています。

数値から特定の桁を取り出すには、剰余計算(割り算の商と余り)を活用します。

例えば下2桁を取り出す場合には以下のようにすれば分解できます。

1122 % 100 = 22

この計算を組み合わせれば上〇桁、中〇桁、下〇桁のように分解することも可能です。

サンプルとして、8桁の数字を入力して上4桁、中2桁、下2桁を取り出してみたいと思います。

スポンサーリンク

Sample Code

#include <stdio.h>


int main(void) {

  int inNum;         //切り分ける数値:8桁
  int firstFourNum;  //上4桁
  int middleTwoNum;  //中2桁
  int lastTwoNum;    //下2桁


  /* 切り分ける数値を入力 */
  printf("数値を入力: ");
  scanf("%d", &inNum);                  //例として88887766を入力

  /* 上4桁の取り出し */
  firstFourNum = (inNum / 10000);       // 88887766 / 10000 = 8888
  /* 中2桁の取り出し */
  middleTwoNum = (inNum % 10000);       // 88887766 % 10000 = 7766
  middleTwoNum = (middleTwoNum / 100);  // 7766 / 100 = 77
  /* 下2桁の取り出し */
  lastTwoNum = (inNum % 100);           // 88887766 % 100 = 66

  printf("上4桁: %04d\n", firstFourNum);
  printf("中2桁: %02d\n", middleTwoNum);
  printf("下2桁: %02d\n", lastTwoNum);

}

実行例

参考になればうれしいです。

コメント

タイトルとURLをコピーしました