Green-sell.info

Новые технологии
0 просмотров
Рейтинг статьи
1 звезда2 звезды3 звезды4 звезды5 звезд
Загрузка...

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

Язык паскаль онлайн

Turbo Pascal Лекция 5 – Базовые алгоритмические конструкции: Условие, цикл, CASE

    Browse: Home / Turbo Pascal лекции / Turbo Pascal Лекция 5 – Базовые алгоритмические конструкции: Условие, цикл, CASE

Базовые алгоритмические конструкции

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

Выделяют три базовые алгоритмические конструкции:

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

линейная структура

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

Блок-схема линейного алгоритма приведена на рисунке слева (рис.1)

Линейная программа, которая подсчитывает сумму двух чисел справа (рис.2)

линейные алгоритмы (другое название — простые) — это алгоритмы, состоящие из команд присвоения, ввода-вывода данных и вызовов процедур.

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

Цикл (повторение) — это вид управляющей структуры, позволяет несколько раз повторить заданное количество операторов.

Составного оператора И ОПЕРАТОР ПЕРЕХОДА

1.Составной оператор.

Составной оператор — это несколько операторов, объединенных в одну группу (блок) с помощью служебных слов BEGIN и END.

Эти слова называют операторными скобками.

Составной оператор имеет следующую структуру:

END;

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

Запись BEGIN END или ;; называется пустым операторм или операторных скобками.

Пример 1. Рассмотрим составной оператор (фрагмент программы):

BEGIN

Suma = Suma + Cina;

END;

  1. Оператор перехода.

Оператор перехода — это оператор, реализующий разветвления и передает управление в нужное место.

Оператор перехода имеет следующую структуру:

Отметку заранее объявляют в разделе объявления меток:

Если отметка (целое число) объявлена, то в программе должен быть такой фрагмент:

Замечание 1. Оператор GOTO используют редко.

Замечание 2. В среде программирования Turbo (Borland) Pascal 7.0 служебное слово PROGRAM можно не писать.Но это только в версии 7.0 и выше.

Указание разветвления и выбора

  1. УКАЗАНИЕ разветвления IF

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

Логическое выражение — это средство записи условий для поиска нужных данных.Логическое выражение может принимать значения true (истинность) или false (ложь).Логические выражения бывают простые и составные.простой — это два арифметические выражения, соединенные символом отношения, а составлен — это простые логические выражения, соединенные названиями логических операций: not, and i or.

Описание и использование указания разветвления

Указание разветвления в языке программирования Паскаль может записываться в полной или в сокращенной форме.

then

else

Действие оператора: Если условие подтверждается, то выполняется указание 1, если нет — то указание 2.

Действие оператора Если условие истинно, то выполняется указание, если нет, то указание не выполняется.

Служебные слова, которые используются в условной указанию, имеют содержание if — если, then — то, else — иначе.

Условие — это выражение булевого типа.Условие может быть простой или составной.

    Простое условие: а = а, х = 0, а 5) and (a of

end;

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

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

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

Выполняется указание варианта так.

Метки варианта не нужно описывать в разделе меток Label и их нельзя использовать в указании безусловного перехода Goto.

Составить программу, которая определяет время года по порядковому номеру месяца.

Program PORA;

Var MONTH: integer;

begin

Write ( ‘Введите номер месяца (от 1 до 12):’);

readln (MONTH)

case MONTH of

3,4,5: writeln ( ‘Becнa’);

6,7,8: writeln ( ‘Лето’);

9,10,11: writeln ( ‘Ociнь’);

12,1,2: writeln ( ‘Зимa’)

end;

end.

Указания Повторение (ЦИКЛА)

  1. Указание повторения с параметром FOR

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

Для реализации циклических алгоритмов в языке Паскаль используются операторы повторения (циклы):

* оператор цикла с параметром (For)

* оператор цикла с предусловием (While)

* оператор цикла с постусловием (Repeat).

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

а) со значением 1 шага изменения параметра:

Действие оператора Параметры цикла присваивается значение выражения 1.Если это значение меньше-равно, чем значение выражения 2, то выполняется оператор.После выполнения оператора значение параметра автоматически увеличивается на 1 и снова сравнивается со значением выражения 2 и т.д.Когда значение параметра станет больше, чем значение выражения 2, то выполняется следующий после цикла оператор.

б) со значением -1 шага изменения параметра:

