Перейти к содержанию

🗒 Задача

Запиши в переменные соответствующие значения, явно указывая их тип. Для всех переменных выбирай тип данных, занимающий наименьшее возможное место в памяти, при этом вмещающий нужное значение (например для числа 0 выбирай тип Byte и так далее).

Список переменных:

  • length –расстояние, которое пролетел Гагарин пока был в космосе в миллиметрах;
  • age – возраст Гагарина на момент полета (целых лет);
  • partOfDay – какую часть дня Гагарин провел в космосе;
  • seconds – количество секунд которое Гагарин провел в космосе;
  • partOfYear – какую часть года Гагарин провел в космосе;;
  • apogee – апогей орбиты Гагарина в метрах.

И выведи все эти переменные в столбик (каждая с новой строки).

Данные для задачи:

  • асстояние 40_868_600_000
  • Возраст – 27
  • Часть дня – 0.075
  • Секунды – 6480
  • Часть года – 2.0547945205479453E-4
  • Апогей орбиты – 327000

❌ Ошибки

  • не все типы проставлены

  • не все типы проставлены оптимально (там где помещается Short — ставят Int)

  • для большого дробного числа ставится Float, чем обрезается

✏️ Комментарии

Обращаю внимание на ТЗ: ”занимающий наименьшее возможное место в памяти, при этом вмещающий нужное значение”. Некоторым типам можно присвоить более подходящий тип данных)
Для этого значения можно применить тип, который занимает еще меньше места в памяти)
Полагаю есть еще меньше дробный тип, чем Double)
Тут ты при помощи F числу 2.0547945205479453E-4 обрезаешь часть знаков после запятой до 2.0547945E-4. Если есть задача где это критично, можно получить ошибку в расчетах.
Типы распределены верно, однако, согласно [конвенции Котлин ](https://kotlinlang.org/docs/coding-conventions.html) тип переменных указывается без пробела перед двоеточием
Лишние пустые строки. больше одной строки лучше не оставлять, чтобы не портить внешний вид и читабельность кода)
Рекомендую блок с объявлением переменных отделять пустой строкой от всего остального кода. Так код будет менее монолитным, что улучшить читабельность.
Есть нарушение гит-флоу) обрати внимание во вкладке с изменениями в этот ПР попал лишний файл (1-3 который не относится к этой задаче). Скорее всего ветка создалась не из мастера. Давай выпилим его (надо в этой ветке физически удалить файл из проекта, сделать коммит удаления и запушить. и отправить ПР снова на ревью).
В идеале изменять код других файлов - нарушение гит-флоу. Гипотетически над веткой может работать другой разработчик и при слиянии создастся третья версия файла, что вызовет конфликты в коде. Рефакторинг делается либо в своей, либо в отдельной ветке.
Напоминаю, все арифметические знаки обосабливаются пробелами.

В IDEA есть автоформатирование кода: Находясь в файле `Ctrl+Alt+L` (для windows) или `⌥+⌘+L` (для osx). Рекомендую взять в привычку прожимать автоформат всегда перед коммитом, чтобы все отступы и пробелы расставить по своим местам. 
Напоминаю про форматирование.
Согласно конвенции стиля Котлин при объявлении типа после двоеточия ставится пробел.
Знаки присваивания также всегда обосабливаются пробелами.

🧾 Решение

val length: Long = 40868600000L
val age: Byte = 27
val partOfDay: Float = 0.075f
val seconds: Short = 6480
val partOfYear: Double = 2.0547945205479453E-4
val apogee: Int = 327000

println("Расстояние, мм: $length")
println("Возраст, лет: $age")
println("Часть дня: $partOfDay")
println("Секунды: $seconds")
println("Часть года: $partOfYear")
println("Апогей орбиты, м: $apogee")