Оператор присваивания предназначен для. Операторы

Оператор – предписание о выполнении конкретных действий. В языке программирования Паскаль содержится 11 операторов.

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

Оператор присваивания, наиболее часто используемый оператор языка Турбо Паскаль.

Формат записи: X:=A;
где: X – имя переменной;
A - выражение;
:= - знак присваивания.

Работа оператора: В процессе выполнения оператора вычисляется значение, в правой части выражения и присваивается имени переменной.

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

Пример 9.1. Записать программу вычисления функций:

y= cosa+lnb; n=k+1; r=ord(#65).

Var
a, b, y: real;
k, n: integer;
r: char;
t, v, u: Boolean;
* * *
y:= cos(a)+ln(b);
n:=k+1;
r:=ord(#65);
t:=(v and u)or(v and not u);
* * *
End.

Оператор перехода в Паскале

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

Формат записи: GoTo m;

где: GoTo – перейти к;
m - метка.

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

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


Оператор присваивания - самый простой и наиболее распространённый оператор.

Формат оператора присваивания

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

Переменная = Выражение; // Оператор присваивания

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

Правило исполнения оператора присваивания

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

Примеры операторов присваивания

В операторе присваивания допускается объявление типа переменной слева от знака равенства:

int In = 3 ;
double Do = 2.0 ;
bool Bo = true ;
color Co = 0 x008000 ; // Переменной Co присвоено значение константы
string St = " sss "; // Переменной St присвоено значение константы
datetime Da = D " 01.01.2004 "; // Переменной Da присвоено значение константы

Ранее объявленные переменные используются в операторе присваивания без указания типа.

In = 7 ; // Переменной In присвоено значение константы
Do = 23.5 ; // Переменной Do присвоено значение константы
Bo = 0 ; // Переменной Bo присвоено значение константы

В операторе присваивания не допускается объявление типа переменной в правой части от знака равенства:

In = int In_2; // Объявление типа переменных в правой части запрещено
Do = double Do_2; // Объявление типа переменных в правой части запрещено

В операторе присваивания не допускается повторное объявление типа переменных.

Int In; // Объявление типа переменной In
int In = In_2; // Не допускается повторное объявление переменной (In)

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

In = My_Function () ; // In присвоено значение пользоват. функции
Do = Gipo (Do1 , Do1 ) ; // Do присвоено значение пользоват. функции
Bo = IsConnected () ; // Bo присвоено значение стандартн. функции
St = ObjectName (0 ) ; // St присвоено значение стандартн. функции
Da = TimeCurrent () ; // Da присвоено значение стандартн. функции

Примеры использования в правой части выражений:

In = (My_Function () + In2 ) / 2 ; // Переменной In присвоено
// ..значение выражения
Do = MathAbs (Do1 + Gipo (Do2 , 5 ) + 2.5 ) ; // Переменной Do присвоено
// ..значение выражения

При вычислениях в операторе присваивания применяются правила приведения типов данных (см. Приведение типов).

Примеры операторов присваивания краткой формы

В MQL4 используется также краткая форма записи операторов присваивания. Это - форма операторов присваивания, в которой используются операции присвоения, отличные от операции присвоения = (знак равенства) (см. Операции и выражения). На операторы краткой формы распространяются те же правила и ограничения. Краткая форма операторов присваивания используется в коде для наглядности. Программист по своему усмотрению может использовать ту или иную форму оператора присваивания. Любой оператор присваивания краткой формы может быть легко переписан в полноформатный, при этом результат исполнения оператора не изменится.

In /= 33 ;
In = In / 33 ;

St += " _exp7 "; // Краткая форма записи оператора присваивания
St = St + " _exp7 "; // Полная форма записи оператора присваивания

| Возникновение и назначение языка Паскаль

Уроки 29 - 31
Возникновение и назначение языка Паскаль
Структура программы на языке Паскаль

(§ 11. Знакомство с языком Паскаль)
Работа с готовыми программами на языке Паскаль: отладка, выполнение, тестирование
Программирование на Паскале линейных алгоритмов

Знакомство с языком Паскаль





Возникновение и назначение Паскаля

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

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

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

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

Программа на Паскале близка по своему виду к описанию алгоритма на АЯ. Сравните алгоритм решения уже знакомой вам задачи деления простых дробей с соответствующей программой на Паскале:


Структура программы на Паскале

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

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

Program <имя программы>;

Раздел описания переменных начинается со слова Var (variables - переменные), за которым идет список имен переменных через запятую. Тип указывается после двоеточия. В стандарте языка Паскаль существуют два типа числовых величин: вещественный и целый . Слово integer обозначает целый тип (является идентификатором целого типа). Вещественный тип обозначается словом real . Например, раздел описания переменных может быть таким:

var a, b: integer; с, d: real;

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

Раздел операторов - основная часть программы. Начало и конец раздела операторов программы отмечаются служебными словами begin (начало) и end (конец). В самом конце программы ставится точка:

<операторы>

end .

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

Ввод исходных данных с клавиатуры происходит по оператору read (read - читать) или readln (read line - читать строку):

read(<список переменных>)

или readln(<список переменных>)

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

Вывод результатов происходит по оператору write (write - писать) или writeln (write line - писать в строку):

write(<список вывода>)

или writeln(<список вывода>)

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

Разница в выполнении операторов writeln и write состоит в том, что после выполнения вывода по оператору writeln экранный курсор перемещается в начало новой строки, а по оператору write этого не происходит.

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

<числовая переменная>:=<арифметическое выражение> 

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

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

Сложение, - вычитание, * умножение, / деление.

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

Запись арифметических выражений на Паскале похожа на обычную математическую запись. В отличие от математики, где часто пропускается знак умножения (например, пишут 2А), в Паскале этот знак пишется обязательно: 2*А. Например, математическое выражение

А 2 + В 2 - 12С

на Паскале записывается так:

А*А + В*В - 12*С

Это же выражение можно записать иначе:

SQR(А) + SQR(В) - 12*C

Здесь использована функция возведения в квадрат - SQR . Аргументы функций всегда пишутся в круглых скобках.

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

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


Пунктуация Паскаля

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

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

Запятая (,) является разделителем элементов во всевозможных списках: списке переменных в разделе описания, списках вводимых и выводимых величин.

Текст программы заканчивается точкой .

Строгий синтаксис в языке программирования необходим потому, что компьютер является формальным исполнителем программы . Если, допустим, разделителем в списке переменных должна быть запятая, то любой другой знак будет восприниматься как ошибка. Если точка с запятой является разделителем операторов, то в качестве оператора компьютер воспринимает всю часть текста программы от одной точки с запятой до другой. Если программист забыл поставить «;» между какими-то двумя операторами, то компьютер будет принимать их за один с неизбежной ошибкой.

В программу на Паскале можно вставлять комментарии. Комментарий - это пояснение к программе, которое записывается в фигурных скобках. В комментариях можно использовать русские буквы. На исполнение программы комментарий никак не влияет.

Заметим, что в Паскале нет различия между строчными и прописными буквами . Например, для Паскаля тождественны следующие варианты записи: begin, Begin, BEGIN, BeGiN . Использование строчных или прописных букв - дело вкуса программиста.

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

Последовательность операторов представляет собой основную часть программы на языке Паскаль . Разделителем операторов в программе является символ «точка с запятой».

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

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

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

  • k:= k + 10; {* значение переменной k увеличивается на 10 *}

Рассмотрим работу оператора присваивания в данном примере пошагово:

  1. Из ячейки памяти с именем k выбирается текущее значение.
  2. К текущему значению прибавляется 10.
  3. Результат записывается в ту же самую ячейку памяти (предыдущее значение восстановить после новой записи невозможно!)

ВНИМАНИЕ: выражение должно быть совместимо по типу данных с переменной.

В PascalABC.NET определены также операторы присваивания со значками +=, -=, *=, /= . Действие этих операторов заключается в изменении значения переменной в правой части оператора с учетом обозначенной арифметической операции (перед знаком равенства) и значения в правой части. Например:

  • k += 100; {* увеличивает значение k на 100 *}
  • n -= 8; {* уменьшает значение n на 8 *}
  • m *= 10; {* увеличивает значение m в 10 раз *}
  • b /= 2; {* уменьшает значение b в 2 раза *}

Тип урока:

  • обучающий. Учащиеся знакомятся с новым оператором языка Паскаль;
  • повторение темы «Внутренняя память компьютера»;
  • закрепляющий приобретенные знания.

Тема урока: «Программирование на языке Паскаль. Оператор присваивания».

Цели:

  • Ввести понятие «Оператор присваивания».
  • Различать операции, допустимые для целых и вещественных чисел.
  • Правильно составлять и вычислять выражения с использованием оператора присваивания.
  • Писать программы для простейших задач.

Длительность урока: 1 час 30 минут.

ХОД УРОКА

Первый урок

1. Повторение темы предыдущего урока «Типы данных». Примеры использования одинаковых по звучанию слов, но имеющих разные смысловые значения.

Учитель и обучающиеся работают в форме «вопрос-ответ» (10 минут).

2. Учитель объясняет новую тему, используя мультимедийный урок-презентацию «Программирование на языке Паскаль. Оператор присваивания». Дается определение понятия «оператор присваивания», приводится общая и структурная форма оператора. Прежде, чем рассмотреть работу оператора присваивания, вспоминаем и повторяем тему «Оперативная память, свойства Оперативной памяти».

Сопровождается показом презентации. Приложение 1 (15 минут).

3. Обучающиеся работают самостоятельно, читая и конспектируя новую тему (урок-презентация предварительно записан на компьютеры обучающихся, вопросы для конспектирования определены учителем). Здесь же ученики могут познакомиться с текстами программ, в которых используется оператор присваивания Приложение 2 (20 минут).

Второй урок

4. Обучающиеся работают у доски, выполняя упражнения (12-15 минут).
1. Учитель проводит контроль знаний в форме теста. Программа-тест предварительно записывается на компьютеры обучающихся. Оценка выставляется программой. Приложение 5 (10 минут).
5. Ученики выполняют небольшую самостоятельную работу по карточкам, либо пишут и отлаживают программу на АЯП Паскаль, в которой используется оператор(ы) присваивания (учитель называет номера карточек с заданиями). За работу учащиеся получают оценку. Приложение 3 . Приложение 4 (15 минут).
Домашнее задание. Ученикам предлагается написать текст простой программы на АЯП Паскаль, в которой используется оператор(ы) присваивания (для тех учеников, которые не успели выполнить задание в классе).

Выводы:

  • Через блок 1 повторение темы предыдущего урока.
  • Через блоки 2, 3 и 4 дается и закрепляется новая тема «Оператор присваивания».
  • Через блоки 5 и 6 выполняется контроль знаний.

Программирование на языке Паскаль

Урок № 1 (2 часа). Переменные и константы. Оператор присваивания

  1. Проверка домашнего задания.
  2. Новая тема.
  3. Домашнее задание.

Проверка домашнего задания.

2. Новая тема: «Переменныые и константы. Опреатор присваивания»

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

имя переменной:= выражение ;

Выражение может быть и конкретным значением (т.е. число целое или вещественное, например, 22 или 2.5, символьная величина: "ABC", логическая величина: TRUE или FALSE), и некоторым выражением (величины + операции над ними), результат которого будет присвоен переменной в левой части.

ПРИМЕРЫ:

PAG:= 10; (конкретное значение в виде числа);
X:= X + 1; (выражение);
C:= B; (имя переменной);
G:= ‘ПРИВЕТ‘; (конкретное значение символьное);
X:= (-A + SIN(Y) – 4 * B * X) / (2 * C); (математическое выражение);
Y:= TRUE; (конкретая логическая величина).

Отличие операции присваивания в математике и программировании.

В математике выражениеа = в означает, что вычисленные значения для а и в должны быть равными.
В программировании А:= В понимается так, что значение, хранимое в области памяти с именем В, помещается в область памяти с именем А. Поэтому обратное выражение
В:= А даёт другой результат.
Пример: в А и в В помещаются значения 5 и 9 соответственно.

А: = 5;
В: = 9

а) Результат операции А:= В;

б) Результат операции В:= А;

