Skip to main content
int is shorter than char lol
Source Link

C++ (gcc), 119169 119 118 bytes

#include<bits/stdc++.h>
int main(){std::mt19937 p((uint64_t)new charint);std::string s="1";while(p()%2)s+=s;std::cout<<s;}

Try it online!Try it online!

This solution is directly derived from the linked paradox in the question. The output string is composed of 1 digits so technically it can be interpreted as a number.

The random number generator is seeded with the address of a heap variable. The address changes each time the program is run.

Another option is to use the address of a newly allocated heap variable: mt19937 rng((uint64_t) new char); (source)

C++ (gcc), 119 bytes

#include<bits/stdc++.h>
int main(){std::mt19937 p((uint64_t)new char);std::string s="1";while(p()%2)s+=s;std::cout<<s;}

Try it online!

This solution is directly derived from the linked paradox in the question. The output string is composed of 1 digits so technically it can be interpreted as a number.

The random number generator is seeded with the address of a heap variable. The address changes each time the program is run.

Another option is to use the address of a newly allocated heap variable: mt19937 rng((uint64_t) new char); (source)

C++ (gcc), 169 119 118 bytes

#include<bits/stdc++.h>
int main(){std::mt19937 p((uint64_t)new int);std::string s="1";while(p()%2)s+=s;std::cout<<s;}

Try it online!

This solution is directly derived from the linked paradox in the question. The output string is composed of 1 digits so technically it can be interpreted as a number.

The random number generator is seeded with the address of a heap variable. The address changes each time the program is run.

Another option is to use the address of a newly allocated heap variable: mt19937 rng((uint64_t) new char); (source)

golf the seeding part
Source Link

C++ (gcc), 169119 bytes

#include<bits/stdc++.h>
int main(){std::mt19937 p(std::chrono::high_resolution_clock::now().time_since_epoch().count(uint64_t)new char);std::string s="1";while(p()%2)s+=s;std::cout<<s;}

Try it online!Try it online!

This solution is directly derived from the linked paradox in the question. The output string is composed of 1 digits so technically it can be interpreted as a number.

The random number generator is seeded with the address of a heap variable. The address changes each time the program is run.

Another option is to use the address of a newly allocated heap variable: mt19937 rng((uint64_t) new char); (source)

C++ (gcc), 169 bytes

#include<bits/stdc++.h>
int main(){std::mt19937 p(std::chrono::high_resolution_clock::now().time_since_epoch().count());std::string s="1";while(p()%2)s+=s;std::cout<<s;}

Try it online!

This solution is directly derived from the linked paradox in the question. The output string is composed of 1 digits so technically it can be interpreted as a number.

C++ (gcc), 119 bytes

#include<bits/stdc++.h>
int main(){std::mt19937 p((uint64_t)new char);std::string s="1";while(p()%2)s+=s;std::cout<<s;}

Try it online!

This solution is directly derived from the linked paradox in the question. The output string is composed of 1 digits so technically it can be interpreted as a number.

The random number generator is seeded with the address of a heap variable. The address changes each time the program is run.

Another option is to use the address of a newly allocated heap variable: mt19937 rng((uint64_t) new char); (source)

Source Link

C++ (gcc), 169 bytes

#include<bits/stdc++.h>
int main(){std::mt19937 p(std::chrono::high_resolution_clock::now().time_since_epoch().count());std::string s="1";while(p()%2)s+=s;std::cout<<s;}

Try it online!

This solution is directly derived from the linked paradox in the question. The output string is composed of 1 digits so technically it can be interpreted as a number.