34 lines
4.0 KiB
Markdown
34 lines
4.0 KiB
Markdown
# Практическая работа. LogNorm
|
||
|
||
Аня выбирает компанию, в которой она хочет работать, когда закончит университет; но она никак не может определиться с размером её будущей компании: ”Рассматривать преимущественно небольшие стартапы или всё-таки мегакорпорации?”
|
||
|
||
Она прочитала в одном научном журнале, что количество работников в компаниях может хорошо приближаться логнормальным распределением, т.е. таким распределением случайной величины, логарифм которой распределен нормально.
|
||
|
||
Аня просит вас помочь ей с выбором и написать ей Android приложение, которое будет генерировать случайное число, подчиняющееся логнормальному закону распределения, и отображать его в текстовом поле. Параметры $μ$ и $σ^{2}$ она хочет задавать сама непосредственно в приложении.
|
||
|
||
У Ани есть заготовка проекта, которую можно скачать.
|
||
|
||
Интерфейс приложения должен содержать элементы, перечисленные в табл. 1.
|
||
|
||
| № | View | id | Описание |
|
||
| :-: | -- | -- | -------- |
|
||
| 0 | *EditText* | `mean_val` | $μ$ |
|
||
| 1 | *EditText* | `variance_value` | $σ^{2}$ |
|
||
| 2 | *Button* | `get_random_num` | |
|
||
| 3 | *TextView* | `random_number_result` | |
|
||
|
||
*Таблица 1. Элементы пользовательского интерфейса*
|
||
|
||
Дополните исходный проект так, чтобы при нажатии на кнопку с `@id/get_random_num` в текстовое поле *TextView* (`android.widget.TextView`) с `@id/random_number_result` устанавливалась строка, содержащее сгенерированное число (число с плавающей точкой).
|
||
|
||
При повороте экрана телефона это число должно сохраняться. Для этого можно использовать, например, *ViewModel*.
|
||
|
||
Не изменяйте файл `activity_main.xml`
|
||
|
||
Рекомендуется использовать Android Studio Chipmunk 2021.2.1. В проекте gradle version 7.4, gradle plugin version 7.2.0, Java SE 11.
|
||
|
||
Сдать в систему тестирования необходимо zip архив, в корневом каталоге которого располагается дополненный проект Android Studio/IntelliJ IDEA. После загрузки zip архива приложение будет запущено в системе автоматического тестирования для проверки на соответствие техническому заданию.
|
||
|
||
Допускается использовать язык Java и/или Kotlin. При сборке проекта вcе изменения в файле build.gradle будут проигнорированы – будут использованы зависимости только из шаблона-заготовки; не изменяйте пакет приложения.
|
||
|
||
Тестирование одной посылки может длиться до 5 минут, после завершения тестирования будет доступна информация об общем числе тестов и числе пройденных тестов. Количество посылок в систему не ограничено. Штраф за повторные попытки не начисляется. |