Действие оператора: Эта команда действует как предыдущая, но шаг изменения параметра является 1.

Оператор — тело цикла.

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

Если выражение1 и выражение2 разделяет служебное слово to, то после выполнения оператора (тела цикла) параметр цикла v принимает значение Succ (v), если же делителем виразу1 и виразу2 служит слово downto, то параметр цикла v после выполнения тела цикла принимает значение Pred (v ).

пример:

Преподнести любое действительное число а к любому целого степенно n.

решение:

program Stepin;

var

begin

write ( ‘введите a — основу степени, а =’);

write ( ‘введите целое n — показатель степени, n =’);

for i: = 1 to n do

end.

6.Указание повторения WHILE

Оператор For используется только в случае, когда заранее известно количество повторений тела цикла.В более общем случае, когда количество повторений заранее неизвестно, а задана некоторая условие окончания (или продолжение) цикла, в языке Pascal используют другие операторы повторения: оператор цикла с предусловием While и оператор цикла с постусловием Repeat.

Указание цикла с предусловием:

Действие оператора:

Оператор (тело цикла) выполняется до тех пор, пока условие истинно. Если при первой проверке условие оказалась ошибочной, оператор не выполняется. Указанный оператор выполняется ноль, один или несколько раз, пока условие подтверждается.

Тело цикла WHILE выполняется до тех пор, пока условие принимает значение Tru e.Действия, содержащиеся в теле цикла, будут выполнены в крайнем случае один раз. Таким образом, выполнение условия являются условием окончания цикла.

7.Указание повторения REPEAT

Оператор For используется только в случае, когда заранее известно количество повторений тела цикла.В более общем случае, когда количество повторений заранее неизвестно, а задана некоторая условие окончания (или продолжение) цикла, в языке Pascal используют другие операторы повторения: оператор цикла с предусловием While и оператор цикла с постусловием Repeat.

Читать еще:  Универсальный метод решения задач линейного программирования

Оператор цикла с постусловием определенный диаграммой:

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

Паскаль для начинающих (3 урока по основным типам алгоритмов)

Алгоритмизация и программирование являются одной из трудных для понимания учащимися тем в предмете информатика, а при наличии дефицита часов, выделяемых на изучение предмета, перед учителем встает довольно сложная задача «Как познакомить хотя бы с основами программирования всех учащихся, в том числе и непрофильных классов?». Между тем, как мы видим и в новых стандартах и в демо-версии ЕГЭ по информатике эта тема занимает существенное место. Предлагаемые ниже материалы помогают познакомить ребят с основными алгоритмическими конструкциями и реализацией их на языке программирования Паскаль и дать начальное представление о языке. Заинтересовавшиеся учащиеся могут в дальнейшем продолжить изучение языка программирования на спецкурсе.

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

Начальная подготовка учащихся.

  • Знание основных алгоритмических конструкций: линейный алгоритм, ветвление, цикл.
  • Знание основных типов переменных.
  • Знание структуры программы на Паскале.

Перед каждым уроком учитель раскладывает на столах «Папки ученика», в которых находятся листы с заданиями, таблица «Реализация элементов блок – схемы алгоритма на языке Паскаль», «Алгоритм создания программы по шаблону» и другой справочный материал. Если предполагается создание программы по шаблону, т.е. ученики редактируют уже имеющуюся программу, то соответствующий файл *.pas с текстом программы должен находится на жестком диске в соответствующем каталоге.

Для знакомства с реализацией алгоритмической конструкции средствами языка используется сайт http://schools.keldysh.ru/gym1522/inform/pascal/ (см. Приложение1)

Обсуждается задание, проговаривается сценарий, составляется блок-схема алгоритма.

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

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

Описание приложений.

  • Адрес сайта «Паскаль для начинающих» — http://schools.keldysh.ru/gym1522/inform/pascal/ Немного сокращенный вариант находится в архиве (Приложение1.zip). Сайт выполнен с использованием флэш-технологии, позволяет в анимационной форме дать начальное представление о языке Паскаль 7.0 Для демонстрации надо разархивировать в каталог на жестком диске. Главная страница сайта – index.html
  • Тексты программ для создания программ по шаблону – файлы Приложение2.pas и Приложение3.pas. Их надо переименовать в Shablon1.pas и Shablon2.pas и поместить в соответствующий каталог на диске.

