Предписание однозначно задающее процесс преобразования исходной информации

Для составления программы, предназначенной для решения на ЭВМ какой-либо задачи, требуется составление алгоритма ее решения — точного предписания, которое определяет процесс, ведущий от исходных данных к требуемому конечному результату.

Алгоритм — предписание, однозначно задающее процесс преобразования исходной и нформации в виде последовательности элементарных дискретных шагов, приводящих за конечное число их применений к результату.

Алгоритмами, например, являются правила сложения, умножения, решения алгебраических уравнений, умножения матриц и т.п. Слово алгоритм происходит от algoritmi , являющегося латинской транслитерацией арабского имени хорезмийского математика IX века аль-Хорезми. Благодаря латинскому переводу трактата аль-Хорезми европейцы в XII веке познакомились с позиционной системой счисления, и в средневековой Европе алгоритмом называлась десятичная позиционная система счисления и правила счета в ней.

Алгоритм — это точная инструкция, а инструкции встречаются практически во всех областях человеческой деятельности. Возможны алгоритмы проведения физического эксперимента, сборки шкафа или телевизора, обработки детали. Однако не всякая инструкция есть алгоритм.

Инструкция становится алгоритмом только тогда, когда она удовлетворяет определенным требованиям. Эти требования частично сформулированы в определении, хотя упомянутые в определении понятия однозначности и элементарности сами нуждаются в уточнении.

Алгоритм однозначен, если при применении к одним и тем же данным он даст один и тот же результат. Но как по описанию алгоритма определить, однозначен он или нет. В каком случае шаги считаются элементарными. …

Применительно к ЭВМ алгоритм определяет вычислительный процесс, начинающийся с обработки некоторой совокупности возможных исходных данных и направленный на получение определенных этими исходными данными результатов. Термин вычислительный процесс распространяется и на обработку других видов информации, например, символьной, графической или звуковой.

Свойства алгоритма.

Если вычислительный процесс заканчивается получением результатов, то говорят, что соответствующий алгоритм применим к рассматриваемой совокупности исходных данных. В противном случае говорят, что алгоритм неприменим к совокупности исходных данных. Любой применимый алгоритм обладает следующими основными свойствами:

Дискретность – последовательное выполнение простых или ранее определённых (подпрограммы) шагов. Преобразование исходных данных в результат осуществляется дискретно во времени.

Определенность состоит в совпадении получаемых результатов независимо от пользователя и применяемых технических средств (однозначность толкования инструкций).

Результативность означает возможность получения результата после выполнения конечного количества операций.

Массовость заключается в возможности применения алгоритма к целому классу однотипных задач, различающихся конкретными значениями исходных данных (разработка в общем виде).

Для задания алгоритма необходимо описать следующие его элементы:

Д набор объектов, составляющих совокупность возможных исходных данных, промежуточных и конечных результатов;

Д правило начала;

Д правило непосредственной переработки информации (описание последовательности действий);

Д правило окончания;

Д правило извлечения результатов.

Алгоритм всегда рассчитан на конкретного исполнителя. В нашем случае таким исполнителем является ЭВМ. Для обеспечения возможности реализации на ЭВМ алгоритм должен быть описан на языке, понятном компьютеру, то есть на языке программирования.

Понятия алгоритма и программы разграничены не очень чётко. Обычно программой называют окончательный вариант алгоритма решения задачи, ориентированный на конкретного пользователя.

Таким образом, можно дать следующее определение программы для ЭВМ:

Программа — это описание алгоритма и данных на некотором языке программирования, предназначенное для последующего автоматического выполнения.

Способы описания алгоритмов

К основным способам описания алгоритмов можно отнести следующие:

Д словесно-формульный (на естественном языке);

Д структурный или блок-схемный;

Д с использованием специальных алгоритмических языков;

Д с помощью граф-схем (граф — совокупность точек и линий, в которой каждая линия соединяет две точки. Точки называются вершинами, линии — рёбрами);

Д с помощью сетей Петри.

