[10/23] Flow Control

Dino·2022년 10월 22일
0

패스트캠퍼스

목록 보기
3/4

Flow Control

Flow Control의 소개

  • 코드의 동작에 흐름을 조절할 때 사용한다
  • While loop
  • For loop
  • Switch statement
  • ....

While

조건(condition)이 거짓(false)일때까지 구문(statements)을 반복한다

  • while문 기본 형태
while 조건 {
    code
}
  • while문 사용 예
var i = 0
while i < 10 { // i가 10전인 0~9까지를 출력한다
    print(i)
    i += 1
}
  • while break 사용
var i = 0
while i < 10 {
    print(i)

    if i == 5 { // i가 5까지 출력하고 break
        break
    }

    i += 1
}
  • repeat-while 문
print("--- while")
var i = 10
while i < 10 { // 조건 검사 후 코드수행 // 실행 안함
    print(i)
    i += 1
}

print("--- Repeat")
i = 10
repeat { // 코드 수행후 조건 검사
    print(i) // 10 출력
    i += 1
} while i < 10

while

  • 조건 > 코드 수행 > 조건 > 코드 수행

repeat

  • 코드 수행 > 조건 > 코드 수행 > 조건

For loop

for-in문은 배열, 숫자, 문자열을 순서대로 순화(iterate)하기 위해 사용한다

  • for loop 기본 형태
for 상수명 in 컬렉션 또는 범위 {
// 실행될 코드 
}
  • for loop 사용 예시
let colsedRange = 0...10
var sum = 0
for i in colsedRange {
    print("---> \(i)") // 0~10 출력
    sum += i
}
 print("---> total sum: \(sum)") //---> total sum: 55
 
 let halfXColsedRange = 0..<10
 var sum = 0
for i in halfXColsedRange {
    print("---> \(i)") // 0~9 출력
    sum += i
}
 print("---> total sum: \(sum)") //---> total sum: 45
  • for loop문을 사용하여 짝수 출력
for i in colsedRange {
    if i % 2 == 0 {
        print("---> 짝수: \(i)")
    }
}
  • for loop where
for i in colsedRange where i % 2 == 0 {
    print("---> 짝수: \(i)")
}// where절을 만족해야 밑에 코드를 수행한다
  • for loop continue
for i in colsedRange {
    if i == 3 {
        continue // i가 3을 건너뛰고 실행
    }
    print("---> \(i)")
}
  • 중첩 for loop
for i in colsedRange {
    for j in colsedRange {
        print("gugudan -> \(i) * \(j) = \(i * j)")
        
    }
} // 0단 부터 10단의 구구단 출력

Switch

Switch 기본 형태

switch 표현식 
{
	case match1:
	  구문
	case match2:
	  구문
	case match3, match4:
	  구문
	default:
	  구문
}
  • switch 문 사용 예시
let num = 10

switch num {
case 0:
    print("--> 0입니다.")
case 0...10:
    print("--> 0 10 사이입니다.")
case 10:
    print("--> 10입니다.")
default:
    print("--> 나머지 입니다.")
}

switch 문 String

let pet = "bird"

switch pet {
case "dog", "cat", "bird":
    print("--> 집동물이네요?")
default:
    print("--> 잘 모르겠습니다")
}
  • switch문 짝수 홀수 출력
let num = 20

switch num {
case _ where num % 2 == 0:
    print("--> 짝수")
default:
    print("--> 홀수 ")
}
  • 튜플을 사용한 switch 문
let coordinate = (x: 10, y: 10)

switch coordinate {
case(0, 0):
    print("원점에 있습니다")
case (let x, 0):
    print("x축이네요, x: \(x)")
case (0, let y):
    print("y축이네요, y: \(y)")
case (let x, let y) where x == y:
    print("x랑 y랑 같음 x,y = \(x),\(y)")
case (let x, let y):
    print("좌표 어딘가 x,y = \(x),\(y)")
}

참고 : FastCampus iOS 앱 개발 올인원 패키지

profile
깃허브 : https://github.com/Hangga99

0개의 댓글