private void CalculateScholarshipWinner() { if (voteRequest == 0) { double tempGpa = 0.0; for (int i = 0; i < applicantList.Count; i++) {//find highest gpa if (applicantList[i].cgpa > tempGpa) { tempGpa = applicantList[i].cgpa; } } for (int i = 0; i < applicantList.Count; i++) {//collect gpa finalists who all have highest gpa if (applicantList[i].cgpa == tempGpa) { gpaFinalistList.Add(applicantList[i]); } } double tempSGPA = 0; //if only 1 gpa finalist: if (gpaFinalistList.Count == 1) { winner = applicantList[0]; } else if (gpaFinalistList.Count > 1) { //find highest sgpa for (int i = 0; i < gpaFinalistList.Count; i++) { if (gpaFinalistList[i].sgpa > tempSGPA) { tempSGPA = gpaFinalistList[i].sgpa; } } //then collect sgpa finalists for (int i = 0; i < gpaFinalistList.Count; i++) { if (gpaFinalistList[i].sgpa == tempSGPA) { sgpaFinalistList.Add(gpaFinalistList[i]); } } } //if only 1 sgpafinalist if (sgpaFinalistList.Count == 1) { winner = sgpaFinalistList[0]; } else if (sgpaFinalistList.Count > 1) { //find jr, fill jrFinalistList for (int i = 0; i < sgpaFinalistList.Count; i++) { if (sgpaFinalistList[i].status == "Junior") { jrFinalistList.Add(sgpaFinalistList[i]); } } } else if (sgpaFinalistList.Count == 0) { for (int i = 0; i < gpaFinalistList.Count; i++) { if (gpaFinalistList[i].status == "Junior") { jrFinalistList.Add(gpaFinalistList[i]); } } } //if only 1 jr finalist if (jrFinalistList.Count == 1) { winner = jrFinalistList[0]; } else if (jrFinalistList.Count > 1) { //fill femaleFinalistList for (int i = 0; i < jrFinalistList.Count; i++) { if (jrFinalistList[i].gender == "Female") { femaleFinalistList.Add(jrFinalistList[i]); } } } else if (jrFinalistList.Count == 0 && sgpaFinalistList.Count == 0) { for (int i = 0; i < gpaFinalistList.Count; i++) { if (gpaFinalistList[i].gender == "Female") { femaleFinalistList.Add(gpaFinalistList[i]); } } } else if (jrFinalistList.Count == 0) { for (int i = 0; i < sgpaFinalistList.Count; i++) { if (sgpaFinalistList[i].gender.Contains("Female")) { femaleFinalistList.Add(sgpaFinalistList[i]); } } } //if only 1 female if (femaleFinalistList.Count == 1) { winner = femaleFinalistList[0]; } else if (femaleFinalistList.Count > 1) { GetYoungest(femaleFinalistList, yngFinalistList); voteRequest = 1; } } }