#include <stdio.h>
#include 
<stdlib.h>
#include 
<string.h>

int  result[500];
char str[50];
int  n;
int  len;
int  s;
int  relen;

void print()
{
    
int i= 0;
    
while( result[i]== 0 ) i++;
    
    
int tt= len* n;
    
int left= 500- tt;
    
    
if( relen* n> 500- i && tt> 500- i ) i-= ( relen* n- 500+ i );
    
    
for( ; i< left; ++i ) printf("%d", result[i] );
    
if( i< 499 ) printf(".");
    
for( ; i< 500++i  ) printf("%d", result[i] );
    
    printf(
"\n");
}


void  multify()
{
    
forint i= 0; i< 500++i )
    result[i]
*= s;
    
    
forint i= 499; i> 0; i-- )
    
{
        result[i
-1]+= result[i]/ 10;
        result[i]
%= 10;
    }

}


int main()
{
    
while( scanf("%s%d",str, &n)!= EOF )
    
{
        
int sum= 0, i= 0;
        
while( str[i]!= '.' ) { sum= sum* 10+ str[i]- '0';  i++; }
        i
++;
        len
= 0
        
        
forint j= i; j< strlen(str); ++j )
        
{
            
bool isok= false;
            
            
forint t= j; t< strlen(str); ++t )
            
if( str[t]!= '0' ) { isok= truebreak; }
            
            
if( isok ) { sum= sum* 10+ str[j]- '0'; len++; }
            
else break;
        }

        i
= 499; s= sum; relen= 0;
        memset( result, 
0sizeof(result) );
        
        
while( sum )
        
{
            result[i
--]= sum% 10; relen++;
            sum
/= 10;
        }

        
        
forint j= 1; j< n; ++j )  multify();
        
        print();
    }

    
    
return 0;
}

posted on 2008-10-28 22:45 Darren 阅读(158) 评论(0)  编辑 收藏 引用

只有注册用户登录后才能发表评论。
网站导航: 博客园   IT新闻   BlogJava   知识库   博问   管理