
関数名を代入出来ます。結構どんな言語でも出来ます。でもkotlinは分かり易い。関数名の左に::が付くことさえ無ければ普通の代入文です。無いと駄目なんでしょうね。

関数名を代入出来ます。結構どんな言語でも出来ます。でもkotlinは分かり易い。関数名の左に::が付くことさえ無ければ普通の代入文です。無いと駄目なんでしょうね。

単純で良さそうなrubyの関数です。再帰的に出来てるようです。

しかし上限をあげると、多分ですがstackoverflowを起こしてしまいました。kotlinでも普通にやるとやはり同じです。stackはrubyの問題では無いんでしょうね。Windowsの問題なのかもしれません。

overflowを回避出来るようですが、意味が分かりません。この問題では再帰を使う必要も無いのですけどね。(-_-;)再帰の問題としてはあるんでしょうね。頭の隅おいておきます。

10または100までの和。前項目までの和に今現在の数値を足したものです。と定義します。

前2項目の和が答えです。0と1の場合は1と定義します。これはリストを使った方が便利、速いでしょうが。(-_-;)どうしたら良いでしょうかね。一般的に言うと配列の最後とその一個前の配列を足したものが、今の答えなんですが。rubyだとList[-1]+List[-2]と表現しますが…。マイナスを使えるかどうか?です。

2 ** 63でオーバーフローしてます。マイナスなわけ無いですよね。その先になると0です。

rubyは流石、よく考えられてます。この程度で判断して良いのか?ですが。

「スタートブックKotlin」のP74の説明が難しかったので、前にrubyでやったのを参考にやってみました。fun自体の書き方は違いますが、中身は一緒でいけました。本では和の計算ですが、例は階乗の例です。

fact(20)の部分が切れてますが、結果は同じです。Longは64ビットのようですので、幾つまでいけるんでしょうか?rubyの場合は制限は無いはずです。もちろん限度はあります。(-_-;)

変わったところは2行目、vararg x:Intとなりました。varargが付きました。12行目sumA(*x))星印が付きました。覚えきれない。”(-“”-)”

関数名が不適当。Kaijyoでなく、xNoNanjyoですかね?

Rangeを使うときは、forで使う方が楽ですかね。ruby式に(1..10).forEachで書けるか?よく分かりません。

fun succではi + 1を++iとは書けないようです。fun hanbunでは整数の計算なので、15で良いんでしょう。

試しにdef hanbunを結果がFloatにしてみました。i / 2.0では駄目なんですね。i / 2.toFloat()でした。結構厳しい。型にうるさいようです。引数も型が指定されてますので、Int以外のFloatではエラーになるでしょうね。そうなると引数、関数の戻り値に応じて関数を作る。そんなはずは無いでしょうね。同じ名称の関数が山ほど出来てしまいます。

continueやbreakでラベルを使えるのは分かりました。でもこの場合は無くても良いみたいです。if文やfor文は()で囲む、必須なんですかね?あと適宜{}で括った方が分かり易いようです。if文で文が複数ある場合は、多分ですが絶対括らないと駄目だと思います。