プログラミングを始める。 - 関数 3(タプルなど)
上記のサイト参考に試してみます。深津某
func divmod(_ n1:Int, _ n2:Int) -> (Int, Int){
return(n1/n2, n1%n2 )
}
の式ですが
divmod(4, 2)
とすると
(.0 2, .1 0)
ということになりました。この式の意味を図示してみます。
基本的なことの整理です。まず引数の
(_ n1:Int, _ n2:Int)
ですが、"_"アンダーバーがあります。これはワイルドカードというものです。これは何かというと、引数の型名を省略できることを表しています。例えば、上記の場合、
divmod(4, 2)
という感じで引数として"4"と"2"のみの記述となっています。このワイルドカードを付けなければ、
divmod(Int 4:Int, 2:Int)
となります。次に
-> (Int, Int)
になりますが、返り値の指定をしています。"Int"が2つあります。2つの返り値です。これが"タプル"です。
なので
divmod(4, 2)
命令すると、2つの答えが
(.0 2, .1 0)
という風に出てきるわけです。
関数は何か必要なものの定義ずけをして、便利に使い回すためのものです。自動販売機などにも例えられます。何かを入力すると、何らかの処理が行われ、結果が出てくる。ということです。
この記事が気に入ったらサポートをしてみませんか?