public Student(int id, string firstName, string lastName, string email, Gender gender, StudentType studentType, int examResult, double hwSent, double hwEvaluated, double teamScore, double attendancies, double bonus) { this.Id = id; this.FirstName = firstName; this.LastName = lastName; this.Email = email; this.gender = gender; this.studentType = studentType; this.ExamResult = examResult; this.HwSent = hwSent; this.HwEvaluated = hwEvaluated; this.TeamScore = teamScore; this.Attendancies = attendancies; this.Bonus = bonus; this.Result = CalculateResult(); }
public Student(string name, IPet pet, StudentType studentType, OtherCompetence otherCompetance, IKnowledge knowledge) : base(name, Student.StudentBaseHp) { this.studentType = studentType; this.otherCompetence = otherCompetance; this.Knowledge = knowledge; this.pet = pet; this.IsAlive = true; }
private IKnowledge GenerateInitialKnowedge(StudentType studentType, OtherCompetence otherCompetence) { double initial = 0; if (studentType != StudentType.ThisYearStudent) { initial = 10; } initial = RandomProvider.Instance.Next(10, 21) + initial + (int)otherCompetence; IKnowledge knowledge = new KnowledgeStats(initial); return knowledge; }
public override double GetGPA(char letterGrade, StudentType studentType) { return(base.GetGPA(letterGrade, studentType)); }
public Student(int id, string fname, string lname, string email, Gender gender, StudentType type, int exam, int homeworkSent, int homeworkEvaluated, double teamworkScore, int attendances, double bonus) { this.Id = id; this.FirstName = fname; this.LastName = lname; this.Email = email; this.StudentGender = gender; this.Type = type; this.ExamScore = exam; this.HomeworkSent = homeworkSent; this.HomeworkEvaluated = homeworkEvaluated; this.TeamworkScore = teamworkScore; this.Attendances = attendances; this.Bonus = bonus; this.Result = CalculateResult(); }
HandleResult OnReceive(IClient sender, byte[] bytes) { // 数据到达了 if (isSendFile == true) { // 如果发送了文件,并接收到了返回数据 isSendFile = false; MyFileInfo myFile = client.BytesToStruct <MyFileInfo>(bytes); int objSize = Marshal.SizeOf(myFile); // 因为没有附加尾数据,所以大小可以用length - objSize byte[] contentBytes = new byte[bytes.Length - objSize]; Array.ConstrainedCopy(bytes, objSize, contentBytes, 0, contentBytes.Length); string txt = Encoding.Default.GetString(contentBytes); string msg = string.Empty; if (txt.Length > 100) { msg = txt.Substring(0, 100) + "......"; } else { msg = txt; } AddMsg(string.Format(" > [{0},OnReceive] -> FileInfo(Path:\"{1}\",Size:{2})", client.ConnectionId, myFile.FilePath, myFile.FileSize)); AddMsg(string.Format(" > [{0},OnReceive] -> FileContent(\"{1}\")", client.ConnectionId, msg)); } else if (studentType != StudentType.None) { switch (studentType) { case StudentType.Array: Student[] students = client.BytesToObject(bytes) as Student[]; foreach (var stu in students) { AddMsg(string.Format(" > [{0},OnReceive] -> Student({1},{2},{3})", client.ConnectionId, stu.Id, stu.Name, stu.GetSexString())); } break; case StudentType.List: List <Student> stuList = client.BytesToObject(bytes) as List <Student>; foreach (var stu in stuList) { AddMsg(string.Format(" > [{0},OnReceive] -> Student({1},{2},{3})", client.ConnectionId, stu.Id, stu.Name, stu.GetSexString())); } break; case StudentType.Single: Student student = client.BytesToObject(bytes) as Student; AddMsg(string.Format(" > [{0},OnReceive] -> Student({1},{2},{3})", client.ConnectionId, student.Id, student.Name, student.GetSexString())); studentType = StudentType.None; break; } } else { AddMsg(string.Format(" > [{0},OnReceive] -> ({1} bytes)", client.ConnectionId, bytes.Length)); } return(HandleResult.Ok); }
HandleResult OnReceive(TcpClient sender, IntPtr pData, int length) { // 数据到达了 if (isSendFile == true) { // 如果发送了文件,并接收到了返回数据 isSendFile = false; MyFileInfo myFile = (MyFileInfo)Marshal.PtrToStructure(pData, typeof(MyFileInfo)); int objSize = Marshal.SizeOf(myFile); // 因为没有附加尾数据,所以大小可以用length - objSize byte[] bytes = new byte[length - objSize]; Marshal.Copy(pData + objSize, bytes, 0, length - objSize); string txt = Encoding.Default.GetString(bytes); string msg = string.Empty; if (txt.Length > 100) { msg = txt.Substring(0, 100) + "......"; } else { msg = txt; } AddMsg(string.Format(" > [{0},OnReceive] -> FileInfo(Path:\"{1}\",Size:{2})", sender.ConnectionId, myFile.FilePath, myFile.FileSize)); AddMsg(string.Format(" > [{0},OnReceive] -> FileContent(\"{1}\")", sender.ConnectionId, msg)); } else if (studentType != StudentType.None) { byte[] bytes = new byte[length]; Marshal.Copy(pData, bytes, 0, length); switch (studentType) { case StudentType.Array: Student[] students = sender.BytesToObject(bytes) as Student[]; foreach (var stu in students) { AddMsg(string.Format(" > [{0},OnReceive] -> Student({1},{2},{3})", sender.ConnectionId, stu.Id, stu.Name, stu.GetSexString())); } break; case StudentType.List: List<Student> stuList = sender.BytesToObject(bytes) as List<Student>; foreach (var stu in stuList) { AddMsg(string.Format(" > [{0},OnReceive] -> Student({1},{2},{3})", sender.ConnectionId, stu.Id, stu.Name, stu.GetSexString())); } break; case StudentType.Single: Student student = sender.BytesToObject(bytes) as Student; AddMsg(string.Format(" > [{0},OnReceive] -> Student({1},{2},{3})", sender.ConnectionId, student.Id, student.Name, student.GetSexString())); studentType = StudentType.None; break; } } else { AddMsg(string.Format(" > [{0},OnReceive] -> ({1} bytes)", sender.ConnectionId, length)); } return HandleResult.Ok; }
private bool UseWeighted(StudentType studentType) { return(IsWeighted == true && (studentType == StudentType.Honors || studentType == StudentType.DualEnrolled)); }
private Student CreateStudent(StudentType Type, string Name, PersonGender StudentGender, DateTime TimeStamp) { Student newStudent = new Student(Type, Name, StudentGender, TimeStamp); return(newStudent); }
protected virtual int GetWeightedGPAAddition(StudentType studentType) { return(IsWeighted && (studentType == StudentType.DualEnrolled || studentType == StudentType.Honors)? 1 : 0); }
public Student(string name, string gender, StudentType type) { Name = name; Gender = gender; Type = type; }
static void Main(string[] args) { if (args.Length > 1) { string path = args[0]; if (File.Exists(path)) { using (StreamReader streamReader = File.OpenText(path)) { string line; StudentManager studentManager = new StudentManager(); while ((line = streamReader.ReadLine()) != null) { Student newStudent = studentManager.CreateStudentFromLine(line); studentManager.AddStudent(newStudent); } string firstFilter = args[1]; if (firstFilter.Contains("name")) { Console.WriteLine(studentManager.GetListOfStudents(firstFilter.Replace("name=", ""))); } else if (firstFilter.Contains("type")) { if (args.Length < 4) { firstFilter = firstFilter.Replace("type=", ""); StudentType seekedType = (StudentType)Enum.Parse(typeof(StudentType), firstFilter, true); if (args.Length == 3) { string secondFilter = args[2]; if (secondFilter.Contains("gender")) { secondFilter = secondFilter.Replace("gender=", ""); PersonGender seekedGender = (PersonGender)Enum.Parse(typeof(PersonGender), secondFilter, true); Console.WriteLine(studentManager.GetListOfStudents(seekedType, seekedGender)); } else { Console.WriteLine("Invalid arguments."); } } else { Console.WriteLine(studentManager.GetListOfStudents(seekedType)); } } else { Console.WriteLine("Number of arguments exceeded."); } } else { Console.WriteLine("Please enter some valid input."); } } } else { Console.WriteLine("Please enter some valid file path."); } } else { Console.WriteLine("Please enter some valid input."); } }
public void SetStudentType(StudentType type) { StudentType = type; }
public virtual double GetGPA(char letterGrade, StudentType studentType) { bool upgrade = false; if ((studentType == StudentType.Honors || studentType == StudentType.DualEnrolled) && IsWeighted == true) { upgrade = true; } switch (letterGrade) { case 'A': if (upgrade) { return(5); } else { return(4); } case 'B': if (upgrade) { return(4); } else { return(3); } case 'C': if (upgrade) { return(3); } else { return(2); } case 'D': if (upgrade) { return(2); } else { return(1); } case 'F': if (upgrade) { return(1); } else { return(0); } } return(0); }
protected void Page_PreRender(object sender, EventArgs e) { if (!IsPostBack) { List <CourseOffering> ourCourses = CourseOfferingsDataAccess.retreiveAllCourses(); ourCourses.Sort(sortOffering); foreach (CourseOffering course in ourCourses) { ListItem item = new ListItem(course.ToString(), course.CourseOffered.CourseNumber); ddlCourseOffering.Items.Add(item); } } if (IsPostBack) { List <CourseOffering> coursesOffered = CourseOfferingsDataAccess.retreiveAllCourses(); int selectedIndex = ddlCourseOffering.SelectedIndex; List <Student> studentsInOfferingList = RegistrationDataAccess.getStudentsFromOffering(coursesOffered[selectedIndex]); studentsInOfferingList.Sort(sortBy); if (studentsInOfferingList.Count == 0) { TableRow lastRow = new TableRow(); TableCell lastRowCell = new TableCell(); lastRowCell.Text = "There are currently no students enlisted"; lastRowCell.ForeColor = System.Drawing.Color.Red; lastRowCell.ColumnSpan = 4; lastRowCell.HorizontalAlign = HorizontalAlign.Center; lastRow.Cells.Add(lastRowCell); tblStudentRecords.Rows.Add(lastRow); } else { foreach (Student student in studentsInOfferingList) { { TableRow row = new TableRow(); TableCell cell = new TableCell(); cell.Text = student.Number; row.Cells.Add(cell); cell = new TableCell(); cell.Text = student.Name; row.Cells.Add(cell); string studentType = student.ToString(); cell = new TableCell(); cell.Text = StudentType.getStudentType(student); row.Cells.Add(cell); tblStudentRecords.Rows.Add(row); } } } } }
public Student(StudentType studentType) { StudentType = studentType; }
public virtual double GetGPA(char letterGrade, StudentType studentType) { var letterGradeToGPA = -(int)letterGrade + (int)'A' + 4; return(letterGradeToGPA + GetWeightedGPAAddition(studentType)); }
int GetGPA(StudentType studentType, int currentGpa) { return(IsWeighted && (studentType == StudentType.Honors || studentType == StudentType.DualEnrolled) ? currentGpa + 1 : currentGpa); }
public Student(string Name, StudentType Type) { this.Name = Name; this.Type = Type; }
public virtual double GetGPA(char letterGrade, StudentType studentType) { switch (letterGrade) { case 'A': if (IsWeighted && studentType == StudentType.Honors) { return(5); } else if (IsWeighted && studentType == StudentType.DualEnrolled) { return(5); } else { return(4); } case 'B': if (IsWeighted && studentType == StudentType.Honors) { return(4); } else if (IsWeighted && studentType == StudentType.DualEnrolled) { return(4); } else { return(3); } case 'C': if (IsWeighted && studentType == StudentType.Honors) { return(3); } else if (IsWeighted && studentType == StudentType.DualEnrolled) { return(3); } else { return(2); } case 'D': if (IsWeighted && studentType == StudentType.Honors) { return(2); } else if (IsWeighted && studentType == StudentType.DualEnrolled) { return(2); } else { return(1); } } return(0); }
private void btnSendSerializableObject_Click(object sender, EventArgs e) { try { // 注: 对象序列化发送数据较大 if (studentType != StudentType.None) { // 正在执行 throw new Exception("being implemented"); } IntPtr dwConnId = client.GetConnectionId(); Thread thread = new Thread(new ThreadStart(delegate() { Student[] students = new Student[2]; students[0] = new Student(); students[0].Id = 1; students[0].Name = "张三"; students[0].Sex = Sex.Female; students[1] = new Student(); students[1].Id = 2; students[1].Name = "李四"; students[1].Sex = Sex.Male; // 发送数组对象 studentType = StudentType.Array; if (client.SendBySerializable(students)) { AddMsg(string.Format("$ ({0}) Send OK --> {1}", dwConnId, "Student[]")); } else { AddMsg(string.Format("$ ({0}) Send Fail --> {1}", dwConnId, "Student[]")); } //////////////////////////////////////////////////////////////////////////////// // 改变性别 students[0].Sex = Sex.Transsexual; List <Student> stuList = new List <Student>(); stuList.Add(students[0]); stuList.Add(students[1]); // 防止粘包,延迟2秒发送下一组数据 AddMsg(" *** 2 seconds after sending ..."); Thread.Sleep(2000); // 发送list对象 studentType = StudentType.List; if (client.SendBySerializable(stuList)) { AddMsg(string.Format("$ ({0}) Send OK --> {1}", dwConnId, "List<Student>")); } else { AddMsg(string.Format("$ ({0}) Send Fail --> {1}", dwConnId, "List<Student>")); } //////////////////////////////////////////////////////////////////////////////// // 防止粘包,延迟2秒发送下一组数据 AddMsg(" *** 2 seconds after sending ..."); Thread.Sleep(2000); // 改变性别 students[0].Sex = Sex.Unknown; // 发送单个学员信息 studentType = StudentType.Single; if (client.SendBySerializable(students[0])) { AddMsg(string.Format("$ ({0}) Send OK --> {1}", dwConnId, "Student")); } else { AddMsg(string.Format("$ ({0}) Send Fail --> {1}", dwConnId, "Student")); } })); thread.Start(); } catch (Exception ex) { studentType = StudentType.None; AddMsg(string.Format("$ Send Fail --> msg ({0})", ex.Message)); } }
private void btnSendSerializableObject_Click(object sender, EventArgs e) { try { // 注: 对象序列化发送数据较大 if (studentType != StudentType.None) { // 正在执行 throw new Exception("being implemented"); } IntPtr connId = client.ConnectionId; Thread thread = new Thread(new ThreadStart(delegate() { Student[] students = new Student[2]; students[0] = new Student(); students[0].Id = 1; students[0].Name = "张三"; students[0].Sex = Sex.Female; students[1] = new Student(); students[1].Id = 2; students[1].Name = "李四"; students[1].Sex = Sex.Male; // 发送数组对象 studentType = StudentType.Array; if (client.SendBySerializable(students)) { AddMsg(string.Format("$ ({0}) Send OK --> {1}", connId, "Student[]")); } else { AddMsg(string.Format("$ ({0}) Send Fail --> {1}", connId, "Student[]")); } //////////////////////////////////////////////////////////////////////////////// // 改变性别 students[0].Sex = Sex.Transsexual; List<Student> stuList = new List<Student>(); stuList.Add(students[0]); stuList.Add(students[1]); // 防止粘包,延迟2秒发送下一组数据 AddMsg(" *** 2 seconds after sending ..."); Thread.Sleep(2000); // 发送list对象 studentType = StudentType.List; if (client.SendBySerializable(stuList)) { AddMsg(string.Format("$ ({0}) Send OK --> {1}", connId, "List<Student>")); } else { AddMsg(string.Format("$ ({0}) Send Fail --> {1}", connId, "List<Student>")); } //////////////////////////////////////////////////////////////////////////////// // 防止粘包,延迟2秒发送下一组数据 AddMsg(" *** 2 seconds after sending ..."); Thread.Sleep(2000); // 改变性别 students[0].Sex = Sex.Unknown; // 发送单个学员信息 studentType = StudentType.Single; if (client.SendBySerializable(students[0])) { AddMsg(string.Format("$ ({0}) Send OK --> {1}", connId, "Student")); } else { AddMsg(string.Format("$ ({0}) Send Fail --> {1}", connId, "Student")); } })); thread.Start(); } catch (Exception ex) { studentType = StudentType.None; AddMsg(string.Format("$ Send Fail --> msg ({0})", ex.Message)); } }
HandleResult OnReceive(TcpClient sender, IntPtr pData, int iLength) { // 数据到达了 if (isSendFile == true) { // 如果发送了文件,并接收到了返回数据 isSendFile = false; MyFileInfo myFile = (MyFileInfo)Marshal.PtrToStructure(pData, typeof(MyFileInfo)); int objSize = Marshal.SizeOf(myFile); // 因为没有附加尾数据,所以大小可以用iLength - objSize byte[] bytes = new byte[iLength - objSize]; Marshal.Copy(pData + objSize, bytes, 0, iLength - objSize); string txt = Encoding.Default.GetString(bytes); string msg = string.Empty; if (txt.Length > 100) { msg = txt.Substring(0, 100) + "......"; } else { msg = txt; } AddMsg(string.Format(" > [{0},OnReceive] -> FileInfo(Path:\"{1}\",Size:{2})", sender.GetConnectionId(), myFile.FilePath, myFile.FileSize)); AddMsg(string.Format(" > [{0},OnReceive] -> FileContent(\"{1}\")", sender.GetConnectionId(), msg)); } else if (studentType != StudentType.None) { byte[] bytes = new byte[iLength]; Marshal.Copy(pData, bytes, 0, iLength); switch (studentType) { case StudentType.Array: Student[] students = sender.BytesToObject(bytes) as Student[]; foreach (var stu in students) { AddMsg(string.Format(" > [{0},OnReceive] -> Student({1},{2},{3})", sender.GetConnectionId(), stu.Id, stu.Name, stu.GetSexString())); } break; case StudentType.List: List <Student> stuList = sender.BytesToObject(bytes) as List <Student>; foreach (var stu in stuList) { AddMsg(string.Format(" > [{0},OnReceive] -> Student({1},{2},{3})", sender.GetConnectionId(), stu.Id, stu.Name, stu.GetSexString())); } break; case StudentType.Single: Student student = sender.BytesToObject(bytes) as Student; AddMsg(string.Format(" > [{0},OnReceive] -> Student({1},{2},{3})", sender.GetConnectionId(), student.Id, student.Name, student.GetSexString())); studentType = StudentType.None; break; } } else { AddMsg(string.Format(" > [{0},OnReceive] -> ({1} bytes)", sender.GetConnectionId(), iLength)); } return(HandleResult.Ok); }
public virtual double GetGPA(char letterGrade, StudentType studentType) { if (studentType.Equals(GradeBook.Enums.StudentType.Honors) || studentType.Equals(GradeBook.Enums.StudentType.DualEnrolled)) { if (IsWeighted == true) { switch (letterGrade) { case 'A': return(5); case 'B': return(4); case 'C': return(3); case 'D': return(2); case 'F': return(1); } } else { switch (letterGrade) { case 'A': return(4); case 'B': return(3); case 'C': return(2); case 'D': return(1); case 'F': return(0); } } } else { switch (letterGrade) { case 'A': return(4); case 'B': return(3); case 'C': return(2); case 'D': return(1); case 'F': return(0); } } return(0); }
/// <summary> /// Enables to register student and add to list of registred students /// </summary> /// <param name="firstName"></param> /// <param name="lastName"></param> /// <param name="birthDay"></param> /// <param name="type"></param> /// <param name="sex"></param> static public void EnrollStudent(string firstName, string lastName, DateTime birthDay, StudentType type, Gender sex, programsNames programName) { db.Students.Add(new Student() { FirstName = firstName, LastName = lastName, BirthDay = birthDay, Type = type, Sex = sex, ProgramNames = programName, }); db.SaveChanges(); }