Một số thập phân cũng có thể được chuyển đổi thành dạng nhị phân của nó. Để chuyển một số thập phân sang số nhị phân, chúng ta cần chia số đó cho 2 cho đến khi nó đạt đến 0 hoặc 1. Và trong mỗi bước, phần còn lại được lưu trữ riêng biệt để tạo thành số tương đương nhị phân theo thứ tự ngược lại.
Trong thuật toán này, chúng ta sẽ thực hiện theo cách tiếp cận đệ quy. Nó sẽ giúp chúng ta giải quyết vấn đề mà không cần sử dụng cấu trúc dữ liệu ngăn xếp. Trong quá trình thực hiện, chúng ta biết rằng đệ quy của một hàm sẽ tuân theo ngăn xếp bên trong. Chúng tôi sẽ phục vụ công việc của mình bằng cách sử dụng ngăn xếp đó.
Đầu vào và Đầu ra
Input: Decimal number 56 Output: Binary Equivalent: 111000
Thuật toán
decToBin(decimal)
Đầu vào :Số thập phân.
Đầu ra: Chuỗi tương đương nhị phân.
Begin if decimal = 0 OR 1, then insert decimal into the binary string return decToBin(decimal / 2) insert (decimal mod 2) into the binary string. End
Ví dụ
#include<iostream> using namespace std; void decToBin(int dec) { if(dec == 1 || dec == 0) { cout << dec; //print either 0 or 1 as dec return; } decToBin(dec/2); //divide the number by 2 and find decimal again cout << dec % 2; //after returning print the value in reverse order } main() { int dec; cout<<"Enter decimal number: "; cin >> dec; cout << "Binary Equivalent: "; decToBin(dec); }
Đầu ra
Enter decimal number: 56 Binary Equivalent: 111000