여러 가지 Swift 함수 구현 예시를 아래에 제공하겠습니다. 각 함수는 다양한 파라미터 타입과 리턴 타입을 다루고 있습니다.
1. 두 정수를 더하는 함수
func addNumbers(a: Int, b: Int) -> Int {
return a + b
}
// 사용 예시:
let sum = addNumbers(a: 5, b: 10) // sum은 15
2. 문자열을 받아서 인사말을 반환하는 함수
func greet(name: String) -> String {
return "Hello, \(name)!"
}
// 사용 예시:
let greeting = greet(name: "John") // "Hello, John!"
3. 배열의 평균을 계산하는 함수
func calculateAverage(numbers: [Double]) -> Double {
let total = numbers.reduce(0, +)
return total / Double(numbers.count)
}
// 사용 예시:
let average = calculateAverage(numbers: [1.0, 2.0, 3.0, 4.0, 5.0]) // 3.0
4. 파라미터 없이 현재 시간을 출력하는 함수
func printCurrentTime() {
let currentTime = Date()
print("Current time is \(currentTime)")
}
// 사용 예시:
printCurrentTime() // 현재 시간 출력
5. 두 문자열을 이어붙이는 함수
func concatenateStrings(string1: String, string2: String) -> String {
return string1 + string2
}
// 사용 예시:
let result = concatenateStrings(string1: "Hello, ", string2: "World!") // "Hello, World!"
6. 원의 반지름을 받아서 면적을 계산하는 함수
func calculateCircleArea(radius: Double) -> Double {
return Double.pi * radius * radius
}
// 사용 예시:
let area = calculateCircleArea(radius: 5.0) // 약 78.54
7. 숫자 배열에서 최대값을 찾는 함수
func findMax(numbers: [Int]) -> Int? {
return numbers.max()
}
// 사용 예시:
let maxValue = findMax(numbers: [3, 5, 7, 2, 8]) // 8
8. 섭씨 온도를 받아 화씨로 변환하는 함수
func celsiusToFahrenheit(celsius: Double) -> Double {
return (celsius * 9/5) + 32
}
// 사용 예시:
let fahrenheit = celsiusToFahrenheit(celsius: 25.0) // 77.0
9. 정수 배열에서 짝수만 반환하는 함수
func filterEvenNumbers(numbers: [Int]) -> [Int] {
return numbers.filter { $0 % 2 == 0 }
}
// 사용 예시:
let evenNumbers = filterEvenNumbers(numbers: [1, 2, 3, 4, 5, 6]) // [2, 4, 6]
10. 나이를 받아서 특정 연령대에 해당하는지 확인하는 함수
func isTeenager(age: Int) -> Bool {
return age >= 13 && age <= 19
}
// 사용 예시:
let isTeen = isTeenager(age: 16) // true
이 예시들은 Swift 함수의 다양한 기능을 보여줍니다. 함수의 복잡도와 기능에 따라 파라미터와 리턴 타입이 달라질 수 있으며, 함수 내부에서 다양한 로직을 구현할 수 있습니다.
'programmer '프로그래머'' 카테고리의 다른 글
Array 를 사용하는 예시 코드 (0) | 2024.08.29 |
---|---|
'if-else' 문에 대한 예시 코드 (0) | 2024.08.28 |
Call by Value/Call by Reference (0) | 2024.08.21 |
Foundation,UIKit '프레임워크' (0) | 2024.08.19 |
GitKraken 효율성 (0) | 2024.08.05 |