2012-01-04 13 views
-1

私は現在球の量をしようとしていますが、私のプログラムを実行すると、私に間違った答えが与えられます。ここに私のコードです:計算に問題があります

-(IBAction)calculate 
{ 
    double radiusNum = [radius.text doubleValue]; 
    double ansNum = 4/3 * 3.14159 * (radiusNum * radiusNum * radiusNum); 

    NSString *ans = [NSString stringWithFormat:@"%1.4f Units^3", ansNum]; 
    answer.text = ans; 
} 

あなたは私が間違っていたことを修正する方法を教えてもらえますか? p.s私はXcode 4を使用しており、事前にありがとう

+0

不適切な値の例を投稿できますか?あなたの数学は正しいように見え、あなたの文字列の書式もOKです。デバッガで停止した場合、ansNumは正しいですか?もしそうなら、数字の表示をどのようにフォーマットするかに問題があるかもしれません。 – user1118321

答えて

0

実際これは論理的な誤りです。次のように 方法がなければならない:

-(IBAction)calculate 
{ 
    double radiusNum = [radius.text doubleValue]; 
    double ansNum = (4 * 3.14159 * (radiusNum * radiusNum * radiusNum))/3; 

    NSString *ans = [NSString stringWithFormat:@"%1.4f Units^3", ansNum]; 
    answer.text = ans; 
} 

計算の順序が間違っていました。

+0

この回答は役に立ちましたか? – Ilanchezhian

0
double radiusNum = [radius.text doubleValue]; 
double ansNum = (pow(radiusNum, 3)*4/3)*3.1415927; 

NSString *ans = [NSString stringWithFormat:@"%1.4f Units^3", ansNum]; 
    NSLog(ans);