R ha una serie di operatori uguali a quelli di molti altri linguaggi:
1 == 2 # FALSE
1 != 2 # TRUE
1 < 2 # TRUE
1 > 2 # FALSE
1 <= 2 # TRUE
1 >= 2 # FALSE
La forma base di un if-else è questa:
if (x > 10) {
y <- "big"
} else if (x > 2) {
y <- "medium"
} else {
y <- "tiny"
}
In questo caso, sono necessarie sia le parentesi tonde (()) attorno al booleano, sia le parentesi graffe ({}) attorno all'istruzione.
Una semplice istruzione if si può abbreviare:
if (x == 0) return("success")
In questo esercizio scriverai del codice per analizzare la produzione di una catena di montaggio in una fabbrica di automobili. La velocità della catena di montaggio può andare da 0 (spenta) a 10 (massima).
Alla sua velocità minima (1), vengono prodotte 221 automobili ogni ora. La produzione aumenta in modo lineare con la velocità. Quindi, con la velocità impostata su 4, dovrebbe produrre 4 * 221 = 884 automobili all'ora. Tuttavia, velocità più alte aumentano la probabilità che vengano prodotte automobili difettose, che poi devono essere scartate.
Hai tre attività.
Implementa il metodo success_rate() per calcolare la proporzione di pezzi creati senza errori a una data velocità. La tabella seguente mostra come la velocità influisce sul tasso di successo:
0: tasso di successo dello 0%.1 a 4: tasso di successo del 100%.5 a 8: tasso di successo del 90%.9: tasso di successo dell'80%.10: tasso di successo del 77%.success_rate(10)
# => 0.77
Implementa il metodo production_rate_per_hour() per calcolare la produzione oraria della catena di montaggio, tenendo conto del suo tasso di successo:
production_rate_per_hour(6)
# => 1193.4
Nota che il valore restituito è un double.
Implementa il metodo working_items_per_minute() per calcolare quante automobili funzionanti vengono prodotte al minuto:
working_items_per_minute(6)
# => 19
Nota che il valore restituito è un numero intero: i pezzi incompleti non vengono inclusi.
Iscriviti a Exercism per imparare e padroneggiare R con 21 concetti111 esercizi e il mentoring di persone reali, tutto gratis.