Month: 2021年7月
1.15 ビット数から8/10/16進数の桁数を求める。
今回は整数値のビット数から、その値を表現するのに必要になる桁数を求めます。負の値は考慮していませんし、あくまでも数字の桁数ですので符号や3桁ごとのカンマなどは含みません。 桁数は16進数、8進数、10進数について求めます […]
1.14 2の冪乗か否かを判定する。
今回は、与えられた値が2の累乗(べき乗)かどうかを判定する処理を作ってみます。 まずは整数定数式に対して静的に判定を行うためのメタ関数を定義してみましょう。 [crayon-673ed51020b27718757674/ […]
1.13 無符号整数の最下位の ‘1’ のビットだけを抽出する。
次のメタ関数は、1が立っている最も下位のビットだけを残し、他のビットを0にします。 [crayon-673ed51020c43980277686/] 上のメタ関数では静的な処理しか行えませんので、通常の関数テンプレートに […]
1.12 最大公約数を求める。
2整数の最大公約数を求めます。以下の条件を満たせば、必ずしも整数型でなくてもかまいません。 代入可能である <演算子が使用可能 %演算子が使用可能 [crayon-673ed51020d29776533321/] […]
1.11 整数除算 (商+剰余,C標準ライブラリ関数 div() のテンプレート版)
同じような内容が続きますが、今回はC言語の標準ライブラリにあるdiv関数をテンプレート化したものです。 C++ではdiv関数が引数の型によって多重定義されています。しかし、返却値の型はC言語と同じで、div_t、ldiv […]
1.10 整数除算で端数切り下げ.(商+剰余,関数)
- 更新日:
- 公開日:
前回は商の端数を切り上げましたので、今回は切り捨てることにします。 前回定義したxdiv_t構造体テンプレートを今回も使いますので再掲載しておきます。 [crayon-673ed51020ee5804614164/] 例 […]
漢点字についての備忘録
- 公開日:
何年か前に漢点字についていろいろ調べる機会がありました。せっかくですので内容を公開情報として記録しておきます。 点字というのは、本来”仮名”しか表現することができません。下記のような6つの突起を指 […]