Em C# existem dois tipos diferentes de números:
-6, 0, 1, 25, 976 e 500000.-2.4, 0.1, 3.14, 16.984025 e 1024.0.Os dois tipos numéricos mais comuns em C# são int e double. Um int é um inteiro de 32 bits e um double é um número de vírgula flutuante de 64 bits.
A aritmética é feita com os operadores aritméticos habituais. Os números podem ser comparados com os operadores de comparação numérica habituais e com os operadores de igualdade (==) e de desigualdade (!=).
O C# tem dois tipos de conversões numéricas:
Como um int tem menos precisão do que um double, converter de int para double é seguro e, por isso, é uma conversão implícita. No entanto, converter de double para int pode significar perda de dados, por isso exige uma conversão explícita.
int softCool = 1358938113;
double notLost = 4.8151623;
// implicit cast: no loss of information
double macDebug = softCool; // 1358938113.0
// explicit cast: possible loss of information
int somethingLost = (int)notLost; // 4
Neste exercício tens de executar lógica de forma condicional. A forma mais comum de o fazer em C# é através de uma condicional if/else:
int x = 6;
if (x == 5)
{
// Execute logic if x equals 5
}
else if (x > 7)
{
// Execute logic if x greater than 7
}
else
{
// Execute logic in all other cases
}
A condição de uma condicional if tem de ser do tipo bool. O C# não tem o conceito de valores truthy.
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 em 4, devem produzir-se 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 (static) AssemblyLine.SuccessRate() para calcular a proporção de itens criados sem erros 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%.AssemblyLine.SuccessRate(10)
// => 0.77
Implementa o método (static) AssemblyLine.ProductionRatePerHour() para calcular a taxa de produção da linha de montagem por hora, tendo em conta a taxa de sucesso:
AssemblyLine.ProductionRatePerHour(6)
// => 1193.4
Repara que o valor devolvido é um double.
Implementa o método (static) AssemblyLine.WorkingItemsPerMinute() para calcular quantos automóveis funcionais são produzidos por minuto:
AssemblyLine.WorkingItemsPerMinute(6)
// => 19
Repara que o valor devolvido é um int.
Inscreve-te no Exercism para aprenderes e dominares C# com 62 conceitos178 exercícios, e mentoria humana real, tudo grátis.