클로저에 관한 빈칸 채우기 문제 사이트 4Clojure
차근 차근 풀어봐야겠다 ㅜ
문제 |
# 3 |
||
답 |
"HELLO WORLD" |
문제 |
# 4 |
||
답 |
:a :b :c |
문제 |
# 5 list conj |
||
답 |
'(1 2 3 4) |
||
해설 |
conj 는 인자1 의 맨앞에 인자2 ... 을 차례로 집어 넣은 새로운 리스트를 반환해준다. -> list라면 앞에 추가 |
문제 |
# 6 vector |
||
답 |
:a :b :c |
||
해설 |
why: = 연사자는 뒤의 파라미터들이 모두 같은지 판단한다, 또한 list 와 vector는 같은 요소라면 같다고판별 |
문제 |
# 7 vector conj |
||
답 |
[1 2 3 4] |
||
해설 |
conj 는 인자1 의 맨앞에 인자2 ... 을 차례로 집어 넣은 새로운 백터를 반환해준다. ->vector라면 뒤에 추가 |
문제 |
# 8 set |
||
답 |
#{:a :b :c :d} |
문제 |
# 9 set conj |
||
답 |
2 |
문제 |
# 10 |
||
답 |
20 |
||
해설 |
(맵 key) 혹은 (key 맵) 은 해당 value |
문제 |
# 11 |
||
답 |
{:b 2} |
문제 |
#12 |
||
답 |
3 |
문제 |
# 13 |
||
답 |
[20 30 40] |
||
해설 |
Rest 는 처음요소를 제외한 나머지 리스트(혹은 백터)를 반환 |
문제 |
#14 function |
||
답 |
8 |
||
해설 |
#(함수) 에서 %는 처음 파라미터를 의미함 2개이상이면 %1 %2 .. Partial 은 모르것다. |
문제 |
#15 double down |
답 |
#(* 2 %) |
해설 |
* 2 만 해도 테스트 케이스는 통과하는데 함수를 만들라는 문제인듯? 아닌가 다른 함수를 쓰라는건가? |
문제 |
#16 hello world |
답 |
#(str "Hello, " % "!") |
문제 |
# 17 map function |
답 |
'(6 7 8) |
해설 |
Map함수는 (자료구조말고) 인자로 받은 함수 f를 모든 요소에 대하여 진행한다 (매핑) |
문제 |
# 18 filter function |
답 |
'(6 7) |
해설 |
Filter 는 인자로 받은 함수 f 를 통과하는 요소로 구성된 시퀀스를 반환. |
문제 |
# 64 reduce |
답 |
+ |
해설 |
인자로 받은 함수 f 에 시퀀스의 모든 요소를 순차적으로 돌면서 (처음에는 1번 2번 요소, 그후 리턴값 3번째 요소 -> 리턴값 4번째 요소 이런식으로 함수 f에 인자 2개가 들어감) f를 실행하여 최종 1개의 리턴값을 만듬, 아씨 설명하기 힘드네 |
문제 |
# 134 nil key |
답 |
#(and (contains? %2 %1) (= nil (%2 %1))) |
해설 |
Key를 가지고 있고 그 키가 nil인지 확인하는 함수 |
문제 |
# 162 Logical falsity and truth |
답 |
1 |
문제 |
# 52 Intro to Destructuring |
답 |
[c e] |
문제 |
# 161 Subset and Superset |
답 |
#{1 2} |
문제 |
# 156 Map defaults |
답 |
포기 ㅡㅡ 나중에 다시 ㅜ |
문제 |
#19 |
답 |
#(first (reverse %)) |
해설 |
Last 를 쓰지말라고해서 reverse 의 first를 했음.. 이래도 되나.. |
'프로그래밍 언어 노트 > Clojure' 카테고리의 다른 글
[Clojure] 좋은 사이트들 (0) | 2018.10.14 |
---|---|
[Clojure 연습] 4. 4Clojure Elementary 2 (0) | 2018.10.14 |
[Clojure 연습] 2. 기초 연습문제 (0) | 2018.10.13 |
[Clojure] read-line을 통하여 값을 읽을때 print보다 먼저 불리는 현상 (0) | 2018.10.08 |
[Clojure 연습] 1. 기초 연습문제 (0) | 2018.10.07 |