|
|||||||
АвтоАвтоматизацияАрхитектураАстрономияАудитБиологияБухгалтерияВоенное делоГенетикаГеографияГеологияГосударствоДомДругоеЖурналистика и СМИИзобретательствоИностранные языкиИнформатикаИскусствоИсторияКомпьютерыКулинарияКультураЛексикологияЛитератураЛогикаМаркетингМатематикаМашиностроениеМедицинаМенеджментМеталлы и СваркаМеханикаМузыкаНаселениеОбразованиеОхрана безопасности жизниОхрана ТрудаПедагогикаПолитикаПравоПриборостроениеПрограммированиеПроизводствоПромышленностьПсихологияРадиоРегилияСвязьСоциологияСпортСтандартизацияСтроительствоТехнологииТорговляТуризмФизикаФизиологияФилософияФинансыХимияХозяйствоЦеннообразованиеЧерчениеЭкологияЭконометрикаЭкономикаЭлектроникаЮриспунденкция |
XIV. ОПЕРАТОРЫ ЯЗЫКА ПАСКАЛЬОператоры языка описывают некоторые алгоритмические действия, которые необходимо выполнить для решения задачи. Тело программы можно представить как последовательность таких операторов. Идущие друг за другом операторы программы разделяются точкой с запятой. Все операторы языка Паскаль можно разбить на две группы: простые и структурированные. Простые операторы не содержат в себе других операторов. К ним относятся: · оператор присваивания; · обращение к процедуре; · оператор безусловного перехода GOTO; · пустой оператор. Оператор присваивания выполняет присваивание переменной или функции значение выражения. Для этого используется знак присваивания :=, слева от которого записывается имя переменной или функции, которой присваивается значение, справа - выражение, значение которого вычисляется перед присваиванием: <Переменная>:=<Выражение> Допустимо присваивание значений переменным и функциям любого типа, за исключением типа файл. Тип выражения и тип переменной (или функции) должны быть совместимы для присваивания. Пример. Операторы присваивания Х:= Y; Z:=А + В; Res:= (I>0) and (K<100); I:= Sqr(J) + I*К; Оператор безусловного перехода GOTO позволяет изменить стандартный последовательный порядок выполнения операторов и перейти к выполнению программы, начиная с заданного оператора. Оператор, на который происходит переход, должен быть помечен меткой. Эта же метка должна быть указана и в операторе GOTO. Использовать оператор GOTO следует крайне осторожно. Широкое его применение без особых на то оснований ухудшает понимание логики работы программы. Безусловный переход можно осуществлять далеко не из каждого места программы и не в любое место программы. Так, нельзя с помощью этого оператора перейти из основной программы в подпрограмму или выйти из подпрограммы, не рекомендуется осуществлять переход внутрь структурированного оператора, т. к. он может дать неправильный результат. Пример. Найти частное от деления целых чисел. Рrogram Primer; Label Out; {описание метки} Var X, Y, Res: Integer; {описание переменных} Begin Write('Введите делимое'); {вывод сообщения на экран} ReadLn(X); {чтение числа} Write('Введите делитель'); {вывод сообщения на экран} ReadLn(Y); {чтение числа} if Y = 0 then begin {Составной оператор} WriteLn('Деление на ноль!'); {выход при нулевом делителе} goto Out; End else Res:=X div Y; WriteLn('Частное равно: ', Res); Out:; {метка "пустого" оператора} End. Пустой оператор не выполняет никакого действия и никак не отображается в программе (за исключением, быть может, метки или точек с запятыми, отделяющих пустой оператор от предыдущих или последующих операторов). Он может потребоваться для осуществления на него безусловного перехода. Ввод числовых данных можно осуществлять оператором присваивания, например: А:=5; ВВ:=6.143; Однако в этом случае программа становится не универсальной, так как выполняется только при этих значениях переменных. Для выполнения программы при различных значениях переменных предназначен оператор ввода Read. Как только во время выполнения программы встречается оператор Read, машина останавливается и ожидает ввода числовых значений. Когда числовые значения введены, процесс выполнения программы продолжается. Оператор ввода имеет вид Поиск по сайту: |
Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Студалл.Орг (0.003 сек.) |