12: 2015-10-18 (日) 23:19:22 osinko |
13: 2015-10-19 (月) 12:40:05 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 ) |