Перед составлением программ чаще всего используются словесно-формульный и блок-схемный способы. Иногда перед составлением программ на низкоуровневых языках программирования типа языка Ассемблера алгоритм программы записывают, пользуясь конструкциями некоторого высокоуровнего языка программирования. Удобно использовать программное описание алгоритмов функционирования сложных программных систем. Так, для описания принципов функционирования ОС использовался Алголо-подобный высокоуровневый язык программирования.

Словесно-формульный способ.

Словесно-формульным способом алгоритм решения этой задачи может быть записан в следующем виде:

1. Ввести значения а и х.

2. Сложить х и 6.

3. Умножить а на 2.

4. Вычесть из 2а сумму (х+6).

5. Вывести у как результат вычисления выражения.

Блок-схемы.

Блок-схема должна содержать все разветвления, циклы и обращения к подпрограммам, содержащиеся в программе.

Условные обозначения блоков схем алгоритмов.

Тема № 1. Основные понятия алгоритмизации. Алгоритмы и способы их описания.

Вычислительный процесс должен быть предварительно представлен для ЭВМ в виде программы – последовательности инструкций (команд), записанных в порядке выполнения.

Для составления программы, предназначенной для решения на ЭВМ какой-либо задачи, требуется составление алгоритма ее решения — точного предписания, которое определяет процесс, ведущий от исходных данных к требуемому конечному результату.

Алгоритм — предписание, однозначно задающее процесс преобразования исходной информации в виде последовательности элементарных дискретных шагов, приводящих за конечное число их применений к результату.

Любой алгоритм обладает следующими основными свойствами:

Дискретность– последовательное выполнение простых или ранее определённых (подпрограммы) шагов.

Определенность состоит в совпадении получаемых результатов независимо от пользователя и применяемых технических средств (однозначность толкования инструкций).

Результативность означает возможность получения результата после выполнения конечного количества операций.

Массовостьзаключается в возможности применения алгоритма к целому классу однотипных задач, различающихся конкретными значениями исходных данных (разработка в общем виде).

Для обеспечения возможности реализации на ЭВМ алгоритм должен быть описан на языке, понятном компьютеру, то есть на языке программирования.

Программа— это описание алгоритма и данных на некотором языке программирования, предназначенное для последующего автоматического выполнения.

К основным способам описания алгоритмов можно отнести следующие: словесно-формульный (на естественном языке), структурный или блок-схемный, с использованием специальных алгоритмических языков, с помощью граф-схем (граф — совокупность точек и линий, в которой каждая линия соединяет две точки. Точки называются вершинами, линии — рёбрами), с помощью сетей Петри.

Перед составлением программ чаще всего используются словесно-формульный и блок-схемный способы.

При словесно-формульном способе алгоритм записывается в виде текста с формулами по пунктам, определяющим последовательность действий.

При блок-схемном описании алгоритм изображается геометрическими фигурами (блоками), связанными по управлению линиями (направлениями потока) со стрелками. В блоках записывается последовательность действий.

Таблица 1. Условные обозначения блоков схем алгоритмов.

Наименование Обозначение Функции
Процесс Выполнение операции или группы операции, в результате которых изменяется значение, форма представления или расположение данных.
Ввод-вывод Преобразование данных в форму, пригодную для обработки (ввод) или отображения результатов обработки (вывод).
Решение Выбор направления выполнения алгоритма в зависимости от некоторых переменных условии.
Предопределенный процесс Использование ранее созданных и отдельно написанных программ (подпрограмм).
Документ Вывод данных на бумажный носитель.
Магнитный диск Ввод-вывод данных, носителем которых служит магнитный диск.
Пуск-останов Начало, конец, прерывание процесса обработки данных.
Соединитель Указание связи между прерванными линиями, соединяющими блоки.
Межстраничный соединитель Указание связи между прерванными линиями, соединяющими блоки, расположенные на разных листах.
Комментарий Связь между элементом схемы и пояснением.

