- •Лекция №1
- •План лекции
- •1. Краткий обзор развития вычислительной техники
- •2.Подготовка и ввод информации в эвм
- •3. Некоторые ключевые слова вычислительной техники
- •1. Краткий обзор развития вычислительной техники
- •1.1. Некоторые ключевые слова вычислительной техники
- •1.2. Функциональная схема эвм и принцип ее работы
- •Лекция №2 План лекции
- •1.Алгоритмизация вычислительных процессов
- •2. Правила оформления алгоритма
- •3. Этапы подготовки и решения
- •1. Алгоритмизация вычислительных процессов
- •2. Правила оформления алгоритма
- •Самостоятельная работа
- •Лекция №3 разветвляющиеся вычислительные процессы
- •Лекция №4-5
- •Ранжировка данных
- •Лекция №6 циклические вычислительные процессы
- •Простой циклический вычислительный процесс
- •Лекция №7 цикл со счетчиком
- •Лекция № 8 поиск минимального(максимального) элемента массива. Ранжировка одномерного массива
- •Лекция № 9 цикл с переадресацией
Лекция №2 План лекции
1.Алгоритмизация вычислительных процессов
2. Правила оформления алгоритма
3. Этапы подготовки и решения
задач на ЭВМ (САМОСТОЯТЕЛЬНАЯ РАБОТА)
1. Алгоритмизация вычислительных процессов
Строго говоря, ни одна ЭВМ не решает задачи, а лишь выполняет, шаг за шагом, ту последовательность операций, которую предусматривает пользователь – программист.
При выполнении задач средней и высшей сложности от пользователя требуется в обязательном порядке разработка алгоритма, то есть подробное, последовательное описание той инструкции, которая бы обеспечила решение задачи и получение результатов.
Алгоритмом называется, точное предписание, инструкция, где указывается четкая последовательность операций, приводящих к однозначному решению задачи.
Каждый алгоритм должен обладать тремя свойствами: детерминированностью, результативностью, массовостью.
Детерминированность – (однозначность) означает, что многократное выполнение алгоритма при одних и тех же исходных данных должно приводить к одному и тому же результату.
Результативность – получение определенного результата за конечное число шагов для допустимых исходных данных.
Массовость – или же универсальность, алгоритма означает возможность его применения к любым допустимых множествам исходных данных, т.е. обеспечивает решению не одной, а любых аналогичных задач.
Таким образом, алгоритмизация задачи является первым этапом программирования. При алгоритмизации устанавливается строгая последовательность арифметических и логических действий.
На ЭВМ не могут быть решены задачи, для которых невозможно разработать алгоритм. Данный вопрос заслуживает отдельного рассмотрения.
Описание алгоритма в виде блок-схемы (структурной схемы) осуществляется в виде последовательности специальных блоков, каждому из которых соответствует определенный этап вычислений.
Известны несколько методов алгоритмизации задач: символьный, словесный и метод записи алгоритма в виде геометрических фигур, при этом структура алгоритма описывается в виде блок-схем. Этот метод является наиболее удобным. При этом каждый фрагмент выполняемых операций представляется математическими символами, формулами, либо словесно указывается, что нужно делать.
Вычислительные алгоритмы и процессы можно разделить на следующие группы: линейный, разветвляющиеся и циклический.
Линейный алгоритм представляет собой последовательности операций вычисления по формуле. Допустим, требуется вычислить значения функции у=а*х2 +с.
Основными блоками алгоритма являются:
1) Блок «Начало» или «Конец»:
Блок обозначает начало и конец алгоритма. Масштаб этих блоков а:в=1:4. Для всех остальных блоков масштаб - 1:2.
2) Блок ввода данных
Этот блок означает: прочитать данные и запомнить их под именем а, х, с. Следует отметить, что этот блок никаких других функций, кроме указанных выше не обозначает. Поэтому внутри блока нельзя записывать арифметические или логические выражения, функции и константы.
3) Вычислительный блок
Выполнение операции или группы операций, в результате которых изменяются значение, форма представления или расположение данных.
Обычно функции этого блока трактуются следующим образом: вычислить правую часть и результат запомнить под именем у.
Следует обратить внимание на то, что выражения, например, Х=Y и Y=X не идентичны, поскольку знак "=" используется для обозначения операции присваивания и истолковывается не так, как в элементарной алгебре. В алгебре знак "=" означает "равняться", а при алгоритмизации – "вычислить значение выражения, стоящего справа от знака "=", и сделать его значением переменной, стоящей слева от знака присваивания".
Поэтому запись X=Y означает не равенство значения Х значению Y, а означает: вычислить значение Y и запомнить результат под именем Х. Для выражения Y=X – вычислить значение Х и запомнить результат под именем Y.
В связи с таким истолкованием знака "=" становиться возможной следующая запись:
К=К+1.
В алгебре при обозначении трех равных между собой переменных возможна запись X=Y=A. При алгоритмизации следует писать X=A и Y=A. Запись X=Y=A возможна, но это означает не равенство трех переменных, а нечто другое, смысл которого возможно рассмотреть после знакомства с так называемыми логическими выражениями.
В качестве результата выполнения задачи в блоке вывода данных указывают имя вычисляемой функции.
Комментарий используется для отражения связи между элементом блок-схемы и пояснением. Комментарий применяется, например, при записи большой формулы, не вмещающейся в блоке. Пусть следует вычислить значение функции
Y=(x+z)-ln(x+12)+cos(z2).
Запись в блок-схеме можно оформить с помощью комментария.
Блоки в алгоритме соединяются линиями, показывающими последовательность выполнения операции данной задачи.