2011-12-14 12 views
-1

私は非常に簡単な質問がありますが、これを理解できないようです。最終的な計算を行う前に、 "float l"変数の前に ".00"を追加します。Objective Cの1つのコマンドで2つのint変数を使用する

-(IBAction)buttonPressed { 
float x = ([nitrogen.text floatValue]); 
float l = ([ml.text floatValue]); 
int r = x * 10000; 
int t = .00; //code added to add .00 in front of ML final output?? 
int e = t.l; 
float f = r * t.l; // I've tried t&&l and others.. it doesn't work... help!!! 

たとえば、l = "5"の場合です。代わりにl = ".005"としたいと思います。これはどうすればいいですか? Objective Cので

+2

分割により分割することができますか? –

答えて

0

、これははるかに良い

t = (l/1000); 
[NSString stringWithFormat: @"%d.%03d", r, t]; 

のようなものを使って行うことでしょうそして、あなたが本当にfという名前のfloat型に結果を詰め込むしたい場合は、あなたも行うことができます:

t = (l/1000); 
NSString * someString = [NSString stringWithFormat: @"%d.%03d", r, t]; 
f = [someString floatValue]; 

これは、Objective-Cではなくcというタグでタグ付けされているので、他の(そしておそらくさらに優れたアルゴリズムアルゴリズムの)意見がたくさん得られると確信しています。

+0

非常に迅速な回答をいただきありがとうございます。しかし、まだ計算をせずに2つの変数を文字列に置き換えることができない方法はありますか?例えば、Rが20、Eが50に等しければ、どのようなコードを使ってコンパイラが "2050"を1つの文字列として表示するのか? –

+0

これは 'NSString'の' stringWithFormat'メソッドを使って完全に行うことができます。 R = 20&E = 50の場合、NSString * someString = [NSString stringWithFormat:@ "%d%d"、R、E]; 'を実行すると" 2050 "になります。 (E = -50のような)変数に予期しないことがあれば、予期せぬ評価のつかない結果(「20-50」)が発生します。 –

+0

ありがとうございます!ユーザーが負の整数を入力する状況には入らないので、これが機能します。 NSStringとしてR&Eを設定しても、私の最終的な計算はうまくいくでしょうか? ex ... 'float f = r * someString' その作業はありますか? –

0

あなたは、単に1000で1000

float l = ([ml.text floatValue]); 
l = l/1000; // if l was 5, l will now be 0.005 
関連する問題