패스트캠퍼스) ios 개발 챌린지

[패스트캠퍼스 수강 후기] IOS개발강의 100% 환급 챌린지 12회차 미션

student513 2020. 11. 13. 12:48

오늘은 range, for loop, switch문에 대해 배웠다

let closedRange = 0...10 //0부터 10까지 할당됨
let halfClosedRange = 0..<10 //0부터 9까지 할당됨

range는 대강 이런 식으로 사용한다.

꽤나 직관적인 방식이다. 

이 range를 이용하여 for loop의 iteration횟수를 지정해줄 수 있다.

for loop는 python, javascript에서 사용하는 방법과 동일하다.

요런식으로 말이다.

var sum = 0
for i in closedRange {
    print("---> \(i)")
    sum += i
}

//조건 추가
for i in closedRange where i % 2 == 0  {
    print("---> 짝수: \(i)")
}

 

안타깝게도 C언어식 for는 스위프트 3에서 퇴출되었단다...

흥미로웠던 점은 해당 루프로 만들어진 값의 그래프를 만들 수 있다는 것(!!)

아직 필요성은 못 느끼겠으나 머신러닝이나 AI에 이용되지 않을까 싶다.

혹은 복잡도를 측정하기 위함일 수도 있다.

 

 

그 다음은 switch문인데, 좋은 기능이 추가되었다.

range를 switch에 적용할 수 있다는 것. 

개인적으로 알고리즘 문제를 C++로 풀면서 아쉬웠던 점은

문자열을 처리할 때, 문자열에 숫자가 끼어있으면 그 숫자만 따로 처리하는 경우가 있다.

그 숫자를 판별하여면 case를 숫자 열 개를 전부 입력해야했었는데

이제는 범위입력으로 끝낼 수 있다니, 맥북에서는 C++도 작동하지 않으니 스위프트로 알고리즘을 푸는건 어떨까 잠시 생각했다.

let num = 5
switch num {
case _ where num % 2 == 0:
    print("---> 짝수")
default:
    print("---> 홀수")
}

요런식의 조건 추가도 가능하다만 그냥 

switch num {
case num % 2 == 0:
    print("---> 짝수")
default:
    print("---> 홀수")
}

이러면 되는거 아닌가? 라는 생각도 했다

 

올인원 패키지 : iOS 앱 개발👉https://bit.ly/2FjWizq