Lua usa due rappresentazioni per i numeri: numeri interi a 64 bit e numeri in virgola mobile a doppia precisione. Supporta il consueto insieme di operatori aritmetici: addizione, sottrazione, moltiplicazione, divisione e negazione. Inoltre supporta la divisione intera, il modulo e l'elevamento a potenza.
| Operatore | Esempio |
|---|---|
+ |
1 + 2 --> 3 |
- |
2 - 1 --> 1 |
* |
2 * 2 --> 4 |
/ |
4 / 2 --> 2.0 |
// |
11 // 3 --> 3 |
% |
11 % 3 --> 2 |
^ |
10 ^ 2 --> 100.0 |
- |
-(2 * 2) --> -4 |
In questo esercizio scriverai del codice per analizzare una catena di montaggio in una fabbrica di automobili.
Implementa una funzione che riceve come input il numero di auto prodotte all'ora e il tasso di successo, e calcola il numero di auto prodotte con successo all'ora. Il tasso di successo è espresso in percentuale, da 0 a 100:
cars.calculate_working_cars_per_hour(1547, 90)
--> => 1392.3
Nota: il valore restituito dovrebbe essere un numero in virgola mobile.
Implementa una funzione che riceve come input il numero di auto prodotte all'ora e il tasso di successo, e calcola quante auto vengono prodotte con successo ogni minuto:
cars.calculate_working_cars_per_minute(1105, 90)
-- => 16
Nota: il valore restituito dovrebbe essere un numero intero.
Normalmente ogni auto costa $10.000 se prodotta singolarmente, indipendentemente dal fatto che sia funzionante o meno. Ma con un po' di pianificazione, 10 auto possono essere prodotte insieme per $95.000. Ad esempio, 37 auto possono essere prodotte nel modo seguente: 37 = 3 x gruppi da dieci + 7 auto singole
Quindi il costo per 37 auto è: 3 * 95.000 + 7 * 10.000 = 355.000
Implementa una funzione che calcola il costo di produzione di un certo numero di auto, indipendentemente dal fatto che siano funzionanti:
cars.calculate_cost(37)
-- => 355000
cars.calculate_cost(21)
-- => 200000
Nota: il valore restituito dovrebbe essere un numero intero.
Iscriviti a Exercism per imparare e padroneggiare Lua con 117 esercizi e il mentoring di persone reali, tutto gratis.