文字リストをintリストに変換する際に問題が発生しました。私の目標は、基本的に325などの数値をとり、[3,2,5]のリストを返すことです。私がこれまで行ってきたことは、数値を受け取り、それを文字列に変換して文字列に展開することです。私は、それぞれの文字をそれぞれのintに変換したい。 charリストをfn c => Char.ord(c)にマップすると、charリストは?.intリストになり、そ
私はSMLで関数を定義する2つの方法があることに気付きました。アドイン機能を取る場合例えば、これらは2つの方法があります。 :秒1のように、関数型を作成し val add = fn : int -> int -> int
:として fun add x y = x+y;
fun add(x,y) = x+y;
は、第一の方法は、関数型を作成します val add = fn : int *
空リストのタイプがSML(私はPolyMLを使用しています)に何であるのでしょうか? 私は通訳に[]を入力すると、私が出る: val it = []: 'a list
私が期待するものです。しかし、その後、私が入力した場合は言う: fun f a = if a = 0 then [] else [[]];
が、私は得る: val f = fn: int -> 'a list list
私はSMLのレコードのリストから一番古い人を取得しようとしています。私は単純なリストと同じように開始しました: type person = {age:int, name: string} list
val p:person = [{age=11, name="Marco"},{age=12, name="Polo"}]
fun maxAge [] = NONE
| maxAge
は三木の種類が定義されます。私は、関数は三元ツリーに一致するように& foldlのをマップ変更する必要が datatype ’a tree =
Leaf of ’a
| Node of ’a tree * ’a tree * ’a tree
... fun tree_map (f : ’a -> ’b) (t : ’a tree) : ’b tree =
f,nil) = nil
|
パターンマッチングと再帰、およびプログラムの実行方法を理解しようとしています。単純なケースで :私は上記のsum_list_num [1,2,3,4,5];に復帰されるようSOME yでy1は、基本的にはアキュムレータとして機能していることを確認でき fun sum_list_num xs =
case xs of
[] => NONE
| x::xs' => ca