스파르타 코딩 클럽 - iOS 스타터 6기/사전 캠프

8. 스파르타 코딩 클럽 - 함수의 사용 방법 이해하기

seongpil Heo 2025. 2. 14. 16:51

1️⃣ 함수의 사용 방법 이해하기

🧐 함수 사용의 장점

  • 재사용 가능 : 한 번 작성한 함수를 여러 번 호출할 수 있습니다.
  • 가독성 향상 : 코드의 목적을 명확히 설명할 수 있습니다.
  • 유지보수 용이 : 특정 기능을 수정할 때, 함수를 수정하면 전체 코드에서 반영됩니다.

🔹 반환값이 있는 함수

  • 함수가 특정 연산을 수행한 후, 결과를 반환하는 형태입니다.
import Foundation

func multiply (a: Int, b: Int) -> Int {
    return a * b
}

let result = multiply(a: 5, b: 3)
print(result) // 15 출력
  • a와 b를 곱한 후 결과값을 반환(return)합니다.

🔹 여러 개의 매개변수를 받는 함수

  • 두 개 이상의 값을 입력받아 다양한 결과를 출력할 수 있습니다.
import Foundation

func introduce (name: String, age: Int) {
    print("제 이름은 \(name)이고, 나이는 \(age)살입니다.")
}

introduce(name: "Tom", age: 25)

2️⃣ 함수의 사용해보기

❓ 과제 1 : 두 수를 더하는 함수 만들기

  • ✅ 문제 : 두 개의 정수를 입력받아 합을 반환하는 함수를 작성하세요.
    • 함수 이름 : addNumbers
    • 매개변수 : num1, num2 (정수)
    • 반환값 : 두 수의 합 (정수)

정답 코드


❓ 과제 2 : 평균 계산 함수 만들기

  • ✅ 문제 : 세 개의 점수를 입력받아 평균을 반환하는 함수를 작성하세요. 
    • 함수 이름 : calculateAverage
    • 매개변수 : score1, score2, score3 (정수)
    • 반환값 : 평균 (실수)

정답 코드


❓ 도전 과제 : 구구단 출력 함수 만들기

  • ✅ 문제 : 특정 숫자를 입력하면 해당 숫자의 구구단을 출력하는 함수를 작성하세요.
    • 함수 이름 : printMultiplicationTable
    • 매개변수 : number (정수)
    • 반환값 : 없음 (출력만 수행)

정답 코드

임의의 값 입력

import Foundation

func printMultiplicationTable (number: Int) {
    for i in 1...9 {
        print("\(number) * \(i) = \(number * i)")
    }
}

printMultiplicationTable(number: 8) // 8이라는 값을 먼저 입력

사용자 입력값 받고 구구단 실행

import Foundation

func printMultiplicationTable (number: Int) {
    for i in 1...9 {
        print("\(number) * \(i) = \(number * i)")
    }
}

var input = -1

while input != 0 {
    print("구구단 숫자를 입력하세요 (0을 입력하면 종료) : " , terminator: "") // 사용자 입력 받기
    if let userInput = readLine(), let num = Int(userInput) {
        input = num
        if input != 0 { // 0단은 출력하지 않음
            printMultiplicationTable(number: input)
        }
    } else { // 숫자가 아닌 다른 값 입력시 처리
        print("올바른 숫자를 입력하세요!")
    }
    
}
print("구구단 프로그램 종료!")