Здравствуйте! Не могу разобраться с третьим заданием.Изучите следующий фрагмент кода:
var result = ""
var i = 9
while (i > 0) {
i -= 3
result += i
}
Чему равно значение result?
Здравствуйте, Евгений,
Для правильного ответа на задание необходимо обратить внимание на то, что переменная result
имеет строковый тип.
Также Вы можете выполнить этот фрагмент в консоли Scala, чтобы подтвердить правильность ответа.
Здравствуйте! Я выполнил этот фрагмент в консоли Scala и вот что у меня получилось:result:String=”” Scala > i:int=9 , но эти ответы не подходят, может я чего то не понимаю. Прошу разъяснить.
Добрый день, Евгений Анатольевич.
Тут всё просто “как паяльник”. Если тип result
строковый (в результате инициализации пустой строкой), то производится конкатенация строк, а не математическое сложение.
Алгоритм тривиален: сначала производится присоединение символа 6
, потом 3
, а что получится в результате Вам следует догадаться самостоятельно.
С уважением,
Станислав Лахтин
спасибо.
Здравствуйте, Задание 2 не получается.Помогите, пожалуйста.
Какой тип возвращаемого значения имеет методы:
1.def sum(a: Int, b: Int) = a + b
Ответ: Int
2.def sumEven(a: Int, b: Int) = {
if (a % 2 != 0)
throw new Exception("Number " + a + " is not even.")
if (b % 2 != 0)
throw new Exception("Number " + b + " is not even.")
a + b
}
Ответ: операция сравнения «не равно != » возвращают Boolean
3.def printSum(a: Int, b: Int) {
println(sum(a, b))
}
Ответ: Отсутствие знака равенства явно указывает компилятору на тип Unit
4.def printSumEven(a: Int, b: Int) {
try {
println(sumEven(a, b))
} catch {
case e: Exception =>
println("The sum is not even.")
}
}
Ответ: В приведенном примере возвращают тип — Unit
.
Добрый день, Виктор Сергеевич.
Ошибка во втором ответе. Вам здесь не важно, какие операции производятся в методе до его окончания. Там может быть всё что угодно.
Важно то, чем он завершается. Результат последней операции будет сложение двух целочисленных операндов. Их результат не может быть Boolean
. Исправьте и будет Вам счастье.
С уважением, Станислав Лахтин
Доброго времени суток. Помогите с 5 заданием пожалуйста. parse1 - int, parse2 - int, parse3 - int, parse4 - unit, parse5 - unit,
В чём ошибка? Ну первые три точно должны быть int.
Здравствуйте, Евгений Александрович!
Вам следует обратить внимание на parse4
.
С уважением, Нелли
Здравствуйте, Нелли. parse4 скомпилируется Nothing?
Добрый день! Вы забываете про тип any
.
Кроме того, задание у Вас также выполнено неверно: корректные реализации метода max
- 1, 4, 5.
C уважением, Елизавета
Имя файла | Размер | |
---|---|---|
dokumient_microsoft_word.doc | 30.2 KB |