Алгоритмический язык – это система обозначений и правил для однозначной и точной записи алгоритмов и их исполнения, при описании алгоритмического языка всегда задается его алфавит. В него входят строчные и прописные буквы русского и латинского алфавита, цифры, знаки операций и специальные символы. Кроме того, используются служебные слова.

Служебными называют слова, смысл и способ употребления которых задан раз и навсегда. К служебным относятся: начало, ввод (чтение), запись, если, конец, результат, натуральный, целый, вещественный и т. д. Применение служебных слов делает запись алгоритма более наглядной, а форму его представления – единообразной.

Каждый алгоритм снабжен заголовком, который располагается перед первой строкой в записи алгоритма и имеет следующий вид:

алгоритм

Пример: Вычислить

Записать алгоритм на алгоритмическом языке и графическим способом.

алг Вычисление Y

исх x

рез y

Начало

Ввести x

если x>0

то y=ln (x)

иначеесли x -5

то y=x

иначе y=cos(x)

вывод y

Конец

К основным структурам алгоритмов относятся: линейные, разветвляющиеся, циклические.

Линейными называются алгоритмы, в которых действия осуществляются последовательно друг за другом.

Разветвляющимся называется алгоритм, в котором действие выполняется по одной из возможных ветвей решения задачи, в зависимости от выполнения некоторого условия. В качестве условия в разветвляющемся алгоритме может быть использовано любое понятное исполнителю утверждение (выполняемое или ложное). Такое утверждение может быть выражено как словами, так и формулой.

Циклическим называется алгоритм, в котором некоторая часть операций выполняется многократно. Однако это не значит «до бесконечности» (иначе нарушается требование его результативности – получение результата).

Процесс разработки сложного алгоритма может разбиваться на этапы составления отдельных алгоритмов, которые называются вспомогательными.

Алгоритм может содержать обращение к самому себе, как и вспомогательному алгоритму в таком случае его называют рекурсивным.

Если команда обращения алгоритма к самому себе находится в самом алгоритме, такая рекурсия называется прямой.

Возможны случаи, когда рекурсивный вызов происходит из вспомогательного алгоритма, к которому в данном алгоритме имеется обращение, такая рекурсия называется косвенной.

Исполнитель алгоритма – объект или субъект, выполняющий некоторые команды. Для каждого исполнителя существует система команд, т.е. совокупность всех команд, которую умеет делать исполнитель.

Подходы к созданию алгоритмов и требования к ним существенно изменились в ходе эволюции ПК. В эпоху ЭВМ I и II поколения основными требованиями к алгоритму были:

— min требования к алгоритму в отношении ОЗУ ПК

— min времени использования.

Подход, ориентированный на непосредственное выполнение ПК операций, называется операционным.

Программа состоит из команд, непосредственно использующихся в процессорах:

— простые арифметические операции

— операции сравнения чисел

— использование операторов условного и безусловного перехода

— операторов вызова подпрограмм

Некоторое значение величины в программе помещено в ячейку памяти компьютера. Данное значение сохраняется до тех пор, пока не будет заменено другим в результате другого присвоения.

Позволяют записывать арифметическое выражение с использованием числовых констант и идентифицируются в переменные.

Операции сравнения численных значений сводятся к определению знака разности этих значений. Знак отображается с помощью специальных ячеек памяти, может так же использоваться при выполнении условного перехода между командами алгоритма.

Условный и безусловный переходы.

Безусловным — называется переход, для которого применение порядка выполнения команд определяет назначение и не всегда, и не зависит от условий.

Условным – называется переход, порядок выполнения команд для которого определяется некоторым условием (чаще по условию сравнения величин).

Операции вызова подпрограмм.

Это такой переход в последовательности команд алгоритма, при котором на определенном этапе выполнения алгоритма происходит переход на другую программу. После её завершения продолжается выполнение команд.

Проблема решения задачи с помощью ПК состоит в преобразовании решаемой задачи в последовательность этих команд. Появление ПК III и IV поколений не позволяет использовать операционный подход в массовом программировании, что сдерживает развитие вычислительной техники.

