Casio Basic: Int / Frac

Casio Basic
コマンドリファレンス

Casio fx-5800P、fx-9860GII、fx-CG20、fx-CG50 で確認をとっています。Casio fx-FD10 Pro では互換性はあると考えられますが、実機で確認していないので「可能性」としてご覧ください。
2015/01/09 更新

fx-5800P/ fx-9860GII / fx-CG20 / fx-CG50
Int関数 / Frac関数

◆概 要: Int 関数は数値の整数部を、Frac 関数は数値の小数部を取り出す

◆書 式: Int(引数) / Frac(引数)
  • fx-9860GII や fx-CG20/50 では、( ) なしで引数を書けるが、( ) を使っても問題ない
◆引 数: 数値、変数、戻り値のある関数を指定
  • fx-9860GII や fx-CG20/50 で引数に式を使う場合は、引数の範囲を明確にするために ( ) 使用を勧める

Int や Frac は、関数電卓として内蔵されている関数機能。


Frac 関数では、内部精度15桁を超える引数を与えると、丸め誤差が発生する。Int 関数では、このような丸め誤差は発生しない。




Int や Frac の使用例

1) 整数Nを3で割った余りMを求める: Int( )関数の使用例

N-3Int(N÷3)→M

(証明)

任意の整数は3で割った余りが、必ず0、1、2のいずれかになります。
Nを3で割った時の余りをMとすると、整数Aを用いて

N = 3A+M
    ・・・(式1)


と表すことができます。従って余りMは、

M = N - 3A      ・・・(式2)

となります。ここで、Mを求めるためには、Aを知る必要があります。


そこで、(式1)を変形して、

N/3 = A + M/3      ・・・(式3) 

但し、M = 0, 1, 2 なので、M/30以上1未満になります (0 ≦ M/3 <1)。
従って、A + M/3 を小数で表すと、

A + 0.xxxxxxxxx


となります。

ここで、Aは整数なので、A+M/3 の整数部は、A になります。
これを Int( )関数を用いて表すと、

A = Int(A+M/3)

となり、(式3)から、Int( ) の引数は、N/3 に置き換えられるので、

A = Int(N÷3)      ・・・(式4)

(式4)を(式2)に代入すると、

M = N - 3Int(N÷3)

が得られます。

(証明終わり)



2) 整数Nの偶数 / 奇数の判定:Frac 関数の使用例

If Frac(N÷2)
Then "N is odd"
Else "N is even"
IfEnd


Nが奇数の場合は、2で割り切れません。このとき N÷2 は整数にならず、小数を伴う数値になります。つまり、Frac(N÷2) は0になりません。Frac(N÷2)0でないは、Frac(N÷2) が「真」です。If [条件][条件]「真」なので、Then 以下を処理し、N is odd (Nは奇数) と表示します。
Nが偶数の場合は、2で割り切れます。このとき N÷2 は整数になり、小数部はありません。つまり、Frac(N÷2) は0になります。「Frac(N÷2)0である」は、Frac(N÷2)「偽」で、「真」でありません。If [条件][条件]が「真」でないので、Else以下を処理し、N is evern (Nは偶数)と表示します。

この場合、Frac の引数である N÷2 が、少数以下14桁になることはあり得ないので、丸め誤差が発生することはありません。従って Frac を使っても問題はありません。


( ) を使わない引数指定時の注意 [fx-9860GII や fx-CG20]

1.2→A
Int A+0.8


を実行した結果は 1.8 となる。Int の引数の範囲が A+0.8 ではなくて、A  のみになっていることが分かる。

A+0.8 を引数にするには、( ) を使って、

1.2→A
Int (A+0.8)

とする必要がある。




応援クリックをお願いします。励みになるので...

人気ブログランキングへ


FC2ブログランキングへ

keywords: fx-5800PCasioBasicInt 関数Frac 関数プログラミング入門プログラム関数電卓

リンク集 | ブログ内マップ
関連記事

テーマ : プログラム関数電卓
ジャンル : コンピュータ

コメントの投稿

非公開コメント

最新記事
最新コメント
カテゴリ
C# (3)
検索フォーム
Visitors
Online Counter
現在の閲覧者数:
プロフィール

やす (Krtyski)

Author:やす (Krtyski)
since Oct 30, 2013


プログラム電卓は、プログラムを使ってナンボ!

実際に触って気づいたこと、自作プログラム、電卓プログラミングについて書いています

おもしろい・役に立つならクリックしてください。励みになります。
にほんブログ村 IT技術ブログ 開発言語へ
にほんブログ村


人気ブログランキングへ


FC2ブログランキングへ


写真: 「4駆で泥んこ遊び@オックスフォード郊外」

リンク
月別アーカイブ
Sitemap

全ての記事を表示する

RSSリンクの表示
最新トラックバック
ブロとも申請フォーム

この人とブロともになる

QRコード
QR