1 #ifndef BOOST_REAL_IRRATIONAL_HELPERS_HPP 2 #define BOOST_REAL_IRRATIONAL_HELPERS_HPP 18 int champernowne_binary_get_nth_digit(
unsigned int n) {
19 std::vector<int> binary = {1};
20 unsigned int index = 0;
24 if (std::all_of(binary.begin(), binary.end(), [](
int d) ->
bool {
return d == 1; })) {
26 for (
int i = (
int)binary.size() - 1; i >= 0; i--) {
29 binary.insert(binary.begin(), 1);
33 for (
int i = (
int)binary.size() - 1; i >= 0; i--) {
35 for (
int j = (
int)binary.size() - 1; j > i; j--) {
44 index += binary.size();
47 return binary[binary.size() - 1 - (index - n)];
53 #endif //BOOST_REAL_IRRATIONAL_HELPERS_HPP Definition: boundary.hpp:7