C言語って…at GAMEDEVC言語って… - 暇つぶし2ch■コピペモード□スレを通常表示□オプションモード□このスレッドのURL■項目テキスト88:85 02/08/04 19:03 .net >>87 えへっ、(省略されました・・全てを読むにはここを押してください)を読まなかったの v 私めんどうくさがりだもん。 …ごめんね。 89:名前は開発中のものです。 02/08/04 19:06 .net >x*=x ここは困った事になると思う。 90:85 02/08/04 19:22 .net そだね。 87さんのだと最終的な結果がx^(2^y)になるかな? swapと一緒でtmpが一個いるよ。 tmp無しで書こうと思ったら、church数みたいに int func(int xx,int yy){return (n==0)?1:xx*func(yy-1);} とかあらかじめ関数を作っておいて、 printf("%d ^ %d = %d\n",x,y,func(y)); でOK。 しかし再帰でバグ出すと最悪数時間が消えるので、 他にいい方法があったり、あるいは急ぐときにはあんまりお勧めしないです。 91:85 02/08/04 19:23 .net ああっ、やってしまった…。 訂正です。 int func(int xx,int yy){return (yy==0)?1:(xx*func(xx,yy-1));} これならうまくいくはず…。たぶん…。 92:85 02/08/04 19:34 .net やっぱりダメだぁ…。 訂正が面倒だから今回はちゃんとコンパイラ通した。 //再帰を使った階乗計算 #include<stdlib.h> #include<stdio.h> int func(int xx,int yy){return (yy==0)?1:(xx*func(xx,yy-1));} void main(void){ int x,y; printf("x?");scanf("%d", &x);//xを入力 printf("y?");scanf("%d", &y);//yを入力 printf("%d ^ %d = %d\n",x,y,func(x,y));//計算&結果表示 } 次ページ最新レス表示レスジャンプ類似スレ一覧スレッドの検索話題のニュースおまかせリストオプションしおりを挟むスレッドに書込スレッドの一覧暇つぶし2ch