How to generate binary numbers from 1 to N in C++

2 Answers

0 votes
#include <iostream>

#define LEN 100

void printBinaryNumber(int n) {
    int binary[LEN], i = 0;
    
    while (n > 0) {
        binary[i] = n % 2;
        n = n / 2;
        i++;
    }
    for (int j = i - 1; j >= 0; j--)
        printf("%d", binary[j]);
    printf("\n");
}
void generateBinaryNumbers(int n) {
    for (int i = 1; i <= n; i++) {
        printBinaryNumber(i);
    }
}

int main() {
    int N = 15;

    generateBinaryNumbers(N);
    
    return 0;
}



/*
run:

1
10
11
100
101
110
111
1000
1001
1010
1011
1100
1101
1110
1111

*/

 



answered Jul 19, 2020 by avibootz
0 votes
#include <iostream>
#include <bitset>

void printBinaryNumber(int n) {
	for (int i = 1; i <= n; i++) {
		std::bitset<8> binary(i);
		std::cout << binary.to_string() << '\n';
	}
}

int main()
{
	int N = 15;
	
	printBinaryNumber(N);

	return 0;
}



/*
run:

00000001
00000010
00000011
00000100
00000101
00000110
00000111
00001000
00001001
00001010
00001011
00001100
00001101
00001110
00001111

*/

 



answered Jul 21, 2020 by avibootz

Related questions

1 answer 142 views
1 answer 154 views
1 answer 256 views
1 answer 161 views
2 answers 216 views
1 answer 163 views
3 answers 185 views
...