P1024
#include <bits/stdc++.h>
typedef long double ld;
int t;
bool c[20];
void trans(int x, int sep = 10) {
memset(c, false, sizeof(c));
for (int i = 0; x; ++ i, x >>= 1) {
c[i] = bool(x & 1);
}
int stat = -1, end = -1;
for (int i = 19; i >= sep; -- i) {
if (c[i]) {
stat = i;
break;
}
}
for (int i = 0; i < sep; ++ i) {
if (c[i]) {
end = i;
break;
}
}
if (stat == -1) {
putchar('0');
} else {
for (int i = stat; i >= sep; -- i) {
putchar('0' + int(c[i]));
}
}
if (end != -1) {
putchar('.');
for (int i = sep - 1; i >= end; -- i) {
putchar('0' + int(c[i]));
}
}
puts("");
return;
}
int main(void) {
scanf("%d", &t);
while (t --) {
ld inpx;
int x;
scanf("%Lf", &inpx);
x = round(inpx * 1024);
trans(x);
}
return 0;
}