 
        
        Лекции (опорный конспект)
.pdfМосковский государственный университет путей сообщения
(МИИТ)
Алгоритмические языки и программирование
Варфоломеев Алексей Викторович
Москва 2011
 
1.Введение в программирование
1.1.Устройство компьютера
•Процессор
–Производит вычисления и отдает команды остальным компонентам компьютера
•Оперативная память
–Хранит программу и данные
•Внешние устройства
2
 
1.2.Программное обеспечение
•Программа – последовательность инструкций, предназначенная для исполнения компьютером. Программа загружается в оперативную память при своем запуске и выполняется процессором.
•Программное обеспечение (ПО) состоит из нескольких совместно работающих программ, и документов, необходимых для сопровождения и эксплуатации программ
•Системное ПО – предназначено для управления вычислительной машиной и ее ресурсами
–Операционные системы
–Драйверы
–Утилиты
•Прикладное ПО – ориентировано на решение пользовательских задач
3
1.3. Алгоритмы
•Алгоритм – точный набор инструкций, описывающих порядок действий некоторого исполнителя для достижения определенного результата за конечное время
•Дискретность
•Понятность
•Детерминированность
•Результативность
•Конечность
•Массовость
•Способы записи алгоритма:
–при помощи естественного языка (словесное описание алгоритма)
–при помощи алгоритмического языка (язык программирования, псевдокод)
–графическое описание алгоритма (блок-схема)
4
 
1.3.1. Блок-схемы алгоритмов
Терминатор. Вход из внешней среды или выход из алгоритма
Процесс. Выполнение одной или нескольких операций, обработка данных любого вида
Решение. Разветвление алгоритма в зависимости от результата вычисления условия
Предопределенный процесс. Выполнение внешнего
процесса, состоящего из одной или нескольких операций,
Данные. Выполнение операций ввода-вывода
| Модификатор. Повторное выполнение операций (цикл) | 
 | 
| Соединитель. Объединяет несколько блок-схем | 
 | 
| Комментарий. Обозначает комментарии к элементам | 
 | 
| блок-схемы | 5 | 
 
1.3.2. Базовые алгоритмические структуры (1)
| 
 | 2. Ветвление | 
| а) если-то | в) выбор | 
| 1. Следование | 
 | 
| б) если-то-иначе | 
 | 
| 
 | 6 | 
 
1.3.2. Базовые алгоритмические структуры (2)
| а) с предусловием | 3. Цикл | 
| 
 | 
в) арифметический
б) с постусловием
7
 
| 
 | 
 | 
 | 
 | 1.3.3. Примеры алгоритмов | ||||||||||||||||||||
| 1) Посчитать | 
 | 2) Решить уравнение: ax2 + bx + с = 0 | 
 | 3) Вывести первые | ||||||||||||||||||||
| 
 | 
 | |||||||||||||||||||||||
| значение | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 10 элементов | |||||||||
| выражения: | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | прогрессии | |||||||||
| y = a2 + b2 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | bn+1 = 2bn , b0 =1 | |||||||||
| 
 | 
 | 
 | 
 | 
 | ||||||||||||||||||||
| 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
| 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
| 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
| 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
| 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
| 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
| 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
| 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
| 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
| 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
| 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
| 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
| 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
| 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
| 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
| 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
| 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
| 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
| 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
| 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
| 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
| 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
| 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
| 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
| 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
| 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
| 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
 | 
8
1.4. Языки программирования
•Язык программирования — формальная знаковая система, предназначенная для записи компьютерных программ
–Алфавит – набор символов, пользуясь которыми составляют инструкции, принятые в языке.
–Синтаксис – набор правил, в соответствии с которым записываются конструкции языка.
–Семантика – набор правил, в соответствии с
которым осуществляется интерпретация и выполнение конструкций языка.
•ЯП:
–Языки высокого уровня
–Языки низкого уровня
•ЯП:
–Алгоритмические
–Неалгоритмические
•Фортран
•Кобол
•Паскаль
•Бейсик
•С
•С++
•Java
•С#
•Ассемблер
9
1.5. Среды разработки
•Среда разработки
(интегрированная среда разработки, IDE, Integrated development environment) –
совокупность программных средств, используемая для
разработки программного
обеспечения
•Среда разработки включает в себя:
–Текстовый редактор
–Транслятор
–Компоновщик (сборщик)
–Отладчик
•Eclipse
•NetBeans
•Visual Studio
–Visual C++
–Visual C#
–Visual Basic
•Delphi
•C++ Builder
10
