Functions With an Implicit Return func greeting(for person: String) -> String { "Hello, " + person + "!" } ์ ์ฒด ๋ณธ๋ฌธ์ด ํ์ค๋ก ํํ์ด ๋๋ค๋ฉด returnํค์๋ ์๋ต ๊ฐ๋ฅ Specifying Argument Labels func greet(person: String, from hometown: String) -> String { return "Hello \\(person)! Glad you could visit from \\(hometown)." } print(greet(person: "Bill", from: "Cupertino")) ํจ์ ๋ด๋ถ์์ ์ฌ์ฉํ ์ธ์ ์ด๋ฆ ์ง์ ์ด ๊ฐ๋ฅํ๋ค. ๊ฐ๋ณ ํ๋ผ๋ฏธํฐ (Variadic Para..
for๋ฌธ์ stride ๋ฉ์๋ for i in stride(from: 0, to: 10, by: 2) { print(i) // 0, 2, 4, 6, 8 } for i in stride(from: 0, through: 10, by: 2) { print(i) // 0, 2, 4, 6, 8, 10 } // reverseํ๊ณ ์ถ์ ๋ ์ธ ์ ์๋ค. for i in stride(from: 3, through: 0, by: -1) { print(i) // 3, 2, 1, 0 } 1์ฉ ์ฆ๊ฐ๊ฐ ์๋ ์ํ๋ ์ซ์๋งํผ ์ฆ๊ฐ ์ํค๊ณ ์ถ์ ๋ ์ฌ์ฉ to : toํ๋ผ๋ฏธํฐ์ ์๋ ์๋ฅผ ์ ์ธํ๋ค. through: throughํ๋ผ๋ฏธํฐ์ ์๋ ์ ํฌํจํ๋ค. repeat while ๊ตฌ๋ฌธ var num = 1 repeat { num +..
์ฝ๋ ์ ํ์ (Collection Types) ๋ฐฐ์ด, ์ธํธ(์งํฉ), ๋์ ๋๋ฆฌ 3๊ฐ์ง๊ฐ ์๋ค. ์ ์ฅํ๋ ๊ฐ์ ํ์ ์ด ๋ช ํํ๋ค. ex) Intํ์ ์ ๋ฐฐ์ด์ด๋ฉด Int๊ฐ๋ง ๋ฃ์ ์ ์๋ค. ๋ฐฐ์ด(Array) var arr1: [Int] = [] // ์งง์ ํํ ์ ํธ var arr2: Array = [] var map = Array(repeating: Array(repeating: 0, count: 3), count: 2) // [[0, 0, 0], [0, 0, 0]] // 0 0 0 // 0 0 0 ๋ฐฐ์ด์ ์ ์ธ ๋ฐฉ๋ฒ: [Element], Array ๊ธฐ๋ณธ ๊ฐ์ผ๋ก ์ค์ ํ๊ณ ํฌ๊ธฐ๋ฅผ ๊ณ ์ ํ์ฌ ๋ฐฐ์ด์ ์์ฑํ๋ ์ด๊ธฐํ๋ ๊ฐ๋ฅ ex) ์๊ณ ๋ฆฌ์ฆ ๋ฌธ์ ํ ๋ map ๋ง๋ค ๋ ์์ฃผ ์ฐ๊ฒ ๋๋ค. var shoppingList = ["..
์ด๋ฐ์ ๊ธฐ๋ณธ์ ์ผ๋ก ์๋ ์ง์์ ๊ฐ๋จํ๊ฒ ์ ๋ฆฌํ๊ฑฐ๋ ํจ์คํ๊ณ ์๋กญ๊ฒ ์๊ฒ ๋ ์ง์ ์์ฃผ๋ก ์ ๋ฆฌํด ๋ณด๋ ค ํฉ๋๋ค! ์์์ ๋ณ์ (Constants and Variables) let maximumNumberOfLoginAttempts = 10 // ์์ -> ๊ฐ ๋ณ๊ฒฝ ๋ถ๊ฐ๋ฅ var currentLoginAttempt = 0 // ๋ณ์ -> ๊ฐ ๋ณ๊ฒฝ ๊ฐ๋ฅ var x = 0.0, y = 0.0, z = 0.0 ์ฌ๋ฌ ๊ฐ์ ์์ ๋๋ ๋ณ์๋ฅผ ์ ์ธํ ๋, ํ ์ค๋ก ์ ์ธ์ด ๊ฐ๋ฅํ๋ค. let input = readLine()!.split(separator: " ").map { Int(String($0))! } let height = input[0], width = input[1], k = input[2] ๊ฐ์ธ์ ์ผ๋ก ์๊ณ ๋ฆฌ์ฆ..