A Clojure számai a következők:
-6, 0, 1, 25, 976 és 500000.-2.4, 0.1, 3.14, 16.984025 és 1024.0.Két gyakori számtípus az int és a float. Az int egy 32 bites egész szám, a float pedig egy 64 bites lebegőpontos szám.
A számításokat a szokásos aritmetikai operátorokkal végezzük. A számokat a szokásos numerikus összehasonlító operátorokkal (>, <, <=, >=), az egyenlőségoperátorral (=) és a nem egyenlőség operátorral (not=) lehet összehasonlítani.
Ebben a feladatban feltételesen kell végrehajtanod a logikát. A Clojure-ban erre gyakran a cond-ot használjuk:
(cond (= x 5) "Expression to evaluate when x equals 5"
(> x 7) "Expression to evaluate when x is greater than 7"
:else "Expression to evaluate in all other cases")
Bizonyos esetekben a == operátor előnyösebb lehet a =-nél, mégpedig amikor a számokat a pontos típusuktól függetlenül kell összehasonlítani. Például:
(== 5.0 5) ;; true as both numbers are equal when type is ignored
(= 5.0 5) ;; false as the types of numbers are also taken into account here i.e. float is different from int
A Clojure egyenlőségről szóló útmutatója, egész pontosan a számokról szóló szakasz további részletekkel szolgál.
Ebben a feladatban egy autógyár összeszerelősorának termelését elemző kódot fogsz írni. Az összeszerelősor sebessége 0 (kikapcsolva) és 10 (maximum) között változhat.
A legkisebb sebességen (1) óránként 221 autó készül. A termelés lineárisan nő a sebességgel. Ha tehát a sebesség 4, akkor óránként 4 * 221 = 884 autót kell gyártania. A nagyobb sebesség viszont növeli annak az esélyét, hogy hibás autók készülnek, amelyeket aztán ki kell dobni. A következő táblázat azt mutatja, hogyan befolyásolja a sebesség a sikerességi arányt:
0: 0%-os sikerességi arány.1-től 4-ig: 100%-os sikerességi arány.5-től 8-ig: 90%-os sikerességi arány.9: 80%-os sikerességi arány.10: 77%-os sikerességi arány.Két részfeladatod van.
Valósítsd meg a production-rate függvényt, amely kiszámítja az összeszerelősor óránkénti termelési rátáját, figyelembe véve a sikerességi arányt:
(production-rate 6)
;;=> 1193.4
Figyelj rá, hogy a visszaadott érték double típusú.
Valósítsd meg a working-items függvényt, amely kiszámítja, hogy percenként hány működő autó készül:
(working-items 6)
;;=> 19
Figyelj rá, hogy a visszaadott érték int típusú.
Iratkozz fel az Exercism-re, hogy megtanuld és elsajátítsd a(z) Clojure nyelvet 12 fogalom105 feladat segítségével, valódi emberi mentorálással, mindez ingyen.