2進数を10進数に、またはその逆に変換するC++プログラム
コンピュータシステムでは、2進数は2進数で表され、10進数は10進数で表されます。 2進数は基数2で、10進数は基数10です。
10進数とそれに対応する2進数の例は次のとおりです-
| 10 | 01010 |
| 7 | 00111 |
| 25 | 11001 |
| 16 | 10000 |
例
#include <iostream>
using namespace std;
void DecimalToBinary(int n) {
int binaryNumber[100], num=n;
int i = 0;
while (n > 0) {
binaryNumber[i] = n % 2;
n = n / 2;
i++;
}
cout<<"Binary form of "<<num<<" is ";
for (int j = i - 1; j >= 0; j--)
cout << binaryNumber[j];
cout<<endl;
}
int BinaryToDecimal(int n) {
int decimalNumber = 0;
int base = 1;
int temp = n;
while (temp) {
int lastDigit = temp % 10;
temp = temp/10;
decimalNumber += lastDigit*base;
base = base*2;
}
cout<<"Decimal form of "<<n<<" is "<<decimalNumber<<endl;;
}
int main() {
DecimalToBinary(23);
BinaryToDecimal(10101);
return 0;
} 出力
Binary form of 23 is 10111 Decimal form of 10101 is 21
上記のプログラムには、DecimalToBinaryとBinaryToDecimalの2つの関数があります。これらは、数値をそれぞれ10進数から2進数に、2進数から10進数に変換します。
DecimalToBinary関数では、10進数nのバイナリ値が配列binaryNumber[]に格納されます。 whileループが使用され、nモジュラス2演算の結果は、ループの反復ごとにbinaryNumber[]に格納されます。これは、次のコードスニペットを使用して示されています。
while (n > 0) {
binaryNumber[i] = n % 2;
n = n / 2;
i++;
} この後、forループを使用して2進数が表示されます。これは次のように表示されます。
cout<<"Binary form of "<<num<<" is "; for (int j = i - 1; j >= 0; j--) cout << binaryNumber[j];
関数BinaryToDecimal()では、whileループを使用して2進数を10進数に変換します。 LastDigitには、一時変数の最後のビットが含まれています。ベースには、2、4、6、8などのベース値が含まれます。DecimalNumberには、前のDecimalNumber値の合計と、LastDigitとベースの積が含まれます。
これはすべて、次のコードスニペットを使用して示されています-
while (temp) {
int lastDigit = temp % 10;
temp = temp/10;
decimalNumber += lastDigit*base;
base = base*2;
} main()関数では、DecimalToBinary()関数とBinaryToDecimal()関数が呼び出されます。これは次のように表示されます。
DecimalToBinary(23); BinaryToDecimal(10101);
-
Pythonプログラムで10進数を2進数に変換する
この記事では、以下に示す問題ステートメントの解決策について学習します。 問題の説明 − 10進数が与えられているので、それに相当する2進数に変換する必要があります。 与えられた問題を解決するための2つのアプローチがあります。それらを1つずつ見てみましょう- 再帰的アプローチ 例 def DecimalToBinary(num): if num > 1: DecimalToBinary(num // 2) print(num % 2, end = '') # main if _
-
10進数を2進数に変換するPythonプログラム
この記事では、特定の問題ステートメントを解決するための解決策とアプローチについて学習します。 問題の説明 数値を指定すると、2進数に変換する必要があります。 アプローチ1-再帰的ソリューション DecToBin(num): if num > 1: DecToBin(num // 2) print num % 2 例 def DecimalToBinary(num): if num > 1: Decimal