[表示 : 全て 最新50 1-99 101- 201- 301- 2chのread.cgiへ]
Update time : 07/15 20:46 / Filesize : 150 KB / Number-of Response : 397
[このスレッドの書き込みを削除する]
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧] [類似スレッド一覧]


↑キャッシュ検索、類似スレ動作を修正しました、ご迷惑をお掛けしました

C/C++の宿題片付けます 126代目



297 名前:デフォルトの名無しさん mailto:sage [2009/05/26(火) 22:56:50 ]
>>291 なんとか1レスに納めた。修正ヨロ
#include<stdio.h>
#define MB_UNIT 10000
#define MB_SIZE 18
typedef struct tag_mb_t{ long data[MB_SIZE]; }mb_t;
mb_t mb_mul(mb_t a, int n){
long i, tmp, carry=0;
for(i=0;i<MB_SIZE;i++){
tmp=a.data[i]*n+carry;
a.data[i]=tmp%MB_UNIT;
carry=tmp/MB_UNIT;
}
return a;
}
int mb_sprint(char buf[MB_SIZE*4+1], mb_t a){
char i, *p=buf;
for(i=MB_SIZE-1;i>0 && a.data[i]==0;i--);
p+=sprintf(p, "%ld", a.data[i]);
for(i--;i>=0;i--) p+=sprintf(p, "%04ld", a.data[i]);
return p-buf;
}
int main(void){
char buf[MB_SIZE*4+1], i, len53;
mb_t x[54]={{{1}}};
for(i=1;i<=53;i++) x[i]=mb_mul(x[i-1], i);
len53=mb_sprint(buf, x[53]);
for(i=1;i<=53;i++){
mb_sprint(buf, x[i]);
printf("%*s\n", len53, buf);
}
return 0;
}






[ 続きを読む ] / [ 携帯版 ]

全部読む 前100 次100 最新50 [ このスレをブックマーク! 携帯に送る ] 2chのread.cgiへ
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧]( ´∀`)<150KB

read.cgi ver5.27 [feat.BBS2 +1.6] / e.0.2 (02/09/03) / eucaly.net products.
担当:undef