По предмету
“Основы программирования на языке Python”
Лекция №1.
Введение в программирования. Алгоритм, виды
алгоритмов и их свойства.
Ташкент – 2018 г.
Лекция № 1
Введение в программирования. Алгоритм, виды
алгоритмов и их свойства.
План лекции:
1.Алгоритм и его свойства. Виды алгоритмов.
2.Алгоритмические языки программирования и их классификация.
3.Основные этапы решения задачи на ПЭВМ. Понятия транслятора.
4. Контрольные вопросы.
Литература
1.Культин М.Б. Программирование в Turbo Pascal и Delphi, Санкт-Петербург,
2002 г.
2.Шафрин Ю. Основы компьютерной технологии. Бишкек, ”Туркистан”,
1998г.
2
в Европу. Переводчик, имя которого до нас не дошло, дал ей название
Algoritmi de numero Indorum («Алгоритмы о счёте индийском»). По-арабски
же книга именовалась Китаб аль-джебр валь-мукабала («Книга о сложении и
вычитании»). Из оригинального названия книги происходит слово Алгебра
(алгебра — аль-джебр — восполнение).
Алгоритм обладает следующими свойствами.
3
Алгоритмом также называется информационный процесс, обладающий
следующими свойствами:
Наличие исполнителя преобразований (с его системой команд).
Разбиение всего процесса преобразования на отдельные команды
(понятные исполнителю).
Определено начальное состояние объекта (над которым производится
преобразование) и его требуемое конечное состояние (цель преобразования).
Тип алгоритма определяется характером решаемой (в соответствии с
его командами) задачи.
Типовые конструкции алгоритмов:
Линейная.
Циклическая.
Разветвляющаяся.
Вспомогательная.
Линейный (последовательный) алгоритм – описание действий, которые
выполняются однократно в заданном порядке.
Циклический – описание действий или группы действий, которые
должны повторяться указанное число раз или пока не выполнено заданное
условие. Совокупность повторяющихся действий – тело цикла.
Разветвляющийся – алгоритм, в котором в зависимости от условия
выполняется либо одна, либо другая последовательность действий. Условие –
выражение, находящееся между словом «если» и словом «то» и
принимающее значение «истина» (ветвь «да») или «ложь» (ветвь «нет»).
Возможна полная и неполная форма ветвления.
Вспомогательный – алгоритм, который можно использовать в других
алгоритмах, указав только его имя. Вспомогательному алгоритму должно
быть присвоено имя.
Существуют различные способы записи алгоритмов:
4
на естественном языке;
на специальном (формальном) языке;
с помощью формул, рисунков, таблиц;
с помощью стандартных графических объектов (геометрических
фигур) – блок-схемы.
Текстовый процессор Word из офисного пакета Microsoft Office
позволяет создавать блок-схемы для графического описания алгоритмов.
-вспомогательный алгоритм
6
2. Алгоритмические языки программирования и их
классификация
После разработки алгоритма решения задачи можно перейти к
написанию программы - на выбранном языке программирования.
Программа - это набор инструкций (операторов), записанных на
алгоритмическом языке и реализующих заданный алгоритм. Программа на
алгоритмическом языке записывается в обычном текстовом редакторе и
сохраняется как файл. Такой программный файл называется исходным
модулем программы. Каждый из языков программирования имеет свое
название. В настоящее время языки программирования делятся на:
-процедурные, к которым относится большинство классических языков
программирования, например: Fortran, Pascal, Basic, C и др.
-логические, например: Lisp, Prolog и др.
-объектно-ориентированные, например: C++, Java, Delphi и др.
Общепринятой и строгой классификации языков программирования не
существует. Если рассмотреть языки программирования по уровням, можно
дать следующие классификации:
языки ассемблера;
языки высокого уровня;
командные языки базы данных.
Язык ассемблера позволяет создавать наиболее эффективные
программы, однако очень трудоёмок и требует высокий квалификации
программиста.
К языкам высокого уровня (их часто называют алгоритмическими)
относятся Fortran, Basic, Cobol, C, С++, С#, Pascal, Delphi, Prolog и многие
другие. Они имеют свою предметную область применения, например: Fortran
- для инженерных расчетов; Cobol - для коммерческих расчетов; C - для
системного программирования.
3.Основные этапы решения задачи на ПЭВМ
Процесс решения задачи на ПЭВМ включают в себя следующие
основные этапы:
1.Постановка задачи: сбор информации; формулировка условия;
определение конечных целей решения; форма выдачи результатов; описание
данных.
2.Формулировка математической модели задачи: составление
математической модели; выбор метода решения задачи; разработка структур
данных,
3.Разработка алгоритма: метод построения алгоритма; выбор тестов и
методов тестирования; построение алгоритма.
7
4.Составление программы: выбор языка программирования; уточнение
способов организации данных; запись алгоритма на языке
программирования.
5.Отладка и тестирование программы на ПЭВМ: проверка синтаксиса,
семантики и логической структуры; тестовые расчеты; совершенствование
программы.
6.Реализация программы на ПЭВМ для реальных данных.
7.Анализ полученных результатов.
8.Модернизации алгоритма расчета и программы (если необходимо)
Понятие транслятора
Трансляторы преобразуют исходный модуль программы в машинный
код. Есть два вида трансляторов: компиляторы и интерпретаторы.
Компилятор преобразует исходный текст в машинный код. В результате
получается так называемый объектный модуль. Он записан в машинном коде,
но работать не может. Для его выполнения необходима специальная
программа - так называемый редактор связи. Только после этого получается
работающая программа - ее называют рабочей или исполняемой
программой.
Кроме компиляторов используются также интерпретаторы.
Интерпретаторы обрабатывают текст не заранее, как компилятор, а
непосредственно во время работы программы. Интерпретатор - это
программа-посредник, она читает команды из исходного файла, переводит их
на язык процессора - “на код” и немедленно исполняет.
4 Контрольные вопросы.
1. Что такое алгоритм ? Перечислите свойства алгоритма.
2. Что такое язык программирования ?
3. Каковы основные этапы решения задачи ПЭВМ ?
4. Что такое язык низкого и высокого уровня ?
5. Что такое транслятор ?