久々に、群論の本をパラパラめくってみた。学生時代には、よくわからなかったところも、最近の本は証明の説明が丁寧なのでわかりやすい。
nを素因数分解してn=p^e・q^f・r^gとすれば
φ(n)=p^e-1・(p-1)・q^f-1・(q-1)・r^g-1・(r-1)
1からnまでの数のうち、nと互いに素になる数の個数
|(Z/nZ)*|=φ(n):既約剰余類の元の個数
久々に、群論の本をパラパラめくってみた。学生時代には、よくわからなかったところも、最近の本は証明の説明が丁寧なのでわかりやすい。
nを素因数分解してn=p^e・q^f・r^gとすれば
φ(n)=p^e-1・(p-1)・q^f-1・(q-1)・r^g-1・(r-1)
1からnまでの数のうち、nと互いに素になる数の個数
|(Z/nZ)*|=φ(n):既約剰余類の元の個数
Rustをオンラインで学習できるCodePrepというサイトがあったので利用してみた。実際に穴埋めして、学習していく内容なので、短時間で要点が把握できる。関数型を取り入れているので、プログラミングははかどりそう。ただ、新たにライフタイムとか所有権を理解する必要がある。エラーをなくすためには避けて通れないところのよう。
C#でdisplayswitchを操作しようとしてもなぜかうまくいかない。64bitかどうかで、使用するツールの使い分けが必要ということがわかる。
スリープからの復帰で、セカンドディスプレイがうまく復帰しなくなっていたので、イベントを感知して、自動で下記の動作をするようなアプリを作ってみたら、うまくいった。
としたら、Ok。
Windows Updateが原因?かどうかわからないけど、ある日突然、セカンドディスプレイがつかなくなる。スリープからの復帰のとき、つかなくなる。
ハイブリッドスリープをオフにする、Biosの設定の見直し(高速起動関連をオフ)、高速スタートアップの見直し等いろいろ試したがうまくいかず、結局 Win+Pキーで拡張を選択すると復帰することに気付く。バッチファイルで、「displayswitch.exe /extend」を作って使ってみたら、うまく復帰してくれた。左右の位置が、これまでと逆になってしまったので、それを修正して、いろいろやっているうちに、バッチファイルを使わずともうまく復帰してくれるようになった。対処療法的だけど、結果オーライということに。
たくさんのファイルをファイル名の番号順に並べたいと思っても、作成時刻や更新時刻順に並んでしまうことがある。そこで、ファイル名の先頭2文字(01,02.。。)の数字を取得して、これをもとにファイルの作成時刻、更新時刻を変換してみた。
powershellのコマンドをいろいろ調べながら作ってみた。パイプやForeachが使え便利である。
以下のC#のインターフェースと抽象クラスを組み合わせて、うまく使う例が参考になった。
https://qiita.com/igayamaguchi/items/e1d35db0a14a84bda452
共通処理は、抽象クラスのなかに実装して、それぞれ異なる部分は、実装せずに継承先で実装するというところが便利。これだとプログラムが大きくなってきて、似たような実装が必要になったときに効率アップできる。
ELMでつくってみた。小数の扱いが意外と大変だった。ELMは、フロントエンド作成のための機能がひととおりそろっている。また、関数型のためデータの流れの整理はしやすく、機能の追加はしやすい。
https://gh6141.github.io/gitdrill/src/Chokuretu.html
https://gh6141.github.io/gitdrill/src/Heiretu.html
タブレットで動作させるためには、テキストボックスを選択するたびに、数値でなく文字の入力画面がでてくるため、その都度、数値入力に切り替えるため操作性が悪かった。そこで、入力カーソルは、自動で移動するようにしてみた。