
- •Учебно-методическое пособие
- •Маршрутная карта изучения дисциплины по Модулю 1
- •1. Логические и арифметические основы эвм
- •1.1. Десятичная система счисления
- •1.2. Двоичная система счисления
- •1.3. Восьмеричная и шестнадцатеричная системы счисления
- •1.4. Перевод чисел из любой системы счисления в десятичную
- •1.5. Перевод чисел из десятичной системы счисления в любую другую
- •Вопросы для самоконтроля
- •Методические указания для выполнения практического задания №1. «Системы счисления»
- •Приложение 1. Таблица вариантов заданий
- •2. Алгебра логики
- •2.1. Логические операции
- •Импликация
- •Антиконъюнкция
- •Антидизъюнкция
- •Логические схемы
- •Пример решение логических задач средствами алгебры логики
- •Методические указания для выполнения практического задания №2. «Алгебра логики». Построение таблиц истинности.
- •Пример построения логических схем
- •Методические указания для выполнения практического задания №3. «Алгебра логики». Построение логических схем
- •Приложение 2. Таблица вариантов заданий
- •4. Индивидуальное задание. Модуль 1. «Построение логических схем по заданным булевым выражениям»
- •Приложение 3. Таблица вариантов индивидуального задания
- •Приложение 4. Титульный лист идз
- •Маршрутная карта изучения дисциплины по Модулю 2
- •5. Введение в алгоритмизацию
- •6. Знакомство со средой Турбо Паскаль
- •6.1. Общие сведения
- •6.2. Запуск Турбо-Паскаля на выполнение
- •6.3. Назначение функциональных клавиш системы Турбо-Паскаль
- •6.4. Работа с текстовым редактором Турбо-Паскаля
- •Клавиши перемещения курсора
- •Работа с блоками текста
- •7. Основы алгоритмизации
- •7.1. Алгоритм
- •7.2. Алгоритмические структуры
- •Самоконтроль
- •8. Программирование на языке Pascal
- •8.3. Типы данных
- •Целые типы
- •Логический тип
- •8.5. Структура программы на языке Паскаль
- •8.6. Описательная часть программы
- •8.10. Комментарии в программе
- •Пример программы линейной структуры
- •Вопросы для самоконтроля
- •8.11. Методические указания для выполнения практического задания №4. «Следования»
- •Приложение 5. Таблица вариантов заданий
- •9. Ветвления
- •9.1. Операторы условия и перехода
- •Логический оператор
- •Операции отношения
- •Логические операции
- •9.2. Оператор выбора
- •Пример программы разветвленной структуры
- •Вопросы для самоконтроля
- •9.3. Методические указания для выполнения практического задания №5. «Ветвления»
- •Приложение 6. Таблица вариантов заданий
- •10. Циклические вычислительные процессы
- •10.1. Оператор цикла с параметром
- •10.2. Оператор цикла с постусловием
- •10.3. Оператор цикла с предусловием
- •10.4. Вложенные циклы
- •10.5. Оператор прерывания цикла
- •Пример программы циклической структуры
- •Вопросы для самоконтроля
- •10.6. Методические указания для выполнения практического задания №6. «Циклы»
- •Приложение 7. Таблица вариантов заданий
- •11. Операции с индексированными переменными
- •11.1. Массивы одномерные
- •11.2. Описание массивов
- •Ввод элементов массива
- •Вывод элементов массива
- •11.3. Обработка одномерных массивов
- •Пример программы обработки одномерного массива
- •Вопросы для самоконтроля
- •11.4. Методические указания для выполнения практического задания №7. «Операции с индексированными переменными»
- •Приложение 8. Таблица вариантов заданий
- •12. Двумерные массивы
- •12.1. Матрицы
- •12.2. Описание двумерного массива
- •Ввод элементов двумерного массива
- •Вывод элементов двумерного массива
- •12.3. Обработка двумерных массивов
- •Пример программы обработки двумерного массива
- •Вопросы для самоконтроля
- •12.4. Методические указания для выполнения практического задания №8. «Матрицы»
- •Приложение 9. Таблица вариантов заданий
- •13. Подпрограммы
- •13.1. Функции и процедуры
- •Структура программы, содержащей процедуру (функцию)
- •13.2. Процедуры
- •13.3. Вложенные процедуры Директива forward
- •13.4. Функции
- •Пример программы с использованием подпрограмм
- •Вопросы для самоконтроля
- •Методические указания для выполнения практического задания №9. «Подпрограммы»
- •Приложение 10. Таблица вариантов заданий
- •14. Обработка строк текста
- •14.1. Символьные переменные
- •Фрагмент таблицы ascii-кодов букв латинского алфавита
- •Фрагмент таблицы ascii-кодов букв русского алфавита
- •14.2. Функции обработки символьных переменных
- •14.3. Строковые переменные
- •14.4. Функции обработки строковых переменных
- •14.5. Процедуры обработки строковых переменных
- •14.6. Примеры обработки строковых переменных
- •Вопросы для самоконтроля
- •15. Структурированные типы данных
- •Пример программы использования массива записей
- •Вопросы для самоконтроля
- •Методические указания к выполнению индивидуального задания по Модулю 2. «Массивы записей»
- •Приложение 11. Таблица вариантов индивидуального задания
7.2. Алгоритмические структуры
Следование – действия выполняются строго в том порядке, в котором записаны. Образуется последовательностью действий, следующих одно за другим.
Задача.
Вычислить и вывести значение функции
.
Исходные данные x и а ввести с клавиатуры.
Ветвления – в зависимости от справедливости проверяемого условия (да или нет), алгоритм может пойти по одной из двух возможных ветвей. Происходит выбор одного из альтернативных путей работы алгоритма. Каждый из путей ведет к общему выходу, так что работа алгоритма будет продолжаться независимо от того, какой путь будет выбран.
Задача.
Даны два действительных числа. Заменить первое число нулем, если оно меньше или равно второму, и удвоить числа в противном случае.
Циклы – действия повторяются многократно по одним и тем же математическим зависимостям. Обеспечивает многократное выполнение некоторой совокупности действий, которая называется телом цикла.
Циклические структуры бывают трех типов:
с параметром цикла - выполнять тело цикла для всех значений некоторой переменной (параметра цикла) в заданном диапазоне;
с предусловием - выполнять тело цикла до тех пор, пока выполняется условие;
с постусловием - выполнять тело цикла до тех пор, пока не выполнится условие.
Задача.
Составить программу расчета значений
функции
на интервале [a;b] в n равностоящих точках.
Границы интервала и количество точек
ввести с клавиатуры.
Представлены три блок-схемы:
а) с параметром цикла;
б) с предусловием;
в) с постусловием;
Циклические вычислительные процессы могут быть вложенной структуры, когда один цикл (внешний) содержит внутри себя еще один (внутренний). Во вложенных структурах соблюдается следующее правило – параметр внешнего цикла меняется медленнее параметра внутреннего. При одном значении параметра внешнего цикла параметр внутреннего пробегает все свои возможные значения.
Задача.
Вывести на экран таблицу умножения.
Самоконтроль
Что понимают под алгоритмом?
Каковы способы записи алгоритмов?
В чем заключаются основные свойства алгоритма?
Перечислите основные алгоритмические структуры и опишите их.
Каковы основные принципы разработки алгоритмов?
Назовите основные этапы составления алгоритмов.
8. Программирование на языке Pascal
Программа – это запись алгоритма на языке программирования, приводящая к конечному результату за конечное число шагов.
Этапы создания программного продукта:
постановка задачи;
разработка алгоритма;
запись алгоритма на языке программирования;
отладка и тестирование программы.
Программа — это детальное и законченное описание алгоритма средствами языка программирования. Исполнителем программы является компьютер. Для выполнения компьютером программа должна быть представлена в машинном коде — последовательности чисел, понимаемых процессором. Написать программу в машинных кодах вручную достаточно сложно. Поэтому сегодня практически все программы создаются с помощью языков программирования, которые по своему синтаксису и семантике приближены к естественному человеческому языку. Это снижает трудоемкость программирования. Однако, текст программы, записанный с помощью языка программирования, должен быть преобразован в машинный код. Эта операция выполняется автоматически с помощью специальной служебной программы, называемой транслятором.
Алгоритмический язык Паскаль был разработан швейцарским ученым Никлаусом Виртом в начале 70-х годов специально для целей обучения.
Основные элементы программирования:
ввод информации;
хранение информации;
команды обработки (операции);
вывод данных;
проверка условий;
повторные выполнения (циклы);
подпрограммы (процедуры).
8.1. Алфавит языка
Программа на Паскале записывается в виде последовательности символов, образующих алфавит языка. Алфавит включает:
заглавные и прописные латинские буквы;
арабские цифры;
знаки препинания ( : ; , . );
знаки операций;
некоторые спецсимволы.
8.2. Арифметические выражения и правила их записи
Арифметические выражения строятся из простых операндов связанных знаками арифметических операций:
y = a + b*2
Знаки операций
div – деление нацело;
mod – остаток от деления;
* – умножение;
/ – деление;
- – вычитание;
+ – сложение.
Операции div и mod
Целочисленное деление div отличается от обычной операции деления тем, что возвращает целую часть частного, а дробная часть отбрасывается.
Например:
17 div 3 = 5
8 div 2 = 4
1 div 5 = 0
Взятие остатка от деления mod вычисляет остаток, полученный при выполнении целочисленного деления.
Например:
17 mod 3 = 2
8 mod 2 = 0
1 mod 5 = 1
При выполнении арифметических операций соблюдаются следующие правила:
1. два знака не могут следовать один за другим;
2. при выполнении арифметических операций соблюдается следующая иерархия (приоритет выполнения):
стандартные функции;
div, mod;
*, /
+, -
3. изменить иерархию можно с помощью скобок.