カテゴリー
Scala

ScalaのfoldLeft、foldRightとpythonのreduce,lambda組み合わせは、違うんですかね?畳み込みとはありますが。

混乱しているので、説明はできませんが、分かる人にはわかるかも?

暫くしてから見るとわかることもあります!

カテゴリー
Scala

ScalaのfoldLeftとfoldRightを使ってみる。

確かに、pythonでのreduce,lambdaより混乱しないですね。lambda x, y : y, xについては

まだよく分かってないかもしれません。

ScalaのfoldLeftとかは、関数の定義時点で初期値を決めてます。

何か分からないのですが、関数の定義をしないで、pythonのように埋め込むことも不可能でないですか?

第一級オブジェクトなら出来そうに思えますが。

 

コップ本の3版P312,P313に左畳み込みと右畳み込みの定義があります。

左畳み込みだと、リストの一番左に初期値が来て、しかもネストの一番深いとこに置かれます。

右畳み込みだと逆で、リストの一番右に初期値が置かれて、ネストが一番深いところになります。

 

pythonでは初期値が有るか無いかとx, yなのか?y,xなのか?で決まるようですが

定義を見てないので、らしいしか、分かりません。

 

フジは地面を枝でない、ツタが這って広がろうとします。厄介です。

 

カテゴリー
Scala

暫く振りにintellj IDEAのScala触れてみました!+最近の写真

Scalaは動的な型付けでない(静的)ので、細かく指定はできますが、しなくてもいい場面も有るはずです。

pythonでやっていたprint(f'{ }’)と同等の書式が使えれば、嬉しいですね!

IntelliJ IDEAの設定でも、REPLは使えるようになりますが、終了の仕方が:quitでなくて左のメニューの赤の四角です。

warningが出ているので見てみると、いずれも、その通りです!

 

良く分からないのですが、pythonのreduce,lambdaで初期値在るか無いかでも違った動作を

するように見えたのですが、それよりは混乱しないように思えました。

 

白のヤマブキ。ヤマブキ色は時代劇では、越後屋そちもわるよのう、ですね。

我が家のシラネアオイは貧弱ですが、焼石岳にいく途中に見たものは立派でした。

多分ヤマレコを探せば出てくるでしょう。

  

ムラサキサギゴケ

トンビ。昔、三橋美智也が歌ってました。そこから東京が見えるか?

見えないでしょう。

地図上では、栗駒山です。宮城県から見た姿が、馬に見えるとか?

一関では何年か前から、狐に見えるとか?言ってますが

一関で呼んでいる、須川岳、とは関連無いです。

サワオグルマらしい、Googleレンズでみた結果。簡単に調べられると、覚えられませ~ん。

カテゴリー
Scala

Dr.Bard提示の「Bulls and Cows」いじってみました。その3。Secret.contains?

27行目の意味がハッキリしなかったので、42行目から44行目で書き換えてみました。

Tryは両方で+1されてます。evalとevalNo2の両方。

カテゴリー
Scala

Dr.Bardから提示された「Bulls and Cows」をいじります。その2。

 8回では正解にたどり着けないので、20回までやれるにしました。慣れも必要そうです。secretは1000以上ですので、答えに苦しんで0123とかやるとエラーになります。本当は、正解にたどり着くのをどうすれば良いのかなあ?自分には無理そうですが…。

カテゴリー
Scala

Dr.Bardから提示された「Bulls and Cows」をいじります。その1。

先ずは、secretが4桁になっているか確かめます。

 

20行目と21行目は分かりますが、22行目と23行目は分かりづらい。直感的には分かりますが…。疑問も感じます。理解してない?ここの発想が出てきません。(苦)でも、Bulls and Cowsの肝ですし、cametanさん式だとevalの部分ですね。そのまま使います。

どうやら大丈夫そうです。10回調べてみました。

カテゴリー
Scala

cametanさんのブログから、「Bulls and Cows」をBardに聞いてみました。Scalaで表示できますか?

cametanさんのブログにあった書き込みはこちらです。

 cametanさんのブログに有ったのは、数字4桁ですので、ちょっとだけ違います。答えるのが面倒なので、secretを表示してます。これをcametanさん式に変えると勉強になるかな?プログラミングではいろんなやり方があるんですね。

 Bardに、初め「Bulls and Cows」 知ってますか?と聞いたら、知ってるというので、Scalaで表示できますか?と聞いたら、表示されたのはHello Worldのコードでした。質問にもコツが必要なんですかね。

カテゴリー
Scala

1から100までの和に末尾再帰を使ってみました。

末尾再帰と普通の再帰、両方やってみました。

普通の再帰はスタックを消費しますので、実行には注意が必要です。多分。

カテゴリー
Scala

Scalaで階乗計算に末尾再帰を使ってみる。

先ずは、普通にやってみます。1x2x…x10の値です。

 終了は10回目の計算が終わったとき。aとbの初期値はa*bは1にします。bにはnが代入されますし、aにはa*nつまりa*bが代入される。んだろうと思います。結果は普通のやり方と同じだったので、多分良いと思います。

カテゴリー
Scala

Scalaでfib(128)をやって見ました。BigInteger使用します。

 引っかかったのが9行目、a + bとは、書けませんでした。a、bはBigIntegerのインスタンスと言うことでは、a.add(b)と書くのが普通ですが…。警告は@tailrecでした。末尾再帰があるということですかね。

inserted by FC2 system