今回は数値の計算について説明します。
四則演算など
・基本数学と同じような記号を使う
・掛け算は x ではなく * の記号を、割り算は ÷ ではなく / の記号を使う
・剰余算とは、ある数を別の数で割ったときの余りを表す
・()をつけた場合は一番内側の括弧から計算する
+ | 足し算 |
---|---|
– | 引き算 |
* | 掛け算 |
/ | 割り算 |
% | 剰余算 |
例)
NSInteger int1, int2, int3; CGFloat float3, float4; int1 = 23; int2 = -3; int3 = 4; float3 = 4.8; float4 = 5.6; //足し算 NSInteger resultAdd = int1 + int2; NSLog(@"%ld %ld = %ld", int1, int2, resultAdd); //出力: 23 -3 = 20 //引き算 NSInteger resultSub = int2 - int1; NSLog(@"%ld - %ld = %ld", int2, int1, resultSub); //出力: -3 - 23 = -26 //掛け算 NSLog(@"%ld x %f = %f", int1, float3, int1 * float3); //出力: 23 x 4.800000 = 110.400000 //割り算 NSLog(@"%f ÷ %f = %f", float3, float4, float3 / float4); //出力: 4.800000 ÷ 5.600000 = 0.857143 //剰余算 NSLog中に%を表すときは %% と書く NSLog(@"%ld %% %ld = %ld", int1, int3, int1 % int3); //出力: 23 % 4 = 3 //()つき NSLog(@"%ld", (int1 + int2) * int3); //出力: 80
この辺は使う記号以外数学とあまり変わらない感じですね。
あと気をつける点として出力結果をどの型に代入するかによって、答えが変わってきます。
NSIntegerは小数を入れられないため、小数点以下を切られてしまいます。
例)
NSInteger num1 = 5; CGFloat num2 = 2.3; NSInteger result1 = num1 * num2; CGFloat result2 = num1 * num2; NSLog(@"result1 = %ld", result1); //result1 = 11 NSLog(@"result2 = %f", result2); //result2 = 11.500000
インクリメント、デクリメント
数値を1足すことをインクリメント(increment)、数値を1減らすことをデクリメント(decrement)といいます。
ループなどでよく使うので、省略形が用意されています。
NSInteger n = 3; n = n + 1; //ふつうの書き方 n++; //省略形 NSLog(@"%ld", n); // 5 NSInteger m = 1; m = m - 1; //ふつうの書き方 m--; //省略形 NSLog(@"%ld", m); // -1
これは特に覚える必要もないのですが、++や–の記号は変数の前か後ろに書くことができます。その場合次の行(;のあと)は実行結果は同じです。ただ実行行では足すか引くしたあとに実行されるか、実行したあとに足すか引くかされるという順序が違います。
言葉だと難しいので、プログラムを見ていただくとわかります。
NSInteger i = 3; NSLog(@"%ld", i++); // 3 NSLog(@"%ld", i); // 4 i = 3; NSLog(@"%ld", ++i); // 4 NSLog(@"%ld", i); // 4
省略形
=の前に演算子を書くと、省略形になります。たまに出てきます。
NSInteger n = 30; n += 3; // n = n + 3; と同じ n -= 4; // n = n - 4; n *= 2; // n = n * 2; n /= 3; // n = n / 3; n %= 3; // n = n % 3;
課題
1) 5 + 3の結果を出力してください
2) 5 – 3 x 4 の結果を出力してください
2) (3.5 – 4.2) x (2.0 ÷ 1.2) の結果を出力してください
ようやくプログラムっぽくなってきました。
回答は次回に。次回は条件分岐についてを予定してます。
■ 自作iPhoneアプリ 好評発売中!
・フォルメモ - シンプルなフォルダつきメモ帳
・ジッピー電卓 - 消費税や割引もサクサク計算!
■ LINEスタンプ作りました!
毎日使える。とぼけたウサギ