У R є набір операторів, такий самий, як у багатьох інших мовах:
1 == 2 # FALSE
1 != 2 # TRUE
1 < 2 # TRUE
1 > 2 # FALSE
1 <= 2 # TRUE
1 >= 2 # FALSE
Основна форма конструкції if-else така:
if (x > 10) {
y <- "big"
} else if (x > 2) {
y <- "medium"
} else {
y <- "tiny"
}
У цьому випадку обовʼязковими є і круглі дужки () навколо булевого значення (англ. Boolean), і фігурні дужки {} навколо інструкції.
Просту умовну конструкцію if можна скоротити:
if (x == 0) return("success")
У цій вправі ми будемо писати код, щоб проаналізувати виробництво на конвеєрі автомобільного заводу. Швидкість конвеєра може бути від 0 (вимкнено) до 10 (максимум).
За найнижчої швидкості (1) за годину виробляється 221 автомобіль. Виробництво зростає лінійно зі швидкістю. Тож зі швидкістю 4 має вироблятися 4 * 221 = 884 автомобілі на годину. Однак вищі швидкості підвищують імовірність виробництва бракованих автомобілів, які потім доводиться відкидати.
У нас є три завдання.
Реалізуйте метод success_rate(), щоб обчислити частку виробів, створених без помилок, за заданої швидкості. Наступна таблиця показує, як швидкість впливає на показник успішності:
0: показник успішності 0%.1 до 4: показник успішності 100%.5 до 8: показник успішності 90%.9: показник успішності 80%.10: показник успішності 77%.success_rate(10)
# => 0.77
Реалізуйте метод production_rate_per_hour(), щоб обчислити обсяг виробництва конвеєра за годину з урахуванням його показника успішності:
production_rate_per_hour(6)
# => 1193.4
Зауважте, що повернене значення має тип double.
Реалізуйте метод working_items_per_minute(), щоб обчислити, скільки придатних автомобілів виробляється за хвилину:
working_items_per_minute(6)
# => 19
Зауважте, що повернене значення є цілим числом: незавершені вироби не враховуються.
Зареєструйтеся на Exercism, щоб вивчати й опановувати R, а також 21 концепція111 вправ та справжнє наставництво від людей, і все це безкоштовно.