
- •5.091405 «Обслуговування комп’ютеризованих інтегрованих та робототехнічних систем»
- •Виды алгоритмов
- •Структура програми. Алфавіт. Типи даних та операції
- •Структура программы
- •Алфавит языка
- •Знаки операций
- •Комментарии
- •Типы данных и операции
- •Описание меток
- •Описание переменных
- •Var имя переменной : тип;
- •Описание типов
- •Арифметические выражения
- •Логические выражения
- •Основные операторы
- •Операторы ввода и вывода
- •Ввод с консоли
- •Вывод на консоль
- •Форматный вывод
- •Условные операторы Условный оператор if
- •Оператор выбора case
- •Циклічні розрахункові процеси
- •Оператор цикла с параметром
- •Оператор цикла с условием
- •Регулярний тип (масив)
- •Сортировка массивов
- •Улучшенные сортировки
- •Сортировка Шелла
- •Символьный тип данных
- •Тип динамічні рядки (string)
- •Типи даних, що визначаються користувачем
- •Var Имя множества:Set of базовый тип;
- •Var Имя множества:Имя типа;
- •1. Var Имя записи:record
- •Var Имя записи:Имя типа для записи;
- •Складні програми. Робота з файлами Робота з процедурами та функціями
- •Види файлів. Робота з файлами
- •Когда нужно использовать файлы
- •Разновидности файлов
- •Открытие файла
- •Закрытие файла
- •Считывание из файла
- •Запись в файл
- •Модульна структура програми. Створення інтерфейсу користувача
- •Стандартные модули языка Pascal
- •Подключение модулей
- •Секция реализации
- •Секция инициализации
- •Взаимодействие модулей
- •Компиляция модулей
- •Пример модуля
- •Передача аргументов из командной строки
- •Створення інтерфейсу користувача Текстовый режим
- •Позиционирование
- •Ожидание
- •Пример использования текстовой графики
- •Решение
- •Создание дружественного интерфейса
- •Заставка
- •Ввод информации
- •Приглашения
- •Мова Сі Основні поняття та складові частини мови Сі
- •Структура програми на мові Сі. Елементи мови Сі
- •Типи даних та їх об"явлення. Базові типи даних.
- •1.2.1 Категории типов данных
- •Типи даних, що визначаються користувачем.
- •Вирази та присвоювання
- •Програмування на мові Сі
- •Види операторів. Умовні оператори
- •Оператори циклів
- •Оператори передачі керування
- •Процедури та функції
- •Виклик функцій зі змінною кількістю параметрів. Параметри функції main
- •Структура програми та класи пам"яті. Область життя та область видимості
- •Покажчики та операції над покажчиками
- •Масиви. Робота з масивами
- •Динамічний розподіл пам"яті. Динамічне розміщення масивів
- •Директиви препроцесора
- •Лінійні списки. Робота зі списками
- •Стеки та черги
- •Сортування та злиття списків
- •Пошук в лінійних списках
- •Технологія створення програм
- •Робота з файлами та потоками
- •Открытие файла: функция fopen
- •Константа null
- •Диагностика ошибок: функция perror
- •Функции бинарного чтения и записи fread и fwrite
- •Закрытие файла: функция fclose
- •Пример: подсчет числа символов и строк в текстовом файле
- •Форматный ввод-вывод: функции fscanf и fprintf
- •Понятие потока ввода или вывода
- •Функции scanf и printf ввода и вывода в стандартные потоки
- •Функции текстового преобразования sscanf и sprintf
- •Другие полезные функции ввода-вывода
- •Робота з рядками
- •Определение типов символов
- •Пример: программа "Записная книжка"
- •Аргументы командной строки
МІНІСТЕРСТВО ОСВІТИ І НАУКИ УКРАЇНИ
ЗАПОРІЗЬКИЙ КОЛЕДЖ РАДІОЕЛЕКТРОНІКИ
ЗАПОРІЗЬКОГО НАЦІОНАЛЬНОГО ТЕХНІЧНОГО УНІВЕРСИТЕТУ
Конспект лекцій
з дисципліни «Основи програмування та алгоритмічні мови»
Для підготовки молодших спеціалістів за спеціальністю:
5.091405 «Обслуговування комп’ютеризованих інтегрованих та робототехнічних систем»
Запоріжжя
2006
Мова Паскаль
Основні поняття та складові частини мови Паскаль
Лекція 1
Загальна характеристика мов високого рівня. Етапи розробки програмного забезпечення
ЕОМ представляє собою автомат для формального виконання алгоритмів. Алгоритм необхідно увести у пам'ять комп’ютера. Оскільки він повинен бути сприйнятий та виконаний апаратним шляхом, то він повинен бути записаний на машинній мові.
Рішення будь-якої задачі є творчим процесом, який складається з декількох послідовних етапів.
К ним относятся :
А. Анализ постановки задачи и ее предметной области
-
понимание постановки и требований исходной задачи, определение предметной области, для которой поставлена задача,
-
анализ предметной области, выявление данных, которые фиксируют входную и выходную информацию (определение их структуры и свойств ),
определение отношений между данными, условий и ограничений, накладываемых на эти отношения,
Б. Формальное моделирование решения задачи
-
выбор и применение формальной системы для описания модели предметной области и решения задачи,
-
формирование основной идеи, выбор методов решения задачи,
-
определение технологий, средств и исполнителя решения задачи, построение алгоритмов, реализующих выбранные методы,
В. Практическое решение
-
применение выбранных методов и средств для решения ,
-
анализ полученных результатов.
На первом этапе уточняется постановка задачи, после чего выявляются отдельные явления, объекты, процессы, их связи и зависимости предметной области. На этом этапе выделюятся исходные данные, определяюется желаемый результат и то, каким образом его получить из исходных данных. Исходные данные должны быть полными, т.е. содержать данные, необходимые и достаточные для решения задачи. Различают исходные данные трех видов: постоянные, условно-постоянные и переменные.
Постоянные исходные данные - это данные, которые сохраняют свои значения в процессе решения задачи (математические константы, координаты неподвижных объектов) и не зависят от внешних факторов.
Условно-постоянные данные - это данные, которые могут иногда изменять свои значения; причем эти изменения не зависят от процесса решения задачи, а определяются внешними факторами (величина подоходного налога, курс валют, количество дней в году).
Переменные данные - это данные, которые изменяют свои значения в процессе решения задачи.
На втором этапе предметная область представляется в формализованном, упрощенном виде (создается модель). Модель - это упрощенное представление о реальном объекте, процессе или явлении. Моделирование - построение моделей для исследования и изучения моделируемого объекта, процесса, явления с целью получения новой информации при решении конкретных задач.
Наиболее распространенными и хорошо изученными являются математические модели, описывающие зависимости между данными числового типа.
Пример. Постановка задачи. Требуется определить пригодность данной аудитории для проведения учебных занятий.
Решение.
Этап 1. Анализ постановки задачи и ее предметной области.
В результате анализа предметной области, выявляем, что эта предметная область связана с образовательным процессом. И постановка задачи может быть переформулирована следующим образом. Определить, подходит ли некоторая аудитория для проведения занятий группы учеников при некоторой норме площади для каждого ученика. Введем обозначения для входных и выходных данных. Исходные данные должны быть представлены простыми переменными значениями числового типа: А - ширина аудитории, B - ее длина, К - количество учеников в группе, N - допустимое минимальное количество квадратных метров для одного ученика (норма ), M - количество парт в аудитории. В качестве выходных данных будут выступать сообщения: " Аудитория может быть использована для поведения учебных занятий " и " Аудитория не может быть использована для поведения учебных занятий ".
Этап 2. Формальное решение.
Определим отношения между входными и выходными данными. Для этого введем промежуточные данные числового типа : S - площадь аудитории, C - требуемая по нормам площадь для проведения занятий для группы из К учеников, D - требуемое количество парт для обучения группы, состоящей из К учеников. Опишем соотношения между входными и выходными данными, используя математические зависимости. Математическая модель:
S = A*B,
C=N*K, S>=C, K<=2*D.
После создания модели процесса или явления разрабатывается алгоритм, используя который исходные данные преобразуются в требуемый результат.
Алгоритм – это точно определенная последовательность действий для некоторого исполнителя, выполняемых по строго определенным правилам и приводящих через некоторое количество шагов к решению задачи.
Свойства алгоритма:
-
Определенность – выполнив очередное действие, исполнитель должен точно знать, что ему делать дальше.
-
Дискретность – прежде, чем выполнить определенное действие, надо выполнить предыдущее.
-
Массовость – по одному и тому же алгоритму решаются однотипные задачи и неоднократно.
-
Понятность – алгоритм строится для конкретного исполнителя человеком и должен быть ему понятен. Это облегчает его проверку и модификацию при необходимости .
-
Результативность – алгоритм всегда должен приводить к результату.
Эти же свойства присущи и программам, реализующим алгоритмы. Если же хотя бы одно из них оказывается невыполненным, программа полностью теряет смысл.
Т.е. текст программы представляет собой алгоритм, записанный на каком-либо языке программирования.
Никто не станет спорить с тем, что неграмотно написанный текст очень сложно, а порой и вовсе невозможно правильно перевести на другой язык. Это верно для естественных языков, это верно и для языков программирования. Но если переводчик-человек иногда может как-то догадаться, что же именно хотел сказать автор неграмотного текста, то программе-переводчику такое не по силам. Любой компилятор требует, чтобы программа, подаваемая ему для перевода, была абсолютно правильно составлена.
В языке программирования, как и в любом другом языке, существуют синтаксис - правила записи его конструкций - и семантика - смысл его конструкций. Компилятор проверяет только синтаксис. Поиском же семантических ошибок занимается программист в процессе тестирования и отладки своей программы
Отладка - это поиск и исправление ошибок в программе. Тестирование - это составление специальных наборов входных и выходных данных (тестов), а затем исполнение программы и проверка полученных результатов в поисках возможных семантических или логических ошибок.