
- •1. Основы работы на компьютере
- •1.1. Операционная система ms dos
- •Работа с каталогами
- •Работа с файлами
- •1.2. Программа-оболочка norton commander
- •Работа с каталогами
- •Работа с файлами
- •Управляющее меню программы
- •2. Основы алгоритмизации
- •Основы программирования на turbo pascal
- •Типы данных
- •Программирование разветвляющихся процессов
- •Программирование циклических процессов
- •Работа со сложными типами данных
- •4.1. Массивы
- •4.2. Строки типа string
- •4.3. Множества
- •4.4. Комбинированный тип данных – записи
- •Тема 1. Операционная система ms dos
- •Варианты задания
- •Тема 2. Программы-оболочки
- •Пример выполнения задания
- •Варианты задания
- •Тема 3. Основы алгоритмизации
- •Пример выполнения задания
- •Варианты задания
- •Тема 4. Программирование линейных и разветвляющихся процессов Пример выполнения задания
- •Варианты задания
- •Пример выполнения задания
- •Варианты задания
- •Тема 6. Работа с массивами Пример выполнения задания
- •Варианты задания
- •Тема 7. Записи Пример выполнения задания
- •Варианты задания
- •Библиографический список
- •Приложения
- •Основная таблица кода ascii
- •Альтернативная таблица (коды со 128 по 255)
- •Оглавление
- •1. Основы работы на компьютере ……………………………………….……. 1
- •1.1. Операционная система ms dos ………………………………………… 1
2. Основы алгоритмизации
Алгоритмизация - это процесс разработки алгоритма решения какой-либо задачи. Под алгоритмом уже даже в обыденной жизни стали понимать систему правил с определенными свойствами. В средствах массовой информации нередко можно услышать о том или ином алгоритме действий или поведения. Назовем основные свойства, присущие алгоритму [2].
Всякий алгоритм предполагает пошаговый или дискретный характер процесса получения результата. Именно по пунктам расписаны наши действия, направленные, например, на приготовление по рецепту кулинарного блюда или раствора для обработки фотоматериалов и т. п. Другим важным свойством алгоритма является его массовость, предполагающая возможность применения одного и того же алгоритма ко всему множеству однотипных исходных данных. При описании алгоритма исходят из определенного набора действий, доступных исполнителю алгоритма и называемых системой команд исполнителя. Следовательно, алгоритм должен быть понятен настолько, что его исполнитель действует механически, не задумываясь. А для этого алгоритм должен обладать определенностью и однозначностью в смысле действий исполнителя и получаемого результата. И последнее: алгоритм должен быть результативным (конечным), т. е. результат должен получаться за конечное число действий (шагов). В соответствии со сказанным выше алгоритм можно определить как систему правил, сформулированных на языке, понятном исполнителю, и определяющих цепочку действий, выполнение которых приводит исполнителя от исходных данных к искомому результату. Именно указанные свойства алгоритма (его механистичность) позволяют использовать в качестве его исполнителя специальные автоматы и компьютеры.
Алгоритмизация, т.е. процесс разработки алгоритма, включает в себя последовательное выполнение следующих действий:
разложение алгоритма на шаги в соответствии с логикой решения задачи и системой команд исполнителя;
установление взаимосвязи между шагами и порядком их следования, который приводит исполнителя от исходных данных к искомому результату;
однозначное описание каждого шага на языке, понятном исполнителю.
Завершает алгоритмизацию проверка алгоритма.
Если решаемая задача является сложной, то алгоритмизацию начинают с укрупненной схемы алгоритма, которая отражает самые важные действия и связь между ними. Крупноблочная исходная структура алгоритма последовательно детализируется.
Множество исходных данных, результаты выполнения алгоритма, система команд исполнителя и язык описания алгоритмов образуют алгоритмическую систему. Описание алгоритмов может осуществляться различными способами. Наибольшее распространение получили следующие три способа: словесная запись; блок-схема; структурограмма.
Словесная запись использует указание начала и конца алгоритма и строго определенный набор слов и фраз для описания действий. Структурограмма (схема Насси-Шнейдермана), в отличие от блок-схемы, не содержит линии потоков информации. В блок-схеме алгоритма каждому действию поставлена в соответствие определенная геометрическая фигура - блок. Переход от одного действия к другому изображается линией со стрелкой, указывающей направление движения. Чтобы схемы алгоритмов выглядели единообразно и были доступны для понимания, графические изображения блоков стандартизированы [2]. На рис.1 приведены начертания основных блоков и их размеры: a = 10, 15, 20… b = 1,5a в мм.
Название блока Обозначение Назначение
Б
лок
вычислений a
Любое действие
(
процесс)
b
Логический блок a Проверка условия
(
выбор) (ветвление)
Блок модификации 0.25a Управление циклом
(заголовок цикла)
Б
лок
вызова 0.15a
Подзадача
подпрограммы (ПП)
Н ачало-Конец, 0.5a Начало или конец
Вход/Выход программы, вход/выход ПП
Блок ввода/вывода 0.15a Общее обозначение
Вывод на печать Получение документа
Соединитель: 0.5a Указание связи между
В
нутристраничный прерванными
линиями,
Межстраничный 0.4a соединяющими блоки
0.2a 0.5a
Рис. 1
Неоговоренные размеры по горизонтали равны b, по вертикали - a.
Известная теорема о структурировании (ее автор - американский математик и программист Дейкстра) говорит о том, что алгоритм любой степени сложности может быть реализован с помощью трех базисных структур: последовательность, альтернатива (выбор), повторение (цикл). Их схемы приведены на рис. 2. Каждая из них представляет собой законченный функциональный блок с одним входом и одним выходом. Это позволяет соединять их в любой комбинации. Алгоритм, реализованный на основе базисных структур, приобретает логически обусловленную характером процесса вычислений и действий
С
ледование Альтернатива Цикл
Действие
d1
U-
условие
ДА U
НЕТ НЕТ
Действие d2
U
Действие d1
Действие d2
Тело цикла
Рис. 2
с
труктуру.
Такой алгоритм хорошо воспринимается
и легко поддается проверке и модификации.
С целью упрощения и лучшего восприятия
алгоритма набор базисных структур
дополняют элементарными структурами
цикла с параметром и цикла с постусловием
(рис. 3).
Тело цикла
Тело
цикла
окончания
ДА цикла
Рис. 3