Что такое оператор в информатике
Оператор (программирование)
Инструкция или оператор (англ. statement ) — наименьшая автономная часть языка программирования; команда. Программа обычно представляет собой последовательность инструкций.
Многие языки (например, Си) различают инструкцию и определение. Различие в том, что инструкция исполняет код, а определение создаёт идентификатор (то есть можно рассматривать определение как инструкцию присваивания).
Ниже приведены основные общие инструкции императивных языков программирования.
См. также
Полезное
Смотреть что такое «Оператор (программирование)» в других словарях:
Оператор — В Викисловаре есть статья «оператор» Оператор может означать: Оператор (математика) то же, что математическая функция; Оператор (биология) последовательность ДНК, принимающая участие в регуляции активности генов; Оператор… … Википедия
оператор — 4.22 оператор (operator): Какой либо объект, осуществляющий работу системы. Примечание 1 Роль оператора и роль пользователя могут возлагаться одновременно или последовательно на одно и то же лицо или организацию. Примечание 2 В контексте данного… … Словарь-справочник терминов нормативно-технической документации
Программирование — процесс составления упорядоченной последовательности действий (программы (См. Программа)) для ЭВМ; научная дисциплина, изучающая программы для ЭВМ и способы их составления, проверки и улучшения. Каждая ЭВМ является автоматом,… … Большая советская энциклопедия
ПРОГРАММИРОВАНИЕ ТЕОРЕТИЧЕСКОЕ — математическая дисциплина, изучающая математич. абстракции программ, трактуемых как объекты, выраженные на формальном языке, обладающие определенной информационной и логич. структурой и подлежащие исполнению на автоматич. устройствах. П. т.… … Математическая энциклопедия
оператор ЭЭ оборудования и/или ЭЭ систем — 3.17. оператор ЭЭ оборудования и/или ЭЭ систем (operator of an EDM equipment and/or system): Человек, который осуществляет программирование, установку, регулировку, наблюдение за работой, техническое обслуживание и чистку станка. Источник: ГОСТ Р … Словарь-справочник терминов нормативно-технической документации
Генетическое программирование — В искусственном интеллекте генетическое программирование (ГП) автоматическое создание или изменение программ с помощью генетических алгоритмов. С помощью этой методологии «выращиваются» программы, всё лучше и лучше (в соответствии с определенной… … Википедия
Функциональное программирование — Парадигмы программирования Агентно ориентированная Компонентно ориентированная Конкатенативная Декларативная (контрастирует с Императивной) Ограничениями Функциональная Потоком данных Таблично ориентированная (электронные таблицы) Реактивная … Википедия
Структурное программирование — Эта статья или раздел нуждается в переработке. Пожалуйста, улучшите статью в соответствии с правилами написания статей … Википедия
Цикл (программирование) — У этого термина существуют и другие значения, см. цикл. В данной статье или разделе имеется список источников или внешних … Википедия
Функциональное программирование на Питоне — Функциональное программирование является одной из парадигм, поддерживаемых языком программирования Python. Основными предпосылками для полноценного функционального программирования в Python являются: функции высших порядков, развитые средства… … Википедия
Оператор (программирование)
Многие языки (например, Си) различают инструкцию и определение. Различие в том, что инструкция исполняет код, а определение создаёт идентификатор (то есть можно рассматривать определение как инструкцию присваивания).
Ниже приведены основные общие инструкции языков программирования на языке pascal.
Связанные понятия
Упоминания в литературе
Связанные понятия (продолжение)
В языках программирования объявле́ние (англ. declaration) включает в себя указание идентификатора, типа, а также других аспектов элементов языка, например, переменных и функций. Объявление используется, чтобы уведомить компилятор о существовании элемента; это весьма важно для многих языков (например, таких как Си), требующих объявления переменных перед их использованием.
Сопрограммы (англ. coroutines) — методика связи программных модулей друг с другом по принципу кооперативной многозадачности: модуль приостанавливается в определённой точке, сохраняя полное состояние (включая стек вызовов и счётчик команд), и передаёт управление другому. Тот, в свою очередь, выполняет задачу и передаёт управление обратно, сохраняя свои стек и счётчик.
Побо́чные эффе́кты (англ. side effects) — любые действия работающей программы, изменяющие среду выполнения (англ. execution environment). Например, к побочным эффектам относятся.
По одной из классификаций, языки программирования неформально делятся на сильно и слабо типизированные (англ. strongly and weakly typed), то есть обладающие сильной или слабой системой типов. Эти термины не являются однозначно трактуемыми, и чаще всего используются для указания на достоинства и недостатки конкретного языка. Существуют более конкретные понятия, которые и приводят к называнию тех или иных систем типов «сильными» или «слабыми».
Операторы языка программирования
Оператор — это элемент языка, задающий полное описание действия, которое необходимо выполнить. Каждый оператор представляет собой законченную фразу языка программирования и определяет некоторый вполне законченный этап обработки данных. В состав операторов могут входить служебные слова, данные, выражения и другие операторы. В английском языке данное понятие обозначается словом “statement”, означающим также “предложение”.
Каждый оператор в любом языке программирования имеет определенный синтаксис и семантику. Под синтаксисом оператора понимается система правил (грамматика), определяющая его запись с помощью элементов алфавита данного языка, в который наряду с различными символами входят, например, и служебные слова. Под семантикой оператора понимают его смысл, т.е. те действия, которым соответствует запись того или иного оператора. Например, запись i := i + 1 является примером синтаксически корректной записи оператора присваивания в языке Pascal, семантика которого в данном случае такова: извлечь значение ячейки памяти, соответствующей переменной i, сложить его с единицей, результат записать в ту же ячейку памяти.
В большинстве процедурных языков программирования набор операторов практически одинаков и состоит из оператора присваивания, операторов выбора, операторов цикла, оператора вызова процедуры, операторов перехода. Иногда выделяют также пустой (отсутствие действия) и составной операторы. Многие операторы являются способом представления определенных алгоритмических конструкций (см. “Алгоритмические конструкции” ) в языке программирования. Рассмотрим группы операторов подробнее, используя синтаксис языка Pascal.
Оператор присваивания
Присваивание — это действие компьютера, в результате которого переменная получает значение вычисленного выражения (оно помещается в соответствующую переменной ячейку памяти). Для описания такого действия в языках программирования существует оператор присваивания.
В общем виде оператор присваивания записывается так:
Например, в языке Pascal в качестве знака присваивания используется комбинация символов :=. В ряде других языков — знак равенства.
Результатом выполнения оператора присваивания является изменение состояния данных: все переменные, отличные от переменной, стоящей в левой части оператора присваивания, не меняют своего значения, а указанная переменная получает значение выражения, стоящего в правой части оператора присваивания. В большинстве случаев требуется, чтобы тип выражения совпадал с типом переменной. Если это не так, то оператор либо считается синтаксически некорректным, либо производится преобразование типа выражения к типу переменной (см. “Типы данных” ).
Операторы выбора
По-другому эти операторы называют условными операторами. Условные операторы используются для программирования алгоритмов, содержащих алгоритмическую конструкцию ветвление.
В языках программирования имеется несколько видов условных операторов. Полный условный оператор соответствует алгоритмической структуре полного ветвления:
В языке программирования соответствующий условный оператор имеет вид:
if B then S1 else S2
Если выражение B, которое вычисляется в начале выполнения условного оператора, имеет значение “истина”, то будет выполняться оператор S1, в противном случае — оператор S2. Операторы S1 и S2 могут быть составными.
Алгоритмическая структура неполного ветвления реализуется с помощью неполного условного оператора, который имеет вид:
Здесь B — логическое выражение, а S — произвольный оператор. Оператор S будет выполняться, если выражение B окажется истинным.
Если условный оператор реализует всего две ветви выбора (“да” и “нет”), то с помощью оператора варианта (case-оператора) можно запрограммировать многоветвящуюся структуру. Оператор варианта имеет вид:
Выполняется данный оператор так: значение выражения E ищется среди перечисленных в записи оператора значений V1, V2, …, Vn, и если такое значение находится, то выполняется соответствующий оператор S1, S2, …, Sn.
В разных языках программирования синтаксис и даже семантика перечисленных операторов могут отличаться, но возможности, предоставляемые программисту подобными конструкциями, примерно одинаковы.
Пример 1. В статье “Алгоритмические конструкции” 2 был приведен пример записи алгоритма решения обобщенного квадратного уравнения с помощью конструкций ветвления. Приведем фрагмент программы на языке Pascal, реализующий этот же алгоритм:
if c = 0 then writeln(‘x — любое’)
else writeln(‘нет корней’)
В цикле с постусловием тело цикла предшествует условию В. В отличие от цикла с предусловием здесь В — это условие окончания цикла. Оператор цикла с постусловием в Паскале имеет вид:
При такой организации цикла тело цикла S хотя бы один раз обязательно выполнится.
Практически во всех процедурных языках существует оператор цикла c параметром. Схематично его можно представить так:
Здесь значение переменной (параметра цикла) меняется от значения выражения E1 до E2 с шагом E3. Для каждого такого значения параметра цикла выполняется оператор S. В языке Pascal понятие шага в описании этого оператора отсутствует, а сам шаг для целочисленного параметра цикла может быть равен либо 1, либо –1. Оператор “цикл с параметром” используется для программирования циклов с заданным числом повторений. Для программирования итерационных циклов (число повторений которых заранее неизвестно) он не годится.
Оператор вызова процедуры
В статье “Подпрограммы” подробно рассказывается о таком виде подпрограмм, как процедуры. Стандартные подпрограммы языка программирования, которые входят в одну из библиотек подпрограмм, а также пользовательские подпрограммы, описанные внутри данного блока, вызываются с помощью оператора вызова процедуры:
Здесь E1,E2,…,En — переменные или выражения, представляющие собой фактические параметры обращения к процедуре. Наиболее часто используемыми стандартными процедурами являются процедуры ввода и вывода данных (read и write в Pascal).
Вызов процедуры семантически эквивалентен выполнению блока, описанного в качестве тела процедуры, после передачи в него начальных значений некоторых переменных (параметров-значений) или замены имен некоторых переменных (параметров-переменных) на имена фактических переменных, указанных при вызове процедуры.
Пример 3. Пусть у нас описана процедура abc:
procedure abc(a,b:integer;var c: integer);
Вызов этой процедуры abc(2,3,x) эквивалентен блоку действий:
Операторы перехода
Наиболее известным в данной группе операторов является оператор безусловного перехода goto. Если ко всем или некоторым уже имеющимся операторам программы добавить метки, то в программе становится возможным использовать оператор перехода вида:
Метка в данном случае соответствует началу того оператора, с которого должно продолжиться выполнение программы. Такой оператор позволяет записывать в языке программирования алгоритмы, имеющие сколь угодно сложную структуру. Но зачастую использование безусловного перехода неоправданно, т.к. ведет к запутанной, плохо читаемой программе. Практически единственным осмысленным применением оператора goto является выход сразу из нескольких вложенных циклов, например, при обработке двухмерных массивов.
Пример 4. Пусть нам требуется определить, есть ли в двухмерном массиве a элемент, равный 0:
if a[i,j] = 0 then begin
1: if b then write(‘есть’) else write(‘нет’);
Программа, разработанная по правилам структурного программирования, не должна содержать операторов безусловного перехода. Приведенную выше программу без использования оператора goto можно переписать следующим образом:
then writeln(‘Мне ‘,k,’ года’)
else writeln(‘Мне ‘,k,’ лет’)
При рассмотрении операторов цикла полезно предложить одну и ту же задачу запрограммировать тремя разными способами с использованием трех операторов цикла, и наоборот, по условию задачи научиться определять, какой именно оператор цикла является наиболее подходящим в том или ином случае.
Оператор вызова процедуры только на первый взгляд является простым. Здесь важно объяснить правила передачи параметров в процедуры и функции, различие между параметрами-переменными и параметрами-значениями (в последнем случае мы можем передавать не только имя переменной, но и константу или даже выражение соответствующего типа). Формальные и фактические параметры должны соответствовать по типам, но не по именам, что является далеко не очевидным для учеников.
Изучение условного и особенно составного оператора — хороший повод поговорить с учениками о стиле написания программ. Для языка Pascal существует несколько распространенных способов записи структурированных программ, но все они содержат отступы для размещения вложенных структур. Важны для записи программ и комментарии.
Компьютерное программирование — операторы
Оператор в языке программирования — это символ, который указывает компилятору или интерпретатору выполнить определенную математическую, реляционную или логическую операцию и получить конечный результат. В этой главе будет объяснено понятие операторов, и вы познакомитесь с важными арифметическими и реляционными операторами, доступными в C, Java и Python.
Арифметические Операторы
Компьютерные программы широко используются для математических расчетов. Мы можем написать компьютерную программу, которая может выполнять простые вычисления, такие как сложение двух чисел (2 + 3), и мы также можем написать программу, которая может решить сложное уравнение, такое как P (x) = x 4 + 7x 3 — 5x + 9. Если вы даже были плохим учеником, вы должны знать, что в первом выражении 2 и 3 — операнды, а + — оператор. Подобные понятия существуют в компьютерном программировании.
Взгляните на следующие два примера —
Точно так же язык программирования предоставляет различные арифметические операторы. В следующей таблице перечислены некоторые важные арифметические операторы, доступные на языке программирования Си. Предположим, что переменная A содержит 10, а переменная B содержит 20, тогда —
Ниже приведен простой пример программирования на C для понимания вышеприведенных математических операторов:
Когда вышеуказанная программа выполняется, она дает следующий результат —
Операторы отношений
Рассмотрим ситуацию, когда мы создаем две переменные и присваиваем им некоторые значения следующим образом:
Здесь очевидно, что переменная A больше, чем B по значениям. Итак, нам нужна помощь некоторых символов для написания таких выражений, которые называются реляционными выражениями. Если мы используем язык программирования C, то он будет записан следующим образом:
Здесь мы использовали символ>, и он называется реляционным оператором, и в простейшей форме они выдают логические результаты, что означает, что результат будет либо истинным, либо ложным. Аналогично, язык программирования предоставляет различные реляционные операторы. В следующей таблице перечислены некоторые важные реляционные операторы, доступные в языке программирования C. Предположим, что переменная A содержит 10, а переменная B содержит 20, тогда —
оператор | Описание | пример |
---|---|---|
== | Проверяет, равны ли значения двух операндов или нет, если да, тогда условие становится истинным. | (A == B) не соответствует действительности. |
знак равно | Проверяет, равны ли значения двух операндов или нет, если значения не равны, тогда условие становится истинным. | (A! = B) верно. |
> | Проверяет, больше ли значение левого операнда, чем значение правого операнда, если да, тогда условие становится истинным. | (A> B) не соответствует действительности. |
Проверяет, меньше ли значение левого операнда, чем значение правого операнда, если да, тогда условие становится истинным. | (A | |
> = | Проверяет, больше ли значение левого операнда или равно значению правого операнда, если да, тогда условие становится истинным. | (A> = B) не соответствует действительности. |
Проверяет, меньше ли значение левого операнда или равно значению правого операнда, если да, тогда условие становится истинным. | (A |
Когда вышеуказанная программа выполняется, она дает следующий результат —
Логические Операторы
Логические операторы очень важны для любого языка программирования и помогают нам принимать решения на основе определенных условий. Предположим, мы хотим объединить результат двух условий, тогда логические операторы И и ИЛИ помогают нам в получении конечного результата.
В следующей таблице показаны все логические операторы, поддерживаемые языком Си. Предположим, что переменная A содержит 1, а переменная B содержит 0, тогда —
оператор | Описание | пример |
---|---|---|
&& | Называется логический оператор И. Если оба операнда отличны от нуля, условие становится истинным. | (A && B) неверно. |
|| | Вызывается логическим оператором ИЛИ. Если любой из двух операндов отличен от нуля, условие становится истинным. | (A || B) верно. |
! | Вызывается логическим оператором НЕ. Используйте для изменения логического состояния своего операнда. Если условие истинно, то оператор Логический НЕ будет делать ложь. | ! (A && B) верно. |
Попробуйте следующий пример, чтобы понять все логические операторы, доступные на языке программирования C —
Когда вы компилируете и запускаете вышеуказанную программу, она дает следующий результат —
Операторы в Java
Вы можете попробовать выполнить следующую программу, чтобы увидеть выходные данные, которые должны быть идентичны результату, сгенерированному в приведенном выше примере.
Когда вышеуказанная программа выполняется, она дает следующий результат —
Операторы в Python
Вы можете попробовать выполнить следующую программу, чтобы увидеть выходные данные, которые должны быть идентичны результату, сгенерированному в приведенном выше примере.
Когда вышеуказанная программа выполняется, она дает следующий результат —
Операция (программирование)
Опера́ция — конструкция в языках программирования, аналогичная по записи математическим операциям, то есть специальный способ записи некоторых действий. Наиболее часто применяются арифметические, логические и строковые операции. В отличие от функций, операции часто являются базовыми элементами языка и обозначаются различными символами пунктуации, а не алфавитно-цифровыми; они имеют специальный инфиксный синтаксис и нестандартные правила передачи аргументов. Терминология, однако, несколько отличается от языка к языку.
Содержание
Операция и инструкция
Операция и функция
Фактически, операция — это та же функция, но записываемая особым образом. По этой причине логично иметь возможность определять операции для произвольных типов таким же образом, как и методы — чтобы можно было работать с ними точно так же, как и с элементарными типами. Эта возможность называется «перегрузка операций» и присутствует в большинстве языков 4—5 поколений. В таких языках транслятор, фактически, подставляет вместо выполнения операции вызов соответствующей ей функции.
Типы операций
Операции делятся по количеству принимаемых аргументов на:
Синтаксис операций
Поскольку операции аналогичны по записи алгебраическим выражениям, для них, как и для последних, существует 3 варианта синтаксиса:
Для бинарных и тернарных (с 3 операндами) операций в подавляющем большинстве случаев используют инфиксную нотацию — по той простой причине, что она принята в математике и наиболее привычна большинству людей. Для унарных операций инфиксной нотации не существует, и, как правило, используется префиксная.
Список типовых операций
Операции обычно переходят из языков в родственные — например, операции языка С присутствуют в языках C++, Java, JavaScript и многих других.
проверка на неравенство
меньше, меньше или равно
См. также
Ссылки
Полезное
Смотреть что такое «Операция (программирование)» в других словарях:
Операция — В Викисловаре есть статья «операция» Операция (лат. operatio, действие) действие … Википедия
программирование — я, ср. programmer.1. Раздел вычислительной математики и техники, связанный с эксплуатацией электронных машин, с автоматическим программным управлением; составлением программ 10. БАС 1. 2. Действие по знач. гл. программировать. Программирование… … Исторический словарь галлицизмов русского языка
ПРОГРАММИРОВАНИЕ ПАРАЛЛЕЛЬНОЕ — раздел программирования, связанный с изучением и разработкой методов и средств для: а) адекватного описания в программах естественного параллелизма моделируемых в ЭВМ и управляемых ЭВМ систем и процессов, б) распараллеливания обработки информации … Математическая энциклопедия
программирование — я; ср. 1. к Программировать. П. производства. Операция программирования. 2. Раздел прикладной математики и вычислительной техники, разрабатывающий методы составления программ для ЭВМ. Заниматься программированием. Специалист по программированию.… … Энциклопедический словарь
программирование — я; ср. 1) к программировать Программи/рование производства. Операция программирования. 2) Раздел прикладной математики и вычислительной техники, разрабатывающий методы составления программ для ЭВМ. Заниматься программированием. Специалист по… … Словарь многих выражений
Битовая операция (значения) — Битовая операция: Битовая операция (теория алгоритмов) (или элементарная операция [1]) в теории алгоритмов, криптографии запись знаков 0, 1, плюс, минус, скобка; сложение, вычитание и умножение двух битов (числа записаны в двоичной системе… … Википедия
Оператор (программирование) — У этого термина существуют и другие значения, см. оператор. Из за путаницы с терминологией словом «оператор» в программировании нередко обозначают операцию (англ. operator), см. Операция (программирование). Инструкция или оператор… … Википедия
Комбинаторное программирование — Комбинáторное программирование (англ. function level programming) это парадигма программирования, не требующая явного упоминания аргументов определяемой функции (программы) и использующая вместо переменных комбинаторы и композицию… … Википедия
- Что такое операционная система реального времени
- Что такое обратная связь на сайте