Программная реализация задачи определения статистических данных по успеваемости на факультете
ФЕДЕРАЛЬНОЕ Государственное
АВТОНОМНОЕ образовательное учреждение Высшего профессионального образования
«БЕЛГОРОДСКИЙ ГОСУДАРСТВЕННЫЙ
НАЦИОНАЛЬНЫЙ
ИССЛЕДОВАТЕЛЬСКИЙ УНИВЕРСИТЕТ»
(НИУ «БелГУ»)
ИНСТИТУТ ИНЖЕНЕРНЫХ ТЕХНОЛОГИЙ И
ЕСТЕСТВЕННЫХ НАУК
ФАКУЛЬТЕТ ИНФОРМАЦИОННЫХ ТЕХНОЛОГИЙ И
ПРИКЛАДНОЙ МАТЕМАТИКИ
Кафедра прикладной математики и
информатики
ПРОГРАММНАЯ РЕАЛИЗАЦИЯ ЗАДАЧИ
ОПРЕДЕНИЯ СТАТИСТИЧЕСКИХ ДАННЫХ ПО УСПЕВАЕМОСТИ НА ФАКУЛЬТЕТЕ
Курсовая
работа
студента
заочной формы обучения
направления
подготовки
.61
Прикладная информатика и математика
курса группы
83001361
Богданова
Георгия,
по
дисциплине: «Информатика и программирование»
Научный
руководитель:
к.т.н.
Н.Н.Гахова
БЕЛГОРОД 2014
ПЛАН КУРСОВОЙ РАБОТЫ
По дисциплине «Информатика и программирование»
На тему: «ПРОГРАММНАЯ РЕАЛИЗАЦИЯ ЗАДАЧИ ОПРЕДЕНИЯ СТАТИСТИЧЕСКИХ ДАННЫХ
ПО УСПЕВАЕМОСТИ НА ФАКУЛЬТЕТЕ»
Введение
. Теоретическая часть
. Решение задачи средствами прикладных программ
. Разработка алгоритмов и структур данных
. Программная реализация алгоритмов на языке программирования
. Тестирование разработанного программного обеспечения
Заключение
Список использованных источников
Приложения
Исполнитель: ___________________________________ Богданов Г.
Руководитель: ____________________________к.т.н., доц. Гахова Н.Н.
Содержание
1.
Теоретическая часть
. Решение
задачи средствами прикладных программ
. Разработка
алгоритмов и структур данных
. Программная
реализация задачи определения статистических данных по успеваемости на
факультете на языке программирования C#
.
Тестирование разработанного программного обеспечения
Заключение
Список
использованных источников
Приложение
Введение
Современное учебное заведение - это находящаяся в постоянном развитии,
динамическая система со сложными иерархическими организационно-управленческими
структурами и подразделениями. Достижение стоящих перед ВУЗом стратегических
целей может осуществляться путем разработки и внедрения информационной системы
управления учебным заведением, либо его подразделениями. Информационная система
должна позволять решать ряд задач по сбору, учету, хранению, контролю,
обработке и анализу информации об основных процессах высшего учебного
заведения.
Программная реализация задачи определения статистических данных по
успеваемости на факультете является актуальной задачей для большинства ВУЗов. В
настоящее время предлагаются различные решения в этой сфере.
Информационные системы и технологии становятся средством повышения
эффективности и производительности работы человека, позволяют быстро и качественно
анализировать информацию, принимать правильные решения. Подготовка курсовой
работы способствует:
- закреплению, углублению и обобщению знаний, полученных
студентами в процессе изучения лекционных курсов по дисциплине «Информатика и
программирование»;
- развитию умений и навыков, полученных при выполнении
лабораторных работ;
- применению этих знаний, умений и навыков к решению конкретных
задач;
- развитию навыков работы со специальной литературой и
разработки программного обеспечения.
Язык
программирования С# отличается минимализмом. Программы компилируются с помощью
однопроходного компилятора
<https://ru.wikipedia.org/wiki/%D0%9A%D0%BE%D0%BC%D0%BF%D0%B8%D0%BB%D1%8F%D1%82%D0%BE%D1%80>,
чтобы каждой элементарной составляющей программы после компиляции соответствовало
небольшое число машинных команд, а использование базовых элементов языка не
задействовало библиотеку времени выполнения
<https://ru.wikipedia.org/wiki/%D0%91%D0%B8%D0%B1%D0%BB%D0%B8%D0%BE%D1%82%D0%B5%D0%BA%D0%B0_%D0%B2%D1%80%D0%B5%D0%BC%D0%B5%D0%BD%D0%B8_%D0%B8%D1%81%D0%BF%D0%BE%D0%BB%D0%BD%D0%B5%D0%BD%D0%B8%D1%8F>
C# - это язык программирования, предназначенный для разработки самых
разнообразных приложений, предназначенных для выполнения в среде .NET
Framework. Язык C# прост, строго типизирован и объектно-ориентирован. Благодаря
множеству нововведений C# обеспечивает возможность быстрой разработки
приложений.
Курсовая
работа состоит из трех разделов, введения, заключения, списка использованной
литературы и приложения.
1. Теоретическая часть
Факультет компьютерных наук и телекоммуникаций был основан 26 августа
2002 г. Первоначально на факультете подготовка велась по трем специальностям -
«Математическое обеспечение и администрирование информационных систем»,
«Прикладная информатика в экономике» и «Сети связи и системы коммутации». В
2005 году спектр специальностей был расширен за счет специальности «Радиосвязь,
радиовещание и телевидение».
Специальности и направления обучения факультета компьютерных наук и
телекоммуникаций в полной мере отвечают потребностям реализации информационных
процессов на современном уровне, включая процессы получения знаний (научные
исследования), использования знаний (образование, создание новых технологий,
управление и др.), обмена знаниями и другими сведениями. Специалисты по
компьютерным наукам и информационным технологиям в настоящее время являются
самыми востребованными на рынке труда.
Одной из основных и трудоемких в работе факультета является деятельность
деканата. Работникам деканата приходится выполнять огромный объем рутинной
работы по учету контингента студентов, обеспечению учебного процесса,
предоставлению информации в различные подразделения ВУЗа. При этом всю
информацию необходимо представлять в различных форматах.
Необходимость внедрения информационной системы, автоматизирующей основные
функции образовательного процесса очевидна.
Глобальное внедрение компьютерных технологий во все сферы деятельности,
формирование новых коммуникаций и высокоавтоматизированной информационной среды
стали началом преобразования традиционной системы образования. В настоящее
время ни одно учебно-образовательное заведение не обходится без использования
информационных компьютерных технологий, как в учебной деятельности, так и в
управлении.
В большинстве случаев автоматизация деятельности деканата носит
достаточно бессистемный, случайный характер. В деканатах существуют множество
разрозненных систем, каждая из которых решает только узкие задачи, причем в
большинстве случаев в эти задачи сводятся к вводу и поддержании всей информации
в системе в актуальном состоянии полностью вручную и просто выводу печатных
форм. Отсутствует единая технология обработки и представления данных.
2. Решение задачи средствами прикладных программ
Microsoft
Excel (также иногда называется Microsoft Office
<https://ru.wikipedia.org/wiki/Microsoft_Office> Excel) -
программа
<https://ru.wikipedia.org/wiki/%D0%9A%D0%BE%D0%BC%D0%BF%D1%8C%D1%8E%D1%82%D0%B5%D1%80%D0%BD%D0%B0%D1%8F_%D0%BF%D1%80%D0%BE%D0%B3%D1%80%D0%B0%D0%BC%D0%BC%D0%B0>
для работы с электронными таблицами
<https://ru.wikipedia.org/wiki/%D0%AD%D0%BB%D0%B5%D0%BA%D1%82%D1%80%D0%BE%D0%BD%D0%BD%D0%B0%D1%8F_%D1%82%D0%B0%D0%B1%D0%BB%D0%B8%D1%86%D0%B0>,
созданная корпорацией Microsoft <https://ru.wikipedia.org/wiki/Microsoft>
для Microsoft Windows <https://ru.wikipedia.org/wiki/Microsoft_Windows>,
Windows NT <https://ru.wikipedia.org/wiki/Windows_NT> и Mac OS
<https://ru.wikipedia.org/wiki/Mac_OS>. Она предоставляет возможности
экономико-статистических расчетов, графические инструменты и, за исключением
Excel 2008 под Mac OS X <https://ru.wikipedia.org/wiki/Mac_OS_X>, язык
макропрограммирования VBA <https://ru.wikipedia.org/wiki/VBA> (Visual
Basic for Application). Microsoft Excel входит в состав Microsoft Office
<https://ru.wikipedia.org/wiki/Microsoft_Office> и на сегодняшний день
Excel является одним из наиболее популярных приложений в мире. Ценной
возможностью Excel является возможность писать код на основе Visual Basic для
приложений (VBA <https://ru.wikipedia.org/wiki/VBA>). Этот код пишется с
использованием отдельного от таблиц редактора. Управление электронной таблицей
осуществляется посредством объектно-ориентированной модели кода и данных. С
помощью этого кода данные входных таблиц будут мгновенно обрабатываться и
отображаться в таблицах и диаграммах (графиках). Таблица становится интерфейсом
кода, позволяя легко работать изменять его и управлять расчётами
При
помощи программы Microsoft Excel необходимо решить следующую задачу: в рабочей
книге создать таблицы с данными об успеваемости по двум предметам на 3-х
факультетах (каждый факультет на отдельном листе). Посчитать количество
отличных, хороших, удовлетворительных и неудовлетворительных оценок по двум
предметам и вывести результат в строку «Всего». Посчитать процент всех оценок в
сумме по двум предметам. Выполнить консолидацию и получить на отдельном листе
итоговую таблицу. Построить графики
3. Разработка алгоритмов и
структур данных
Блок-схема алгоритма - графическое изображение алгоритма в виде связанных
между собой с помощью стрелок (линий перехода) и блоков - графических символов,
каждый из которых соответствует одному шагу алгоритма. Внутри блока дается
описание соответствующего действия.
Рисунок 2 - Блок-схема программы для вывода статистики факультета
4. Программная реализация
задачи определения статистических данных по успеваемости на факультете на языке
программирования C#
C#
- объектно-ориентированный
<https://ru.wikipedia.org/wiki/%D0%9E%D0%B1%D1%8A%D0%B5%D0%BA%D1%82%D0%BD%D0%BE-%D0%BE%D1%80%D0%B8%D0%B5%D0%BD%D1%82%D0%B8%D1%80%D0%BE%D0%B2%D0%B0%D0%BD%D0%BD%D0%BE%D0%B5_%D0%BF%D1%80%D0%BE%D0%B3%D1%80%D0%B0%D0%BC%D0%BC%D0%B8%D1%80%D0%BE%D0%B2%D0%B0%D0%BD%D0%B8%D0%B5>
язык программирования <https://ru.wikipedia.org/wiki/%D0%AF%D0%B7%D1%8B%D0%BA_%D0%BF%D1%80%D0%BE%D0%B3%D1%80%D0%B0%D0%BC%D0%BC%D0%B8%D1%80%D0%BE%D0%B2%D0%B0%D0%BD%D0%B8%D1%8F>.
Разработан в 1998-2001 годах
<https://ru.wikipedia.org/wiki/2001_%D0%B3%D0%BE%D0%B4> группой инженеров
под руководством Андерса Хейлсберга <https://ru.wikipedia.org/wiki/%D0%A5%D0%B5%D0%B9%D0%BB%D1%81%D0%B1%D0%B5%D1%80%D0%B3,_%D0%90%D0%BD%D0%B4%D0%B5%D1%80%D1%81>
в компании Microsoft <https://ru.wikipedia.org/wiki/Microsoft> как язык
разработки приложений для платформы Microsoft .NET Framework и впоследствии был
стандартизирован как ECMA <https://ru.wikipedia.org/wiki/ECMA>-334 и ISO
<https://ru.wikipedia.org/wiki/ISO>/IEC
<https://ru.wikipedia.org/wiki/IEC> 23270.# относится к семье языков с
C-подобным синтаксисом <https://ru.wikipedia.org/w/index.php?title=C-%D0%BF%D0%BE%D0%B4%D0%BE%D0%B1%D0%BD%D1%8B%D0%B9_%D1%81%D0%B8%D0%BD%D1%82%D0%B0%D0%BA%D1%81%D0%B8%D1%81&action=edit&redlink=1>,
из них его синтаксис наиболее близок к C++
<https://ru.wikipedia.org/wiki/C%2B%2B> и Java <https://ru.wikipedia.org/wiki/Java>.
Язык имеет статическую типизацию
<https://ru.wikipedia.org/wiki/%D0%A1%D1%82%D0%B0%D1%82%D0%B8%D1%87%D0%B5%D1%81%D0%BA%D0%B0%D1%8F_%D1%82%D0%B8%D0%BF%D0%B8%D0%B7%D0%B0%D1%86%D0%B8%D1%8F>,
поддерживает полиморфизм <https://ru.wikipedia.org/wiki/%D0%9F%D0%BE%D0%BB%D0%B8%D0%BC%D0%BE%D1%80%D1%84%D0%B8%D0%B7%D0%BC_(%D0%B8%D0%BD%D1%84%D0%BE%D1%80%D0%BC%D0%B0%D1%82%D0%B8%D0%BA%D0%B0)>,
перегрузку операторов
<https://ru.wikipedia.org/wiki/%D0%9F%D0%B5%D1%80%D0%B5%D0%B3%D1%80%D1%83%D0%B7%D0%BA%D0%B0_%D0%BE%D0%BF%D0%B5%D1%80%D0%B0%D1%82%D0%BE%D1%80%D0%BE%D0%B2>
(в том числе операторов явного и неявного приведения типа), делегаты
<https://ru.wikipedia.org/wiki/%D0%94%D0%B5%D0%BB%D0%B5%D0%B3%D0%B0%D1%82_(%D0%BF%D1%80%D0%BE%D0%B3%D1%80%D0%B0%D0%BC%D0%BC%D0%B8%D1%80%D0%BE%D0%B2%D0%B0%D0%BD%D0%B8%D0%B5)>,
атрибуты, события
<https://ru.wikipedia.org/wiki/%D0%A1%D0%BE%D0%B1%D1%8B%D1%82%D0%B8%D0%B9%D0%BD%D0%BE-%D0%BE%D1%80%D0%B8%D0%B5%D0%BD%D1%82%D0%B8%D1%80%D0%BE%D0%B2%D0%B0%D0%BD%D0%BD%D0%BE%D0%B5_%D0%BF%D1%80%D0%BE%D0%B3%D1%80%D0%B0%D0%BC%D0%BC%D0%B8%D1%80%D0%BE%D0%B2%D0%B0%D0%BD%D0%B8%D0%B5>,
свойства
<https://ru.wikipedia.org/wiki/%D0%A1%D0%B2%D0%BE%D0%B9%D1%81%D1%82%D0%B2%D0%BE_(%D0%BF%D1%80%D0%BE%D0%B3%D1%80%D0%B0%D0%BC%D0%BC%D0%B8%D1%80%D0%BE%D0%B2%D0%B0%D0%BD%D0%B8%D0%B5)>,
обобщённые
<https://ru.wikipedia.org/wiki/%D0%9E%D0%B1%D0%BE%D0%B1%D1%89%D1%91%D0%BD%D0%BD%D0%BE%D0%B5_%D0%BF%D1%80%D0%BE%D0%B3%D1%80%D0%B0%D0%BC%D0%BC%D0%B8%D1%80%D0%BE%D0%B2%D0%B0%D0%BD%D0%B8%D0%B5>
типы и методы, итераторы <https://ru.wikipedia.org/wiki/%D0%98%D1%82%D0%B5%D1%80%D0%B0%D1%82%D0%BE%D1%80_(%D0%BF%D1%80%D0%BE%D0%B3%D1%80%D0%B0%D0%BC%D0%BC%D0%B8%D1%80%D0%BE%D0%B2%D0%B0%D0%BD%D0%B8%D0%B5)>,
анонимные функции
<https://ru.wikipedia.org/wiki/%D0%90%D0%BD%D0%BE%D0%BD%D0%B8%D0%BC%D0%BD%D0%B0%D1%8F_%D1%84%D1%83%D0%BD%D0%BA%D1%86%D0%B8%D1%8F>
с поддержкой замыканий
<https://ru.wikipedia.org/wiki/%D0%97%D0%B0%D0%BC%D1%8B%D0%BA%D0%B0%D0%BD%D0%B8%D0%B5_(%D0%BF%D1%80%D0%BE%D0%B3%D1%80%D0%B0%D0%BC%D0%BC%D0%B8%D1%80%D0%BE%D0%B2%D0%B0%D0%BD%D0%B8%D0%B5)>,
LINQ <https://ru.wikipedia.org/wiki/Language_Integrated_Query>,
исключения
<https://ru.wikipedia.org/wiki/%D0%9E%D0%B1%D1%80%D0%B0%D0%B1%D0%BE%D1%82%D0%BA%D0%B0_%D0%B8%D1%81%D0%BA%D0%BB%D1%8E%D1%87%D0%B5%D0%BD%D0%B8%D0%B9>,
комментарии <https://ru.wikipedia.org/wiki/%D0%9A%D0%BE%D0%BC%D0%BC%D0%B5%D0%BD%D1%82%D0%B0%D1%80%D0%B8%D0%B8_(%D0%BF%D1%80%D0%BE%D0%B3%D1%80%D0%B0%D0%BC%D0%BC%D0%B8%D1%80%D0%BE%D0%B2%D0%B0%D0%BD%D0%B8%D0%B5)>
в формате XML <https://ru.wikipedia.org/wiki/XML>.
Переняв
многое от своих предшественников - языков C++
<https://ru.wikipedia.org/wiki/C%2B%2B>, Pascal
<https://ru.wikipedia.org/wiki/Pascal_(%D1%8F%D0%B7%D1%8B%D0%BA_%D0%BF%D1%80%D0%BE%D0%B3%D1%80%D0%B0%D0%BC%D0%BC%D0%B8%D1%80%D0%BE%D0%B2%D0%B0%D0%BD%D0%B8%D1%8F)>,
Модула
<https://ru.wikipedia.org/wiki/%D0%9C%D0%BE%D0%B4%D1%83%D0%BB%D0%B0-2>,
Smalltalk <https://ru.wikipedia.org/wiki/Smalltalk> и, в особенности,
Java
<https://ru.wikipedia.org/wiki/Java_(%D1%8F%D0%B7%D1%8B%D0%BA_%D0%BF%D1%80%D0%BE%D0%B3%D1%80%D0%B0%D0%BC%D0%BC%D0%B8%D1%80%D0%BE%D0%B2%D0%B0%D0%BD%D0%B8%D1%8F)>
- С#, опираясь на практику их использования, исключает некоторые модели,
зарекомендовавшие себя как проблематичные при разработке программных систем,
например, C# в отличие от C++ не поддерживает множественное наследование
<https://ru.wikipedia.org/wiki/%D0%9C%D0%BD%D0%BE%D0%B6%D0%B5%D1%81%D1%82%D0%B2%D0%B5%D0%BD%D0%BD%D0%BE%D0%B5_%D0%BD%D0%B0%D1%81%D0%BB%D0%B5%D0%B4%D0%BE%D0%B2%D0%B0%D0%BD%D0%B8%D0%B5>
классов (между тем допускается множественное наследование интерфейсов
<https://ru.wikipedia.org/wiki/%D0%98%D0%BD%D1%82%D0%B5%D1%80%D1%84%D0%B5%D0%B9%D1%81_(%D0%BE%D0%B1%D1%8A%D0%B5%D0%BA%D1%82%D0%BD%D0%BE-%D0%BE%D1%80%D0%B8%D0%B5%D0%BD%D1%82%D0%B8%D1%80%D0%BE%D0%B2%D0%B0%D0%BD%D0%BD%D0%BE%D0%B5_%D0%BF%D1%80%D0%BE%D0%B3%D1%80%D0%B0%D0%BC%D0%BC%D0%B8%D1%80%D0%BE%D0%B2%D0%B0%D0%BD%D0%B8%D0%B5)>).
Синтаксис
C# очень выразителен, но прост в изучении. Все, кто знаком с языками C, C++ или
Java с легкостью узнают синтаксис с фигурными скобками, характерный для языка
C#. Разработчики, знающие любой из этих языков, как правило, смогут добиться
эффективной работы с языком C# за очень короткое время. Синтаксис C# делает
проще то, что было сложно в C++, и обеспечивает мощные возможности, такие как
типы значений Nullable, перечисления, делегаты, лямбда-выражения и прямой
доступ к памяти, чего нет в Java. C# поддерживает универсальные методы и типы,
обеспечивая более высокий уровень безопасности и производительности, а также
итераторы, позволяющие при реализации коллекций классов определять собственное
поведение итерации, которое может легко использоваться в клиентском коде.
Выражения LINQ делают строго типизированный запрос очень удобной языковой
конструкцией.
Как
объектно-ориентированный язык, C# поддерживает понятия инкапсуляции,
наследования и полиморфизма. Все переменные и методы, включая метод Main -
точку входа приложения - инкапсулируются в определения классов. Класс может
наследовать непосредственно из одного родительного класса, но может
реализовывать любое число интерфейсов. Для методов, которые переопределяют
виртуальные методы в родительском классе, необходимо ключевое слово override,
чтобы исключить случайное повторное определение. В языке C# структура похожа на
облегченный класс: это тип, распределяемый в стеке, реализующий интерфейсы, но
не поддерживающий наследование.
При
реализации программы на C# есть ряд преимуществ, а именно:
- расширяемость системы (в С# можно подгружать любые exe,
импортировать классы и объекты из других программ);
- кросплатформенность (mono, концепция NET);
- степень открытости исходных текстов библиотек, исполняемых
программ, количество литеретуры и помощь (MSDN);
- возможность привлечения сторонних разработчиков при
разработке системы для программирования узко-специализированных задач (сборки,
модули, теже exe);
- защищенность и контроль версий подключаемых алгоритмов
(концепция NET);
- трудоемкость написания;
- скорость работы (распределение процессов, распределение
данных скорость работы с данными);
- удобство разработки (среда разработки по сравнению с Delphi7)
На рисунке 3 предоставлена форма программы перевода чисел в различные
системы счисления, код программного обеспечения предоставлен в приложении 1.
Рисунок 3 - Форма программы перевода чисел в различные системы счисления
5. Тестирование разработанного
программного обеспечения
программа статистический алгоритм прикладной
Существует несколько видов процедур тестирования программного
обеспечения, которые приходится выполнять:
- модульное тестирование;
- комплексное тестирование;
- подтверждение правильности и верификация;
- тестирование в условиях нехватки ресурсов, ошибки и их
исправление;
- тестирование производительности;
- тестирование удобства использования.
Модульный тест представляет собой программу, занимающуюся тестированием
некоего модуля. Модульное тестирование является основой для всех других видов
тестирования, которые обсуждаются в данном разделе. Если части не работают по
отдельности, то скорее всего они не будут хорошо работать и вместе. Все
используемые модули обязаны пройти собственное модульное тестирование перед тем
как продолжать работу. Как только все соответствующие модули прошли
индивидуальное тестирование, вы готовы к новому этапу. Вам придется проверить,
как модули используют друг друга и взаимодействуют между собой по всей системе.
Комплексное тестирование показывает, что основные подсистемы, из которых
состоит проект, работают и нормально взаимодействуют друг с другом. При наличии
удачных и хорошо проверенных контрактов обнаружить любые проблемы интеграции не
составляет особого труда. В противном случае интеграция становится благодатной
почвой для размножения дефектов.
Тестирование производительности, нагрузочное тестирование или
тестирование в реальных условиях эксплуатации может также оказаться важным
аспектом проекта. Задайте себе вопрос, отвечает ли программа требованиям
производительности в условиях реального мира - с ожидаемым числом
пользователей, подключений или транзакций в единицу времени. Является ли она
масштабируемой? При работе с некоторыми приложениями вам могут понадобиться
специализированные тестовая аппаратура или программное обеспечение для
реалистичной имитации нагрузки.
Тестирование удобства использования отличается от процедур тестирования,
обсужденных выше. Оно осуществляется с реальными пользователями в реальных
условиях окружающей среды. Несоответствие критериям удобства использования
является дефектом такого же порядка, как деление на ноль.
Если тестировщик обнаруживает дефект, это должно быть в первый и
последний раз - обнаружение дефекта человеком. Автоматизированные тесты должны
быть модифицированы для проверки наличия этого дефекта, начиная с момента его
первоначального обнаружения, потому что это снова случится. У разработчиков нет
времени гоняться за дефектами, которые автоматизированные тесты не могли
обнаружить. Приходиться тратить время на написание новой программы - с новыми
дефектами.
Заключение
В ходе курсовой работы была достигнута поставленная цель, а также найдено
решение важных задач. Рассмотрены наиболее значимые теоретические аспекты, а
также описано практическое исполнение необходимой операции в программе.
Несмотря на многообразие решаемых с помощью компьютера задач, принцип его
применения в каждом случае один и тот же: информация, поступающая в компьютер,
обрабатывается с целью получения требуемых результатов. Компьютер может
обрабатывать только информацию, представленную в числовой форме. Вся другая
информация (звуки, изображения и т.д.) для обработки должна быть преобразована
в числовую форму. Для обработки на компьютере текстовой информации обычно при
вводе в компьютер каждая буква кодируется определённым числом, а при выводе на
внешние устройства для восприятия человеком по этим числам строятся
соответствующие изображения букв В данной работе был проведен анализ методов
перевода чисел в различные системы счисления, а так же рассмотрены особенности
обратного перевода чисел.
В ходе решения поставленных задач была необходимость избежать
трудоёмкости перевода чисел в различные системы счисления. Поэтому мною был
выбран программный метод реализации поставленной цели.
Для своей курсовой работы я выбрал язык программирования С#. Он
великолепно подходит для быстрого конструирования различных компонентов - от
высокоуровневой бизнес- логики до системных приложений, использующих
низкоуровневый код.
В заключении, можно сделать общий вывод по работе. Хотелось бы отметить,
что программная реализация механизма перевода чисел в различные системы
счисления во много раз упрощает данный процесс, и имеет довольно доступный всем
видам пользователей интерфейс.
Список использованных источников
1. C#
Language Specification. Microsoft Corporation, 2005.
2. А. Хейлсберг, М.
Торгерсен, С. Вилтамут, П. Голд Язык программирования C#. Классика Computers
Science. 4-е издание <http://www.piter.com/book.phtml?978545900283> = C# Programming Language (Covering C#
4.0), 4th Ed. - СПб.: «Питер»
<https://ru.wikipedia.org/wiki/%D0%9F%D0%B8%D1%82%D0%B5%D1%80_(%D0%B8%D0%B7%D0%B4%D0%B0%D1%82%D0%B5%D0%BB%D1%8C%D1%81%D1%82%D0%B2%D0%BE)>,
2012. - 784 с. - ISBN 978-5-459-00283-6
<https://ru.wikipedia.org/wiki/%D0%A1%D0%BB%D1%83%D0%B6%D0%B5%D0%B1%D0%BD%D0%B0%D1%8F:%D0%98%D1%81%D1%82%D0%BE%D1%87%D0%BD%D0%B8%D0%BA%D0%B8_%D0%BA%D0%BD%D0%B8%D0%B3/9785459002836>.
3. Герберт Шилдт. C# 4.0: полное руководство = C# 4.0 The Complete Reference. - М.: «Вильямс» <https://ru.wikipedia.org/w/index.php?title=%D0%92%D0%B8%D0%BB%D1%8C%D1%8F%D0%BC%D1%81_(%D0%B8%D0%B7%D0%B4%D0%B0%D1%82%D0%B5%D0%BB%D1%8C%D1%81%D1%82%D0%B2%D0%BE)&action=edit&redlink=1>,
2010. - С. 1056. - ISBN 978-5-8459-1684-6
<https://ru.wikipedia.org/wiki/%D0%A1%D0%BB%D1%83%D0%B6%D0%B5%D0%B1%D0%BD%D0%B0%D1%8F:%D0%98%D1%81%D1%82%D0%BE%D1%87%D0%BD%D0%B8%D0%BA%D0%B8_%D0%BA%D0%BD%D0%B8%D0%B3/9785845916846>.
4. Гуннерсон Э. Введение
в C#. СПб.: Питер, 2005.
. Джесс Либерти
«Программирование на С#» 2-е издание, 456с.,2005г
. Джозеф Албахари, Бен
Албахари C# 5.0. Справочник. Полное описание языка
<http://www.williamspublishing.com/Books/978-5-8459-1819-2.html> = C# 5.0 in a Nutshell: The Definitive
Reference. - М.: «Вильямс»
<https://ru.wikipedia.org/w/index.php?title=%D0%92%D0%B8%D0%BB%D1%8C%D1%8F%D0%BC%D1%81_(%D0%B8%D0%B7%D0%B4%D0%B0%D1%82%D0%B5%D0%BB%D1%8C%D1%81%D1%82%D0%B2%D0%BE)&action=edit&redlink=1>,
2013. - 1008 с. -ISBN 978-5-8459-1819-2
<https://ru.wikipedia.org/wiki/%D0%A1%D0%BB%D1%83%D0%B6%D0%B5%D0%B1%D0%BD%D0%B0%D1%8F:%D0%98%D1%81%D1%82%D0%BE%D1%87%D0%BD%D0%B8%D0%BA%D0%B8_%D0%BA%D0%BD%D0%B8%D0%B3/9785845918192>.
7. Джон Скит C# для
профессионалов: тонкости программирования, 3-е издание, новый перевод = C# in
Depth, 3rd ed.. - М.: «Вильямс» <https://ru.wikipedia.org/w/index.php?title=%D0%92%D0%B8%D0%BB%D1%8C%D1%8F%D0%BC%D1%81_(%D0%B8%D0%B7%D0%B4%D0%B0%D1%82%D0%B5%D0%BB%D1%8C%D1%81%D1%82%D0%B2%D0%BE)&action=edit&redlink=1>,
2014. - 608 с. - ISBN 978-5-8459-1909-0 <https://ru.wikipedia.org/wiki/%D0%A1%D0%BB%D1%83%D0%B6%D0%B5%D0%B1%D0%BD%D0%B0%D1%8F:%D0%98%D1%81%D1%82%D0%BE%D1%87%D0%BD%D0%B8%D0%BA%D0%B8_%D0%BA%D0%BD%D0%B8%D0%B3/9785845919090>.
. Кристиан Нейгел и
др. C# 5.0 и платформа .NET 4.5 для профессионалов = Professional C# 5.0 and
.NET 4.5. - М.: «Диалектика»
<https://ru.wikipedia.org/w/index.php?title=%D0%94%D0%B8%D0%B0%D0%BB%D0%B5%D0%BA%D1%82%D0%B8%D0%BA%D0%B0_(%D0%B8%D0%B7%D0%B4%D0%B0%D1%82%D0%B5%D0%BB%D1%8C%D1%81%D1%82%D0%B2%D0%BE)&action=edit&redlink=1>,
2013. - 1440 с. - ISBN 978-5-8459-1850-5 <https://ru.wikipedia.org/wiki/%D0%A1%D0%BB%D1%83%D0%B6%D0%B5%D0%B1%D0%BD%D0%B0%D1%8F:%D0%98%D1%81%D1%82%D0%BE%D1%87%D0%BD%D0%B8%D0%BA%D0%B8_%D0%BA%D0%BD%D0%B8%D0%B3/9785845918505>.
. Кристиан Нейгел,
Карли Уотсон и др. Visual C#
2010: полный курс = Beginning Microsoft Visual C# 2010. - М.: Диалектика
<https://ru.wikipedia.org/w/index.php?title=%D0%94%D0%B8%D0%B0%D0%BB%D0%B5%D0%BA%D1%82%D0%B8%D0%BA%D0%B0_(%D0%B8%D0%B7%D0%B4%D0%B0%D1%82%D0%B5%D0%BB%D1%8C%D1%81%D1%82%D0%B2%D0%BE)&action=edit&redlink=1>, 2010. - ISBN 978-5-8459-1699-0
<https://ru.wikipedia.org/wiki/%D0%A1%D0%BB%D1%83%D0%B6%D0%B5%D0%B1%D0%BD%D0%B0%D1%8F:%D0%98%D1%81%D1%82%D0%BE%D1%87%D0%BD%D0%B8%D0%BA%D0%B8_%D0%BA%D0%BD%D0%B8%D0%B3/9785845916990>.
10. Обширнейшая информация
по платформе .NET: www.gotdotnet.com.
. Олливерсон М. Методы
высокоуровневого программирования.:Москва,2005.
. Официальная
конференция по языку C#: news://msnews.microsoft.com/
microsoft.public.dotnet.languages.csharp.
13. Полный
справочник по С#. : Пер. с англ. - М. : Издательский дом
14. Си
Шарп: Создание приложений для Windows/ В. В. Лабор.- Мн.: Харвест, 384 с.,2003.
. Шатрова,
Т. И. Языковая игра в текстах комической направленности: процессы кодирования и
декодирования [Текст] : дис. … канд. филол. наук / Т. И. Шатрова ; Тульский
гос. пед. ун-т им. Л. Н. Толстого. - Белгород, 2006. - 159 с.
16. Э. Стиллмен, Дж. Грин
Изучаем C#. 2-е издание <http://www.piter.com/book.phtml?978544610105> =
Head First C#, 2ed. - СПб.: «Питер»
<https://ru.wikipedia.org/wiki/%D0%9F%D0%B8%D1%82%D0%B5%D1%80_(%D0%B8%D0%B7%D0%B4%D0%B0%D1%82%D0%B5%D0%BB%D1%8C%D1%81%D1%82%D0%B2%D0%BE)>,
2012. - 704 с. - ISBN 978-5-4461-0105-4
<https://ru.wikipedia.org/wiki/%D0%A1%D0%BB%D1%83%D0%B6%D0%B5%D0%B1%D0%BD%D0%B0%D1%8F:%D0%98%D1%81%D1%82%D0%BE%D1%87%D0%BD%D0%B8%D0%BA%D0%B8_%D0%BA%D0%BD%D0%B8%D0%B3/9785446101054>.
. Эндрю Троелсен Язык
программирования C# 5.0 и платформа .NET 4.5, 6-е издание
<http://www.williamspublishing.com/Books/978-5-8459-1814-7.html> = Pro C#
5.0 and the .NET 4.5 Framework, 6th edition. - М.: «Вильямс»
<https://ru.wikipedia.org/w/index.php?title=%D0%92%D0%B8%D0%BB%D1%8C%D1%8F%D0%BC%D1%81_(%D0%B8%D0%B7%D0%B4%D0%B0%D1%82%D0%B5%D0%BB%D1%8C%D1%81%D1%82%D0%B2%D0%BE)&action=edit&redlink=1>,
2013. - 1312 с. - ISBN 978-5-8459-1814-7 <https://ru.wikipedia.org/wiki/%D0%A1%D0%BB%D1%83%D0%B6%D0%B5%D0%B1%D0%BD%D0%B0%D1%8F:%D0%98%D1%81%D1%82%D0%BE%D1%87%D0%BD%D0%B8%D0%BA%D0%B8_%D0%BA%D0%BD%D0%B8%D0%B3/9785845918147>.
Приложение
System;System.Collections.Generic;System.ComponentModel;System.Data;System.Drawing;System.Linq;System.Text;System.Windows.Forms;WindowsFormsApplication1
{partial class Form1 : Form
{Form1()
{();
}void maskedTextBox1_MaskInputRejected(object sender,
MaskInputRejectedEventArgs e)//параметры вводимых зачений
для оценок
и группы
{TextBox1 = new TextBox();
[STAThread]static void Main()
{.EnableVisualStyles();.Run(new Form1());
}Form1()
{.AutoSize = true;panel = new FlowLayoutPanel();.AutoSize =
true;.FlowDirection =
FlowDirection.TopDown;.Controls.Add(TextBox1);.Controls.Add(panel);.KeyPreview
= true;.KeyPress +=KeyPressEventHandler(Form1_KeyPress);.KeyPress
+=KeyPressEventHandler(TextBox1_KeyPress);
}void maskedTextBox2_MaskInputRejected(object sender,
MaskInputRejectedEventArgs e)
{TextBox2 = new TextBox();
[STAThread]static void Main()
{.EnableVisualStyles();.Run(new Form1());
}Form1()
{.AutoSize = true;panel = new FlowLayoutPanel();.AutoSize =
true;.FlowDirection =
FlowDirection.TopDown;.Controls.Add(TextBox2);.Controls.Add(panel);.KeyPreview
= true;.KeyPress +=KeyPressEventHandler(Form1_KeyPress);.KeyPress
+=KeyPressEventHandler(TextBox2_KeyPress);
}void maskedTextBox3_MaskInputRejected(object sender,
MaskInputRejectedEventArgs e)
{
}
.................................void
textBox31_TextChanged(object sender, EventArgs e)
{TextBox31 = new TextBox();
[STAThread]static void Main()
{.EnableVisualStyles();.Run(new Form1());
}Form1()
{.AutoSize = true;panel = new FlowLayoutPanel();.AutoSize =
true;.FlowDirection =
FlowDirection.TopDown;.Controls.Add(TextBox31);.Controls.Add(panel);.KeyPreview
= true;.KeyPress +=KeyPressEventHandler(Form1_KeyPress);.KeyPress
+=KeyPressEventHandler(TextBox31_KeyPress);
}void numericUpDown1_ValueChanged(object sender, EventArgs
e)// параметры для кол-ва человек в группе (максимальное значнение=150umericUpDown1_ValueChanged(object
sender, KeyPressEventArgs e)
{.Show("umericUpDown1_ValueChanged '"
+.KeyChar.ToString() + "umericUpDown1_ValueChanged.");(e.KeyChar)
{(char)150:.Show("Control.KeyPress:.KeyChar.ToString() +
"");.Handled = true;;
}
}void domainUpDown1_SelectedItemChanged(object sender,
EventArgs e)//выпадающий список
дисциплин
{(CultureInfo ci in
domainUpDown1_SelectedItemChangeds(CultureTypes.WindowsOnlyCultures))_SelectedItemChanged.Items.Add(ci.NativeName);
}void button3_Click(object sender, EventArgs e)//обработка кнопки
закрыть
{
[BrowsableAttribute(false)]event CancelEventHandler
Closing;void button2_Click(object sender, EventArgs e)//обработка кнопки
очистить
{_Click.Controls.Cleare();
}void textBox63_TextChanged(object sender, EventArgs e)//вывод общего кол-ва человек в группах
{inWord = textBox63.Text;[] separators = { '.', '!', '?' };[]
sentences = File.ReadAllText(, Encoding.Default).Split(separators,
StringSplitOptions.RemoveEmptyEntries);.Text = "";(string sentence in
sentences).Text += sentence + " "
+ sentence.Split(' ').Where(a => a == inWord).Count() +
"";
}
}