POJ 1001 大数的乘法

对这道题的理解 大数的乘法  关键是 实型的  那么首先就是数出来小数点有几位这个相信很简单 从后面往前数刚开始0 不算接着就是遇到小数点结束如果没有小数点 那么置为0

接着就是输出地时候首先算出小数点的位置然后输出   你想怎么样都行 从后往前数这个时候输出 那么就是你也知道了 嘿嘿  剩下的就是 大数的乘法了 ......

 

ContractedBlock.gif ExpandedBlockStart.gif 代码
 
   
#include < stdio.h >
int main()
{
int i,m,n,j;
__int64 num[
100 ],t;
while (scanf( " %d%d " , & n, & m) != EOF){
for (i = 0 ;i < 100 ;i ++ )
num[i]
= 0 ;
num[
1 ] = 1 ;
num[
0 ] = 1 ;
for (i = 1 ;i <= m;i ++ ){
for (t = 0 ,j = 1 ;j <= num[ 0 ];j ++ ){
num[j]
*= n;
num[j]
+= t;
t
= num[j] / 1000000000 ;
num[j]
%= 1000000000 ;
}
if (t != 0 ){
num[j]
= t;
num[
0 ] ++ ;
}
}
for (i = num[ 0 ];i > 0 ;i -- ){
i
== num[ 0 ] ? printf( " %I64d " ,num[i]):printf( " %09I64d " ,num[i]);
}
putchar(
' \n ' );
}
return 0 ;
}

 

对于大数的基本运算我们还是要会的这个很训练基础的 开始我的ACM生涯了 哈哈哈哈O(∩_∩)O哈哈~

转载于:https://www.cnblogs.com/Acmen/archive/2010/08/24/1807595.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值