С начала 70-х годов появляется новый подход к разработке алгоритмов, называемый структурным.В основы технологических принципов структурного подхода лежит утверждение о том, что логическая структура программы может быть выражена комбинацией из 3-х базовых структур: следование, ветвление, цикл.

Целью структурного подхода является повышение читабельности и ясности алгоритма (и программы), более высокой производительности программистов и упрощение отладки. В соответствии с этим принципом для построения любого алгоритма (программы) требуются три типовых блока:

1. функциональный. Используется для представления линейных алгоритмов. Описывается языком графических символов следующим образом:

2. циклический. Используется для представления циклических алгоритмов. Описывается языком графических символов одним из двух способов:

3. конструкция принятия двоичного решения. Применяется для представления разветвляющихся алгоритмов. Описывается языком графических символов следующим образом:

Одним из важнейших компонентов структурного подхода к разработке алгоритма является модульность. Принцип модульного программирования обеспечивает легкость составления алгоритмов и отладки программ, легкость сопровождения и модификации, а также возможность одновременной разработки различных модулей разными специалистами с использованием разных языков программирования. При работе над модулем можно применить принцип структурного программирования.

Модульность — последовательность логических операций, являющаяся отдельной частью программы.

Структурный подход позволяет сделать большой запас ПО, который постоянно пополняется. Появилось много языков программирования, которые являются как процедурно ориентированными, так и объектно-ориентированными (Pascal, QB, Fortran – процедурные языки).

В объектно-ориентированном подходе исходная задача представлена как совокупность взаимодействующих объектов. Объекты в перпендикулярном приближении похожи на процедуры внутри программы. Каждый объект ведет себя независимо. К объектно-ориентированным языкам относятся Visual C++, VB. Существуют так же логические языки LISP и PROLOG.

Глоссарий

Алгоритм — предписание, однозначно задающее процесс преобразования исходной информации в виде последовательности элементарных дискретных шагов, приводящих за конечное число их применений к результату.

Алгоритмический язык – это система обозначений и правил для однозначной и точной записи алгоритмов и их исполнения, при описании алгоритмического языка всегда задается его алфавит.

Дискретность– последовательное выполнение простых или ранее определённых (подпрограммы) шагов.

Линейными называются алгоритмы, в которых действия осуществляются последовательно друг за другом.

Массовостьзаключается в возможности применения алгоритма к целому классу однотипных задач, различающихся конкретными значениями исходных данных (разработка в общем виде).

Модульность — последовательность логических операций, являющаяся отдельной частью программы.

Определенность состоит в совпадении получаемых результатов независимо от пользователя и применяемых технических средств (однозначность толкования инструкций).

Программа – последовательность инструкций (команд), записанных в порядке выполнения.

Разветвляющимся называется алгоритм, в котором действие выполняется по одной из возможных ветвей решения задачи, в зависимости от выполнения некоторого условия.

Результативность означает возможность получения результата после выполнения конечного количества операций.

Циклическим называется алгоритм, в котором некоторая часть операций выполняется многократно.

Вопросы для самопроверки:

1. Что такое алгоритм? Перечислите основные свойства алгоритма.

2. Какие способы описания алгоритмов Вам известны? Охарактеризуйте их.

3. Охарактеризуйте операционный подход к созданию алгоритмов.

4. Охарактеризуйте структурный подход к созданию алгоритмов.

5. Перечислите основные структуры алгоритмов.

6. Что такое система команд исполнителя?

Не нашли то, что искали? Воспользуйтесь поиском:

Лучшие изречения: На стипендию можно купить что-нибудь, но не больше. 9122 — | 7289 — или читать все.

91.146.8.87 © studopedia.ru Не является автором материалов, которые размещены. Но предоставляет возможность бесплатного использования. Есть нарушение авторского права? Напишите нам | Обратная связь.

Отключите adBlock!
и обновите страницу (F5)

очень нужно

Основные свойства алгоритма.

формальное исполнение алгоритма,

