1.5 Control Flow
Logical And Comparison Operators
if
연산자는 조건이 true
또는 false
여부를 결정하기 위해 논리 또는 비교 연산자를 결합하여 사용한다.
Comparison
-
==
: 2개의 값이 서로 동일해야 true
-
!=
: 2개의 값이 서로 동일하지 않아야 true
-
>
: 왼쪽 값이 오른쪽 값보다 커야 true
-
>=
: 왼쪽 값이 오른쪽 값보다 크거나 같아야 true
-
<
: 왼쪽 값이 오른쪽 값보다 작아야 true
-
<=
: 왼쪽 값이 오른쪽 값보다 작거나 같아야 true
Logical
-
&&
: AND
, 2개의 상태가 모두 true
여야만 true
-
||
: OR
, 2개의 상태 중 1개 이상이 true
여야만 true
-
!
: NOT
, 값의 반대 상태를 반환
If Statements
- 만약
if
조건이 true
이면 코드 블럭을 실행하고, false
이면 실행하지 않고 넘어간다.
let temperature = 100
if temperature >= 100 { // true 이므로 "물이 끓는 중"이 출력된다.
print(”물이 끓는 중”)
}
if
조건이 false
인 경우 실행할 코드 블럭을 else
문을 통해 지정할 수 있다.
let temperature = 100
if temperature >= 100 { // true
print(”물이 끓는 중”)
} else {
print(”물이 끓지 않음”)
}
else if
문을 추가해 조건을 여러개 만들 수 있다.
var finishPosition = 2
if finishPosition == 1 {
print(”금메달”)
} else if finishPosition == 2 { // true
print(”은메달”)
} else {
print(”동메달 또는 메달 획득 실패”)
}
Boolean Values
-
Bool
타입은 true
또는 false
값만 가능하다.
-
비교 연산자를 통해 Bool
값을 할당해줄 수 있다.
let number = 1000
let isSmallNumber = number < 10 // false
!
논리 연산자를 통해 Bool
값을 변경할 수 있다.
var isSnowing = false
if !isSnowing { // true
print("눈이 오지 않음")
}
&&
논리 연산자를 통해 조건들이 모두 true
인지 체크할 수 있다.
let temperature = 70
if temperature >= 65 && temperature <= 75 { // true
print("적절한 온도")
} else if temperature < 65 {
print("낮은 온도")
} else {
print("높은 온도")
}
||
논리 연산자를 통해 조건들 중 적어도 1개가 true
인지 체크할 수 있다.
var isPluggedIn = false
var hasBatteryPower = true
if isPluggedIn || hasBatteryPower { // true
print(”사용 가능”)
} else {
print(”😱”)
}
Switch Statement
-
하나의 값에 대한 조건이 너무 많아지는 경우 if ... else
를 여러개 나열하는 대신 간결한 switch
문을 사용한다.
-
case
에 따라 실행할 코드블럭을 나눌 수 있고, 어느 케이스에도 포함되지 않는 경우 default
문이 실행된다.
let numberOfWheels = 2
switch numberOfWheels {
case 0: // numberOfWheels == 0
print("Missing something?")
case 1: // numberOfWheels == 1
print(”Unicycle”)
case 2: // numberOfWheels == 2
print(”Bicycle”)
case 3: // numberOfWheels == 3
print(”Tricycle”)
case 4: // numberOfWheels == 4
print(”Quadcycle”)
default: // // numberOfWheels > 4
print(”That’s a lot of wheels!”)
}
case
문 하나에 여러 조건이 올 수 있다.
let character = “z”
switch character {
case “a”, “e”, “i”, “o”, “u”: // character가 모음이라면 실행
print(”This character is a vowel.”)
default: // character가 자음이라면 실행
print(”This character is a consonant.”)
}
case
문 내부에 값의 범위를 지정할 수 있다.
switch distance {
case 0...9: // 0 <= d <= 9
print(”close”)
case 10...99: // 10 <= d <= 99
print(”medium distance”)
case 100...999: // 100 <= d <= 999
print(”far”)
default: // d > 1000
print(”so far”)
}
Ternary Operator
- 변수 또는 상수에 조건에 따라 다른 값을 할당해야 할 때
?:
문을 통해 간결하게 표현할 수 있다.
var largest: Int
let a = 15
let b = 4
// if문 사용 시
if a > b {
largest = a
} else {
largest = b
}
// ?:문 사용시
largest = a > b ? a : b
- max 함수를 통해 더 간단하게 표현할 수도 있다
largest = max(a, b)
Author And Source
이 문제에 관하여(1.5 Control Flow), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://velog.io/@j00hyun/1.5-Control-Flow
저자 귀속: 원작자 정보가 원작자 URL에 포함되어 있으며 저작권은 원작자 소유입니다.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
if
연산자는 조건이 true
또는 false
여부를 결정하기 위해 논리 또는 비교 연산자를 결합하여 사용한다.==
: 2개의 값이 서로 동일해야 true
!=
: 2개의 값이 서로 동일하지 않아야 true
>
: 왼쪽 값이 오른쪽 값보다 커야 true
>=
: 왼쪽 값이 오른쪽 값보다 크거나 같아야 true
<
: 왼쪽 값이 오른쪽 값보다 작아야 true
<=
: 왼쪽 값이 오른쪽 값보다 작거나 같아야 true
&&
: AND
, 2개의 상태가 모두 true
여야만 true
||
: OR
, 2개의 상태 중 1개 이상이 true
여야만 true
!
: NOT
, 값의 반대 상태를 반환
- 만약
if
조건이true
이면 코드 블럭을 실행하고,false
이면 실행하지 않고 넘어간다.
let temperature = 100
if temperature >= 100 { // true 이므로 "물이 끓는 중"이 출력된다.
print(”물이 끓는 중”)
}
if
조건이false
인 경우 실행할 코드 블럭을else
문을 통해 지정할 수 있다.
let temperature = 100
if temperature >= 100 { // true
print(”물이 끓는 중”)
} else {
print(”물이 끓지 않음”)
}
else if
문을 추가해 조건을 여러개 만들 수 있다.
var finishPosition = 2
if finishPosition == 1 {
print(”금메달”)
} else if finishPosition == 2 { // true
print(”은메달”)
} else {
print(”동메달 또는 메달 획득 실패”)
}
Boolean Values
-
Bool
타입은 true
또는 false
값만 가능하다.
-
비교 연산자를 통해 Bool
값을 할당해줄 수 있다.
let number = 1000
let isSmallNumber = number < 10 // false
!
논리 연산자를 통해 Bool
값을 변경할 수 있다.
var isSnowing = false
if !isSnowing { // true
print("눈이 오지 않음")
}
&&
논리 연산자를 통해 조건들이 모두 true
인지 체크할 수 있다.
let temperature = 70
if temperature >= 65 && temperature <= 75 { // true
print("적절한 온도")
} else if temperature < 65 {
print("낮은 온도")
} else {
print("높은 온도")
}
||
논리 연산자를 통해 조건들 중 적어도 1개가 true
인지 체크할 수 있다.
var isPluggedIn = false
var hasBatteryPower = true
if isPluggedIn || hasBatteryPower { // true
print(”사용 가능”)
} else {
print(”😱”)
}
Switch Statement
-
하나의 값에 대한 조건이 너무 많아지는 경우 if ... else
를 여러개 나열하는 대신 간결한 switch
문을 사용한다.
-
case
에 따라 실행할 코드블럭을 나눌 수 있고, 어느 케이스에도 포함되지 않는 경우 default
문이 실행된다.
let numberOfWheels = 2
switch numberOfWheels {
case 0: // numberOfWheels == 0
print("Missing something?")
case 1: // numberOfWheels == 1
print(”Unicycle”)
case 2: // numberOfWheels == 2
print(”Bicycle”)
case 3: // numberOfWheels == 3
print(”Tricycle”)
case 4: // numberOfWheels == 4
print(”Quadcycle”)
default: // // numberOfWheels > 4
print(”That’s a lot of wheels!”)
}
case
문 하나에 여러 조건이 올 수 있다.
let character = “z”
switch character {
case “a”, “e”, “i”, “o”, “u”: // character가 모음이라면 실행
print(”This character is a vowel.”)
default: // character가 자음이라면 실행
print(”This character is a consonant.”)
}
case
문 내부에 값의 범위를 지정할 수 있다.
switch distance {
case 0...9: // 0 <= d <= 9
print(”close”)
case 10...99: // 10 <= d <= 99
print(”medium distance”)
case 100...999: // 100 <= d <= 999
print(”far”)
default: // d > 1000
print(”so far”)
}
Ternary Operator
- 변수 또는 상수에 조건에 따라 다른 값을 할당해야 할 때
?:
문을 통해 간결하게 표현할 수 있다.
var largest: Int
let a = 15
let b = 4
// if문 사용 시
if a > b {
largest = a
} else {
largest = b
}
// ?:문 사용시
largest = a > b ? a : b
- max 함수를 통해 더 간단하게 표현할 수도 있다
largest = max(a, b)
Author And Source
이 문제에 관하여(1.5 Control Flow), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://velog.io/@j00hyun/1.5-Control-Flow
저자 귀속: 원작자 정보가 원작자 URL에 포함되어 있으며 저작권은 원작자 소유입니다.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
Bool
타입은 true
또는 false
값만 가능하다.
비교 연산자를 통해 Bool
값을 할당해줄 수 있다.
let number = 1000
let isSmallNumber = number < 10 // false
!
논리 연산자를 통해 Bool
값을 변경할 수 있다.var isSnowing = false
if !isSnowing { // true
print("눈이 오지 않음")
}
&&
논리 연산자를 통해 조건들이 모두 true
인지 체크할 수 있다.let temperature = 70
if temperature >= 65 && temperature <= 75 { // true
print("적절한 온도")
} else if temperature < 65 {
print("낮은 온도")
} else {
print("높은 온도")
}
||
논리 연산자를 통해 조건들 중 적어도 1개가 true
인지 체크할 수 있다.var isPluggedIn = false
var hasBatteryPower = true
if isPluggedIn || hasBatteryPower { // true
print(”사용 가능”)
} else {
print(”😱”)
}
-
하나의 값에 대한 조건이 너무 많아지는 경우
if ... else
를 여러개 나열하는 대신 간결한switch
문을 사용한다. -
case
에 따라 실행할 코드블럭을 나눌 수 있고, 어느 케이스에도 포함되지 않는 경우default
문이 실행된다.
let numberOfWheels = 2
switch numberOfWheels {
case 0: // numberOfWheels == 0
print("Missing something?")
case 1: // numberOfWheels == 1
print(”Unicycle”)
case 2: // numberOfWheels == 2
print(”Bicycle”)
case 3: // numberOfWheels == 3
print(”Tricycle”)
case 4: // numberOfWheels == 4
print(”Quadcycle”)
default: // // numberOfWheels > 4
print(”That’s a lot of wheels!”)
}
case
문 하나에 여러 조건이 올 수 있다.
let character = “z”
switch character {
case “a”, “e”, “i”, “o”, “u”: // character가 모음이라면 실행
print(”This character is a vowel.”)
default: // character가 자음이라면 실행
print(”This character is a consonant.”)
}
case
문 내부에 값의 범위를 지정할 수 있다.
switch distance {
case 0...9: // 0 <= d <= 9
print(”close”)
case 10...99: // 10 <= d <= 99
print(”medium distance”)
case 100...999: // 100 <= d <= 999
print(”far”)
default: // d > 1000
print(”so far”)
}
Ternary Operator
- 변수 또는 상수에 조건에 따라 다른 값을 할당해야 할 때
?:
문을 통해 간결하게 표현할 수 있다.
var largest: Int
let a = 15
let b = 4
// if문 사용 시
if a > b {
largest = a
} else {
largest = b
}
// ?:문 사용시
largest = a > b ? a : b
- max 함수를 통해 더 간단하게 표현할 수도 있다
largest = max(a, b)
Author And Source
이 문제에 관하여(1.5 Control Flow), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://velog.io/@j00hyun/1.5-Control-Flow
저자 귀속: 원작자 정보가 원작자 URL에 포함되어 있으며 저작권은 원작자 소유입니다.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
?:
문을 통해 간결하게 표현할 수 있다.var largest: Int
let a = 15
let b = 4
// if문 사용 시
if a > b {
largest = a
} else {
largest = b
}
// ?:문 사용시
largest = a > b ? a : b
- max 함수를 통해 더 간단하게 표현할 수도 있다
largest = max(a, b)
Author And Source
이 문제에 관하여(1.5 Control Flow), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://velog.io/@j00hyun/1.5-Control-Flow저자 귀속: 원작자 정보가 원작자 URL에 포함되어 있으며 저작권은 원작자 소유입니다.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)