今回は合同式を計算するショートカットを作ってみました.
具体的には入力した整数と法における絶対値最小剰余を求めます.
※価格は記事執筆時のものです. 現在の価格はApp Storeから確認ください.
レビュー時のバージョン : v2.1
スポンサーリンク
「割り切れる」を再再利用
今回も先日作った「割り切れる」の考え方を使います.
そもそも合同式の定義そのものですね, 具体的に書くと, 整数 の差 が法 の倍数であるとき,
でした.
つまり与えられた整数 と法 について, 値 が整数となるような整数 が求める結果です.
フロー
まず整数 と法 を「入力を要求」によって与えます.
拘る人はここで や が整数となるようエラーチェックしましょう.
続いて法 を用いて値 を計算します.
今回は「絶対値最小剰余」, つまり法 であれば
となるように取りたいため後ろである から繰り返し, 値を1だけ減らして繰り返しを戻ります.
なので正値最小剰余が欲しいならここは にし, 繰り返しの際は1だけ値を増やして繰り返しを戻ります.
上の説明の通りで繰り返し用に変数 に値 続けて定義します.
次に「繰り返す」のアクションで繰り返し回数を法である にします.
繰り返しの中で と を計算します.
ならばその が求める結果なので別の変数(今回はx)に代入します.
等しくなければ を だけ引き, 繰り返しに戻ります.
正置最小剰余で求めたい場合は先の の値に加え, ここで 減らすのではなく 増やすことになります.
これで求める値 が決定したので「結果を表示」などで表示して完了です.
実行
実行して正しいことを確認します.
大きな値があってもそれなりにやってくれます.
〆
余裕があれば指数の時のバージョンも作ってみたいです.
URLスキームについてはこちら
[Search]iPhone URLスキーム -The theoryの戯言iPhoneのURLスキームを検索して一覧表示できます. リクエストは内容に応じてお答えします.