принципы фон Неймана,

данные и команды,

переменная и присваивание,

Стандартный вывод данных:

Стандартный ввод данных:

ввод с клавиатуры.

«Алгоритм и его свойства»

Понятие алгоритма трудно считать определяемым.

— предписание, однозначно задающее процесс преобразования исходной информации в виде последовательности элементарных дискретных шагов, приводящих за конечное число их применений к результату.

— Конечная система указаний, адресованных исполнителю, четко и однозначно задающих процесс решения задач какого-либо типа во всех деталях.

— Организованная последовательность действий.

Ни одно из этих определений настоящим определением быть не может, а лишь сводится к синонимам к слову "алгоритм".

Из отсутствия четкого определения алгоритма делаем вывод, что алгоритм — неопределяемое понятие и, как и для неопределяемых понятий в других науках, применяется Аксиоматическое построение: выбирается система аксиом, и любые объекты, которые будут удовлетворять этой системе и будут алгоритмами.

Такой системой аксиом являются основные свойства алгоритмов. Информатика, как предмет, сравнительно молода, и количество и качество формулировок основных свойств алгоритмов еще не установилось, то есть в разных учебниках приводятся разные их формулировки и описания.

Вопросы полноты и непротиворечивости тоже остаются открытыми.

Основные свойства алгоритмов

Почему-то в учебниках не выделяется такое свойство, как:

* ДВА СПОСОБА ИСПОЛЬЗОВАНИЯ АЛГОРИТМА

— алгоритм можно 1) записать по определенным правилам 2) исполнить

В языке BASIC имеются две отдельные команды: LIST – показать текст записи программы, RUN – исполнить программу

В других языках для работы с записями алгоритмов используются специальные программы – редакторы, для исполнения – отдельные программы – трансляторы.

Другим свойством алгоритма является:

— алгоритм может быть выполнен (это система команд для кого-то или чего-то)

Исполнитель может ничего не знать о цели алгоритма.

Исполнитель должен понимать отдельные команды.

Имеет место формальность исполнения алгоритма, то есть за результат отвечает составитель, а не исполнитель алгоритма.

— результат при выполнении алгоритма достигается, и за конечное число шагов.

— применение алгоритма к одним и тем же данным дает один и тот же результат.

Это свойство делает понятие алгоритма похожим на понятие функции.

— строгая определенность, однозначность, непротиворечивость правил

— не допускается произвола при выборе очередного шага алгоритма,

фиксируется начальный и заключительный шаги алгоритма.

Некоторые авторы наличие начала и конца считают отдельными свойствами алгоритмов.

— алгоритм дает решение не одной, а целого набора задач.

(Например, с помощью дискриминанта, исследуются квадратные уравнения с любыми коэффициентами.)

Считаем, что к основным свойствам алгоритмов относят: * ДВА СПОСОБА ИСПОЛЬЗОВАНИЯ АЛГОРИТМА * НАЛИЧИЕ ИСПОЛНИТЕЛЯ * РЕЗУЛЬТАТИВНОСТЬ * ОДНОЗНАЧНОСТЬ * ДЕТЕРМИНИРОВАННОСТЬ * МАССОВОСТЬ

Итак, нечто, обладающее всеми перечисленными свойствами, называем алгоритмами. Но существуют ли такие объекты?

Подумав, нетрудно убедиться, что сложение и умножение "столбиком", деление "уголком", приведение дробей к общему знаменателю, построение биссектрисы угла обладают всеми перечисленными свойствами, то есть являются алгоритмами.

Позабыты хлопоты, остановлен век. Вкалывают роботы, счастлив человек! (из фильма «Приключения Электроника»)

Свойство НАЛИЧИЕ ИСПОЛНИТЕЛЯ предусматривает интереснейшую возможность, когда исполнителем будет не человек.

Многие механизмы, такие, как часы, издавна исполняют заказанные человеком простенькие алгоритмы. Но с изобретением компьютеров и универсальной формы представления, выраженной в принципах Фон Неймана, практически не остается алгоритмов, которые не мог бы выполнить компьютер. Проблему составляет только возможность такой записи алгоритма, которая была бы понятна компьютеру.

