Рекурсивным называется алгоритм, организованный таким образом, что в процессе выполнения команд на каком-либо шаге он прямо или косвенно обращается сам к себе.
Реальные данные, которые обрабатывает программа, - это целые и вещественные числа, символы и логические величины. Эти простые типы данных называют базовыми. Все данные, обрабатываемые компьютером, хранятся в ячейках памяти компьютера, каждая из которых имеет свой адрес. Для того чтобы не следить за тем, по какому адресу будут записаны те или иные данные, в языках программирования используется понятие переменной, позволяющее отвлечься от адреса ячейки памяти и обращаться к ней с помощью имени {идентификатора).
Переменная – есть именованный объект (ячейка памяти), который может изменять свое значение. Имя переменной указывает на значение, а способ ее хранения и адрес остаются скрытыми от программиста. Кроме имени и значения, переменная имеет тип, определяющий, какая информация находится в памяти.
Если переменные присутствуют в программе, на протяжении всего времени ее работы - их называют статическими. Переменные, создающиеся и уничтожающиеся на разных этапах выполнения программы, называют динамическими.
Все остальные данные в программе, значения которых не изменяются на протяжении ее работы, называют константами или постоянными. Константы, как и переменные, имеют тип.
Под программным обеспечением (англ. software) понимается совокупность программных средств для ЭВМ (систем ЭВМ), обеспечивающих функционирование, диагностику и тестирование аппаратных средств ЭВМ, а также разработку, отладку и выполнение любых задач пользователя с соответствующим документированием, где в качестве пользователя может выступать как человек, так и любое внешнее устройство, подключенное к ЭВМ и нуждающееся в ее вычислительных ресурсах.
Программное обеспечение (ПО) – это совокупность программ, выполняемых вычислительной системой, и необходимых для их эксплуатации документов.
Программный продукт – программа или комплекс взаимосвязанных программ для решения определенной задачи массового спроса, подготовленный к реализации как любой вид промышленной продукции.
ПО можно классифицировать по разным признакам. Наиболее общей является классификация, в которой основополагающим признаком служит сфера использования ПО:
· аппаратная часть компьютеров и сетей ЭВМ;
· технология разработки программ;
· функциональные задачи различных предметных областей.
Исходя из этого, выделяют три класса ПО:
· системное ПО,
· инструментарий технологии программирования,
· прикладное ПО.
Все перечисленные классы ПО включают в себя программные продукты, необходимые для реализации Интернет-технологий. Например, без операционной системы, являющейся основной частью системного ПО, невозможно функционирование компьютера, следовательно, невозможно использование Интернет-технологий. Для разработки ПО, используемого при реализации Интернет-технологий, необходим соответствующий инструментарий технологии программирования: языки, системы программирования, инструментальные среды пользователей. Но большинство программных средств, с которыми работает конечный пользователь, относится к классу прикладного ПО. Остановимся на их рассмотрении.