//
// SmallFactorials.cpp
// 3
//
// Created by Chintan Shah on 18/08/13.
// Copyright (c) 2013 Chintan Shah. All rights reserved.
//
#include <stdio.h>
#include <iostream>
#include <math.h>
#include <vector>
#include <algorithm>
using namespace std;
inline int FAST_IO()
{ int x=0;
char ch;
ch=getchar_unlocked();
x = ch-48;
while ((ch=getchar_unlocked()) >= 48 && ch <= 57)
x=x*10+ch-48;
return x;
}
int main()
{
int b;
int t=FAST_IO();
cout<<t<<endl;
int a[200];
int m=0,temp;
while(t>0)
{
a[0]=1;
int x=FAST_IO();
cout<<x<<endl;
int y=x;
for(;y>=2;y--)
{
temp = 0;// you did not initialise temp =0
for(int i=0;i<=m;i++)
{
b=(a[i]*y)+temp;//earlier it was temp in place of variable b
a[i]=b%10;//same as above
temp=b/10;// same as above
}
while(temp>0)
{
a[++m]=temp%10;
temp=temp/10;
}
}
t--;
for(int i=m;i>=0;i--)
{
cout<<a[i];
}
cout<<endl;
for(int i=m;i>=0;i--)
{
a[i]=0;
}
m=0;
}
return 0;
}
Ly8KLy8gIFNtYWxsRmFjdG9yaWFscy5jcHAKLy8gIDMKLy8KLy8gIENyZWF0ZWQgYnkgQ2hpbnRhbiBTaGFoIG9uIDE4LzA4LzEzLgovLyAgQ29weXJpZ2h0IChjKSAyMDEzIENoaW50YW4gU2hhaC4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KLy8KCiNpbmNsdWRlIDxzdGRpby5oPgojaW5jbHVkZSA8aW9zdHJlYW0+CiNpbmNsdWRlIDxtYXRoLmg+CiNpbmNsdWRlIDx2ZWN0b3I+CiNpbmNsdWRlIDxhbGdvcml0aG0+CnVzaW5nIG5hbWVzcGFjZSBzdGQ7CmlubGluZSBpbnQgRkFTVF9JTygpCnsgICAgaW50IHg9MDsKICAgIGNoYXIgY2g7CiAgICBjaD1nZXRjaGFyX3VubG9ja2VkKCk7CiAgICB4ID0gY2gtNDg7CiAgICB3aGlsZSAoKGNoPWdldGNoYXJfdW5sb2NrZWQoKSkgPj0gNDggJiYgY2ggPD0gNTcpCiAgICAgICAgeD14KjEwK2NoLTQ4OwogICAgcmV0dXJuIHg7Cn0KCgppbnQgbWFpbigpCnsKICAgIGludCBiOwogICAgaW50IHQ9RkFTVF9JTygpOwogICAgY291dDw8dDw8ZW5kbDsKICAgIGludCBhWzIwMF07CiAgICBpbnQgbT0wLHRlbXA7CiAgICB3aGlsZSh0PjApCiAgICB7CiAgICAgICAgYVswXT0xOwogICAgICAgIGludCB4PUZBU1RfSU8oKTsKICAgICAgICBjb3V0PDx4PDxlbmRsOwogICAgICAgIGludCB5PXg7CiAgICAgICAgZm9yKDt5Pj0yO3ktLSkKICAgICAgICB7CiAgICAgICAgICAgIHRlbXAgPSAwOy8vIHlvdSBkaWQgbm90IGluaXRpYWxpc2UgdGVtcCA9MAogICAgICAgIGZvcihpbnQgaT0wO2k8PW07aSsrKQogICAgICAgIHsKICAgICAgICAgICAgYj0oYVtpXSp5KSt0ZW1wOy8vZWFybGllciBpdCB3YXMgdGVtcCBpbiBwbGFjZSBvZiB2YXJpYWJsZSBiCiAgICAgICAgICAgIGFbaV09YiUxMDsvL3NhbWUgYXMgYWJvdmUKICAgICAgICAgICAgdGVtcD1iLzEwOy8vIHNhbWUgYXMgYWJvdmUKICAgICAgICB9CiAgICAgICAgICAgIHdoaWxlKHRlbXA+MCkKICAgICAgICAgICAgewogICAgICAgICAgICAgICAgYVsrK21dPXRlbXAlMTA7CiAgICAgICAgICAgICAgICB0ZW1wPXRlbXAvMTA7CiAgICAgICAgICAgIH0KICAgICAgICB9CgogICAgICAgIHQtLTsKCiAgICAgICAgZm9yKGludCBpPW07aT49MDtpLS0pCiAgICAgICAgewogICAgICAgICAgICBjb3V0PDxhW2ldOwoKICAgICAgICB9CiAgICAgICAgY291dDw8ZW5kbDsKICAgICAgICBmb3IoaW50IGk9bTtpPj0wO2ktLSkKICAgICAgICB7CiAgICAgICAgICAgIGFbaV09MDsKCiAgICAgICAgfQogICAgICAgIG09MDsKICAgIH0KICAgIHJldHVybiAwOwoKCn0K