Menu
Coddy logo textTech

Приведение типов

Часть раздела Fundamentals путешествия по Lua на Coddy — урок 32 из 90.

Чтобы преобразовать ввод в другой тип, нам нужно выполнить приведение.

Для преобразования строки в число мы напишем:

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

Или одной строкой,

var = tonumber(io.read())

Если входные данные являются числом, например 5, 4, 54, то var будет содержать число. Если входные данные содержат недопустимое число: 5ab, bb, akt и т. д., то tonumber() вернет nil.

Ниже приведена таблица, показывающая, как выполнять приведение к различным типам:

ПриведениеОписание
tonumber()Преобразовать в число
tostring()Преобразовать в строку

Важно использовать правильный тип, так как это может повлиять на результат.

Результатом конкатенации двух строк будет:

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

Результатом сложения двух чисел будет:

5 + 5 = 10

challenge icon

Задание

Новичок

В этом испытании вы будете работать с несколькими входными данными и выполнять вычисления.

Как получить несколько входных данных:

var1 = io.read()  -- Первый ввод
var2 = io.read()  -- Второй ввод

Ваша задача:

  1. Прочитать первое число из ввода и сохранить его в переменную
  2. Прочитать второе число из ввода и сохранить его в другую переменную
  3. Преобразовать обе переменные в тип number (для числовых вычислений)
  4. Вычислить произведение этих двух чисел
  5. Вывести результат

Пример:

Если на вход подаются 2 и 4.5, ваша программа должна вывести 9.0

Помните: Каждый тестовый случай содержит ровно два входных значения, идущих одно за другим.

Шпаргалка

Приведение типов в 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()

Попробуйте сами

quiz iconПроверьте себя

В этом уроке есть небольшой тест. Начните урок, чтобы ответить на вопросы и сохранить прогресс.

Все уроки раздела Fundamentals