キャスト
CoddyのLuaジャーニー「Fundamentals」セクションの一部 — レッスン 32/90。
入力を別の型に変換するには、キャストする必要があります。
文字列を数値に変換するには、次のように記述します:
var = io.read()
var = tonumber(var)または、1行で記述すると、
var = tonumber(io.read())入力が数値(例:5、4、54)である場合、var は数値を保持します。入力に無効な数値(5ab、bb、aktなど)が含まれている場合、tonumber() は nil を返します。
以下は、異なる型にキャストする方法を示す表です:
| キャスト | 説明 |
| tonumber() | 数値に変換する |
| tostring() | 文字列に変換する |
出力に影響を与える可能性があるため、適切な型を使用することが重要です。
2つの文字列を連結すると、次のようになります:
"5" .. "5" = "55"
2つの数値を加算すると、次のようになります:
5 + 5 = 10
チャレンジ
初心者このチャレンジでは、複数の入力を扱い、計算を行います。
複数の入力を受け取る方法:
var1 = io.read() -- 1つ目の入力
var2 = io.read() -- 2つ目の入力あなたのタスク:
- 入力から1つ目の数値を読み取り、変数に格納します
- 入力から2つ目の数値を読み取り、別の変数に格納します
- (数値計算のために)両方の変数を number 型に変換します
- これら2つの数値の掛け算を計算します
- 結果を出力します
例:
入力が 2 と 4.5 の場合、プログラムは 9.0 を出力する必要があります
注意: 各テストケースには、1つずつ順番に、正確に2つの入力が含まれています。
チートシート
Luaにおける型変換:
-- 文字列を数値に変換
var = tonumber(io.read())
-- 文字列に変換
var = tostring(io.read())
-- tonumberは無効な入力に対してnilを返します
var = tonumber("abc") -- varはnilです重要: 文字列を連結するとそれらが結合されますが、数値を加算すると算術演算が行われます:
"5" .. "5" = "55" -- 文字列の連結
5 + 5 = 10 -- 数値の加算複数の入力:
var1 = io.read()
var2 = io.read()自分で試してみよう
このレッスンには短いクイズがあります。レッスンを始めて解答し、進捗を記録しましょう。