Контроль успеваемости студентов (рейтинговая система)

Автор: Пользователь скрыл имя, 08 Ноября 2011 в 12:32, курсовая работа

Описание работы

Внедрение в практику программирования объектно-ориентированной парадигмы дает развитие новых областей информатики, значительное повышение уровня технологичности создаваемых программных средств, сокращение затрат на разработку и сопровождение программ, их повторное использование, вовлечение в процесс расширения интеллектуальных возможностей ЭВМ. Объектный подход информационного моделирования предметных областей все более успешно применяется в качестве основы для структуризации их информационных отражений и, в частности, баз знаний.

Работа содержит 1 файл

Курсач_.doc

— 450.50 Кб (Скачать)

            Console.WriteLine("  1 - для изменения оценки по математике");

            Console.WriteLine("  2 - для изменения оценки по физике");

            Console.WriteLine("  3 - для изменения оценки по химии");

            Console.WriteLine("  4 - для изменения оценки по информатике");

            b = Convert.ToInt32(Console.ReadLine());

            System.Console.Clear();

            if (b == 1)

            {

                ex = 1;

                Console.WriteLine("\n  Введите новую оценку для студента\n  " + buf + " по физике:");

                obj[m].Phys=Convert.ToInt32(Console.ReadLine());

                obj[m].Mid = (obj[m].Phys + obj[m].Math + obj[m].Chem + obj[m].Inf) / 4.0;

                Console.WriteLine("  Оценка изменена");

            }

            if (b == 2)

            {

                ex = 1;

                Console.WriteLine("\n  Введите новую оценку для студента\n  " + buf + " по химии:");

                obj[m].Chem=Convert.ToInt32(Console.ReadLine());

                obj[m].Mid = (obj[m].Phys + obj[m].Math + obj[m].Chem + obj[m].Inf) / 4.0;

                Console.WriteLine("  Оценка изменена");

            }

            if (b == 3)

            {

                ex = 1;

                Console.WriteLine("\n  Введите новую оценку для студента\n  " + buf + " по информатике:");

                obj[m].Inf=Convert.ToInt32(Console.ReadLine());

                obj[m].Mid = (obj[m].Phys + obj[m].Math + obj[m].Chem + obj[m].Inf) / 4.0;

                Console.WriteLine("  Оценка изменена");

            }

            if (b == 4)

            {

                ex = 1;

                Console.WriteLine("\n  Введите новую оценку для студента\n  " + buf + " по математике:");

                obj[m].Math = Convert.ToInt32(Console.ReadLine());

                obj[m].Mid = (obj[m].Phys + obj[m].Math + obj[m].Chem + obj[m].Inf) / 4.0;

                Console.WriteLine("  Оценка изменена");

            }

            if (ex==0)

            {

                Console.WriteLine("  Неверные данные...");

            }

            back:

            Console.WriteLine("  Нажмите любую клавишу для продолжения...");

            Console.ReadKey(true);

            System.Console.Clear();

        }

        //-----------------------------------------------------------------------------------

        public static void Save(ref int n, Raiting[] obj)

        {

            Console.WriteLine("\n  Введите имя файла");

            string filePath = Console.ReadLine();

            try

            {

               List<Raiting> raits = new List<Raiting>();

                for (int i = 0; i < n; i++)

                {

                    raits.Add(obj[i]);

                }

                SerializeRates(raits, filePath);

                Console.WriteLine("\n\n  Данные были сохранены в файл {0}", filePath);

            }

            catch (Exception ex)

            {

                Console.WriteLine("Не могу сохранить данные :{0}", ex.Message);

            }

            Console.WriteLine("\n  Нажмите любую клавишу для продолжения...");

            Console.ReadKey(true);

            System.Console.Clear();

        }

        //-----------------------------------------------------------------------------------

        public static void Load(ref int n, Raiting[] obj)

        {

            Console.WriteLine("\n  Введите имя файла");

            string filePath = Console.ReadLine();

            try

            {

                var raties = DeserializeRates(filePath);

                n = raties.Count;

                for (int i = 0; i < obj.Length; i++)

                {

                    obj[i] = i < n ? raties[i] : null;

                }

                Console.WriteLine("\n\n       Запись успешно загружена!");

            }

            catch (Exception ex)

           {

                Console.WriteLine("Не могу открыть данные :{0}", ex.Message);

            }

            Console.WriteLine("       Нажмите любую клавишу для продолжения...");

            Console.ReadKey(true);

            System.Console.Clear();

        }

        //-----------------------------------------------------------------------------------

        private static List<Raiting> DeserializeRates(string filePath)

        {

            Stream stream = null;

            try

            {

               var formatter = new BinaryFormatter();

                stream = new FileStream(filePath, FileMode.Open, FileAccess.Read, FileShare.None);

                return (List<Raiting>)formatter.Deserialize(stream);

            }

            catch

            {

                // TODO: log

                throw;

            }

            finally

            {

                if (null != stream)

                    stream.Close();

            }

        } 

        //-----------------------------------------------------------------------------------

        static void SerializeRates(List<Raiting> raits, string fileName)

        {

            Stream stream = null;

Информация о работе Контроль успеваемости студентов (рейтинговая система)