From 39c3147b7f71990d8b4338dba0900fa038e5b9f8 Mon Sep 17 00:00:00 2001 From: longlivedrgn Date: Mon, 19 Dec 2022 19:47:30 +0900 Subject: [PATCH 1/2] feat: add all the function --- .../UserInterfaceState.xcuserstate | Bin 0 -> 12441 bytes .../xcschemes/xcschememanagement.plist | 14 +++ Git_ Exercise/main.swift | 82 +++++++++++++++++- 3 files changed, 95 insertions(+), 1 deletion(-) create mode 100644 Git_ Exercise.xcodeproj/project.xcworkspace/xcuserdata/longlivedrgn.xcuserdatad/UserInterfaceState.xcuserstate create mode 100644 Git_ Exercise.xcodeproj/xcuserdata/longlivedrgn.xcuserdatad/xcschemes/xcschememanagement.plist diff --git a/Git_ Exercise.xcodeproj/project.xcworkspace/xcuserdata/longlivedrgn.xcuserdatad/UserInterfaceState.xcuserstate b/Git_ Exercise.xcodeproj/project.xcworkspace/xcuserdata/longlivedrgn.xcuserdatad/UserInterfaceState.xcuserstate new file mode 100644 index 0000000000000000000000000000000000000000..ed56e4f4bd516447a584c91f04be52042c837028 GIT binary patch literal 12441 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 literal 0 HcmV?d00001 diff --git a/Git_ Exercise.xcodeproj/xcuserdata/longlivedrgn.xcuserdatad/xcschemes/xcschememanagement.plist b/Git_ Exercise.xcodeproj/xcuserdata/longlivedrgn.xcuserdatad/xcschemes/xcschememanagement.plist new file mode 100644 index 0000000..9cab2b7 --- /dev/null +++ b/Git_ Exercise.xcodeproj/xcuserdata/longlivedrgn.xcuserdatad/xcschemes/xcschememanagement.plist @@ -0,0 +1,14 @@ + + + + + SchemeUserState + + Git_ Exercise.xcscheme_^#shared#^_ + + orderHint + 0 + + + + diff --git a/Git_ Exercise/main.swift b/Git_ Exercise/main.swift index 986559b..cb25a61 100644 --- a/Git_ Exercise/main.swift +++ b/Git_ Exercise/main.swift @@ -7,5 +7,85 @@ import Foundation -print("Hello, World!") +// 이름, subject, 성적을 튜플을 넣어주는 리스트 +var temp : [(String,String,String)] = [("","","")] +// 이름 추가 삭제용 리스트 +var name: [String] = [] + +// 이름이 존재하는 지 확인해보는 함수 +func checkIsIn(temp: [(String,String,String)], findingA: String, findingB: String) -> Bool { + let count = temp.count + var find = false + for i in 0...(count-1){ + if temp[i].0 == findingA && temp[i].1 == findingB{ + find = true + } else { + continue + } + } + return find +} + +// 이름이 존재한다면, 리스트 중에서 몇번째 인지 index를 알려주는 함수 +func checkTheIndex(temp: [(String,String,String)], findingA: String, findingB: String) -> Int{ + let count = temp.count + var index = 0 + for i in 0...(count-1){ + if temp[i].0 == findingA && temp[i].1 == findingB { + break + } else { + index += 1 + } + } + return index +} + +// score과 subject를 던지는 함수 +func calculateScore(temp: [(String,String,String)], who: String) -> ([String],[String]) { + let count = temp.count + var subject: [String] = [] + var score: [String] = [] + for i in 0...(count-1){ + if temp[i].0 == who{ + subject.append(temp[i].1) + score.append(temp[i].2) + } else { + continue + } + } + return (subject, score) +} + +// 성적의 총합을 계산해주는 함수 +func sumtheScore(scores:[String]) -> Double{ + var sum: Double = 0 + for i in 0...(scores.count-1){ + if scores[i] == "A+"{ + sum += 4.5 + } else if scores[i] == "A0"{ + sum += 4 + } else if scores[i] == "B+"{ + sum += 3.5 + } else if scores[i] == "B0"{ + sum += 3 + } else if scores[i] == "C+"{ + sum += 2.5 + } else if scores[i] == "C0"{ + sum += 2 + } else if scores[i] == "D+"{ + sum += 1.5 + } else if scores[i] == "D0"{ + sum += 1 + } else { + sum += 0 + } + } + return sum +} + +// 같은 말하는 함수 따로 빼주기 +func macro(){ + print("원하는 기능을 입력해주세요") + print("1: 학생추가, 2: 학생삭제, 3: 성적추가(변경), 4: 성적삭제, 5: 평점보기, X: 종료") +} From 0508a9ebda8ad684a3cfe7dad583182ef977c2db Mon Sep 17 00:00:00 2001 From: longlivedrgn Date: Mon, 19 Dec 2022 19:48:58 +0900 Subject: [PATCH 2/2] feat: add all the algorithm code --- .../UserInterfaceState.xcuserstate | Bin 12441 -> 12448 bytes Git_ Exercise/main.swift | 129 ++++++++++++++++++ 2 files changed, 129 insertions(+) diff --git a/Git_ Exercise.xcodeproj/project.xcworkspace/xcuserdata/longlivedrgn.xcuserdatad/UserInterfaceState.xcuserstate b/Git_ Exercise.xcodeproj/project.xcworkspace/xcuserdata/longlivedrgn.xcuserdatad/UserInterfaceState.xcuserstate index ed56e4f4bd516447a584c91f04be52042c837028..c92e5e37ab86bb896679aa3b03804128c40cf6bc 100644 GIT binary patch delta 4132 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 delta 4079 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 삭제 가능 + if add.count == 2 && checkIsIn(temp: temp, findingA: add[0], findingB: add[1]){ + print("\(add[0])학생의 \(add[1])과목이 삭제되었습니다.") + temp.remove(at: checkTheIndex(temp: temp, findingA: add[0], findingB: add[1])) + + // 입력예처럼 작성했는 지 확인하고, 해당 과목을 수강했는지 확인하기(수강안했을 경우) -> 삭제 불가능 + } else if add.count == 2 && !checkIsIn(temp: temp, findingA: add[0], findingB: add[1]){ + print("\(add[0])학생은 \(add[1])과목을 수강하지 않습니다!") + + // 입력예처럼 작성했는 지 확인하고, 이름 리스트에 있는 지 확인하기 + } else if add.count == 2 && !name.contains(add[0]){ + print("\(add[0])이라는 학생은 존재하지 않습니다.") + } else { + print("입력이 잘못되었습니다! 다시 확인부탁드리겠습니다.") + } + print("----------------------") + macro() + print("----------------------") + + + } else if input == "5"{ + print("평점을 알고싶은 학생의 이름을 입력해주세요.") + input = readLine()! + // 이름 리스트에 있을 경우만 평점을 계산할 수 있다. + if name.contains(input){ + var subjects : [String] = [] + var scores : [String] = [] + var sum : Double = 0 + var mid : Double = 0 + (subjects, scores) = calculateScore(temp: temp, who: input) + sum = sumtheScore(scores: scores) + mid = sum/Double(subjects.count) + print("----------------------") + print("!!\(input)!!") + for i in 0...(subjects.count-1){ + print("\(subjects[i]) : \(scores[i])") + } + print("평점 :\(String(format: "%.2f",mid))") + + } else if !name.contains(input) { + print("\(input)학생은 존재하지 않습니다.") + } else { + print("입력이 잘못되었습니다! 다시 확인부탁드리겠습니다.") + } + print("----------------------") + macro() + print("----------------------") + } else { + print("----------------------") + print("뭔가 입력이 잘못되었습니다. 1~5 사이의 숫자 혹은 X를 입력해주세요!") + macro() + print("----------------------") + + } + input = readLine()! +} +print("프로그램을 종료합니다....") +