
- •Isbn хххххххх
- •Содержание
- •Тема 1. Алгоритмизация и программирование. Технологии программирования. Языки программирования высокого уровня 8
- •Тема 2. Локальные и глобальные сети эвм. Методы защиты информации 111
- •Введение
- •Тема 1. Алгоритмизация и программирование. Технологии программирования. Языки программирования высокого уровня
- •1.1. Понятие алгоритма и его свойства. Блок-схема алгоритма. Основные алгоритмические конструкции
- •1.2. Программы линейной структуры. Операторы разветвления. Операторы цикла
- •1.3. Понятие о структурном программировании. Модульный принцип программирования. Принципы проектирования программ сверху вниз и снизу вверх. Подпрограммы
- •1.4. Объектно-ориентированное программирование
- •1.5. Интегрированные среды программирования
- •1.6. Этапы решения задач на компьютере
- •1.7. Эволюция и классификация языков программирования. Основные понятия языков программирования
- •1.8. Структуры и типы данных языка программирования
- •Тесты по теме 1
- •Тема 2. Локальные и глобальные сети эвм. Методы защиты информации
- •2.1. Сетевые технологии обработки данных
- •2.2. Основы компьютерной коммуникации. Принципы построения и основные топологии вычислительных сетей, коммуникационное оборудование
- •2.3. Сетевой сервис и сетевые стандарты. Программы для работы в сети Интернет
- •2.4. Защита информации в локальных и глобальных компьютерных сетях. Шифрование данных. Электронная подпись
- •Тесты по теме 2
- •Список литературы
- •Ответы к тестам
- •Тема 1. Алгоритмизация и программирование. Технологии программирования. Языки программирования высокого уровня
- •Тема 2. Локальные и глобальные сети эвм. Методы защиты информации
- •Заключение
1.6. Этапы решения задач на компьютере
Этапы решения задач на компьютере представляют собой следующую последовательность:
1. Постановка задачи. На этом этапе формулируется цель решения задачи, анализируются требования и подробно описывается содержание задачи, выявляются условия, при которых решается задача, а также определяются входные параметры, которые называются исходными данными. Например, для задачи, рассмотренной в п.1.3, целью является вычисление периметра треугольника, а исходными данными являются координаты его вершин, при этом условием является то, что вершины треугольника лежат на плоскости.
2. Формальное построение модели задачи. На этом этапе составляется формальная модель решения задачи, например, модель базы данных, адекватная оригиналу, модель объектов и потоков информации. Для нашей задачи мы определили, что периметр треугольника вычислим, если будем знать длины его сторон, а длины сторон определяются по координатам вершин треугольника.
3. Построение математической модели решения задачи. Этот этап иначе называют формализацией задачи, на котором описательная модель записывается с помощью какого-либо формального языка, например, математического. В решаемой задаче для вычисления периметра используем формулу Р=AB+BC+AC, а для вычисления длины одной стороны формулу .
4. Разработка алгоритма. Процесс обработки данных разбивается на отдельные самостоятельные блоки и определяется последовательность выполнения этих блоков. Для рассматриваемого примера мы вынесли в самостоятельный блок (в подпрограмму-функцию) вычисление расстояния между двумя точками. Вызов подпрограммы будет осуществляться из основной программы.
5. Программирование, составление программы. На этом этапе алгоритм записывается на каком-либо конкретном языке программирования. Программа на любом языке состоит из операторов - так называются отдельные действия, разрешенные в языке. Число операторов в любом языке ограничено и правила их написания жестко заданы. Операторы записываются с помощью зарезервированных в языке ключевых слов и синтаксических правил языка.
6. Тестирование и отладка. Программа, которую удалось откомпилировать, не обязательно работает правильно. Она может содержать ошибки, для выявления которых предназначен этап отладки - поиска и устранения синтаксических и логических ошибок в программе. Как правило, компиляция и отладка выполняются программистом в тесной взаимосвязи.
Возможны программные ошибки трех видов:
синтаксические (ошибки в правилах языка);
алгоритмические (ошибки в логике программы);
ошибки времени исполнения, возникающие в процессе работы запущенной программы.
Компилятор способен найти только синтаксические ошибки, для выявления же алгоритмических ошибок служит этап тестирования программы. Тестированием называют проверку правильности работы программы на наборах "пробных" (тестовых) данных с заранее известным результатом. Конечно же, тестирование всей программы сразу возможно лишь для несложных учебных задач. Реальные программы тестируются "по частям" - отдельными функциями и модулями.
Ошибки времени исполнения возникают как результат некорректных действий пользователя, недопустимых операций над данными (например, попытки извлечь квадратный корень из отрицательного числа, поделить на ноль) или ошибок программного и аппаратного обеспечения ЭВМ. Развитые системы программирования предлагают обработку таких ошибок с помощью механизма исключений.
В отладке сложных программных комплексов есть существенные отличия, для них же требуются и описанные далее этапы разработки.
Если программная система сложна и ее разрабатывает компания-исполнитель по заданию заказчика, то программа сначала тестируется людьми компании-исполнителя (тестологами). Этот этап называют альфа-тестированием.
7. По истечении определенного времени тестирования, когда количество ошибок резко уменьшается, начинается интенсивное использование системы у заказчика с целью выявления и устранения максимального количества ошибок перед выходом системы на рынок. Этот процесс называется бета-тестированием. В том случае, если ошибки не найдены, говорят, что при тестировании системы получен положительный результат. и выполнен этап анализа результатов.
8. Внедрение и сопровождение. Если заказчик удовлетворен качеством программного продукта, то наступает период его внедрения в эксплуатацию. После того, как заказчик подписывает акт приемки, проект разработки программной системы считается завершенным. Как правило, сотрудничество исполнителя по обслуживанию системы с заказчиком продолжается, которое называется сопровождением программы.
Жизненным циклом разработанного программного продукта является весь период от анализа требований до внедрения и сопровождения, т. е. весь период разработки и эксплуатации программного средства.
Главным качеством любого программного продукта является его надежность.
Постановка задачи, формальное построение модели задачи и построение математической модели решения задачи, построение алгоритма – это этапы системного анализа задачи (если задача сложная, то рассматривают также этапы конструирования информационной системы (ИС) - разработка архитектуры ИС, разработка структур программ и разработка схемы информационных обменов ИС), а далее идет этап кодирования алгоритма.