public Date(int Day, int Month, int Year)
Console.WriteLine("enter day:");
this.Day = int.Parse(Console.ReadLine());
Console.WriteLine("enter month:");
this.Month = int.Parse(Console.ReadLine());
Console.WriteLine("enter year:");
this.Year = int.Parse(Console.ReadLine());
public void SetDay(int Day)
public void SetMonth(int Month)
public void SetYear(int Year)
public int ComperTo(Date other)
if (this.Year == other.Year)
if (this.Month == other.Month)
return (this.Day - other.Day);
return (this.Month - other.Month);
return (this.Year - other.Year);
public override string ToString()
string r = "-----------" + "\n day: " + this.Day + "\n month: " + this.Month + "\n month: "+this.Year;
public Talmid(string Name, Date birth)
this.birth = new Date(birth);
this.grades = new int[5];
this.birth = new Date(t.birth);
this.grades = new int[5];
for (int i = 0; i < grades.Length; i++)
Date temp = new Date(this.birth);
int[] copy = new int[this.grades.Length];
for (int i = 0; i < copy.Length; i++)
copy[i] = this.grades[i];
public void SetName(string Name)
public void SetBirth(Date d)
this.birth.SetDay(d.GetDay());
this.birth.SetMonth(d.GetMonth());
this.birth.SetYear(d.GetYear());
public void SetGrades(int[] grades)
for (int i = 0; i < grades.Length; i++)
this.grades[i] = grades[i];
public double GetAvg(int [] grades)
for (int i = 0; i < this.grades.Length; i++)
return (double)sum / this.grades.Length;
public override string ToString()
string st = "name: " + this.Name + " ,birth: " + this.birth.ToString() + "grades: ";
for (int i = 0; i < grades.Length; i++)
st += this.grades[i] + " ";
private int class_number;
private int num_of_students;
private Talmid[] talmidim;
public Kita(char level, int class_number, int num_of_students, Talmid[] talmidim)
this.class_number = class_number;
this.num_of_students = num_of_students;
this.talmidim = new Talmid[20];
for (int i = 0; i < this.num_of_students; i++)
this.talmidim[i] = talmidim[i];
public Kita(char level, int class_number)
Console.WriteLine("enter number of students in class:");
this.num_of_students = int.Parse(Console.ReadLine());
for (int i = 0; i < this.num_of_students; i++)
Console.WriteLine("enter your name:");
string name = Console.ReadLine();
Console.WriteLine("enter your birth date:");
Date birth_date = new Date();
this.talmidim[i] = new Talmid(name, birth_date);
Console.WriteLine("enter level:");
this.level = char.Parse(Console.ReadLine());
Console.WriteLine("enter class number:");
this.class_number = int.Parse(Console.ReadLine());
Console.WriteLine("enter number of students in class:");
this.num_of_students = int.Parse(Console.ReadLine());
for (int i = 0; i < this.num_of_students; i++)
Console.WriteLine("enter your name:");
string name = Console.ReadLine();
Console.WriteLine("enter your birth date:");
Date birth_date = new Date();
this.talmidim[i] = new Talmid(name, birth_date);
this.class_number = k.class_number;
this.num_of_students = k.num_of_students;
for (int i = 0; i < k.num_of_students; i++)
this.talmidim[i] = k.talmidim[i];
public int GetClassNumber()
return this.class_number;
public int GetNumOfStudents()
return this.num_of_students;
public Talmid[] GetTalmidim()
Talmid[] copy = new Talmid[this.num_of_students];
for (int i = 0; i < this.num_of_students; i++)
copy[i] = this.talmidim[i];
public void SetLevel(char level)
public void SetClassNumber(int class_number)
this.class_number = class_number;
public void SetNumOfStudents(int num_of_students)
this.num_of_students = num_of_students;
public void SetTalmidim(Talmid[] talmidim)
for (int i = 0; i < this.talmidim.Length; i++)
this.talmidim[i] = talmidim[i];
public Talmid BestStudent()
for (int i = 0; i < this.num_of_students; i++)
if (this.talmidim[i].GetAvg(this.talmidim[i].GetGrades())>max_avg)
max_avg = this.talmidim[i].GetAvg(this.talmidim[i].GetGrades());
return this.talmidim[max_place];
public bool IsStudentInClas(Talmid st)
for (int i = 0; i < this.talmidim.Length; i++)
if (st.GetName() == this.talmidim[i].GetName())
public bool AddStudent(Talmid stu)
if (this.num_of_students ==20)
this.talmidim[num_of_students] = stu;
public override string ToString()
string s = "level: " + level + "number: " + class_number + "numOfStudents: " + num_of_students + "talmidim: ";
for (int i = 0; i < this.talmidim.Length; i++)
s += this.talmidim[i].ToString() + " ";
public static void Main()
Kita class1 = new Kita();
Kita class2 = new Kita('7', 2);
Console.WriteLine(class1.ToString());
Console.WriteLine(class2.ToString());
Console.WriteLine("there is" +class1.GetNumOfStudents()+" students in class 1");
Console.WriteLine("there is" + class2.GetNumOfStudents() + " students in class 2");
Date birth_date=new Date(day,month,year);
Talmid t1 = new Talmid(name, birth_date);
Talmid t2 = new Talmid(name, birth_date);
Talmid t3 = new Talmid(name, birth_date);
if (class1.GetNumOfStudents() <= 16)
Console.WriteLine(class1.ToString());
Console.WriteLine(class2.ToString());
Console.WriteLine(class1.BestStudent().ToString());
Console.WriteLine(class2.BestStudent().ToString());
Console.WriteLine("enter your name");
t1.SetName(Console.ReadLine());
if (class1.IsStudentInClas(t1)==true)
Console.WriteLine("student in class");
Console.WriteLine("student is not in class");
for (int i = 0; i < class1.GetNumOfStudents(); i++)
if (class1.GetTalmidim()[i].GetName().IndexOf("לוי " )>0)
Console.WriteLine("there are"+count+" students with the name לוי");
for (int i = 0; i < class1.GetNumOfStudents(); i++)
if (class1.GetTalmidim()[i].GetName().IndexOf("כהן ") > 0)
Console.WriteLine("there are" + count + " students with the name כהן");
for (int i = 0; i < class1.GetNumOfStudents(); i++)
if (class1.GetTalmidim()[i].GetAvg(class1.GetTalmidim()[i].GetGrades())<55)
Console.WriteLine("יש"+count+"תלמידים עם ממוצע נכשל בכיתב");
if(class1.BestStudent().GetAvg(class1.BestStudent().GetGrades())>class2.BestStudent ().GetAvg(class2.BestStudent().GetGrades()))
Console.WriteLine(class1.BestStudent().ToString());
Console.WriteLine(class2.BestStudent().ToString());
for (int i = 0; i < class1.GetNumOfStudents(); i++)
if (class1.GetTalmidim()[i].GetAvg(class1.GetTalmidim()[i].GetGrades()) >85 )
for (int i = 0; i < class2.GetNumOfStudents(); i++)
if (class2.GetTalmidim()[i].GetAvg(class2.GetTalmidim()[i].GetGrades()) > 85)
Console.WriteLine("יש "+count+" תלמידים עם ממוצע מעל 85");