O R tem um conjunto de operadores igual ao de muitas outras linguagens:
1 == 2 # FALSE
1 != 2 # TRUE
1 < 2 # TRUE
1 > 2 # FALSE
1 <= 2 # TRUE
1 >= 2 # FALSE
A forma básica de um if-else é
if (x > 10) {
y <- "big"
} else if (x > 2) {
y <- "medium"
} else {
y <- "tiny"
}
Neste caso, tanto os parênteses () à volta do Boolean como as chavetas {} à volta da instrução são obrigatórios.
Uma condicional if simples pode ser encurtada:
if (x == 0) return("success")
Neste exercício vais escrever código para analisar a produção de uma linha de montagem numa fábrica de automóveis. A velocidade da linha de montagem pode variar entre 0 (desligada) e 10 (máxima).
À velocidade mais baixa (1), são produzidos 221 automóveis por hora. A produção aumenta linearmente com a velocidade. Por isso, com a velocidade definida como 4, deve produzir 4 * 221 = 884 automóveis por hora. No entanto, velocidades mais altas aumentam a probabilidade de se produzirem automóveis com defeito, que depois têm de ser descartados.
Tens três tarefas.
Implementa o método success_rate() para calcular a proporção de itens criados sem erro para uma determinada velocidade. A tabela seguinte mostra como a velocidade influencia a taxa de sucesso:
0: taxa de sucesso de 0%.1 a 4: taxa de sucesso de 100%.5 a 8: taxa de sucesso de 90%.9: taxa de sucesso de 80%.10: taxa de sucesso de 77%.success_rate(10)
# => 0.77
Implementa o método production_rate_per_hour() para calcular a taxa de produção da linha de montagem por hora, tendo em conta a sua taxa de sucesso:
production_rate_per_hour(6)
# => 1193.4
Repara que o valor devolvido é um double.
Implementa o método working_items_per_minute() para calcular quantos automóveis funcionais são produzidos por minuto:
working_items_per_minute(6)
# => 19
Repara que o valor devolvido é um número inteiro: os itens incompletos não são incluídos.
Inscreve-te no Exercism para aprenderes e dominares R com 21 conceitos111 exercícios, e mentoria humana real, tudo grátis.