Использованная литература дана в Приложении 1 на сайте в разделе «ссылки».

Реализация элементов блок – схемы алгоритма на языке Паскаль.

Основные конструкции языка Паскаль.

Лекция 1

Основные конструкции языка Паскаль.

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

Алгоритмический язык Паскаль был разработан в 1973 г. швейцарским математиком Никлаусом Виртом для обучения студентов структурному программированию.

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

Программирование на языке Pascal

Паскаль был разработан швейцарским ученым Никлаусом Виртом в начале 70-х годов специально для целей обучения.

Основные элементы программирования:

· команды обработки (операции);

· повторные выполнения (циклы);

Алфавит языка

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

· заглавные и прописные латинские буквы;

Арифметические выражения и правила их записи

Арифметические выражения строятся из простых операндов связанных знаками арифметических операций:

y = a + b*2

Где простые операнды: переменные, константы.

Знаки операций

div — деление нацело;

mod — остаток от деления;

* — умножение;

/ — деление;

— — вычитание;

+ — сложение.

Операции div и mod

Целочисленное деление div отличается от обычной операции деления тем, что возвращает целую часть частного, а дробная часть отбрасывается.

17 div 3 = 5 8 div 2 = 4

Взятие остатка от деления mod вычисляет остаток, полученный при выполнении целочисленного деления.

17 mod 3 = 2 8 mod 2 = 0

При выполнении арифметических операций соблюдаются следующие правила:

1. два знака не могут следовать один за другим;

2. при выполнении арифметических операций соблюдается следующая иерархия (приоритет выполнения):

3. изменить иерархию можно с помощью скобок.

Типы данных

Переменные на языке Паскаль задаются своими именами (63 символа).

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

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

Целые типы

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

Maxint = 32767 (2 15 -1)

Maxlongint = 2 31 -1

Логический тип

boolean— логические переменные занимают 1 байт памяти, могут принимать 2 значения:

· True(истина)

· False(ложь)

Над логическими переменными возможны следующие логические операции:

and(и)

Or(или)

not(не)

Символьный тип

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

Строковый тип

String — строковые переменные, служат для хранения любой цепочки символов и занимают 255 байт памяти.

Вещественный тип

real вещественные переменные, занимают 6 байт памяти (11 знаков после запятой).

Вещественные числа могут быть заданы в форме:

· с фиксированной точкой

· с плавающей точкой

Форма с плавающей точкой используется для изображения очень больших или очень маленьких чисел.

Var

i,n: integer;

x,y,z: real;

begin;

Список переменных от типа отделяется “:”, одно описание от другого — “;”, список переменных перечисляется через “,”.

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

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

Const

n=100;

Переменная — константа (n), более в программе не описывается, ее тип определяется присвоенным ей числовым значением.

Для определенияпользовательского типа данных используют служебное слово — type.

Type

in=integer;

Var

a,b: in;

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

Читать еще:  Языки программирования 5 поколения

Например, для использования функции очистки экрана ( clrscr), к программе подключают стандартный модуль crt.

Uses

crt;

Begin

; ;;

end;

Операторы языка Паскаль

Оператор присваивания

где “: =” – знак присваивания.

Следующие выражения читаются одинаково

x:=2; x:= 2;

y:=d+beta; y:=d+Beta;

Заглавные и прописные буквы в программе интерпретируются одинаково.

Операторы ввода-вывода

Оператор ввода:

readln ( );

Где readln— имя оператора ввода;

— список имен переменных, разделенных запятыми.

readln (a,b,c);

По данному оператору с клавиатуры необходимо ввести значения переменных a, b и c.

readln ;

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

Оператор вывода:

writeln ( );

Где writeln — имя оператора вывода;

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

writeln ;

Оператор writeln без списка вывода можно использовать для пропуска пустых строк при оформлении вывода результатов.

В операторе writeln можно использовать формат вывода значений переменных.

writeln ( ’ a = ’, a:8:3, ’ b = ’ , b:4);

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

При a =341.154 , b = 2 результат на экране будет выглядеть:

При a = 1.3 , b = 144 результат на экране будет выглядеть:

Лекция 1

Основные конструкции языка Паскаль.

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

Алгоритмический язык Паскаль был разработан в 1973 г. швейцарским математиком Никлаусом Виртом для обучения студентов структурному программированию.

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

