User Rating 0.0 β˜…β˜…β˜…β˜…β˜…
Total Usage 0 times
Presets:
Is this tool helpful?

Your feedback helps us improve.

β˜… β˜… β˜… β˜… β˜…

About

The Champernowne constant C10 = 0.12345678910111213... is constructed by concatenating successive positive integers after the decimal point. It is one of the few explicitly constructible normal numbers - meaning every finite digit string of length n appears with limiting frequency 1Γ·10n in base 10. Champernowne proved normality in base 10 in 1933. Normality in one base does not imply normality in another. Misidentifying digit positions in this sequence leads to errors in pseudorandom sampling, statistical testing, and constructive analysis proofs. This generator computes exact digits using group-counting arithmetic rather than brute-force string concatenation, remaining accurate and efficient even at position 1015 and beyond.

The tool generalizes to any integer base b from 2 to 36, producing the Champernowne constant Cb. Note: computational limits apply. Browsers handle positions up to approximately 253 due to JavaScript's IEEE 754 double-precision integer ceiling. For cryptographic or high-precision research beyond that range, use an arbitrary-precision library outside the browser.

champernowne constant number sequence digit generator mathematical constant number theory base conversion

Formulas

The Champernowne constant in base b is defined as the real number formed by concatenating all positive integers written in base b after a decimal point.

Cb = 0. 1 2 3 … (bβˆ’1) (10)b (11)b …

To find the digit at position p (1-indexed from the first digit after the decimal point), we use the group-counting method. The k-digit numbers in base b contribute a total digit count of:

Dk = (b βˆ’ 1) β‹… bkβˆ’1 β‹… k

We subtract group sizes from p until the remainder falls within a k-digit group. Then we locate the exact number and digit within it:

n = bkβˆ’1 + floor((prem βˆ’ 1) Γ· k)
d = ((prem βˆ’ 1) mod k)th digit of n in base b

Where prem is the remaining position after subtracting all complete groups of fewer than k digits, n is the integer containing the target digit, and d is the specific digit index within that integer (0-indexed from left).

The total number of digits contributed by all integers from 1 up to and including all k-digit numbers:

Tk = kβˆ‘i=1 (b βˆ’ 1) β‹… biβˆ’1 β‹… i

Reference Data

Base bConstant NameFirst 30 Digits After DecimalOEIS IDNormality Proved
2C20.1 10 11 100 101 110 111 1000...A030190Yes (Champernowne, 1933)
3C30.1 2 10 11 12 20 21 22 100 101...A054635Yes
8C80.1 2 3 4 5 6 7 10 11 12 13 14...A030373Yes
10C100.1 2 3 4 5 6 7 8 9 1 0 1 1 1 2...A033307Yes (Original proof)
16C160.1 2 3 4 5 6 7 8 9 A B C D E F...A030374Yes
Digit Group Structure (Base 10)
Digits kRangeCount of NumbersTotal Digits in GroupCumulative Digits
11 - 9999
210 - 9990180189
3100 - 9999002,7002,889
41,000 - 9,9999,00036,00038,889
510,000 - 99,99990,000450,000488,889
6100,000 - 999,999900,0005,400,0005,888,889
71,000,000 - 9,999,9999,000,00063,000,00068,888,889
810,000,000 - 99,999,99990,000,000720,000,000788,888,889
Digit Group Structure (Base 2)
11111
210 - 11245
3100 - 11141217
41000 - 111183249

Frequently Asked Questions

Champernowne proved in 1933 that C₁₀ is normal in base 10 - every finite digit string appears with the expected asymptotic frequency. However, normality is base-dependent. A number normal in base 10 is not necessarily normal in base 2. Proving absolute normality (normality in every base simultaneously) remains an open problem for the Champernowne constant. The generalized constant C_b is normal in base b by the same argument, but cross-base normality is unresolved.
The algorithm exploits the regularity of the sequence structure. In base b, there are exactly (bβˆ’1)Γ—b^(kβˆ’1) numbers with exactly k digits, contributing (bβˆ’1)Γ—b^(kβˆ’1)Γ—k digits to the sequence. By summing these group sizes, we identify which digit-length group contains position p, then compute the exact integer and digit offset using division and modular arithmetic. No concatenation string is ever built. This allows extraction at position 10ΒΉΒ² in microseconds.
JavaScript uses IEEE 754 double-precision floats, which can represent integers exactly up to 2⁡³ (approximately 9 Γ— 10¹⁡). Beyond this threshold, integer arithmetic loses precision, and computed digit positions may be incorrect. This tool caps input at 9,007,199,254,740,991 (Number.MAX_SAFE_INTEGER). For positions beyond that, arbitrary-precision arithmetic (e.g., BigInt or external libraries) would be required.
In base b, each digit d (where 0 ≀ d < b) appears with asymptotic frequency 1/b in the Champernowne constant C_b, by the normality property. However, in finite prefixes, distribution varies. The digit 0 appears less frequently early in the sequence because leading zeros are not represented - the number 10 contributes a "1" and a "0", but there is no standalone "0" integer in the concatenation. The bias toward non-zero digits diminishes as position increases.
No. This tool is specific to the Champernowne constant, which concatenates all positive integers. The Copeland - ErdΕ‘s constant concatenates successive primes (0.2357111317...), requiring a prime sieve. The Smarandache constant concatenates specific subsequences. Each requires different generation logic. The group-counting shortcut used here relies on the uniform structure of consecutive integers and does not apply to primes or other irregular sequences.
Yes. Kurt Mahler proved in 1937 that C₁₀ is transcendental - it is not a root of any non-zero polynomial with rational coefficients. This follows from the Thue - Siegel - Roth theorem and the fact that C₁₀ can be approximated by rationals "too well" for an algebraic irrational. The same argument extends to C_b for any base b β‰₯ 2.