문제 시험 점수를 입력받아 90 ~ 100점은 A, 80 ~ 89점은 B, 70 ~ 79점은 C, 60 ~ 69점은 D, 나머지 점수는 F를 출력하는 프로그램을 작성하시오. 입력 첫째 줄에 시험 점수가 주어진다. 시험 점수는 0보다 크거나 같고, 100보다 작거나 같은 정수이다. 출력 시험 성적을 출력한다. let inputNumber = Int(readLine()!)! switch inputNumber { case 90...100: print("A") case 80...89: print("B") case 70...79: print("C") case 60...69: print("D") default: print("F") }
CaseIterable When using a CaseIterable type, you can access a collection of all of the type’s cases by using the type’s allCases property. enum(열거형) 에서 caseIterable 프로토콜을 채택 할경우 allCases 타입 프로퍼티를 사용할수 있게 해준다. 예시 enum Something: CaseIterable { case a, b, c } let someCharacter = Something.allCases.randomElement() 위의 예시 처럼 enum 을 컬렉션 타입처럼 활용할수 있게 된다. 작동 방식은 프로토콜을 채택하였기 때문에 CaseIterable 의 해당 구현부를 en..
옵셔널 언래핑 방법들 Optional unwrapping 옵셔널로 감싸져있는 값을 옵셔널이 아닌값으로 추출하는 작업 (옵셔널 언래핑 대상이 nil 이면 안됩니다!!) 1. 강제 추출 Forced Unwrapping 옵셔널의 실제 값과 상관없이 강제로 값을 추출하는 것 옵셔널이 nil일 때 강제추출을 사용하면 에러가 발생 사용하게된다면 이옵셔널엔 무조건 값이 들어있을거야! 하고 확신할수 있는 상황에서만..사용하도록 하자 2. 옵셔널 바인딩 Optional Binding 옵셔널 값을 언래핑 하는 방법으로, 가장 많이 사용한다. (안전하다!!) 옵셔널 바인딩 방법에는 If let {} guard let…else {} 두가지가 있다 표현식 If let 임시상수이름 = 옵셔널값 { } guard let 임시상수이..
옵셔널 이란 값이 있을수도있고 없을수도 있다 를 나타낸다. 값이 없을수도 있는 경우에 옵셔널 (optionals) 을 사용합니다. 옵셔널은 2가지 가능성이 있습니다: 값이 있을경우 옵셔널을 풀어서 값에 접근하거나 값이 없을 수도 있습니다. 타입변환을 시도할때 실패할수도 있으므로 값이 없음을 반환하도록 옵셔널을 사용 해줄수있다. 예시 let possibleNumber = "123" let convertedNumber = Int(possibleNumber) // convertedNumber is inferred to be of type "Int?", or "optional Int" convertedNumber는 타입변환이 실패할수 있으므로 값이 없음을 나타내는 Int? 타입이 됩니다. nil 이란 옵셔널 타..
![](http://i1.daumcdn.net/thumb/C148x148/?fname=https://blog.kakaocdn.net/dn/cukvwx/btrspITSS6S/bGHW4UtEsJct5cu9W9V1kk/img.png)
빵쟁이가 ios 개발자가 되기위해 정독하고자 작성한 글 입니다! 표현이 이상하거나 잘못번역된 부분이 있을수 있습니다. 혹 누군가 읽다 잘못된 부분이 있으면 댓글로 알려주세요! Functions 함수는 특정 작업을 수행하는 코드 덩어리입니다. 함수가 하는 일을 이름과 함께 정의하고 이름을 호출 하여 사용합니다. Swift의 통합 함수 구문은 매개변수 이름이 없는 간단한 C 스타일 함수에서 각 매개변수에 대한 이름과 인수 레이블이 있는 복잡한 Objective-C 스타일 메서드에 이르기까지 모든 것을 표현할 수 있을 만큼 충분히 유연합니다. 매개변수는 함수 호출을 단순화하기 위해 default 값을 줄 수도 있고 함수 실행이 완료되면 전달된 매개 변수를 수정 가능하게 하는 입력 매개 변수로 전달될 수도 있다..
![](http://i1.daumcdn.net/thumb/C148x148/?fname=https://blog.kakaocdn.net/dn/bOg9Pp/btrrVnBvztI/qnUDFFQISHiPzXxgIorpFk/img.png)
빵쟁이가 ios 개발자가 되기위해 정독하고자 작성한 글 입니다! 표현이 이상하거나 잘못번역된 부분이 있을수 있습니다. 혹 누군가 읽다 잘못된 부분이 있으면 댓글로 알려주세요! Control Flow Swift는 다양한 제어 흐름 명령문을 제공합니다.제어흐름 명령문에는 while, if, guard, switch, break, continue 이있으며 특정 조건에 따라 여러번실행 하는 while, 코드의 다른 분기를 실행하기 위한 if, guard, switch가 있으며 break 및 continue와 같은 명령문은 실행 흐름을 코드의 다른 지점으로 전송합니다. 또한 Swift는 Array, Dictionary, range, String 을 쉽게 다룰수 있는 for-in 루프를 제공합니다. Swift의 s..
![](http://i1.daumcdn.net/thumb/C148x148/?fname=https://blog.kakaocdn.net/dn/cMnLxf/btrrWzOYT2H/ncrmzrqcAyYtkwqYLLic2k/img.png)
빵쟁이가 ios 개발자가 되기위해 정독하고자 작성한 글 입니다! 표현이 이상하거나 잘못번역된 부분이 있을수 있습니다. 혹 누군가 읽다 잘못된 부분이 있으면 댓글로 알려주세요! Collection Types Swift는 값 컬렉션을 저장하기 위해 배열(Array), 집합(Set) 및 사전(Dictionary)으로 알려진 세 가지 기본 컬렉션 타입을 제공합니다. 배열(Array)은 정렬된 값 모음입니다. 집합(Set)은 고유한 값의 정렬되지 않은 컬렉션입니다. (중복값이 허용 되지 않는다.) 사전은(Dictionary) 는 키-값 연관의 정렬되지 않은 컬렉션입니다. (key - value 가 쌍으로 묶여있는 튜플타입!) Swift의 배열, 집합 및 사전은 저장할 수 있는 값과 키의 타입을 명확하게 해주어야 ..