Menu
CoddyTech

型変換

CoddyのLuaジャーニー「基礎」セクションの一部。レッスン 32/90。

入力を別の型に変換するには、変換関数を使います。

文字列を数値に変換するには、次のように書きます。

var = io.read()
var = tonumber(var)

または、1行で書くと、

var = tonumber(io.read())

入力が 5、4、54 などの数値なら、varには数値が格納されます。入力に 5ab、bb、akt などの無効な数値が含まれている場合、tonumber()はnilを返します。

変換関数は次の2つです。

関数説明
tonumber()数値に変換する
tostring()文字列に変換する

適切な型を使うことが重要です。型によって出力が変わることがあるためです。

2つの文字列を連結すると、次の結果になります。

"5" .. "5" = "55"

2つの数を足すと、次の結果になります。

5 + 5 = 10

Luaは算術演算で数値を表す文字列も自動的に変換します。"5" + 5 は 10 になります。tonumber() で変換するほうが、やはり意図が明確で、入力をチェックすることもできます。テキストが数値でない場合、nil を返すためです。

challenge icon

チャレンジ

初心者

この課題では、複数の入力を扱い、計算を行います。

複数の入力を受け取る方法:

var1 = io.read()  -- First input
var2 = io.read()  -- Second input

あなたの課題:

  1. 入力から最初の数値を読み取り、変数に格納する
  2. 入力から2番目の数値を読み取り、別の変数に格納する
  3. 数値計算のために、両方の変数をnumber型に変換する
  4. この2つの数値の積を計算する
  5. 結果を出力する

例:

入力が2と4.5の場合、プログラムは9を出力する必要があります。

覚えておきましょう: 各テストケースには、順番にちょうど2つの入力が含まれます。

自分で試してみよう

quiz icon腕試し

このレッスンには短いクイズがあります。レッスンを始めて解答し、進捗を記録しましょう。

基礎のすべてのレッスン

自分で練習してみよう: Luaオンラインコンパイラ