C言語って…at GAMEDEVC言語って… - 暇つぶし2ch■コピペモード□スレを通常表示□オプションモード□このスレッドのURL■項目テキスト86:85 02/08/04 18:06 .net あー、ごめん、ちょっと補足。 85のコードはx,yに値が代入された後、場合わけを含めて計算する。 0を入力されても止める必要は無いし、1の場合の場合わけも不要。 考慮していないのは乗数<0の場合。 0で計算される。 87:名前は開発中のものです。 02/08/04 18:50 .net x, y の値を計算の途中で変えちゃってイイならば while(--y) x*=x; とか。x が答えになる。 ただしこれは y<1 のときにかなり最悪なことになる。 ところで >>84 は一応ループつかってるんじゃないのか? > 85 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。 しかし再帰でバグ出すと最悪数時間が消えるので、 他にいい方法があったり、あるいは急ぐときにはあんまりお勧めしないです。 次ページ最新レス表示レスジャンプ類似スレ一覧スレッドの検索話題のニュースおまかせリストオプションしおりを挟むスレッドに書込スレッドの一覧暇つぶし2ch