Опора деревянной одностоечной и способы укрепление угловых опор: Опоры ВЛ — конструкции, предназначен­ные для поддерживания проводов на необходимой высоте над землей, водой.

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

Общие условия выбора системы дренажа: Система дренажа выбирается в зависимости от характера защищаемого.

Основные конструкции языка Паскаль.

Дата добавления: 2015-07-09 ; просмотров: 5968 ; Нарушение авторских прав

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

Основные конструкции языка Паскаль.

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

Реализация последовательности действий (т.е. структуры следования) выполняется с помощью составного оператора:begin end

Раздел операторов в программе всегда является составным оператором. Служебные слова begin и end часто называют операторными скобками.

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

Структура и действие условного оператора таковы:If

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

writeln(‘введите координаты концов отрезков’) ;

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

writeln(‘введите номер месяца’) ;

Для реализации циклов в Паскале имеются три оператора Если число повторений известно заранее, то удобно воспользоваться оператором цикла с параметром. В других случаях следует использовать операторы цикла с предусловием (цикл «пока» ) или с постусловием (цикл «до»).

Цикл с предусловием является наиболее мощным в Паскале. Другие операторы цикла можно выразить через него. Его форма такова:while — do

Действие: вычисляется значение логического выражения. Если оно равно true, то выполняется оператор, после чего снова вычисляется значение логического выражения, в противном случае действие заканчивается.

while sum until

Действие: выполняется последовательность операторов. Далее вычисляется значение логического выражения. Если оно равно true, то действие заканчивается, в противном случае снова выполняется последовательность операторов и т.д.

var sum,w:real; man:integer;

writeln(‘введите вес груза машины’);

writeln(‘количество разгруженных машин =’,num:3)

Оператор цикла с параметром предусматривает повторное выполнение некоторого оператора с одновременным изменением по правилу арифметической прогрессии значения управляющей переменной (параметра) этого цикла. Оператор цикла с параметром имеет две формы.

Форма1:for := to do

Параметр, выражение 1, выражение 2 должны быть одного ординального типа;Параметр в этом цикле возрастает. Действие эквивалентно действию следующего составного оператора:begin := ;

Если в этом описании отношение = , а функцию succ на pred, то параметр в цикле будет убывать, в этом случае цикл с параметром принимает форму 2.

Форма 2:for := downto do

const a=1.603;b=’км’; с=’мили’;

var k:integer; m:real;

for k:=l to 10 do

Запишем в этой программе цикл с параметром в форме 2:

«Алгоритмические конструкции и соответствующие им операторы языка Turbo Pascal»

Как организовать дистанционное обучение во время карантина?

Помогает проект «Инфоурок»

Министерство образования и науки Республики Калмыкия

БПОУ РК «Калмыцкий государственный колледж нефти и газа»

«Алгоритмические конструкции и соответствующие им

операторы языка Turbo Pascal »

преподаватель информатики и ВТ

Название «алгоритм» произошло от латинской формы имени величайшего среднеазиатского математика Мухаммеда ибн Муса ал-Хорезми (Alhorithmi), жившего в 783—850 гг. В своей книге «Об индийском счете» он изложил правила записи натуральных чисел с помощью арабских цифр и правила действий над ними «столбиком», знакомые теперь каждому школьнику. В XII веке эта книга была переведена на латынь и получила широкое распространение в Европе.

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

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

Читать еще:  2 системы программирования

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

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

Эдсгер В. Дейкстра, опираясь на теорему Бома и Джакопини, ввел понятие структурного программирования, которое часто называют “программирование без GOTO” (управляющая конструкция перехода не используется при написании программ).

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

Базовые конструкции алгоритмов – это ограниченный набор стандартных способов соединения этапов алгоритма для выполнения типичных последовательностей действий.

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

Алгоритмические конструкции неотделимы от такого понятия, как способы записи алгоритмов. На практике наиболее распространены следующие формы представления алгоритмов:

словесная (запись на естественном языке);

графическая (изображения из графических символов);

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

программная (тексты на языках программирования).

Рассмотрим сопоставление графического (блок-схема) и программного (на языке программирования Turbo Pascal ) способов записи алгоритмов.

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

Алгоритмические конструкции в языке программирования записываются с помощью соответствующих операторов.

Следование (линейная конструкция) – это последовательное выполнение отдельных шагов алгоритма (вычислений, операций ввода-вывода) вне зависимости от каких-либо условий (рис.1).

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

