C ++
 Computer >> コンピューター >  >> プログラミング >> C ++

10進数を8進数に変換するC++プログラム


コンピュータシステムでは、8進数は8進数で表され、10進数は10進数で表されます。 8進数は基数8で、10進数は基数10です。

10進数とそれに対応する8進数の例は次のとおりです。

10進数 8進数
8 10
70 106
25 31
7 7

10進数を8進数に変換するプログラムは次のとおりです。

#include <iostream>
using namespace std;
void DecimalToOctal(int decimalNum) {
   int octalNum = 0, placeValue = 1;
   int dNo = decimalNum;
   while (decimalNum != 0) {
      octalNum += (decimalNum % 8) * placeValue;
      decimalNum /= 8;
      placeValue *= 10;
   }
   cout<<"Octal form of decimal number "<<dNo<<" is "<<octalNum<<endl;
}
int main() {
   DecimalToOctal(70);
   return 0;
}

出力

Octal form of decimal number 70 is 106

上記のプログラムでは、関数DecimalToOctalは10進数を8進数に変換します。関数DecimalToOctalでは、最初に変数octalNumがゼロに初期化されます。変数placeValueは、数値の桁の位置を示します。 OctalNumの値は、whileループを使用して検出されます。

whileループの反復ごとに、decimalNumは8で除算され、余りはplaceValueで乗算されます。これは、octalNumの以前の値に追加されます。また、decimalNumは8で除算され、商が保存されます。 placeValueに10を掛けます。

これを示すコードスニペットは次のとおりです。

while (decimalNum != 0) {
   octalNum += (decimalNum % 8) * placeValue;
   decimalNum /= 8;
   placeValue *= 10;
}

8進数の値、つまり8進数が取得された後、それが表示されます。これを以下に示します-

cout<<"Octal form of decimal number "<<dNo<<" is "<<octalNum<<endl;

main()関数には、必要な値を指定したDecimalToOctal()への関数呼び出しのみが含まれています。これは、次のコードスニペットによって示されます。

DecimalToOctal(70);

  1. C++での10進数から16進数への変換プログラム

    10進数を入力として指定すると、タスクは指定された10進数を16進数に変換することです。 コンピューターの16進数は16を底とし、10進数は10を底とし、0〜9の値で表されますが、16進数は0〜15から始まる数字で、10はA、11はB、12はC、 Dとして13、Eとして14、Fとして15。 10進数を16進数に変換するには、指定された手順に従います- まず、指定された数値を変換数値の基本値で除算します。例: 6789を16を底とする16進数に変換し、商を取得して格納する必要があるため、6789を16で除算します。余りが0〜9の場合はそのまま保存し、余りが10〜15の場合は、文字形式でA-

  2. C++での10進数から2進数への変換プログラム

    10進数を入力として指定すると、タスクは指定された10進数を2進数に変換することです。 コンピューターの10進数は10進数で表され、2進数は2進数の0と1の2つしかないため、2進数で表されますが、10進数は0〜9から始まる任意の数値にすることができます。 10進数を2進数に変換するには、次の手順に従います- まず、指定された数値を変換数値の基本値で除算します。例: 42を2を底とする2進数に変換し、商を取得して格納する必要があるため、42を2で除算します。余りが0の場合、ビットを0として格納します。それ以外の場合は1です。 取得した商を2進数の基数である2で除算し、ビットを格納し続けます