본문 바로가기
모바일앱/Swift

Struct만들기 도전과제

by GeekCode 2021. 10. 12.
반응형

도전과제

1. 강의 이름, 강사 이름, 학생수를 가지는 Struct 만들기 (Lecture)
2. 강의 어레이와 강사이름을 받아서 , 해당 강사의 강의 이름을 출력하는 함수 만들기
3. 강의 3개 만들고 강사이름으로 강의 찾기

 

더보기
import SwiftUI


// 도전과제

// 1. 강의 이름, 강사 이름, 학생수를 가지는 Struct 만들기 (Lecture)
// 2. 강의 어레이와 강사이름을 받아서 , 해당 강사의 강의 이름을 출력하는 함수 만들기
// 3. 강의 3개 만들고 강사이름으로 강의 찾기

struct Lecture {
    let name: String
    let instructor: String
    let numOfStudent: Int
}

func printLectureName(from instructor: String, lectures: [Lecture]) {
    var lectureName = ""
    
    for lecture in lectures {
        if instructor == lecture.instructor {
            lectureName = lecture.name
        }
    }
    
    print("아 그 강사님의 강의는요: \(lectureName)")
}


let lec1 = Lecture(name: "iOS Basic", instructor: "Jason", numOfStudent: 5)
let lec2 = Lecture(name: "iOS Advanced", instructor: "Jack", numOfStudent: 5)
let lec3 = Lecture(name: "iOS Pro", instructor: "Jim", numOfStudent: 5)
let lectures = [lec1, lec2, lec3]

printLectureName(from: "jason", lectures: lectures)

다시 만들어보기

 

1. 회사 이름, CEO 이름, 직원수를 가지는 Struct 만들기 (Lecture)
2. 회사 어레이와 Ceo이름을 받아서 , 해당 CEO의 회사 이름을 출력하는 함수 만들기
3. 회사3개 만들고 CEO이름으로 회사 찾기

더보기

//struct 만들기
struct Company {
    let name : String
    let ceoName: String
    let numOfEmployee: Int
}

// 회사 어레이 생성
let comp1 = Company(name: "Kakao", ceoName: "John", numOfEmployee: 530)
let comp2 = Company(name: "Naver", ceoName: "Michael", numOfEmployee: 530)
let comp3 = Company(name: "Line", ceoName: "Kim", numOfEmployee: 530)
let companies = [comp1, comp2, comp3]


//회사이름을 알려주는 함수작성
func printCompanyName (from ceoName: String, companies: [Company]) {
    var companyName = ""
    
    for company in companies {
        if ceoName == company.ceoName {
            
            companyName = company.name
        }
        
    }
    print("그 회사는 \(companyName)입니다")
}

printCompanyName(from: "John", companies: companies)
//그 회사는 Kakao입니다
반응형

'모바일앱 > Swift' 카테고리의 다른 글

메소드 개념 ( + extension)  (0) 2021.10.14
프로퍼티 vs 메소드  (0) 2021.10.14
프로퍼티 개념  (0) 2021.10.13
프로토콜  (0) 2021.10.13
구조체와 클래스의 차이점  (0) 2021.10.11
Collection - Closure, Capturing Values  (0) 2021.10.10
Collection - Set  (0) 2021.10.10
Collection - Dictionary  (0) 2021.10.10