#define ANSI
#include <iostream>
#include <cstring>
#include <bitset>
#include <climits>
#include <sstream>
using namespace std;
void printfloat(float);
int main()
{
int t;
float x;
cin >> t; /* wczytaj liczbę testów */
while(t)
{
cin >> x;
printfloat(x);
t--;
}
return 0;
} /* ........................ Tu napisz potrzebne funkcje */
void printfloat(float valu)
{
if(valu != 0.0f)
{
union {
float a;
int out;
}data;
data.a = valu;
bitset<sizeof(float) * CHAR_BIT> floatBits(data.out);
string str = floatBits.to_string();
int len = str.length();
int j = 1;
bool was = false;
for(int i =0;i < len;i+=4)
{
string s;
s += str[i];
s += str[i + 1];
s += str[i + 2];
s += str[i + 3];
if (s == "0000" && (!was))
{
cout << "0";
was = true;
}
if (s == "0001")
cout << "1";
if (s == "0010")
cout << "2";
if (s == "0011")
cout << "3";
if (s == "0100")
cout << "4";
if (s == "0101")
cout << "5";
if (s == "0110")
cout << "6";
if (s == "0111")
cout << "7";
if (s == "1000")
cout << "8";
if (s == "1001")
cout << "9";
if (s == "1010")
cout << "a";
if (s == "1011")
cout << "b";
if (s == "1100")
cout << "c";
if (s == "1101")
cout << "d";
if (s == "1110")
cout << "e";
if (s == "1111")
cout << "f";
if (j % 2 == 0)
{
cout << " ";
was = false;
}
j++;
}
}else
{
cout << "0 0 0 0" ;
}
cout << endl;
}
I2RlZmluZSBBTlNJIAogCiNpbmNsdWRlIDxpb3N0cmVhbT4gCiNpbmNsdWRlIDxjc3RyaW5nPiAKI2luY2x1ZGUgPGJpdHNldD4KI2luY2x1ZGUgPGNsaW1pdHM+CiNpbmNsdWRlIDxzc3RyZWFtPgogCnVzaW5nIG5hbWVzcGFjZSBzdGQ7ICAKIAp2b2lkIHByaW50ZmxvYXQoZmxvYXQpOyAgCiAKaW50IG1haW4oKSAKeyAgIAoJaW50IHQ7ICAgCglmbG9hdCB4OyAgICAKCWNpbiA+PiB0OyAvKiB3Y3p5dGFqIGxpY3pixJkgdGVzdMOzdyAqLyAgIAoJd2hpbGUodCkKCXsgICAgICAKCQljaW4gPj4geDsgICAgIAoJCXByaW50ZmxvYXQoeCk7ICAgICAKCQl0LS07ICAgIAoJfSAgICAKCXJldHVybiAwOyAKfSAgLyogLi4uLi4uLi4uLi4uLi4uLi4uLi4uLi4uICBUdSBuYXBpc3ogcG90cnplYm5lIGZ1bmtjamUgKi8KIAp2b2lkIHByaW50ZmxvYXQoZmxvYXQgdmFsdSkKewoJaWYodmFsdSAhPSAwLjBmKQoJeyAKCQl1bmlvbiB7CgkJCWZsb2F0IGE7CgkJCWludCBvdXQ7CgkJfWRhdGE7CgkJZGF0YS5hID0gdmFsdTsKIAoJCWJpdHNldDxzaXplb2YoZmxvYXQpICogQ0hBUl9CSVQ+IGZsb2F0Qml0cyhkYXRhLm91dCk7CiAKIAoJCXN0cmluZyBzdHIgPSBmbG9hdEJpdHMudG9fc3RyaW5nKCk7CiAKCQlpbnQgbGVuID0gc3RyLmxlbmd0aCgpOwoJCWludCBqID0gMTsKCQlib29sIHdhcyA9IGZhbHNlOwoJCWZvcihpbnQgaSA9MDtpIDwgbGVuO2krPTQpCgkJewoJCQlzdHJpbmcgczsKCQkJcyArPSBzdHJbaV07IAoJCQlzICs9IHN0cltpICsgMV07CgkJCXMgKz0gc3RyW2kgKyAyXTsKCQkJcyArPSBzdHJbaSArIDNdOwogCgkJCWlmIChzID09ICIwMDAwIiAmJiAoIXdhcykpCgkJCXsKCQkJCWNvdXQgPDwgIjAiOwoJCQkJd2FzID0gdHJ1ZTsKCQkJfQoJCQlpZiAocyA9PSAiMDAwMSIpCgkJCQljb3V0IDw8ICIxIjsKCQkJaWYgKHMgPT0gIjAwMTAiKQoJCQkJY291dCA8PCAiMiI7CgkJCWlmIChzID09ICIwMDExIikKCQkJCWNvdXQgPDwgIjMiOwoJCQlpZiAocyA9PSAiMDEwMCIpCgkJCQljb3V0IDw8ICI0IjsKCQkJaWYgKHMgPT0gIjAxMDEiKQoJCQkJY291dCA8PCAiNSI7CgkJCWlmIChzID09ICIwMTEwIikKCQkJCWNvdXQgPDwgIjYiOwoJCQlpZiAocyA9PSAiMDExMSIpCgkJCQljb3V0IDw8ICI3IjsKCQkJaWYgKHMgPT0gIjEwMDAiKQoJCQkJY291dCA8PCAiOCI7CgkJCWlmIChzID09ICIxMDAxIikKCQkJCWNvdXQgPDwgIjkiOwoJCQlpZiAocyA9PSAiMTAxMCIpCgkJCQljb3V0IDw8ICJhIjsKCQkJaWYgKHMgPT0gIjEwMTEiKQoJCQkJY291dCA8PCAiYiI7CgkJCWlmIChzID09ICIxMTAwIikKCQkJCWNvdXQgPDwgImMiOwoJCQlpZiAocyA9PSAiMTEwMSIpCgkJCQljb3V0IDw8ICJkIjsKCQkJaWYgKHMgPT0gIjExMTAiKQoJCQkJY291dCA8PCAiZSI7CgkJCWlmIChzID09ICIxMTExIikKCQkJCWNvdXQgPDwgImYiOwogCgkJCWlmIChqICUgMiA9PSAwKQoJCQl7CgkJCQljb3V0IDw8ICIgIjsKCQkJCXdhcyA9IGZhbHNlOwoJCQl9CgkJCWorKzsKCQl9CiAKCX1lbHNlCgl7CgkJY291dCA8PCAiMCAwIDAgMCIgOwoJfQoJY291dCA8PCBlbmRsOwp9