Итак, как только мы сможем записать алгоритм по правилам, понятным компьютеру, (иначе говоря, на языке программирования), то он (компьютер) будет исполнять этот алгоритм.

Вопросам записи алгоритмов уделяется огромное внимание.

Выше упоминались принципы Фон-Неймана (сформулированы в 1945 г.)

* Программное управление Программа состоит из набора команд, которые выполняются процессором автоматически, последовательно, одна за другой (без вмешательства человека).

* Однородность памяти И данные, и команды представляются одинаково. Компьютер не различает, что находится в ячейке памяти: команда, число или текст.

* Адресность Основная память состоит из пронумерованных ячеек

* Двоичность Информация кодируется двоичным числом.

Джон(Янош) фон Нейман (1903-1957).

Американский математик венгерского происхождения. Член Национальной АН США (1937).

Родился в Будапеште. В 1926 г. окончил Будапештский университет.

В 1927-29 гг. преподавал в Берлинском университете, в 1930-33 — в Принстонском университете.

С 1933 г. — профессор Принстонского института перспективных исследований.

Принимал участие в работах по созданию атомной бомбы в Лос-Аламосе.

С 1954 г. член комиссии США по атомной энергетике.

Но программа, написанная по принципам, фон Неймана (язык машинного кода) очень неудобна для человека. Язык машины и язык человека оказались разными.

— Что делают люди, если их языки оказались разными?

— Правильно, приглашают переводчика.

Придуманы языки программирования – basic, pascal, c и десятки других. Эти языки достаточно близки к языкам человека и человек в состоянии выучить один или несколько таких языков. С другой стороны, для этих языков существуют алгоритмы, оформленные как программы-трансляторы, которые выполняют преобразование текста языка программирования в текст машинного кода, готового к исполнению компьютером.

Различают два вида трансляции: Интерпретация – когда из текста, по одной, выбираются команды, переводятся в машинный код и сразу выполняются. Это напоминает «устный» перевод. Переводчик всегда должен быть под рукой. Время перевода входит во время исполнения программы.

Компиляция – выполняется полный перевод всего текста, результат может быть записан, и в дальнейшем услуги «переводчика» уже не нужны. Полученную программу (обычно это файл с расширением *.EXE) можно выполнять на других компьютерах, где программ-компиляторов нет. Ситуация напоминает «письменный» перевод.

Очевидно, использовать программы-компиляторы выгодней, чем программы-интерпретаторы. Но при работе в режимах реального времени, у интерпретаторов сохраняются некоторые преимущества.

С развитием компьютерной информатики все более четко выделяются

ДАННЫЕ — все объекты, с которыми может работать ЭВМ и

КОМАНДЫ — средства, которые при этом используются.

Данные, это материалы, определяют, с чем работает компьютер,

Команды, это инструменты (операторы, процедуры, функции), определяют, как поступать с данными, а иногда и с самими командами.

ДАННЫЕ = материалы бревно

команды над данными топор

команды над командами точило

При работе ЭВМ данные могут менять свои значения. Для обеспечения такой возможности служат ПЕРЕМЕННЫЕ. Переменная — это выделенная для хранения определенной информации область памяти, соответственно имеет адрес начала в памяти и размер. Для удобства использования и отличий между собой переменные снабжаются ИДЕНТИФИКАТОРОМ, проще говоря каждая переменная получает ИМЯ. Информацию, хранящуюся в переменной в момент обращения к этой переменной называют ЗНАЧЕНИЕМ переменной.

Занесение значения в память называется операцией присваивания.

адрес начала и размер в памяти

+- имя значение – тип

(возможный диапазон значений)

Более подробно типы данных (способы хранения информации) будем разбирать на отдельном занятии

Один из способов представления алгоритмов — язык блок-схем.

