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

スタックを使用して10進数を2進数に変換するC++プログラム


この問題では、スタックを使用して10進数を2進数に変換する方法を説明します。 10進数は、2で割って余りをとった後、2進数を使用して変換できることがわかっています。残りは最後から最初に取得するため、スタックデータ構造を使用して簡単に実行できます。

Input: Decimal number 13
Output: Binary number 1101

アルゴリズム

Step 1: Take a number in decimal
Step 2: while the number is greater than 0:
Step 2.1: Push the remainder after dividing the number by 2 into stack.
Step 2.2: set the number as number / 2.
Step 3: Pop elements from stack and print the binary number

サンプルコード

#include<iostream>
#include<stack>
using namespace std;
void dec_to_bin(int number) {
   stack<int> stk;
   while(number > 0) {
      int rem = number % 2; //take remainder
      number = number / 2;
      stk.push(rem);
   }
   while(!stk.empty()) {
      int item;
      item = stk.top();
      stk.pop();
      cout << item;
   }
}
main() {
   int num;
   cout << "Enter a number: ";
   cin >> num;
   dec_to_bin(num);
}

出力

Enter a number: 18
10010

  1. Pythonプログラムで10進数を2進数に変換する

    この記事では、以下に示す問題ステートメントの解決策について学習します。 問題の説明 − 10進数が与えられているので、それに相当する2進数に変換する必要があります。 与えられた問題を解決するための2つのアプローチがあります。それらを1つずつ見てみましょう- 再帰的アプローチ 例 def DecimalToBinary(num):    if num > 1:       DecimalToBinary(num // 2)    print(num % 2, end = '') # main if _

  2. 10進数を2進数に変換するPythonプログラム

    この記事では、特定の問題ステートメントを解決するための解決策とアプローチについて学習します。 問題の説明 数値を指定すると、2進数に変換する必要があります。 アプローチ1-再帰的ソリューション DecToBin(num):    if num > 1:       DecToBin(num // 2)       print num % 2 例 def DecimalToBinary(num):    if num > 1:       Decimal