フラクタル
提供:kuhalaboWiki
(版間での差分)
(ページの作成:「古代ギリシャからあるユークリッド幾何学と20世紀のフラクタル幾何学の比較 ;考察 :古代エジプト人は3:4:5の辺を持つ三角形...」) |
|||
| 6行: | 6行: | ||
[http://www.gaia.h.kyoto-u.ac.jp/~fractal/ フラクタル日除け] | [http://www.gaia.h.kyoto-u.ac.jp/~fractal/ フラクタル日除け] | ||
| + | |||
| + | == 再帰的呼び出し == | ||
| + | |||
| + | 再帰的(recursive)呼び出しとは,サブルーチンや関数が,自分自身を呼び出すアルゴリズムをいう。 | ||
| + | これを利用すると,複雑な手順を簡潔に記述することができる。 | ||
| + | |||
| + | ;再帰的(Recursive)呼び出し | ||
| + | :"Recursive"という言葉を「頭山的」と訳した人がいる。 | ||
| + | :落語「自分の頭の上に穴があいて池ができた。その人が将来を悲観して,その池に身を投げた」 | ||
| + | |||
| + | *再帰的な定義の例: GNU: " GNU is Not Unix " | ||
| + | |||
| + | 再帰は数学的帰納法であり,「局所的なルールで全体を記述する」ことである。 | ||
| + | i)最初のコマを倒す。ii)n番目のコマが倒れると,n+1番目のコマも倒れる。iii)すべてのコマが倒れる。 | ||
| + | |||
| + | <pre> | ||
| + | // 再帰:n!=n*(n-1)! という漸化式で計算する。 | ||
| + | int factorial(int n){ | ||
| + | if (n == 1){ | ||
| + | return 1; | ||
| + | }else{ | ||
| + | return n * factorial(n-1); | ||
| + | } | ||
| + | } | ||
| + | |||
| + | // 反復:1からnまでを乗算する。 | ||
| + | int factorial(int n){ | ||
| + | int f = 1; | ||
| + | for (int i = 0; i < n; i++){ | ||
| + | f = f * (i+1); | ||
| + | } | ||
| + | return f; | ||
| + | } | ||
| + | </pre> | ||
2020年11月2日 (月) 04:33時点における版
古代ギリシャからあるユークリッド幾何学と20世紀のフラクタル幾何学の比較
- 考察
- 古代エジプト人は3:4:5の辺を持つ三角形で直角が得られることを知っていた.ピラミッドなどの巨大建造物.
- 三平方の定理を発見したピタゴラスはどこがすごいか?
再帰的呼び出し
再帰的(recursive)呼び出しとは,サブルーチンや関数が,自分自身を呼び出すアルゴリズムをいう。 これを利用すると,複雑な手順を簡潔に記述することができる。
- 再帰的(Recursive)呼び出し
- "Recursive"という言葉を「頭山的」と訳した人がいる。
- 落語「自分の頭の上に穴があいて池ができた。その人が将来を悲観して,その池に身を投げた」
- 再帰的な定義の例: GNU: " GNU is Not Unix "
再帰は数学的帰納法であり,「局所的なルールで全体を記述する」ことである。 i)最初のコマを倒す。ii)n番目のコマが倒れると,n+1番目のコマも倒れる。iii)すべてのコマが倒れる。
// 再帰:n!=n*(n-1)! という漸化式で計算する。
int factorial(int n){
if (n == 1){
return 1;
}else{
return n * factorial(n-1);
}
}
// 反復:1からnまでを乗算する。
int factorial(int n){
int f = 1;
for (int i = 0; i < n; i++){
f = f * (i+1);
}
return f;
}