Блок-схемой алгоритма называют его графическое представление, в котором отдельные шаги обозначаются геометрическими фигурами специального вида, а порядок их выполнения – линиями. Движение по линиям принято выполнять сверху вниз — для вертикальных, и слева направо – для горизонтальных. В случаях, когда по алгоритму требуется противоположное направление движения, используют стрелки.

Команды над данными отмечаются прямоугольником, который называется «блок действий», внутри описывается выполняемое действие. Блок имеет одну линию – вход и одну – выход.

Команды над командами = изменение порядка выполнения команд отмечаются ромбом (ветвление) (1 вход и 2 выхода), для выбора выхода используется условие — объект из двух состояний (логический — "истина" и "ложь").

Ввод исходной информации и вывод результатов отмечаются параллелограммами (1 вход и 1 выход)

Выделены блоки начала и конца (либо только выход, либо только вход)

Для сохранения принципа результативности (обязательное достижение единственного конца) после ветвлений требуются соединяющие узлы (2 входа 1 выход).

Итак, в блок-фигуру всегда входит одна стрелка, кроме специального блока – овала с надписью «начало» внутри. В этот блок никакие линии не входят. Почти у всех блоков имеется одна линия – выход. Исключение составляют: блок-овал с надписью «конец» (нет выхода), блок ветвления, блок цикла со счетчиком (с двумя выходами), блок выбора (несколько выходов). Подробнее эти блоки будут рассмотрены позже.

Язык блок-схем достаточно удобен для человека, но не понятен компьютеру. Компьютер понимает такой язык, как BASIC. В старых версиях, каждая команда записывалась в отдельную строку. Сейчас, через двоеточие можно записывать в одну строку несколько команд. Раньше метка-номер строки ставился у каждой строки, теперь, когда basic стал компилятором, метка обязательна только для строк, на которые выполняются ссылки. Заканчивается программа словом END. Иногда это слово писать не обязательно.

В языке basic операция присваивания оформляется знаком равенства. Под номером 50 находится команда присваивания, помещающая число 8 в память с именем Х.

10 команда 20 команда *** 50 Х=8 *** 90 команда 100 END

Еще один их известных языков – PASCAL Изначально разрабатывался как компилятор.

Текст программы начинается со слова BEGIN, заканчивается словом END и точкой. Между словами BEGIN и END размещается раздел команд. Перед словом BEGIN находится раздел описаний. В старых версиях языка, начинать текст требовалось со слова PROGRAM(input,output), с указанием имен входного и выходного устройств. В последних версиях это не обязательно. Разделителем, сигналом конца каждой команды (и не только для команд), является точка с запятой.

В языке pascal, для отличия от сравнения, при оформлении команды присваивания к знаку равенства спереди приписывается двоеточие. Читать этот парный знак следует: «переменная Х ПРИНИМАЕТ ЗНАЧЕНИЕ 8».

Стандартный вывод данных

Данные базовых типов (отметим, что в языке BASIC данные только базовых типов), и, как исключение, данные типа "строка" могут выводиться на экран командой

в языке BASIC PRINT

в языке PASCAL WRITE( )

В списке размещаются подлежащие выводу на экран константы и переменные, значение которых должно быть выведено.

В языке BASIC при использовании в качестве разделителя элементов списка точки с запятой, имеем вывод значений друг за другом в одной строке.

Использование в качестве разделителя запятой, приводит к поиску в строке очередной метки табуляции и вывод информации начинается от этой метки.

Так как во всех строках экрана метки табуляции расположены одинаково, вывод с использованием запятой приводит к табличному расположению информации на экране.

Если после последнего элемента списка в операторе PRINT стоит разделитель, то следующий оператор PRINT продолжит вывод информации в этой же строке. Отсутствие незавершенности списка приводит к переводу строки.

в языке BASIC PRINT в языке PASCAL WRITE( ) WRITELN( )

В языке PASCAL разделитель всегда запятая, а для перевода строки в конце списка вместо процедуры WRITE( ) применяется процедура WRITELN( ).

