ようやく本題のflutterをやる気になった。Dartの文法も並行して学習しないと、読みとける気がしないー。

結局、プログラミング言語ってnullとの戦いなのか?

記事の視覚障害は比喩かと思うくらいだったので、いろんな人に当てはまりそうですよね。(そもそも一行ずつ聞いて全体把握するとか超人すぎて最初信じられなかった。)

ということでGo学習しはじめましたが、確かにすごくシンプル。一行だけ読んで把握しやすいというのもそうかも。

Go言語が好きな理由|Yoshiyuki Koyanagi zenn.dev/moutend/articles/2eda

視覚障害がある方がプログラミングをしていてその観点からの言語に対する考え方、ということでものすごく面白い記事だった。頭の中、どうなっているんだろう…見えてもわからないのに…

皆さんいろいろ楽しんでいただいてありがたいです!

5桁について1000個(重複有り)の初期値を与えて計算した結果です。

1回目からすでにループ開始しているものが圧倒的に多いですね…少なくとも6回目までにはループ開始。

また、ループの長さは4が多くて、2が少数派、あと1というのが1個だけあり、22122という初期値でした。これは、引き算の結果が9999のゾロ目になるパターンで、本来は99990と09999で扱わなければならないはずなのでバグ感がありますね…

こんな感じの出力だと、どうも一意に定めるのは難しそう

25通りのうち、99の倍数になるってさらにレアキャラなのでは?

b=dでも、e>aが成立すれば、確実にくり下がるので真ん中は9になりますね。12223と32221とか。

ゾロ目は計算成り立たない!と思ってたけどそうか、0でループですね。

小学生は全部手計算ですね。各ケタで使われている数値が全て同じになる、という観点で、12345のケースだと5回目でループに入ることが判明します。

なんとなく、桁数によらずものすごく早い段階で収束しそう

僕も今ただ計算するだけのプログラム作成して軽く何個かやってみましたが、どうも桁が同じなら同じ数に収束しそうですね。考えてみれば当然かも知れませんが(n桁の整数の組み合わせがあるものになればn!組み合わせがある)。

10^nとn!あたりから攻めれば収束速度がわかりそうな気がするけどそれを考えるには昼休みが短すぎる

ちなみに解法と疑問点 

8回計算すると、4回目と8回目が同じ数値でループに入るので、以降4の倍数はその数値になる。
100もしかり。

ただ、これループが8回目でわかるからまだいいですけど、例えば30回目でループとかだと死ねるし、もしくはループしない可能性はないのかなぁ。

この問題、小4のZ会の問題らしいんですけど、数学的に厳密に解けるんですかね。一般項は見つからなそうなんですが...

popがそういう感じの動きなんですね。あまりremoveやpopで取り出した側を使う機会がなかったから知らなかった...

おお、語源まで!!よくわかりました!!

でも、b<lList>=a.remove(0)とかかいて、「何でList返ってこないんだああああ」とかなりそう笑

a自体が変化するからなんでしょうけど。

Show older
マストドン丼部

The social network of the future: No ads, no corporate surveillance, ethical design, and decentralization! Own your data with Mastodon!