10: 2015-04-23 (木) 03:50:31 osinko |
11: 2015-04-23 (木) 11:25:23 osinko |
| | | |
| C#において関数は汎用的に制御処理(ステートメント)が扱えるものになっていますが | | C#において関数は汎用的に制御処理(ステートメント)が扱えるものになっていますが |
- | それに比べて数学においての関数は非常に機能が制限されています(引数がひとつ、返値もひとつ) | + | それに比べて数学においての関数は非常に機能が制限されています(引数がひとつ、返値もひとつ、ステートメントは数式のみ) |
| | | |
| このような仕組みを採用している理由は数学の関数が微積分によって導関数や原始関数に書き換える事が出来たり(後述) | | このような仕組みを採用している理由は数学の関数が微積分によって導関数や原始関数に書き換える事が出来たり(後述) |
| あるルールに従って複数の関数を組み合わせ新しい関数を作ったり出来ることに起因しています | | あるルールに従って複数の関数を組み合わせ新しい関数を作ったり出来ることに起因しています |
| | | |
- | つまり数学では計算操作によって関数の形を変化させる事が可能になっています | + | 数学では計算操作によって関数のステートメント自体を状況や要求に合わせた形に変化させる事が可能になっています |
- | (式木というものを使えばプログラムでも数式のステートメントを書き換える事ができますが今はちょっと置いておきます) | + | 式を変形させ整合性を保つには等号で結ばれた未知数を指す変数と値が1:1で対応している必要があります |
| + | (LINQ等で利用されている式木というものを使えばプログラムでも数式やステートメントを書き換える事ができますが今はちょっと置いておきます) |
| そういう意味でC#で扱う関数と数学の関数は同じ名前でも、少し違うものだと思っていて良いかもしれません | | そういう意味でC#で扱う関数と数学の関数は同じ名前でも、少し違うものだと思っていて良いかもしれません |
| + | |
| + | <補足> |
| + | ちなみに数学でもベクトルやマトリックスは複数要素持っていても、ひとつと数えます |
| + | |
| + | ***Δ(デルタ) [#q1cc3de6] |
| + | |
| | | |
| | | |