Задание 1
Ответьте на следующие вопросы:
Котлин — статически типизированный язык.
Статическая типизация означает, что каждой переменной во время компиляции присваивается определенный тип данных, и ее нельзя изменить во время выполнения.
Тип данных определяет, насколько Speicherplatz должны быть зарезервированы для объекта (например, переменной) и какие из них операции можно применить к этому объекту.
Задача № 2 – Целочисленные типы данных
а). Инициализируйте для каждого типа данных Байт, короткий, Int, длинный переменную и присвойте значения с помощью функции println() в консоли.
fun main() {
val byteVariable: Byte = -1
val shortVariable: Short = 99
val intVariable: Int = 15000
val longVariable: Long = 800000
println(byteVariable)
println(shortVariable)
println(intVariable)
println(longVariable)
}
б). Код ниже содержит три ошибки. Найдите их и исправьте.
fun main() {
val byteVariable: Byte = 130 // The value 130 is outside the permitted range of -128 to 127
val shortVariable: Short = -33000 // The value -33000 is outside the permitted range -32,768 to 32,767
val intVariable: Int = 25120
val longVariable: Long = "40500" // It is not possible to assign a string to the Long data type
println(byteVariable)
println(shortVariable)
println(intVariable)
println(longVariable)
}
в). Инициализируйте для каждого типа данных UBYTE, USort, UInt, ULong переменную и выведите значения в консоли.
fun main() {
val uByteVariable: UByte = 20U
val uShortVariable: UShort = 176U
val uIntVariable: UInt = 99000U
val uLongVariable: ULong = 4520004880U
println(uByteVariable)
println(uShortVariable)
println(uIntVariable)
println(uLongVariable)
}
Задача №3 – Типы данных для Числа с плавающей запятой
Следующий код содержит две ошибки. Найдите их и исправьте.
fun main() {
val floatVariable1: Float = 5.18f // A suffix "f" or "F" must be appended to a float number to tell the compiler that it is a float number and not a double number.
val floatVariable2: Double = -4.123 // The suffix "F" is unnecessary at this point. Value assignment for the Double data type occurs without a suffix.
println(floatVariable1)
println(floatVariable2)
}
Задача № 4 – Логический логический тип данных
Создайте две переменные с логическими значениями true и false, выведите значения в консоль.
fun main() {
val isEarthCube: Boolean = false
val isSunHot: Boolean = true
println(isEarthCube)
println(isSunHot)
}
Задача №5 – вывод типа (вывод типа)
Создайте шесть переменных с разными значениями без указания типа данных. Выведите значения в консоль. Объясните, какие типы данных были определены Kotlin в ваших переменных.
fun main() {
val age = 100 // Integers are recognized as Int
val name = "Arnold" // In this case the data type String is identified
val route = 1.2 // Any number with a decimal point is interpreted as the data type Double
val sum = 160L // To explicitly specify the Long data type, you should use the suffix “L”.
val height = 5.40F // To initialize a float type variable, one must specify the suffix "f" or "F" after the number
val width = 50U // Unsigned integer data types are specified with "u" or "U"
println(age)
println(name)
println(route)
println(height)
println(width)
}
Задача №6 – Любой тип данных
- Объявите переменную с типом данных Any. Сначала присвойте переменной строковое значение. Выведите значение.
- Затем присвойте значение int и выведите его на консоль.
- Наконец, повторите то же самое с двойным значением.
fun main() {
var anyVariable: Any
anyVariable = "London is the capital city of England and the United Kingdom"
println(anyVariable)
anyVariable = 100
println(anyVariable)
anyVariable = 1.9
println(anyVariable)
}
Задача №7 – Шаблоны строк
Напишите короткий рассказ о мальчике, который особенно любит играть в баскетбол. Объявите следующие параметры как отдельные переменные и включите их в свой текст (шаблоны строк):
- Имя: Тим
- Фамилия: Джонсон
- Возраст: 19 лет
- Размер: 182 см
- Хобби: баскетбол
Выведите результат на консоль.
fun main() {
// I have prepared the following text in English as a solution:
val name: String = "Tim"
val surname: String = "Johnson"
val age: Int = 19
val height: Double = 1.82
val hobby: String = "basketball"
val finalText: String
finalText = "Meet $name $surname, a $age-year-old boy who is passionate\nabout his hobby $hobby. Standing tall at $height meters,\nhe spends most of his free time practicing his skills on the court."
println(finalText)
}
Привет
Во-первых: сделано блестяще. Получайте удовольствие от изучения Kotlin во время работы.
Aber:
Что мне нужно сделать, чтобы НЕ получить пробел между «182» и «см»?
print(Рост его $height см) образует (логически) пробел между 182 и см.
print(это высота %heightcm) не может работать, потому что тогда cm становится частью имени переменной.
В других языках (perl, php…) переменная заключена в апострофы. Здесь нет проблем («$высота» см…).
Спасибо за каждую подсказку 🙂