#include<stdio.h>
#include<conio.h>
char N[41]="0000000000000000001732050807568877293999";
char M[41]="0000000000000000000001732050807568877293";
char R[21],S[21],T[41];
int a,b,c,d,x,y,z=10,E=2;
int main(){
textmode(C40);
for(d=2;d--;d-=E>2)
for(a=x=0;x<40;x++)
a+=b=d?(N[x]-=48):(M[x]-=48),
printf("%c",a+b<1?32:b+48);
if(E==0) //Suma
for(a=0,x=40;x--;)
a=N[x]+M[x]+a/10,
T[x]=a%10;
if(E==1) //Resta
for(a=0,x=40;x--;)
a=N[x]-M[x]-(a<0),
T[x]=a<0?a+10:a;
if(E==2) //Producto
for(y=20;--y;c++)
for(a=0,x=40;x--;)
if(a=N[x]*M[20+y]+a/10)
a+=T[x-c],
T[x-c]=a%10;
if(E>2) //Raiz cuadrada
do{
for(a=0,x=y+1;x--;)
a=R[x]*2+a/10,
S[x]=a?a%10:0;
S[y+1]=--z;
for(b=d=x=2*y+2;x--;)
M[x]=T[x]=0;
for(a=0,x=y+2;x--;)
a=S[x]*z+a/10,
M[--d]=a?a%10:0;
for(a=0,x=b;x--;)
a=N[x]-M[x]-(a<0),
T[x]=a<0?a+10:a;
if(T[c]) continue;
for(x=b;x--;N[x]=T[x]);
while(++x<b&&!N[x]) c=x;
R[++y]=z;
z=10;
}while(y<20);
else y=39;
for(a=x=0;x<=y;x++)
a+=b=E>2?R[x]:T[x],
printf("%c",a+b<1?32:b+48);
getch();
return 0;
}