Advertisement
DrSmile

Классы и средняя Perf групп

Jun 25th, 2019
80
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C# 10.42 KB | None | 0 0
  1. using System;
  2. using System.Collections.Generic;
  3. using System.Linq;
  4. using System.Text;
  5. using System.Threading.Tasks;
  6.  
  7. namespace ConsoleApp11
  8. {
  9.     class Program
  10.     {
  11.  
  12.         class Student
  13.         {
  14.  
  15.              private string name;
  16.              private string numbergroup; //Поля
  17.              private int[] performance = new int[5];
  18.  
  19.             public Student(string name, string numbergroup, int[] performance)
  20.             {
  21.                 this.name = name;
  22.                 this.numbergroup = numbergroup; // Конструктор
  23.                 this.performance = performance;
  24.             }
  25.             public Student()
  26.             {
  27.  
  28.             }
  29.  
  30.             public Student(char var)
  31.             {
  32.                 this.numbergroup = "ИДБ-19-11";
  33.                 this.name = "Василий";
  34.                 this.performance[0] = 5;
  35.                 this.performance[1] = 4;
  36.                 this.performance[2] = 3;
  37.                 this.performance[3] = 2;
  38.                 this.performance[4] = 3;
  39.             }
  40.  
  41.             public Student(bool var)
  42.             {
  43.                 this.numbergroup = "НВГУ-1859";
  44.                 this.name = "Алихан";
  45.                 this.performance[0] = 3;
  46.                 this.performance[1] = 4;
  47.                 this.performance[2] = 2;
  48.                 this.performance[3] = 4;
  49.                 this.performance[4] = 2;
  50.             }
  51.  
  52.             public Student(float var)
  53.             {
  54.                 this.numbergroup = "187-1";
  55.                 this.name = "Максим";
  56.                 this.performance[0] = 5;
  57.                 this.performance[1] = 5;
  58.                 this.performance[2] = 3;
  59.                 this.performance[3] = 3;
  60.                 this.performance[4] = 4;
  61.             }
  62.  
  63.             public string Name
  64.             {
  65.                 get
  66.                 {
  67.                     return name;
  68.                 }
  69.                 set
  70.                 {
  71.                     name = value;
  72.                 }
  73.             }
  74.  
  75.             public string Numbergroup
  76.             {
  77.                 get
  78.                 {
  79.                     return numbergroup;
  80.                 }
  81.                 set
  82.                 {
  83.                     numbergroup = value;
  84.                 }
  85.             }
  86.             public int[] Performance
  87.             {
  88.                 get
  89.                 {
  90.                     return performance;
  91.                 }
  92.                 set
  93.                 {
  94.                     performance = value;
  95.                 }
  96.             }
  97.  
  98.             public void Output()
  99.             {
  100.                 Console.WriteLine(Name + " " + Numbergroup + " группа");
  101.                 for (int i = 0; i < Performance.Length; i++)
  102.                 {
  103.                     Console.WriteLine(Performance[i]);
  104.                 }
  105.             }
  106.  
  107.  
  108.         }
  109.  
  110.  
  111.         static int[] Input()
  112.         {
  113.             const int len = 5;
  114.             int[] Performance = new int[len];
  115.             for (int i = 0; i < Performance.Length; i++)
  116.             {
  117.                 Console.WriteLine("Введите " + i + " оценку");
  118.                 Performance[i] = int.Parse(Console.ReadLine());
  119.  
  120.             }
  121.             return Performance;
  122.         }
  123.  
  124.  
  125.  
  126.  
  127.  
  128.         static void Main(string[] args)
  129.         {
  130.             List<Student> students = new List<Student>();
  131.             int[] massive = new int[3] { 2, 3, 4 };
  132.             int a = massive[2];
  133.             students.Add(new Student('F'));
  134.             students.Add(new Student(1));
  135.             students.Add(new Student(true));
  136.             // Student b = students[0];
  137.  
  138.  
  139.  
  140.             int n = 1;
  141.             while (n != 0)
  142.             {
  143.                 Console.WriteLine("===============================================================");
  144.                 Console.WriteLine("Введите номер команды: ");
  145.                 Console.WriteLine("1.Добавить студента");
  146.                 Console.WriteLine("2.Вывести информацию о студенте");
  147.                 Console.WriteLine("3.Удалить информацию о последнем студенте");
  148.                 Console.WriteLine("4.Удаление информации студента по индексу");
  149.                 Console.WriteLine("5.Вывести информацию по имени студента");
  150.                 Console.WriteLine("6.Вывести среднее значение по оценкам каждого студента");
  151.                 Console.WriteLine("0.Выйти из программы");
  152.                 Console.WriteLine("===============================================================");
  153.                 n = int.Parse(Console.ReadLine());
  154.                 switch (n)
  155.                 {
  156.                     case 1:
  157.                         Console.Clear();
  158.                         Console.WriteLine("Введите имя");
  159.                         string Name = Console.ReadLine();
  160.                         Console.WriteLine("Введите номер группы");
  161.                         string Numbergroup = Console.ReadLine();
  162.                         Console.WriteLine("Введите 5 оценок");
  163.                         int[] Performance = Input();
  164.  
  165.                         students.Add(new Student(Name, Numbergroup, Performance));
  166.                         break;
  167.  
  168.                     case 2:
  169.                         Console.Clear();
  170.                         foreach (Student student in students)
  171.                         {
  172.                             student.Output();
  173.                         }
  174.                         break;
  175.  
  176.                     case 3:
  177.                         Console.Clear();
  178.                         students.RemoveAt(students.Count - 1);
  179.                         break;
  180.  
  181.                     case 4:
  182.                         Console.Clear();
  183.                         Console.WriteLine("Введите индекс удаляемого студента");
  184.                         int index = 0;
  185.                         index = int.Parse(Console.ReadLine());
  186.                         if (index > students.Count)
  187.                         {
  188.                             Console.WriteLine("Некорректный индекс");
  189.                         }
  190.                         else
  191.                         {
  192.                             students.RemoveAt(index);
  193.                         }
  194.                         break;
  195.                     case 5:
  196.                         Console.Clear();
  197.                         string temp;
  198.                         Console.WriteLine("Введите имя студента");
  199.                         temp = Console.ReadLine();
  200.  
  201.                         bool flag = false;
  202.                         foreach (Student student in students)       // foreach(1)тип 2)Название 3)in (Откуда берется список)
  203.                         {
  204.                             if (temp == student.Name)
  205.                             {
  206.                                 student.Output();
  207.                                 flag = true;
  208.  
  209.                             }
  210.                         }
  211.                         if (flag == false)
  212.                         {
  213.                             Console.WriteLine("Такой студент не найден");
  214.                         }
  215.                         break;
  216.                     case 6:
  217.                         Console.Clear();
  218.                         int summ;
  219.                         foreach (Student student in students)
  220.                         {
  221.                             summ = 0;
  222.                             for (int i = 0; i < student.Performance.Length; i++)
  223.                             {
  224.  
  225.                                 summ += student.Performance[i];
  226.                             }
  227.  
  228.                             int average = summ / student.Performance.Length;
  229.                             Console.WriteLine(average);
  230.                         }
  231.                         break;
  232.                     case 7:
  233.                         List<string> arr_name_group = new List<string>();
  234.                         List<int> arr_count_numbergroup = new List<int>();
  235.                         List<float> arr_sum_numbergroup = new List<float>();
  236.                         for (int i = 0; i < students.Count; i++)
  237.                         {
  238.                             float sum = 0;
  239.                             for (int j = 0; j < 5; j++)
  240.                             {
  241.                                 sum += students[i].Performance[j];
  242.                             }
  243.  
  244.                             bool flag1 = false;
  245.  
  246.                             for (int j = 0; j < arr_name_group.Count; j++)
  247.                             {
  248.                                 if (arr_name_group[j] == students[i].Numbergroup)
  249.                                 {
  250.                                     arr_count_numbergroup[j]++;
  251.                                     arr_sum_numbergroup[j] += sum / 5;
  252.  
  253.                                     flag1 = true;
  254.                                     break;
  255.                                 }
  256.                             }
  257.                             if (flag1 == false)
  258.                             {
  259.                                 arr_name_group.Add(new string ('F',5));
  260.                                 arr_name_group[arr_name_group.Count - 1] = students[i].Numbergroup;
  261.                                 arr_count_numbergroup.Add(new int());
  262.                                 arr_count_numbergroup[arr_count_numbergroup.Count - 1] = 1;
  263.                                 arr_sum_numbergroup.Add(new float());
  264.                                 arr_sum_numbergroup[arr_sum_numbergroup.Count - 1] = sum / 5;
  265.                             }
  266.                         }
  267.                         for (int i = 0; i < arr_name_group.Count; i++)
  268.                         {
  269.                             Console.WriteLine("Группа" + arr_name_group[i] + "Имеет средний балл");
  270.                             Console.WriteLine(arr_sum_numbergroup[i] / arr_count_numbergroup[i]);
  271.                         }
  272.                         break;
  273.                     case 0:
  274.                         break;
  275.  
  276.                     default:
  277.                         Console.WriteLine("Вы ввели неверное значение");
  278.                         break;
  279.                 }
  280.             }
  281.  
  282.         }
  283.     }
  284. }
  285. //Student st = students[0];
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement