Возможности компьютера как технической основы системы обработки данных связаны с используемым ПО или программами.
Программы предназначены для машинной реализации задач. В информатике и программировании существуют термины задача и приложение. Задача означает проблему, подлежащую реализации с использованием средств ИТ, а приложение – реализованное на компьютере решение по задаче.
С позиции специфики разработки и вида программного обеспечения будем различать два класса задач – технологические и функциональные.
Технологические – ставятся и решаются при организации технологического процесса обработки информации на компьютере, являются основой для разработки сервисных средств ПО в виде утилит, сервисных программ, библиотек процедур и др., применяемых для обеспечения работоспособности компьютера, разработки других программ или обработки данных функциональных задач.
Функциональные – требуют решения при реализации функций управления в рамках ИС предметных областей.
|
|
Постановка задачи это точная формулировка решения задачи на компьютере с описанием входной и выходной информации.
Выходная информация может быть представлена в виде документа, кадра на экране монитора, файла базы данных и т.д.
Входная информация представляется в виде документа, файла базы данных и т.д.
Алгоритм – система точно сформулированных правил для преобразования исходных данных (входной информации) в желаемый результат (выходную информацию). Определенный алгоритм выполняется исполнителем. Процесс разработки алгоритма для решения конкретного класса задач и описание его на каком-либо алгоритмическом языке называется алгоритмизацией.
Свойства алгоритма:
1. Дискретность – разбиение процесса обработки информации на дискретные шаги.
2. Определенность – однозначность выполнения (детерминированность) каждого отдельного шага преобразования информации.
3. Конечность – конечность действий (результативность алгоритма), позволяющая получить результаты за конечное число шагов.
4. Массовость – пригодность алгоритма для решения определенного класса задач.
5. Понятность алгоритма компьютеру.
В алгоритме обязательно должны быть предусмотрены все ситуации, которые могут возникнуть в процессе решения задачи.
Способы записи алгоритма
1. Формальный – запись алгоритма словесно, на естественном языке.
2. Графический – изображение алгоритма в виде блок-схемы.
Виды алгоритмов
В зависимости от поставленной задачи и последовательности выполняемых шагов различают следующие виды алгоритмов:
1. Линейный – шаги алгоритма следуют один за другим не повторяясь, действия происходят только в одной заранее намеченной последовательности.
|
|
Блоки алгоритма 1, 2, 3 выполняются именно в такой последовательности, после чего алгоритм достигает цели и заканчивается.
2. Алгоритм с ветвлением – в зависимости от выполнения или невыполнения условия, исполняется либо одна, либо другая ветвь алгоритма.
В данном алгоритме проверяется выполнение условия, и если оно выполняется, то есть на вопрос можно ответить «Да», исполняется блок алгоритма 1 (одно ли несколько действий), а если не выполняется – ответ на вопрос отрицательный, то исполняется блок 2.
Примечания: одно из блоков: 1 или 2 может не быть вовсе. Тогда в одном из случаев будут выполняться какие-либо действия, а в другом – ничего не будет выполняться.
3. Циклический – блоки алгоритма выполняются до тех пор, пока не будет выполнено определенное условие.
Блок алгоритма 1 будет выполняться 1 или несколько раз до тех пор, пока не выполнится условие. Алгоритм выполняется так: выполняется блок 1, проверяется условие, если оно не выполняется, то блок 1 выполняется снова и условие проверяется заново. При выполнении условия алгоритм заканчивается.
Программирование – это теоретическая и практическая деятельность, связанная с созданием программ.
Основная категория специалистов занятых разработкой программ – программисты, которые по характеру своей деятельности делятся на системных и прикладных.
Системные программисты занимаются разработкой, эксплуатацией и сопровождением системного программного обеспечения, поддерживающего работоспособность компьютера и создающего среду для выполнения программ, обеспечивающих реализацию функциональных задач.
Прикладные программисты осуществляют разработку и отладку программ для решения функциональных задач.
Для подготовки решения задач на компьютере часто обращаются к языкам создания программ: разработки и описания алгоритмов, поиска моделей и решений. Язык программирования представляет собой набор специальных лингвистических средств для фиксации задания исполнителю и исходной информации, используемой в ходе его выполнения.
Для того чтобы исполнитель следовал алгоритму, заложенному в программе, программный модуль на исходном языке (отдельно компилируемая часть программы) должен быть преобразован в загрузочный модуль – модуль с набором машинных команд (инструкций).
Существуют специальные языки программирования для создания программных модулей – языки низкого и высокого уровня. Языки низкого уровня предназначены для прямого кодирования работы реального исполнителя, вычислителя (Бейсик). Языки высокого уровня предназначены для программирования работы физически на существующего (виртуального) исполнителя, не связанного с имеющимися техническими ограничениями. В языке программирования зафиксированы определенные правила построения языковых конструкций – синтаксис. Синтаксисом задается состав допустимых конструкций, имеющих определенный смысл и формы их записи.