🗒 Задача¶
Напиши программу, которая будет рассчитывать сколько потребуется ингредиентов для разного количества порций блюда. Для примера возьмем рецепт омлета. Для одной порции нужно: яиц – 2шт., молока – 50 мл, сливочного масла – 15 гр.
-
создай список с количеством ингредиентов для 1 блюда (где под индексами располагается количество для яиц/молока/масла соответственно);
-
запроси у пользователя количество порций;
-
модернизировать список таким образом, чтобы вывести в консоль сообщение с количеством нужных ингредиентов такого типа: “На [количество_порций] порций вам понадобится: Яиц – n, молока – n1, сливочного масла – n2]”.
❌ Ошибки¶
-
не использую map или replaceAll для изменения коллекции
-
для вывода используют цикл и индексы — предлагать систематизировать
✏️ Комментарии¶
Получается довольно универсально, да. Но в таком случае хардкод индексов надо тоже как-то систематизировать. Предлагаю вынести их в переменные с соответствующим неймингом и переиспользовать
🧾 Решение¶
fun main() {
val numOfComponentsPerOnePortion = listOf(2, 50, 15)
println("Сколько порций омлета вы хотите приготовить?")
val numOfPortions = readln().toInt()
val neededComponents = numOfComponentsPerOnePortion.map { it * numOfPortions }
println(
"\nНа $numOfPortions порций вам понадобится: " +
"Яиц – ${neededComponents[0]} шт, " +
"молока – ${neededComponents[1]} мл, " +
"сливочного масла – ${neededComponents[2]} гр."
)
}