Data commit
This commit is contained in:
parent
7387c8f97b
commit
cb5bb5e222
199093 changed files with 3378972 additions and 0 deletions
18
Task/Show-ASCII-table/Clojure/show-ascii-table-1.clj
Normal file
18
Task/Show-ASCII-table/Clojure/show-ascii-table-1.clj
Normal file
|
|
@ -0,0 +1,18 @@
|
|||
(defn cell [code]
|
||||
(let [text (get {32 "Spc", 127 "Del"} code (char code))]
|
||||
(format "%3d: %3s" code text)))
|
||||
|
||||
(defn ascii-table [n-cols st-code end-code]
|
||||
(let [n-cells (inc (- end-code st-code))
|
||||
n-rows (/ n-cells n-cols)
|
||||
code (fn [r c] (+ st-code r (* c n-rows)))
|
||||
row-str (fn [r]
|
||||
(clojure.string/join " "
|
||||
(map #(cell (code r %))
|
||||
(range n-cols))))]
|
||||
(->> (for [r (range n-rows)]
|
||||
(row-str r))
|
||||
(clojure.string/join "\n"))))
|
||||
|
||||
(defn pr-ascii-table [n-cols st-code end-code]
|
||||
(println (ascii-table n-cols st-code end-code)))
|
||||
22
Task/Show-ASCII-table/Clojure/show-ascii-table-2.clj
Normal file
22
Task/Show-ASCII-table/Clojure/show-ascii-table-2.clj
Normal file
|
|
@ -0,0 +1,22 @@
|
|||
(defn cell [code]
|
||||
(if (nil? code)
|
||||
""
|
||||
(let [text (get {32 "Spc", 127 "Del"} code (char code))]
|
||||
(format "%3d: %3s" code text))))
|
||||
|
||||
(defn ascii-table [n-cols st-code end-code]
|
||||
(let [n-cells (inc (- end-code st-code))
|
||||
n-rows (int (Math/ceil (/ n-cells n-cols 1.0)))
|
||||
code (fn [r c]
|
||||
(let [cd (+ st-code r (* c n-rows))]
|
||||
(if (> cd end-code) nil cd)))
|
||||
row-str (fn [r]
|
||||
(clojure.string/join " "
|
||||
(map #(cell (code r %))
|
||||
(range n-cols))))]
|
||||
(->> (for [r (range n-rows)]
|
||||
(row-str r))
|
||||
(clojure.string/join "\n"))))
|
||||
|
||||
(defn pr-ascii-table [n-cols st-code end-code]
|
||||
(println (ascii-table n-cols st-code end-code)))
|
||||
Loading…
Add table
Add a link
Reference in a new issue