Jasmine Tea語に変換しよう~関数~

calculator.png

所要時間: 10分程度

今回の内容

  • 「関数」とは?
  • 関数を実際に使ってみる

「関数」とは?

Jasmine Teaにおける関数の役割は、次のように覚えましょう。

🗒️覚えよう

関数は何か情報を教えてほしいときに使う

<例>

  • 2つの値のうち、どちらが大きいのかを教えてくれる
  • ある数を四捨五入した値を教えてくる
  • 時間を計って教えてくれる

参照: プログラマーズガイド 「関数」

関数では、人間がコンピューターに渡した値や文字列をもとに、コンピューターが判断や計算を行った結果を、その結果として情報を教えてくれます。

※ 関数で判断や計算をしてもらうために渡す値や文字列を「引数」と呼び、結果として教えてくれた情報を「戻り値」と言います。

Jasmine Teaのプログラムは命令と関数でできている

実はJasmine Tea語は、ほとんどが命令か関数です。つまり、命令と関数が分かるようになると、Jasmine Teaの大体のことが分かるようになります。

命令や関数は種類が多く、使いこなせるようになるにはたくさん使ってみることが重要です。

命令/関数辞書 を見て気になったものがあれば、そのページにあるサンプルプログラムで遊んでみてください。

max 関数を使ってみよう

では、実際に関数を使ったプログラムを書いてみましょう。

最初に使う関数は「max」です。下の画像と同じようにプログラムを入力してみてください。

参照: チュートリアル②「キーボードに慣れよう」

<お手本>

tutorial-5-1

<意味>

()の中の2つの値のうち、大きい方を教えて。

<構造>

tutorial-5-2

<こんなときは>

茶枠が出る

  • その部分が全角で入力されています。半角に直してください。

( , ) が見つからない

  • ( かっこ → 多くのキーボードで「8」か「9」のキーで入力できます。shiftキーと一緒に押してください。
  • , カンマ → 多くのキーボードで「M」のキーの隣のキーにあります。
  • ) かっことじ → 多くのキーボードで「9」か「0」のキーで入力できます。shiftキーと一緒に押してください。

入力できたら実行してみましょう。

tutorial-5-3

このようにできていたら成功です。

「大きい方を教えて」というプログラムなので、2つの数値のうち大きい「10」が表示されました。

数字を変えても、その2つの数字のうち大きい方を教えてくれます。

pow 関数で累乗の計算をしてみよう

累乗(るいじょう)という計算があります。同じ数を何回もかける計算です。

<2の10乗(じょう)の例>

210 =2×2×2×2×2×2×2×2×2×2

この結果を画面に表示して、とお願いしたいときに、こんな風に書くのは大変で、分かりづらいです。

tutorial-5-4

これは、 pow 関数を使うと、もっと分かりやすく書くことができます。

今エディターにあるプログラムはすべて消して、実際に書いてみましょう。

<お手本>

tutorial-5-5

<意味>

2を10乗(じょう)した数を教えて。

<構造>

tutorial-5-6

<こんなときは>

茶枠が出る

  • その部分が全角で入力されています。半角に直してください。

( , ) が見つからない

  • ( かっこ → 多くのキーボードで「8」か「9」のキーで入力できます。shiftキーと一緒に押してください。
  • , カンマ → 多くのキーボードで「M」のキーの隣のキーにあります。
  • ) かっことじ → 多くのキーボードで「9」か「0」のキーで入力できます。shiftキーと一緒に押してください。

入力できたら実行してみましょう。

tutorial-5-7

このようにできていたら成功です。

かっこの中の数字を変えても、コンピューターがあっという間に計算して答えを教えてくれます。

プログラムがちょっと面白くなる random 関数

Jasmine Teaには便利な関数がたくさんありますが、ここでは「random」という関数を紹介します。

random 関数は、決められた範囲の中のどれかの数値を無作為に(=ランダムに)決めて教えてくれる関数です。

tutorial-5-8

ゲームのガチャガチャのように、何が出てくるかは分かりません。これをプログラムに使うと、毎回結果が変わる面白いプログラムができます。

実際に試してみましょう。まずは、今エディターにあるプログラムをすべて消してください。

このプログラムはコピー&ペーストボタンを使って構いません。

<体験するプログラムの内容>

実行ボタンを押すと、実行画面に次々と円が表示されます。

cls
for i=0 to 100
  x=random(0,639)
  y=random(0,399)
  r=random(1,399)
  c=random(0,15)
  f=random(0,15)
  circle (x,y),r,c,f
next

<使っている関数>

random 関数

<意味>

()の中の最小値・最大値をもとに、ランダムで整数をひとつ決めて、それを教えて。

tutorial-5-9

このプログラムでは、円の場所、大きさ、色を、毎回その場で random 関数が決めてくれています。

だから、実行ボタンを押すたびに、違う結果が表示されます。

tutorial-5-10

この random 関数を使うと、実行ボタンを押した人が驚くようなユニークなプログラムが作れるかもしれません。ぜひ、覚えて使ってみてください。

今回のおさらい

  • 関数は何か情報を教えてほしいときに使う