次のcomplexクラスの例をみてみましょう。複素数の説明はここではしませんが、引数には実数と虚数を指定します。結果は「2+4i」です。次はdivmodメソッドについて説明します。これはNumericクラスのメソッドです。意味は「a/b」で計算した答えと余りを配列にしてくれます。配列の0番目に答えが入り、1番目に余りが入ります。余りはbの符号と同じ形式で表示されますので、bがマイナス表示ならばマイナスで表示されます。次はmoduloメソッドについて説明します。これはNumericクラスのメソッドです。次はremainderメソッドについて説明します。これはNumericクラスのメソッドです。意味は「a%b」で計算した結果と同じです。答えはaの符号と同じ形式で出力されます。結果は上が「3」で下が「-3」になります。次は四捨五入する方法や整数を浮動小数点数に変換する方法について説明します。初めに整数値から浮動小数点数に変換する「to_fメソッド」について説明します。このメソッドはIntegerクラスのメソッドです。答えは小数点形式の「31.0」になります。次は四捨五入するroundメソッドについて説明します。このメソッドは小数点以下を四捨五入します。答えは上が「12」で下が「13」です。次は元の数値を大きい方、小さい方に揃えるメソッドについて説明します。ceilは数値を元の数値より大きい整数に揃えます。floorは数値を元の数値より小さい整数に揃えます。例の結果は上が「2」で下が「1」です次は乱数を発生させるrandメソッドについて説明します。引数を入れなくても大丈夫ですが、その場合は1未満のランダムな浮動小数点数を返します。引数を与えた場合は0からその数値以内の乱数を返します。答えはその時々で違う数値が出力されますが、例えば以下のように出力されます。rand(7)であれば0から6までの乱数値を生成します。rand(6)+1であれば1から6までの乱数値を生成します。乱数を発生させるRandomモジュールのrandを使うことでも乱数を発生させることが出来ます。モジュールの作成方法については説明しましたが、RandomモジュールはRubyで機能が定義されているモジュールです。引数を付けない時は0から1未満の数値が得られます。引数を与えた場合は0から指定数値以内の乱数を得られます。引数が12であれば0から11までです。次はMathモジュールについて説明します。Mathモジュールは三角関数などの数学関係の演算が簡単に出来るメソッドを提供しています。