[Swift][일일 코드 #10]오일러 프로젝트 009
Problem 009 세 자연수 a, b, c 가 피타고라스 정리 a^2 + b^2 = c^2 를 만족하면 피타고라스 수라고 부릅니다 (여기서 a < b < c ). 예를...
Problem 009 세 자연수 a, b, c 가 피타고라스 정리 a^2 + b^2 = c^2 를 만족하면 피타고라스 수라고 부릅니다 (여기서 a < b < c ). 예를...
Problem 007 소수를 크기 순으로 나열하면 2, 3, 5, 7, 11, 13, … 과 같이 됩니다. 이 때 10,001번째의 소수를 구하세요. Solution func isPrime(num: Int) -> Bool {...
Problem 008 다음은 연속된 1000자리 숫자입니다 (읽기 좋게 50자리씩 잘라놓음). 73167176531330624919225119674426574742355349194934 96983520312774506326239578318016984801869478851843 85861560789112949495459501737958331952853208805511 12540698747158523863050715693290963295227443043557 66896648950445244523161731856403098711121722383113 62229893423380308135336276614282806444486645238749 30358907296290491560440772390713810515859307960866 70172427121883998797908792274921901699720888093776 65727333001053367881220235421809751254540594752243 52584907711670556013604839586446706324415722155397 53697817977846174064955149290862569321978468622482 83972241375657056057490261407972968652414535100474 82166370484403199890008895243450658541227588666881 16427171479924442928230863465674813919123162824586 17866458359124566529476545682848912883142607690042 24219022671055626321111109370544217506941658960408 07198403850962455444362981230987879927244284909188 84580156166097919133875499200524063689912560717606...
Problem 010 10 이하의 소수를 모두 더하면 2 + 3 + 5 + 7 = 17 이 됩니다. 이백만(2,000,000) 이하 소수의 합은 얼마입니까? Solution func isPrime(num: Int) ->...
Problem 006 1부터 10까지 자연수를 각각 제곱해 더하면 다음과 같습니다 (제곱의 합). 1^2 + 2^2 + … + 10^2 = 385 1부터 10을 먼저 더한 다음에 그 결과를...
Problem 003 어떤 수를 소수의 곱으로만 나타내는 것을 소인수분해라 하고, 이 소수들을 그 수의 소인수라고 합니다. 예를 들면 13195의 소인수는 5, 7, 13, 29 입니다. 600851475143의 소인수 중에서...
Problem 005 1 ~ 10 사이의 어떤 수로도 나누어 떨어지는 가장 작은 수는 2520입니다. 그러면 1 ~ 20 사이의 어떤 수로도 나누어 떨어지는 가장 작은 수는 얼마입니까? Solution...
Problem 004 앞에서부터 읽을 때나 뒤에서부터 읽을 때나 모양이 같은 수를 대칭수(palindrome)라고 부릅니다. 두 자리 수를 곱해 만들 수 있는 대칭수 중 가장 큰 수는 9009 (= 91...
UIView, UIImageView 등 뷰를 만든 후, 화면 어디에 있는지 찾거나 제약조건이 맞는지, 이미지가 제대로 나오고 있는지 등을 확인할 때 Debug View Hierarchy를 사용합니다. Xcode 6부터 지원하는 기능인데, 뷰의...
키체인에 정보를 저장하고나서 테스트를 위해 기기를 클린 상태로 돌려야 할 때 사용하는 Code Snippet 입니다. NSArray *secItemClasses = @[(__bridge id)kSecClassGenericPassword, (__bridge id)kSecClassInternetPassword, (__bridge id)kSecClassCertificate, (__bridge id)kSecClassKey, (__bridge id)kSecClassIdentity];...
NSDictionary를 JSON 형태의 String으로 변경하여 값을 저장하려다 에러가 발생하여 살펴보니 NSJSONSerialization에서 NSDate는 사용할 수 없었습니다. 그래서 하는 수 없이 NSDictionary의 데이터를 모두 까서 NSDate형태를 String으로 변경하였습니다. 나중에 NSDate를...
Problem 2 피보나치 수열의 각 항은 바로 앞의 항 두 개를 더한 것이 됩니다. 1과 2로 시작하는 경우 이 수열은 아래와 같습니다. 1, 2, 3, 5, 8, 13,...
Problem 1 10보다 작은 자연수 중에서 3 또는 5의 배수는 3, 5, 6, 9 이고, 이것을 모두 더하면 23입니다. 1000보다 작은 자연수 중에서 3 또는 5의 배수를 모두...
클로저를 이용하여 이동하는 방향을 얻는 코드입니다. typealias Direction = (CGFloat -> Bool) func direct(initializedOffset: CGFloat) -> (CGFloat -> Bool) { var lastOffset = initializedOffset // 초기 위치를 저장하여...
Twitter의 프로필을 화면에서 위로 스크롤을 하면 커버 이미지가 점점 확대되면서 블러처리가 됩니다. 이미지가 확대되는 효과를 구현해봅시다. 1.ViewController를 만들고 ScrollView를 만듭니다. import UIKit class ViewController: UIViewController, UIScrollViewDelegate { var...
icon-1,2,3,…100의 이미지를 가져올 때, 빈 이미지를 제외한 나머지 이미지 리스트를 가져오는 코드입니다. // Swift 2.0 이상 가능 let iconArray = [Int](1...100).flatMap { UIImage(named: "icon-($0)") } 위의 flatMap은 func...
UIAlertController 지난 글에서 UIAlertController에서 알럿을 띄웠습니다. 이번에는 알럿 창에서 글자를 입력받도록 하고자 합니다. UIAlertController를 만들고 다음으로 아이디와 비밀번호를 입력받는 UIAlertAction를 만듭니다. let alertController = UIAlertController( title: nil, message:...
Xcode Plugin 회사를 그만두어 10개월을 쉬고 본격적으로 일한지 2달이 지난 시점에서 어느정도 일도 알겠고, 코드도 거의 다 본 상태가 되었습니다. 그래서 코드 리팩토링 및 신규 기능을 위한 코드...
XCPlayground Xcode의 Playground에서 특정 값 또는 뷰를 실시간으로 그려지는 것을 보거나 비동기 작업을 위해 계속 실행되도록 하는 기능이 있습니다. XCPlayground Framework에서 Assistant Editor에게 값을 보여줄 수 있는 XCPCaptureValue,...
이전에 작성한 인터페이스 빌더에서 실시간 렌더링을 통한 커스텀 뷰 만들기 in swift를 통해서 IBDesignable를 살펴보았습니다. 이번에는 원 안에 + 선과 - 선이 그려진 UIButton를 만들어 보고자 합니다. 프로젝트를...
UIWebView UIWebView에서 특정 Request가 호출될 때, 호출할 것인지 아니면 중단할 것인지 제어를 할 수 있습니다. 이러한 기능이 필요한 경우는, 광고 페이지를 보고싶지 않거나, 특정 페이지까지만 호출되고 그 결과만...
쉽게 로딩 팝업 만들기 개발 요구사항 중에 이미지 애니메이션 팝업을 개발할 사항이 간혹 있습니다. 기존 오픈소스를 활용해도 되고, 아니면 간단하게 구현할 수 있습니다. 기본적으로 팝업은 항상 최상위에 위치해야...
iOS8 이전에는 UIAlertView를 사용하여 Delegate 형태로 입력을 받아 처리하는 형태로 작업하였습니다. 그래서 UIAlertView를 확장하여 클로저 형태로 넘겨 처리하도록 하는 라이브러리도 만들어졌었습니다. 만약에 UIAlertView를 클로저로 구현하지 않고 Delegate로 사용하고...
Helper Class란 뭘까? 오픈소스 라이브러리를 뒤적뒤적 하다 보면 helper라는 클래스를 가진 녀석들이 가끔 출몰합니다. 그래서 helper class가 뭔가라고 기억 저편에서 꺼내어봤지만, 도저히 떠오르지 않았습니다. 그래서 helper class라는 뜻을...
MaskLayer 간혹 요구사항 중에 특정 영역을 제외하고 딤드(Dimmed) 처리해달라고 하는 경우가 있습니다. 보통은 튜토리얼 등에서 많이 요구사항으로 받는 부분입니다. 그래서 구현하기 위해서 리소스를 추가하는 방법도 있고, 특정 부분의...
Playground Xcode에서 Playground라는 기능이 추가된 후로부터 빌드 후 검증 등의 작업이 많이 줄었습니다. 역시 UIView에서도 그러한 작업을 수행할 수 있는데요. 얼마 전에 그러데이션을 넣어야 하는 작업이 있었습니다. Playground로...