#include <iostream>
using namespace std;
void binary(unsigned  a) {
    int i;
    cout << "0" << endl;
    do {
        for (i = 1; i < a; i=i/2) {
            if ((a & i) != 0) {
                cout << "1" << endl;
            }
            else {
                cout << "0" << endl;
            
            }
    
        }
    }
    while (1 <= a && a <= 10);
}
int main(void) {
    binary(4);
    cout << endl;
}
I wrote a code about binary numbers. İt should give bits respect to entering number like for 4 (0100) for 2 (10). However my code goes infinity could you explain. I wrote in visual studio and I cannot use <bits/stdc++.h> because there is no such a library in visual studio
 
     
    