Когда выводимая информация должна занять строго определенное место, используется Форматный вывод.

В языке BASIC, служебное слово USING определяет строку, которая будет выдана. Строка заключена в кавычки. В отведенные места внутри строки вставляются значения переменных списка. На место знаков ###.## — вставляется число, количество требуемых знаков после запятой очевидно. Применяя знаки — ,+, — можем потребовать обязательный вывод знака числа спереди или сзади. Заменив первый знак решетки на 0, – обеспечиваем заполнение нолями места перед значащими цифрами. Формат строковых значений следующий: восклицательный знак — место одного выводимого знака строки, наклонные черточки – слеши — определяют количество знаков строки (от двух и больше), амперсанд («обезьянка») & — все знаки значения.

В языке PASCAL после имени переменной указывается, сколько места на экране должно занять выводимое значение. Для действительных чисел формат двойной: сколько места занимает выводимое значение и сколько знаков после запятой выводить:

writeln(pi:8:2); приведет к выводу | 3.14| (всего 8 знаков, из них 2 после запятой) Если места для вывода числовой информации недостаточно, то формат игнорируется, для целых чисел об этом сообщит появляющийся на экране знак процента.

BASIC PRINT USING" фамилия / / оценка #"; "Иванов",5

Для чисел: ###.## (можно использовать -,+,0)

Для строк: ! — один знак / / — слеши и пробелы между ними определяют количество знаков строки (два и больше) & — все знаки строки

В приведенном выше примере в 8 мест вставляются буквы фамилии «Иванов», на место решетки вставляется одна цифра 5

PASCAL (тот же результат определяет команда)

writeln(‘ фамилия ‘,fam:8,’ оценка ‘,x:1);

формат вывода определяется знаками ’:’ writeln(pi:8:2); приведет к выводу | 3.14|

Стандартный ввод данных

При выполнении команды ввода данных программа останавливается, включается специальная процедура ввода. При работе этой процедуры ЭВМ позволяет получать и редактировать на экране произвольные знаки. Все это происходит до нажатия клавиши "ввод". После нажатия "ввод"а ЭВМ анализирует имеющиеся на экране данные и распределяет их по указанным переменным. При неудачном распределении (нарушение типов, несовпадения количества) выдается соответствующее сообщение, в ряде случаев программа аварийно прерывается.

Свойство команды ввода останавливать выполнение программы часто используется для организации задержки до нажатия клавиши «ввод» (“enter”).

В языке BASIC INPUT ""; X,Y,A$ ввод нескольких значений, разделенных запятой LINE INPUT A$ ввод одной строки знаков (включая запятые)

В языке PASCAL READLN(X,Y,A) ввод нескольких значений, разделенных пробелами.

В языке BASIC INPUT ""; X,Y,A$ ввод нескольких значений, разделенных запятой LINE INPUT A$ ввод одной строки знаков (включая запятые)

В языке PASCAL READLN(X,Y,A) ввод нескольких значений, разделенных пробелами.

Можно организовать ввод информации без дублирования на экране, используя буфер клавиатуры.

В языке BASIC имеется функция =inkey$, при исполнении которой происходит проверка наличия информации, и, если клавиша была нажата, возвращается ее значение, иначе возвращается пустая строка.

В языке PASCAL (в модуле CRT) функция проверки наличия информации в буфере клавиатуры и функция извлечения информации из буфера клавиатуры разделены, это: =keypressed, возвращает логическое значение и =readkey;, возвращает знак – какая клавиша нажата. Функция =readkey;, если буфер клавиатуры пуст, останавливает программу, пока какая-нибудь клавиша не будет нажата.

Ниже показаны, как решаются некоторые задачи средствами языков BASIC и PASCAL:

1) «если была нажата копка клавиатуры, то переменная получает значение – соответствующий знак».

2) «ждать, пока не будет нажата кнопка клавиатуры».

3) «ждать, пока не будет нажата кнопка, значение переменной – соответствующий знак».

Оцените статью
Topsamoe.ru
Добавить комментарий