13: 2015-10-19 (月) 12:40:05 osinko |
14: 2015-10-19 (月) 17:47:14 osinko |
| \(切断(A,B)\)を利用すると「実数 = 切断( 実数表現 , 有理数表現 )」が得られる。\(A\)も\(B\)も有限の紙の上で書ける表現となる | | \(切断(A,B)\)を利用すると「実数 = 切断( 実数表現 , 有理数表現 )」が得られる。\(A\)も\(B\)も有限の紙の上で書ける表現となる |
| 反対に紙に書けない無理数のような無限に続く実数の値は一端、有理数の近似値にして近似の実数を得るしかない | | 反対に紙に書けない無理数のような無限に続く実数の値は一端、有理数の近似値にして近似の実数を得るしかない |
- | | |
- | unityで考えるとこうなるのかな?というコード(実際に計算で大小比較に使えるのかは未確認。あくまでメモ程度) | |
- | #code(csharp){{ | |
- | using UnityEngine; | |
- | using System.Collections; | |
- | | |
- | public class Cutter : MonoBehaviour | |
- | { | |
- | void Start () | |
- | { | |
- | DedekindCut cut; | |
- | cut = new DedekindCut (); | |
- | cut.B = 2.5f; | |
- | | |
- | print (string.Format ("DedekindCut( {0} , {1} )", cut.A, cut.B)); | |
- | } | |
- | | |
- | class DedekindCut | |
- | { | |
- | double a; | |
- | double b; | |
- | | |
- | public double A { | |
- | get { | |
- | return a; | |
- | } | |
- | } | |
- | | |
- | public double B { | |
- | set { | |
- | //一つ隣の点、計算機イプシロンが引算された値 | |
- | //unityでの最小値 資料:http://d.hatena.ne.jp/nakamura001/20150117/1421501942 | |
- | a = value - 1.192093E-07; | |
- | b = value; | |
- | } | |
- | get { | |
- | return b; | |
- | } | |
- | } | |
- | } | |
- | } | |
- | }} | |
- | 結果 | |
- | DedekindCut( 2.4999998807907 , 2.5 ) | |