
- •Содержание
- •Глава 1 Теоретические основы алгоритмизации и программирования___ 5
- •Глава 2 Создание программного продукта__________________________17
- •Глава 1.Теоретические основы алгоритмизации и программирования
- •1.2. Языки программирования
- •Глава 2. Создание программного продукта
- •2.1 Системы программирования
- •2.2 Методы программирования
- •11) Системы программирования
Глава 1.Теоретические основы алгоритмизации и программирования
1.1.Алгоритм, его свойства, структура. Алгоритмическое программирование.
Управлять компьютером нужно по определенному алгоритму.
Алгоритм – это точно определенное описание способа решения задачи в виде конечной (по времени) последовательности действий/ 2 стр.569/.
Алгоритм – это формальное описание способа решения задачи путем разбиения ее на конечную по времени последовательность действий (элементарных операций)/ 2 стр.582/.
Описание должно быть абсолютно полным и учитывать все возможные операции, которые могут встретиться в ходе решения.
Под алгоритмизацией понимают сведение задачи к последовательности этапов, выполняемых друг за другом, так что результаты предыдущих этапов, выполняемых друг за другом, так что результаты предыдущих этапов используются при выполнении последующих/ 6 стр.44/.
Алгоритм должен отвечать определенным требованиям. Принято выделять следующие семь условий:
Наличие ввода исходных данных;
Наличие ввода результата выполнения;
Однозначность – компьютер понимает только однозначные инструкции;
Общность – алгоритм предназначен для решения не одной задачи, а целого класса задач;
Корректность – алгоритм должен давать правильное решение задачи;
Конечность – решение задачи должно быть получено за конечное число шагов;
Эффективность – для решения задачи должны использоваться ограниченные ресурсы компьютера / 5 стр.22/.
Алгоритм обладает следующими свойствами: дискретностью, определенностью, результативностью, массовостью.
Процесс преобразования исходных данных в результат осуществляется дискретно, так что значения величин в каждых последующий момент времени получаются по определенным правилам из значений величин в предыдущий момент времени.
Каждое правило алгоритма должно быть четким и однозначным, не допускающим двусмысленного толкования.
Алгоритм должен приводить к результату за конечное число шагов.
Алгоритм решения задачи разрабатывается в общем виде так, чтобы его можно было применить для класса задач, различающихся лишь исходными данными.
Теория структурного программирования доказывает, что алгоритм любой степени сложности можно построить с помощью основного базового набора структур/ 6 стр.45/.
К основным (базовым) структурам алгоритмов относятся: следование, разветвление и цикл.
Следование – это последовательное размещение блоков или групп блоков. При этом каждый из них в свою очередь может представлять собой любую базовую структуру.
Разветвление состоит из логического блока с проверкой некоторого условия. Разветвление может быть двух видов: полная условная конструкция и неполная условная конструкция (обход).
Циклическими называются алгоритмы, у которых выполнение некоторых операторов (групп операторов) осуществляется многократно с одним или теми же или модифицированными данными.
Основная идея алгоритмического программирования – разбиение программы на последовательность модулей, каждый из которых выполняет одно или несколько действий. Единственное требование к модулю – чтобы его выполнение всегда начиналось с первой команды и всегда заканчивалось на самой последней (чтобы нельзя было попасть на команды модуля извне и передать управление из модуля на другие команды в обход заключительной).
Алгоритм на выбранном языке программирования записывается с помощью команд описания данных, вычисления значений и управления последовательностью выполнения программы.
Реальные данные, с которыми работает программа, - это числа, строки и логические величины. Эти типы данных называются базовыми. Каждая единица информации хранится в ячейках памяти компьютера, имеющих свои адреса. На практике заранее известно, в каких конкретно ячейках памяти во время работы программы будут записаны ее данные, поэтому в языках программирования введено понятие переменной, позволяющее отвлечься от конкретных адресов и обращаться к содержимому памяти с помощью идентификатора или имени – как правило, последовательности, содержащей английские буквы, цифры, символы, подчеркивания и начинающейся не с цифры. Кроме имени и значения, переменная обычно имеет тип, определяющий, какая информация хранится в данной переменной (число, строка и т.д.). В зависимости от объема памяти, отведенного для хранения, отведенного для хранения значения переменной, оно должно укладываться в допустимый диапазон.
Переменные с указанием их типа можно вводить в программу с помощью специальных команд описания (объявления, декларации). Это позволяет компилятору организовать эффективное хранение и обработку данных и повышает ясность исходных текстов. Каждый тип описывается своим ключевым словом. Значения переменных разных типов допускается преобразовывать друг в друга в соответствии с соглашениями языка программирования. Такой процесс называется приведением типов /2стр.583/.
Переменные могут существовать на всем протяжении работы программы – тогда они называются статическими, а могут создаваться и уничтожаться на разных этапах ее функционирования – такие переменные называются динамическими. Все остальные данные в программе, значение которых не меняется на протяжении ее работы, называются константами или постоянными /2 стр. 583 – 584 /.