Далее ещё одно существенное различие между знаком равенства и оператором присваивания: А = А + 1;
В математике такое выражение просто бессмысленно, поскольку тождество ложно. Не существует таких числовых значений А, для которых оно было бы справедливо. В программировании это означает, что к значению, хранимому в ячейке А, прибавляется 1, и вновь получаемое значение заменяет старое в ячейке А. Например, если до выполнения этого оператора А имело значение 5, то после выполнения будет равно 6.

Следующее отличие: математическое выражение А + 9 – В = Х вполне обосновано и может означать, что при подстановке некоторых чисел вместо А и В в левую часть выражения вы получите Ч. В то же время в программировании это выражение лишено смысла, поскольку левая часть выражения должна содержать имя области памяти, которой присваивается значение, вычисляемое в правой части. Если же вы попытаетесь вставить такое выражение в свою программу, то получите сообщение об ошибке, поскольку имя переменной А + 9 – В не поймёт .

записать в общепринятой форме:

(– b + sqrt(sqr(b) – 4 * a * c))/(2 * a);
a/b * (c + d) – (a – b)/b/c + 1E – 8;

Список литературы:

  • В.Б. Попов «TURBO PASCAL для школьниковI», «Финансы и статистика», Москва, 1996 г.
  • А.А. Черно в «Конспекты уроков информатики в 9 – 11 классах», «Учитель», Волгоград, 2004.
  • Д.М. Златопольский «Я иду на урок информатики. Задачи по программированию, 7 – 11 классы», «Первое сентября», Москва, 2001.