- #include <bits/stdc++.h> 
- using namespace std; 
- // A modified version of Lightness Races in Orbit's code given here: http://stackoverflow.com/a/37861479/3555000 
- // I thank Lightness Races in Orbit for the contribution 
- void print_binary(long double y) 
- { 
-     const long double x = y; 
-     unsigned char     a[sizeof(long double)]; 
-   
-     copy( 
-         reinterpret_cast<const unsigned char*>(&x), 
-         reinterpret_cast<const unsigned char*>(&x) + sizeof(long double), 
-         &a[0] 
-     ); 
-     for (auto el : a) 
-     { 
-         bitset<8>k(el); 
-         cout << k.to_string() ; 
-     } 
-   
-     cout << endl; 
- } 
-   
- int main() 
- { 
-     int a[] = {20,29,31}, res=0; 
-     for(int i = 0; i<3; i++) 
-     { 
-         cout<<"i = "<<i<< ", a["<<i<< "] = "<<a[i]<<"\npow(" << a[i] <<","<<i+1 << "):\nBinary: "; 
-         long double temp = pow(a[i],i+1); 
-         print_binary(temp); 
-         res+=temp; 
-         cout<<setprecision(50)<<fixed<< "Decimal: " <<temp <<", Result = "<<res<<endl; 
-     } 
-     return 0; 
- } 
-   
				I2luY2x1ZGUgPGJpdHMvc3RkYysrLmg+CnVzaW5nIG5hbWVzcGFjZSBzdGQ7Ci8vIEEgbW9kaWZpZWQgdmVyc2lvbiBvZiBMaWdodG5lc3MgUmFjZXMgaW4gT3JiaXQncyBjb2RlIGdpdmVuIGhlcmU6IGh0dHA6Ly9zdGFja292ZXJmbG93LmNvbS9hLzM3ODYxNDc5LzM1NTUwMDAKLy8gSSB0aGFuayBMaWdodG5lc3MgUmFjZXMgaW4gT3JiaXQgZm9yIHRoZSBjb250cmlidXRpb24Kdm9pZCBwcmludF9iaW5hcnkobG9uZyBkb3VibGUgeSkKewogICAgY29uc3QgbG9uZyBkb3VibGUgeCA9IHk7CiAgICB1bnNpZ25lZCBjaGFyICAgICBhW3NpemVvZihsb25nIGRvdWJsZSldOwoKICAgIGNvcHkoCiAgICAgICAgcmVpbnRlcnByZXRfY2FzdDxjb25zdCB1bnNpZ25lZCBjaGFyKj4oJngpLAogICAgICAgIHJlaW50ZXJwcmV0X2Nhc3Q8Y29uc3QgdW5zaWduZWQgY2hhcio+KCZ4KSArIHNpemVvZihsb25nIGRvdWJsZSksCiAgICAgICAgJmFbMF0KICAgICk7CiAgICBmb3IgKGF1dG8gZWwgOiBhKQogICAgewogICAgICAgIGJpdHNldDw4PmsoZWwpOwogICAgICAgIGNvdXQgPDwgay50b19zdHJpbmcoKSA7CiAgICB9CgogICAgY291dCA8PCBlbmRsOwp9CgppbnQgbWFpbigpCnsKICAgIGludCBhW10gPSB7MjAsMjksMzF9LCByZXM9MDsKICAgIGZvcihpbnQgaSA9IDA7IGk8MzsgaSsrKQogICAgewogICAgICAgIGNvdXQ8PCJpID0gIjw8aTw8ICIsIGFbIjw8aTw8ICJdID0gIjw8YVtpXTw8IlxucG93KCIgPDwgYVtpXSA8PCIsIjw8aSsxIDw8ICIpOlxuQmluYXJ5OiAiOwogICAgICAgIGxvbmcgZG91YmxlIHRlbXAgPSBwb3coYVtpXSxpKzEpOwogICAgICAgIHByaW50X2JpbmFyeSh0ZW1wKTsKICAgICAgICByZXMrPXRlbXA7CiAgICAgICAgY291dDw8c2V0cHJlY2lzaW9uKDUwKTw8Zml4ZWQ8PCAiRGVjaW1hbDogIiA8PHRlbXAgPDwiLCBSZXN1bHQgPSAiPDxyZXM8PGVuZGw7CiAgICB9CiAgICByZXR1cm4gMDsKfQo=
				
				
				
				
				
			 
			
				
			
			
				
	
		
		
	
	
		i = 0, a[0] = 20
pow(20,1):
Binary: 000000000000000000000000000000000000000000000000000000001010000000000011010000000000000000000000
Decimal: 20.00000000000000000000000000000000000000000000000000, Result = 20
i = 1, a[1] = 29
pow(29,2):
Binary: 000000000000000000000000000000000000000000000000010000001101001000001000010000000000000000000000
Decimal: 841.00000000000000000000000000000000000000000000000000, Result = 861
i = 2, a[2] = 31
pow(31,3):
Binary: 000000000000000000000000000000000000000000000000101111101110100000001101010000000000000000000000
Decimal: 29791.00000000000000000000000000000000000000000000000000, Result = 30652