[Swift] 16가지 논리 결합기
풀이 방법은 16가지(2의 4차원)가 있기 때문에 Swift로 표현해 보세요.
모순
func contradiction(p: Bool, q: Bool) -> Bool {
return false
}
화영닌자
func tautology(p: Bool, q: Bool) -> Bool {
return true
}
명제 P
func propositionP(p: Bool, q: Bool) -> Bool {
return p
}
부정P
func negationOfP(p: Bool, q: Bool) -> Bool {
return !p
}
명제
func propositionQ(p: Bool, q: Bool) -> Bool {
return q
}
부정
func negationOfQ(p: Bool, q: Bool) -> Bool {
return !q
}
논리적
func conjunction(p: Bool, q: Bool) -> Bool {
return p && q
}
부정 논리적
func alternativeDenial(p: Bool, q: Bool) -> Bool {
return !p || !q
}
논리 및
func disjunction(p: Bool, q: Bool) -> Bool {
return p || q
}
부정 논리와
func jointDenial(p: Bool, q: Bool) -> Bool {
return !p && !q
}
뜻하지 않다
func materialNonInplication(p: Bool, q: Bool) -> Bool {
return p && !q
}
부정적 의미 (조건 표현식)
func materialInplication(p: Bool, q: Bool) -> Bool {
return !p || q
}
도리어 뜻이 아니다
func converseNonImplication(p: Bool, q: Bool) -> Bool {
return !p && q
}
반의
func converseImplication(p: Bool, q: Bool) -> Bool {
return p || !q
}
다른
func exclusiveDisjunction(p: Bool, q: Bool) -> Bool {
return (p && !q) || (!p && q)
}
등가(충분한 필요조건)
func biconditional(p: Bool, q: Bool) -> Bool {
return (p && q) || (!p && !q)
}
비동기 연산자
독점 논리와 연산자를 정의하려고 시도했습니다.
비트 연산에는 ^ 연산자가 있기 때문에 ^ 을 사용했습니다.
또한 우선순위는 비트 연산을 배우는 것으로 ‖와 같은 110으로 설정했다.infix operator ^^ { associativity left precedence 110 }
func ^^ (lhs: Bool, rhs: Bool) -> Bool {
return exclusiveDisjunction(p: lhs, q: rhs) // または (p && !q) || (!p && q)
}
실행 결과true ^^ true // false
true ^^ false // true
false ^^ true // true
false ^^ false // false
끝내다
그것은 그다지 실용적이지 않다😊
gist→ https://gist.github.com/KentaKudo/f68bbfadb4169ab1e46519ff399b30dd
참고 자료
https://ja.wikipedia.org/wiki/논리 연산#.E8.AB.96.E7.90.86.E7.B5.90.E5.90.88.E5.AD.90
http://qiita.com/KentaKudo/items/a1dd2eb0bf37302c1c81
https://en.wikipedia.org/wiki/Truth_function#Table_of_binary_truth_functions
Reference
이 문제에 관하여([Swift] 16가지 논리 결합기), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://qiita.com/KentaKudo/items/6646906dcaf36fd809ec
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
func contradiction(p: Bool, q: Bool) -> Bool {
return false
}
func tautology(p: Bool, q: Bool) -> Bool {
return true
}
명제 P
func propositionP(p: Bool, q: Bool) -> Bool {
return p
}
부정P
func negationOfP(p: Bool, q: Bool) -> Bool {
return !p
}
명제
func propositionQ(p: Bool, q: Bool) -> Bool {
return q
}
부정
func negationOfQ(p: Bool, q: Bool) -> Bool {
return !q
}
논리적
func conjunction(p: Bool, q: Bool) -> Bool {
return p && q
}
부정 논리적
func alternativeDenial(p: Bool, q: Bool) -> Bool {
return !p || !q
}
논리 및
func disjunction(p: Bool, q: Bool) -> Bool {
return p || q
}
부정 논리와
func jointDenial(p: Bool, q: Bool) -> Bool {
return !p && !q
}
뜻하지 않다
func materialNonInplication(p: Bool, q: Bool) -> Bool {
return p && !q
}
부정적 의미 (조건 표현식)
func materialInplication(p: Bool, q: Bool) -> Bool {
return !p || q
}
도리어 뜻이 아니다
func converseNonImplication(p: Bool, q: Bool) -> Bool {
return !p && q
}
반의
func converseImplication(p: Bool, q: Bool) -> Bool {
return p || !q
}
다른
func exclusiveDisjunction(p: Bool, q: Bool) -> Bool {
return (p && !q) || (!p && q)
}
등가(충분한 필요조건)
func biconditional(p: Bool, q: Bool) -> Bool {
return (p && q) || (!p && !q)
}
비동기 연산자
독점 논리와 연산자를 정의하려고 시도했습니다.
비트 연산에는 ^ 연산자가 있기 때문에 ^ 을 사용했습니다.
또한 우선순위는 비트 연산을 배우는 것으로 ‖와 같은 110으로 설정했다.infix operator ^^ { associativity left precedence 110 }
func ^^ (lhs: Bool, rhs: Bool) -> Bool {
return exclusiveDisjunction(p: lhs, q: rhs) // または (p && !q) || (!p && q)
}
실행 결과true ^^ true // false
true ^^ false // true
false ^^ true // true
false ^^ false // false
끝내다
그것은 그다지 실용적이지 않다😊
gist→ https://gist.github.com/KentaKudo/f68bbfadb4169ab1e46519ff399b30dd
참고 자료
https://ja.wikipedia.org/wiki/논리 연산#.E8.AB.96.E7.90.86.E7.B5.90.E5.90.88.E5.AD.90
http://qiita.com/KentaKudo/items/a1dd2eb0bf37302c1c81
https://en.wikipedia.org/wiki/Truth_function#Table_of_binary_truth_functions
Reference
이 문제에 관하여([Swift] 16가지 논리 결합기), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://qiita.com/KentaKudo/items/6646906dcaf36fd809ec
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
func propositionP(p: Bool, q: Bool) -> Bool {
return p
}
func negationOfP(p: Bool, q: Bool) -> Bool {
return !p
}
명제
func propositionQ(p: Bool, q: Bool) -> Bool {
return q
}
부정
func negationOfQ(p: Bool, q: Bool) -> Bool {
return !q
}
논리적
func conjunction(p: Bool, q: Bool) -> Bool {
return p && q
}
부정 논리적
func alternativeDenial(p: Bool, q: Bool) -> Bool {
return !p || !q
}
논리 및
func disjunction(p: Bool, q: Bool) -> Bool {
return p || q
}
부정 논리와
func jointDenial(p: Bool, q: Bool) -> Bool {
return !p && !q
}
뜻하지 않다
func materialNonInplication(p: Bool, q: Bool) -> Bool {
return p && !q
}
부정적 의미 (조건 표현식)
func materialInplication(p: Bool, q: Bool) -> Bool {
return !p || q
}
도리어 뜻이 아니다
func converseNonImplication(p: Bool, q: Bool) -> Bool {
return !p && q
}
반의
func converseImplication(p: Bool, q: Bool) -> Bool {
return p || !q
}
다른
func exclusiveDisjunction(p: Bool, q: Bool) -> Bool {
return (p && !q) || (!p && q)
}
등가(충분한 필요조건)
func biconditional(p: Bool, q: Bool) -> Bool {
return (p && q) || (!p && !q)
}
비동기 연산자
독점 논리와 연산자를 정의하려고 시도했습니다.
비트 연산에는 ^ 연산자가 있기 때문에 ^ 을 사용했습니다.
또한 우선순위는 비트 연산을 배우는 것으로 ‖와 같은 110으로 설정했다.infix operator ^^ { associativity left precedence 110 }
func ^^ (lhs: Bool, rhs: Bool) -> Bool {
return exclusiveDisjunction(p: lhs, q: rhs) // または (p && !q) || (!p && q)
}
실행 결과true ^^ true // false
true ^^ false // true
false ^^ true // true
false ^^ false // false
끝내다
그것은 그다지 실용적이지 않다😊
gist→ https://gist.github.com/KentaKudo/f68bbfadb4169ab1e46519ff399b30dd
참고 자료
https://ja.wikipedia.org/wiki/논리 연산#.E8.AB.96.E7.90.86.E7.B5.90.E5.90.88.E5.AD.90
http://qiita.com/KentaKudo/items/a1dd2eb0bf37302c1c81
https://en.wikipedia.org/wiki/Truth_function#Table_of_binary_truth_functions
Reference
이 문제에 관하여([Swift] 16가지 논리 결합기), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://qiita.com/KentaKudo/items/6646906dcaf36fd809ec
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
func propositionQ(p: Bool, q: Bool) -> Bool {
return q
}
func negationOfQ(p: Bool, q: Bool) -> Bool {
return !q
}
논리적
func conjunction(p: Bool, q: Bool) -> Bool {
return p && q
}
부정 논리적
func alternativeDenial(p: Bool, q: Bool) -> Bool {
return !p || !q
}
논리 및
func disjunction(p: Bool, q: Bool) -> Bool {
return p || q
}
부정 논리와
func jointDenial(p: Bool, q: Bool) -> Bool {
return !p && !q
}
뜻하지 않다
func materialNonInplication(p: Bool, q: Bool) -> Bool {
return p && !q
}
부정적 의미 (조건 표현식)
func materialInplication(p: Bool, q: Bool) -> Bool {
return !p || q
}
도리어 뜻이 아니다
func converseNonImplication(p: Bool, q: Bool) -> Bool {
return !p && q
}
반의
func converseImplication(p: Bool, q: Bool) -> Bool {
return p || !q
}
다른
func exclusiveDisjunction(p: Bool, q: Bool) -> Bool {
return (p && !q) || (!p && q)
}
등가(충분한 필요조건)
func biconditional(p: Bool, q: Bool) -> Bool {
return (p && q) || (!p && !q)
}
비동기 연산자
독점 논리와 연산자를 정의하려고 시도했습니다.
비트 연산에는 ^ 연산자가 있기 때문에 ^ 을 사용했습니다.
또한 우선순위는 비트 연산을 배우는 것으로 ‖와 같은 110으로 설정했다.infix operator ^^ { associativity left precedence 110 }
func ^^ (lhs: Bool, rhs: Bool) -> Bool {
return exclusiveDisjunction(p: lhs, q: rhs) // または (p && !q) || (!p && q)
}
실행 결과true ^^ true // false
true ^^ false // true
false ^^ true // true
false ^^ false // false
끝내다
그것은 그다지 실용적이지 않다😊
gist→ https://gist.github.com/KentaKudo/f68bbfadb4169ab1e46519ff399b30dd
참고 자료
https://ja.wikipedia.org/wiki/논리 연산#.E8.AB.96.E7.90.86.E7.B5.90.E5.90.88.E5.AD.90
http://qiita.com/KentaKudo/items/a1dd2eb0bf37302c1c81
https://en.wikipedia.org/wiki/Truth_function#Table_of_binary_truth_functions
Reference
이 문제에 관하여([Swift] 16가지 논리 결합기), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://qiita.com/KentaKudo/items/6646906dcaf36fd809ec
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
func conjunction(p: Bool, q: Bool) -> Bool {
return p && q
}
func alternativeDenial(p: Bool, q: Bool) -> Bool {
return !p || !q
}
논리 및
func disjunction(p: Bool, q: Bool) -> Bool {
return p || q
}
부정 논리와
func jointDenial(p: Bool, q: Bool) -> Bool {
return !p && !q
}
뜻하지 않다
func materialNonInplication(p: Bool, q: Bool) -> Bool {
return p && !q
}
부정적 의미 (조건 표현식)
func materialInplication(p: Bool, q: Bool) -> Bool {
return !p || q
}
도리어 뜻이 아니다
func converseNonImplication(p: Bool, q: Bool) -> Bool {
return !p && q
}
반의
func converseImplication(p: Bool, q: Bool) -> Bool {
return p || !q
}
다른
func exclusiveDisjunction(p: Bool, q: Bool) -> Bool {
return (p && !q) || (!p && q)
}
등가(충분한 필요조건)
func biconditional(p: Bool, q: Bool) -> Bool {
return (p && q) || (!p && !q)
}
비동기 연산자
독점 논리와 연산자를 정의하려고 시도했습니다.
비트 연산에는 ^ 연산자가 있기 때문에 ^ 을 사용했습니다.
또한 우선순위는 비트 연산을 배우는 것으로 ‖와 같은 110으로 설정했다.infix operator ^^ { associativity left precedence 110 }
func ^^ (lhs: Bool, rhs: Bool) -> Bool {
return exclusiveDisjunction(p: lhs, q: rhs) // または (p && !q) || (!p && q)
}
실행 결과true ^^ true // false
true ^^ false // true
false ^^ true // true
false ^^ false // false
끝내다
그것은 그다지 실용적이지 않다😊
gist→ https://gist.github.com/KentaKudo/f68bbfadb4169ab1e46519ff399b30dd
참고 자료
https://ja.wikipedia.org/wiki/논리 연산#.E8.AB.96.E7.90.86.E7.B5.90.E5.90.88.E5.AD.90
http://qiita.com/KentaKudo/items/a1dd2eb0bf37302c1c81
https://en.wikipedia.org/wiki/Truth_function#Table_of_binary_truth_functions
Reference
이 문제에 관하여([Swift] 16가지 논리 결합기), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://qiita.com/KentaKudo/items/6646906dcaf36fd809ec
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
func disjunction(p: Bool, q: Bool) -> Bool {
return p || q
}
func jointDenial(p: Bool, q: Bool) -> Bool {
return !p && !q
}
뜻하지 않다
func materialNonInplication(p: Bool, q: Bool) -> Bool {
return p && !q
}
부정적 의미 (조건 표현식)
func materialInplication(p: Bool, q: Bool) -> Bool {
return !p || q
}
도리어 뜻이 아니다
func converseNonImplication(p: Bool, q: Bool) -> Bool {
return !p && q
}
반의
func converseImplication(p: Bool, q: Bool) -> Bool {
return p || !q
}
다른
func exclusiveDisjunction(p: Bool, q: Bool) -> Bool {
return (p && !q) || (!p && q)
}
등가(충분한 필요조건)
func biconditional(p: Bool, q: Bool) -> Bool {
return (p && q) || (!p && !q)
}
비동기 연산자
독점 논리와 연산자를 정의하려고 시도했습니다.
비트 연산에는 ^ 연산자가 있기 때문에 ^ 을 사용했습니다.
또한 우선순위는 비트 연산을 배우는 것으로 ‖와 같은 110으로 설정했다.infix operator ^^ { associativity left precedence 110 }
func ^^ (lhs: Bool, rhs: Bool) -> Bool {
return exclusiveDisjunction(p: lhs, q: rhs) // または (p && !q) || (!p && q)
}
실행 결과true ^^ true // false
true ^^ false // true
false ^^ true // true
false ^^ false // false
끝내다
그것은 그다지 실용적이지 않다😊
gist→ https://gist.github.com/KentaKudo/f68bbfadb4169ab1e46519ff399b30dd
참고 자료
https://ja.wikipedia.org/wiki/논리 연산#.E8.AB.96.E7.90.86.E7.B5.90.E5.90.88.E5.AD.90
http://qiita.com/KentaKudo/items/a1dd2eb0bf37302c1c81
https://en.wikipedia.org/wiki/Truth_function#Table_of_binary_truth_functions
Reference
이 문제에 관하여([Swift] 16가지 논리 결합기), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://qiita.com/KentaKudo/items/6646906dcaf36fd809ec
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
func materialNonInplication(p: Bool, q: Bool) -> Bool {
return p && !q
}
func materialInplication(p: Bool, q: Bool) -> Bool {
return !p || q
}
도리어 뜻이 아니다
func converseNonImplication(p: Bool, q: Bool) -> Bool {
return !p && q
}
반의
func converseImplication(p: Bool, q: Bool) -> Bool {
return p || !q
}
다른
func exclusiveDisjunction(p: Bool, q: Bool) -> Bool {
return (p && !q) || (!p && q)
}
등가(충분한 필요조건)
func biconditional(p: Bool, q: Bool) -> Bool {
return (p && q) || (!p && !q)
}
비동기 연산자
독점 논리와 연산자를 정의하려고 시도했습니다.
비트 연산에는 ^ 연산자가 있기 때문에 ^ 을 사용했습니다.
또한 우선순위는 비트 연산을 배우는 것으로 ‖와 같은 110으로 설정했다.infix operator ^^ { associativity left precedence 110 }
func ^^ (lhs: Bool, rhs: Bool) -> Bool {
return exclusiveDisjunction(p: lhs, q: rhs) // または (p && !q) || (!p && q)
}
실행 결과true ^^ true // false
true ^^ false // true
false ^^ true // true
false ^^ false // false
끝내다
그것은 그다지 실용적이지 않다😊
gist→ https://gist.github.com/KentaKudo/f68bbfadb4169ab1e46519ff399b30dd
참고 자료
https://ja.wikipedia.org/wiki/논리 연산#.E8.AB.96.E7.90.86.E7.B5.90.E5.90.88.E5.AD.90
http://qiita.com/KentaKudo/items/a1dd2eb0bf37302c1c81
https://en.wikipedia.org/wiki/Truth_function#Table_of_binary_truth_functions
Reference
이 문제에 관하여([Swift] 16가지 논리 결합기), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://qiita.com/KentaKudo/items/6646906dcaf36fd809ec
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
func converseNonImplication(p: Bool, q: Bool) -> Bool {
return !p && q
}
func converseImplication(p: Bool, q: Bool) -> Bool {
return p || !q
}
다른
func exclusiveDisjunction(p: Bool, q: Bool) -> Bool {
return (p && !q) || (!p && q)
}
등가(충분한 필요조건)
func biconditional(p: Bool, q: Bool) -> Bool {
return (p && q) || (!p && !q)
}
비동기 연산자
독점 논리와 연산자를 정의하려고 시도했습니다.
비트 연산에는 ^ 연산자가 있기 때문에 ^ 을 사용했습니다.
또한 우선순위는 비트 연산을 배우는 것으로 ‖와 같은 110으로 설정했다.infix operator ^^ { associativity left precedence 110 }
func ^^ (lhs: Bool, rhs: Bool) -> Bool {
return exclusiveDisjunction(p: lhs, q: rhs) // または (p && !q) || (!p && q)
}
실행 결과true ^^ true // false
true ^^ false // true
false ^^ true // true
false ^^ false // false
끝내다
그것은 그다지 실용적이지 않다😊
gist→ https://gist.github.com/KentaKudo/f68bbfadb4169ab1e46519ff399b30dd
참고 자료
https://ja.wikipedia.org/wiki/논리 연산#.E8.AB.96.E7.90.86.E7.B5.90.E5.90.88.E5.AD.90
http://qiita.com/KentaKudo/items/a1dd2eb0bf37302c1c81
https://en.wikipedia.org/wiki/Truth_function#Table_of_binary_truth_functions
Reference
이 문제에 관하여([Swift] 16가지 논리 결합기), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://qiita.com/KentaKudo/items/6646906dcaf36fd809ec
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
func exclusiveDisjunction(p: Bool, q: Bool) -> Bool {
return (p && !q) || (!p && q)
}
func biconditional(p: Bool, q: Bool) -> Bool {
return (p && q) || (!p && !q)
}
비동기 연산자
독점 논리와 연산자를 정의하려고 시도했습니다.
비트 연산에는 ^ 연산자가 있기 때문에 ^ 을 사용했습니다.
또한 우선순위는 비트 연산을 배우는 것으로 ‖와 같은 110으로 설정했다.infix operator ^^ { associativity left precedence 110 }
func ^^ (lhs: Bool, rhs: Bool) -> Bool {
return exclusiveDisjunction(p: lhs, q: rhs) // または (p && !q) || (!p && q)
}
실행 결과true ^^ true // false
true ^^ false // true
false ^^ true // true
false ^^ false // false
끝내다
그것은 그다지 실용적이지 않다😊
gist→ https://gist.github.com/KentaKudo/f68bbfadb4169ab1e46519ff399b30dd
참고 자료
https://ja.wikipedia.org/wiki/논리 연산#.E8.AB.96.E7.90.86.E7.B5.90.E5.90.88.E5.AD.90
http://qiita.com/KentaKudo/items/a1dd2eb0bf37302c1c81
https://en.wikipedia.org/wiki/Truth_function#Table_of_binary_truth_functions
Reference
이 문제에 관하여([Swift] 16가지 논리 결합기), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://qiita.com/KentaKudo/items/6646906dcaf36fd809ec
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
infix operator ^^ { associativity left precedence 110 }
func ^^ (lhs: Bool, rhs: Bool) -> Bool {
return exclusiveDisjunction(p: lhs, q: rhs) // または (p && !q) || (!p && q)
}
true ^^ true // false
true ^^ false // true
false ^^ true // true
false ^^ false // false
그것은 그다지 실용적이지 않다😊
gist→ https://gist.github.com/KentaKudo/f68bbfadb4169ab1e46519ff399b30dd
참고 자료
https://ja.wikipedia.org/wiki/논리 연산#.E8.AB.96.E7.90.86.E7.B5.90.E5.90.88.E5.AD.90
http://qiita.com/KentaKudo/items/a1dd2eb0bf37302c1c81
https://en.wikipedia.org/wiki/Truth_function#Table_of_binary_truth_functions
Reference
이 문제에 관하여([Swift] 16가지 논리 결합기), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://qiita.com/KentaKudo/items/6646906dcaf36fd809ec
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
Reference
이 문제에 관하여([Swift] 16가지 논리 결합기), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/KentaKudo/items/6646906dcaf36fd809ec텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)