На процедурном языке программирования данная конструкция выражается просто последовательной записью инструкций (операторов языка программирования).

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

Ветвление бывает полным и неполным. В случае неполного ветвления при невыполнении условия никакие действия не выполняются.

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

Структура ветвление существует в четырех основных вариантах:

Если – то – иначе;

Если – то – иначе

Синтаксис полной конструкции:

Результатом условия являются значения булевского типа. Если условие истинно ( true ), то выполняется действие 1, следующее за ключевым словом THEN . Если условие ложно ( false ), то выполняется действие 2, следующее за ключевым словом ELSE (рис.2).

Под выражением действие 1 (действие 2) подразумевается один оператор, если требуется указать несколько операторов, то их следует включить в операторные скобки ( Begin . end ).

Синтаксис неполной конструкции:

Под условием понимается логическое выражение, которое принимает два значения: true и false . Если условие истинно ( true ), то выполняется действие 1. Если условие ложно ( false ), то никакие действия не выполняются (рис.3).

Синтаксис полной конструкции:

Ключ выбора – выражение порядкового типа.

Список выбора – одна или более конструкций вида:

где под выражением условие понимается константа выбора, а действие – один оператор. В итоге получаем конструкции вида:

Константа выбора – константа того же типа, что и ключ выбора (рис.4).

Оператор работает следующим образом: в начале вычисляется значение выражения ключ выбора, а затем в последовательности операторов список выбора, отыскивается такой, которому предшествует константа, равная вычисленному значению. Найденный оператор выполняется, после чего оператор выбора завершает свою работу. Если в списке выбора не будет найдена константа, соответствующая вычисленному значению ключа выбора управление передаётся оператору (действие N +1), стоящему за словом ELSE .

Синтаксис неполной конструкции:

Оператор работает аналогично оператору Выбор – иначе, за исключением, что опущена часть [ ELSE ], в этом случае при отсутствии в списке выбора нужной константы ничего не произойдёт и оператор выбора просто завершит свою работу (рис.5).

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

Цикл с предусловием «Пока»

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

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

Если логическое выражение ложно, когда WHILE выполняется в первый раз, то тело цикла вообще не будет выполняться (рис.6).

Цикл с постусловием «До»

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

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

Эта конструкция работает аналогично циклу WHILE , но REPEAT проверяет условие после выполнения действий, это гарантирует хотя бы одно выполнение действий до завершения цикла (рис.7).

Замечание: обе конструкции будут использоваться, когда неизвестно количество шагов (сколько раз будет выполняться тело цикла)

Цикл со счётчиком «Параметр»

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

Параметр цикла – это величина, с изменением которой связано многократное выполнение цикла (рис.8).

При переходе к обработке оператора FOR управляющей переменной присваивается заданное начальное значение. Затем в цикле выполняется тело цикла (подразумевается один оператор). Каждый раз при выполнении исполнительного оператора управляющая переменная увеличивается на 1 ( FOR … TO … DO ) или уменьшается на 1 ( FOR … DOWNTO … DO ). Цикл завершается при достижении управляющей переменной своего конечного значения.

Считается, что при завершении цикла управляющая переменная не имеет определённого значения

Не следует использовать значение управляющей переменной за пределами цикла

Запрещается изменять значение управляющей переменной и её начальное и конечное значение (если они заданы переменными или выражениями с ними) и внутри тела цикла.

Задача №1: Вычислить по формуле Герона площадь произвольного треугольника.

Program Gerona;

Var a, b, c, p, s: real;

Writeln (‘Введите стороны

треугольника a , b , c :’);

Задача №2: Найти максимум двух чисел max ( a + b ; a * b /2).

Var a, b, p, q, max: real;

Writeln(‘ Введите a, b:’);

if (p>q) then max:=p else max:=q;

writeln(‘max=’, max: 6: 2);

Задача №3: Составить программу табулирования функции

Цикл с постусловием «До»

var a, b, x, w: real;

writeln(‘ Введите a, b’);

writeln (‘Введите таблицу значений функции w ( x )’);

Цикл с предусловием «Пока»

var a, b, x, w: real;

writeln(‘ Введите a, b’);

writeln (‘Введите таблицу значений функции w ( x )’);

Ссылка на основную публикацию
Adblock
detector