プロが教えるわが家の防犯対策術!

プログラムは全くの初心者です。
数学をしていて級数の計算(収束が遅いので)をするために必要最低限だけ覚えようとしました。

c言語で立方根の計算をしたくてnの立方根を出すときに
n=;\\任意の数
t=pow(n,1/3);
printf("%f",t);
でしました。が、試しにn=2でした時1.000…と小数点以下が切り下げ?四捨五入?されています。そのままの値を返す方法が知りたいです。
簡単な質問ですが、すいません。
回答お願いしますm(._.)m

A 回答 (3件)

C言語ですよね。


1/3 が整数同士の除算で整数になり 0 と認識されているのでしょう。
1.0/3 に書き換えれば正しく計算するのでは?
    • good
    • 1

今の C なら立方根を直接求める


cbrt
という関数がある.
    • good
    • 0

1 / 3 は0ですよ。

C言語の基本の基本です(^-^;

プログラム初心者ではしょうがないかもしれませんが
数学の数式とCの数式は別物。
最初は、演算に対して、演算の入力、演算結果の「型」を強く意識して
「式」を覚えるのが肝要です。
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!


このQ&Aを見た人がよく見るQ&A