Чем отличаются два оператора вывода в программе

Pascal | Лекция №3

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

Содержание:

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

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

Оператор присваивания предназначен для присваивания переменной значения выражения. Оператор обозначается символом «:=», в левой части указывается имя переменной, в правой – вычисляемое выражение. Выражение может составлять число, знаки арифметических действий, круглые скобки, переменные и константы, процедуры и функции, допускаемое вложение друг в друга. Обязательное условие — совместность типов данных. Оператор считается синтаксически правильным, если тип выражения в правой части совпадает с типом переменной. Исключение составляет случай, когда выражение имеет целый тип, а переменная – вещественный. Допускается использование этого оператора с переменными любого типа, кроме файлового. Синтаксис:

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

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

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

с переменными целого типа: x := 200;

вещественного: y := Sin(Pi/3);

символьного: с := ‘6’;

булевского: test := false;

R – радиус окружности (тип – integer или real)

Pi – константа, равная значению p.

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

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

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

Основными устройствами ввода-вывода у ПК являются клавиатура и экран монитора. Именно через эти устройства главным образом осуществляется диалог между человеком и ПК.

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

Существует две формы оператора ввода: Read и ReadLn. Процедура ввода с клавиатуры имеет следующий формат:

Read ( ),

где – это последовательность имен переменных, разделенных запятыми.

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

ReadLn ( )

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

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

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

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

Второй вариант процедуры вывода на экран:

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

В операторах вывода Write и WriteLn имеется возможность установить ширину поля вывода. Если X и I – целочисленные выражения, а Y — вещественное выражение, то вызов

Write ( X : I, Y : I ) — печатает значения X и Y каждое в крайние правые позиции полей шириной I;

Write ( Y : I : X) – вызовом в крайние правые позиции поля шириной I символов выводится десятичное представление значения Y в формате с фиксированной точкой, причем после десятичной точки выводится X цифр, представляющих дробную часть числа.

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

Для того чтобы задать последовательное выполнение (по порядку, один за другим) нескольких операторов, в языке Pascal существует составной оператор. Операторы, входящие в составной, разделяются символом «;», в начале ставится служебное слово Begin, в конце – End.

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

Обратите внимание: перед служебным словом End разделитель (символ «;») не ставится.

Условный оператор

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

Здесь значение функции f вычисляется в зависимости от величины x по разным формулам.

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

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

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

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

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

Пример полной формы: рассмотрим определение функции f(x):

Если в нашем примере описать логическую переменную В, значение которой будет равно true, если x

Пример краткой формы:

При использовании вложенных условных операторов может возникнуть неоднозначность, например:

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

Теперь дадим строгое описание условного оператора в форме синтаксической диаграммы:

Чем отличаются два оператора вывода в программе. Смотреть фото Чем отличаются два оператора вывода в программе. Смотреть картинку Чем отличаются два оператора вывода в программе. Картинка про Чем отличаются два оператора вывода в программе. Фото Чем отличаются два оператора вывода в программе

Пример: По длинам трех сторон треугольника a, b, c вычислить его площадь.

Условный оператор Case (оператор варианта)

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

Присвоить строке S значение дня недели для заданного числа D при условии, что в месяце 31 день и 1-ое число – понедельник.

Для построения алгоритма воспользуемся операцией mod, позволяющий вычислить остаток от деления двух целых чисел, и с условием, что 1-ое число – понедельник. Тогда можно записать следующий оператор Case:

Чтобы завершить построение алгоритма решения поставленной задачи, необходимо ограничить область возможных значений переменной D (тип — integer):

В качестве можно также задать список и (или) диапазон значений.

Контрольные вопросы

Источник

Операторы ввода и вывода информации

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

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

Сначала операторы ввода (форматы операторов):

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

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

Примечание: данные при вводе разделяются пробелами.

Для вывода информации в Паскале также есть две команды:

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

Различие между двумя операторами вывода таково: после выполнения оператора Writeln (от Write line) происходит переход на новую строчку, а после выполнения инструкции Write, переход на новую строчку не происходит и печать по последующим командам вывода Write или Writeln будет происходить на той же строчке. При вызове оператора Writeln без параметров просто происходит переход на новую строчку.

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

Write(‘Введите радиус круга ‘);

Writeln(‘Площадь круга радиусом ‘,R,’ равна ‘,S)

Эта программа запрашивает у пользователя значение радиуса круга, обеспечивает возможность ввести его значение, рассчитывает и выводит на экран величину площади круга с таким радиусом. Таким образом, появляется возможность, не внося изменений в текст программы, вводить различные значения радиуса и получать, соответствующие им значения площади круга. Для этого достаточно несколько раз запустить программу. Также эта программа демонстрирует следующее правило: выдача результатов должна быть прокомментирована так, чтобы был ясен смысл напечатанных чисел. Действительно, ведь можно было бы ограничиться Writeln(S), но значение выведенного программой числа в этом случае было бы ясно только тому, кто эту программу написал.

ОПЕРАТОРЫ ВВОДА И ВЫВОДА

Эти файлы разбиваются на строки переменной длины, отделяемые друг от друга признаком конца строки. Конец строки задается нажатием кла виши ENTER.

Для ввода исходных данных используются операторы процедур ввода:

При вводе исходных данных происходит преобразование из внешней формы представления во внутреннюю, определяемую типом переменных. Пе ременные, образующие список ввода, могут принадлежать либо к целому либо к действительному, либо к символьному типам. Чтение исходных данных логического типа в языке ПАСКАЛЬ недопустимо.

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

Значения исходных данных могут отделяться друг от друга пробелами и нажатием клавиш табуляции и Enter.

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

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

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

var rA, rB: Real; iP,iQ:Integer;

bR, bS: Boolean; chT, chV, chU, chW: Char;

WriteLn(chT, chV, chU, chW);

Метки. Оператор безусловного перехода.

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

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

Одной меткой можно пометить только один оператор. Метка от помеченного оператора отделяется двоеточием.

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

Оператор, к которому происходит переход должен быть помечен данной меткой.

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

. ЭЛЕМЕНТЫ СТРУКТУРНОГО ПРОГРАММИРОВАНИЯ

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

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

Конструкция, состоящая из развилки, двух операций и слияния, назы вается ветвлением. Одна из операций может отсутствовать.

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

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

Операция может быть реализована любым оператором языка ПАСКАЛЬ (простым или составным), либо группой операторов, за исключением опе ратора перехода GOTO.

В языке ПАСКАЛЬ количество базовых конструкций увеличено до шести, это:

-цикл с предусловием;

-цикл с постусловием;

Далее рассмотрим, как эти базовые конструкции реализуются в языке ПАСКАЛЬ.

Условный оператор

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

1. Получить значение x.

Таким образом используется приведенная выше алгоритмическая структура. Она может быть выражена простыми словами:

Как это записать на Паскале? Да точно так же, только по-английски.

Формат условного оператора на языке Паскаль:

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

Вариант условного оператора в этом случае:

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

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

В простых условиях могут применяться знаки операций сравнения: >(больше), (не равно), >=(больше или равно), =(D1*(45-2))

Приведем пример решения еще одной задачи: «Из двух чисел выбрать наибольшее».

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

Writeln(‘Введите два числа’);

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

Var A, B, C, D, X1, X2 : Real;

Writeln (‘Введите коэффициенты квадратного уравнения’);

Правда, лаконично? По-русски можно прочитать так: «Пока истинно условие, выполнять оператор». Здесь, так же как в формате условного оператора, подразумевается выполнение только одного оператора. Если необходимо выполнить несколько действий, то может быть использован составной оператор. Тогда формат оператора принимает такой вид:

Цикл «ДО»

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

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

Формат цикла на языке Pascal:

Читается так: «Выполнять оператор #1, оператор #2. : до выполнения условия».

Здесь не требуется использование составного оператора, потому, что сами слова Repeat и Until являются операторными скобками.

Источник

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

Чем отличаются два оператора вывода в программе. Смотреть фото Чем отличаются два оператора вывода в программе. Смотреть картинку Чем отличаются два оператора вывода в программе. Картинка про Чем отличаются два оператора вывода в программе. Фото Чем отличаются два оператора вывода в программе

Тема: ОРГАНИЗАЦИЯ ВВОДА, ВЫВОДА ДАННЫХ

ПУСТОЙ И СОСТАВНОЙ ОПЕРАТОРЫ

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

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

Иногда, действия (последовательность операторов) бывает необходимо заключить в операторные скобки. Формат составного оператора таков:

Обратите внимание на то, что точка с запятой перед End может не ставиться.

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

4.1. Процедура вывода Write

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

А теперь посмотрим на примеры.

Чем отличаются два оператора вывода в программе. Смотреть фото Чем отличаются два оператора вывода в программе. Смотреть картинку Чем отличаются два оператора вывода в программе. Картинка про Чем отличаются два оператора вывода в программе. Фото Чем отличаются два оператора вывода в программе Как пишем обращение Что видим в результате.

Write(‘Я изучаю Паскаль’) Я изучаю Паскаль

Это не 58, а два числа 5 и 8. Заметим, что они расположены вплотную друг к другу. Чуть ниже вам станет ясно, как преодолеть этот «недостаток» оператора Write.

Как видите, один оператор Write может выводить сразу несколько элементов. Элементы нужно отделять друг от друга запятыми. В этом примере 3 элемента: 1) Текст ‘Это’; 2) выражение 4+4; 3) текст ‘кошек’.

Write(‘Это’,4+4,’ кошек’) Это8 кошек

Write(‘Это ‘,4+4;’ кошек’) Это 8 кошек

Здесь два элемента: текст ’16+16=’ и выражение 16+16. Несмотря на то, что текст очень похож на выражение, компьютер узнает егo по кавычкам и не вычисляет, а просто воспроизводит, как записано: 16+16=Любой элемент, заключенный в кавычки, Паскаль считает текстом.

4.4. Процедура вывода WriteLn.

Оператор WriteLn читается как «раит’лаин», переводится как «пиши строку«. Правила его записи и выполнения те же, что и у Write, с одним исключением.

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

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

WriteLn(‘ Мы начинаем!’);

WriteLn(‘Шестью шесть ‘, 6*6, ‘ Арифметика’, (6+4)*3);

Пояснение, Значок * обозначает умножение

Выполнив задание на бумаге, выполните программу на компьютере и сверьте результаты. Совпадает ли число пробелов между символами? Если не совпадает, еще раз прочтите материал, чтобы понять почему. Измените число пробелов в разных местах последнего WriteLn. Как изменилась картинка на экране? Почему? Добавьте рядом с пустым WriteLn еще один. Что изменилось? Почему?

4.5. Переменные величины. Оператор присваивания

Понятие переменной величины вам известно из школьной математики. Пусть несколько лет назад ваш рост равнялся 130см. Обозначим этот факт так: r=130. Теперь он равен 140см, то есть r=140. Получается, что величина r изменилась. Поэтому она называется переменной величиной. Числа 130 и 140 называются значениями переменной величины r.

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

Прогpаммируя на Паскале, мы можем задавать компьютеру значение той или иной переменной величины. Это делается при помощи оператора, который называется оператором присваивания. Так, если мы хотим сказать, что переменная а имеет значение 6, то должны записать а:=6. Как видите, вместо значка = употребляется знак := называется знаком присваивания, сама запись а:=6 называется оператором присваивания. Говорят, что величине а присваивается значение 6. С момента выполнения оператора а:=6 компьютер будет помнить, что а равно шести.

Справа от значка := в операторе присваивания можно писать не только числа, но и переменные величины, и выражения. Выражение пока будем понимать так, как его понимает школьная математика. Например, после выполнения следующего фрагмента программы:

компьютер будет знать, что а равно 10, b равно 10, у равно 21. Еще несколько примеров:

Фрагмент программы Что запомнит компьютер

v:=-2+10; h:= 10*v; s:=v+h v=8 h=80 s=88

t:=0; n:=2*t+40; z:=-n t=0 n=40 z=-40

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

Фрагмент программы Что видим

v:=-2+10; h:=10*v; s:=v+h; WriteLn(s) 88

v:=-2+10; h:=10*v; s:=v+h; WriteLn(‘s’) s

v:=-2+10; h:=10*v; WriteLn(v+h) 88

Нужно иметь в виду, что слева от знака := может стоять только переменная величина, но не число и не выражение. Можно писать с:=34, но нельзя писать 34:=с, Можно писать z:=f-v+990, но нельзя писать f-v+990:=z. Оператор присваивания устроен так, что сначала он смотрит или вычисляет, какое, значение имеет правая часть, а затем, присваивает это значение переменной, стоящей в левой части. Нет смысла присваивать значение числу или выражению.

Подведем предварительные итоги обсуждения очень важного оператора присваивания:

Какое значение будет присвоено переменной t после выполнения фрагмента k:=1+2; s:=2*k; t:=6-s?

Описание переменных (VAR)

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

4.7. Что делает оператор присваивания с памятью

Рассмотрим пример программы;

В программе между BEGIN и END встречаются три переменные, поэтому все они перечислены в описании VAR a,b,y: Integer. Компьютер отведет для них в памяти три двухбайтовые ячейки.

Вот как будет работать оператор присваивания:

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

А теперь рассмотрим, как будут заполняться информацией ячейки а, b, у в процессе выполнения нашей программы. В самом начале выполнения паскалевской программы в них находится неизвестно что. Первым выполняется оператор а:=10. Согласно только что приведенному определению оператора присваивания в ячейку a будет записано число 10. Затем выполняется оператор b:= 6 и в ячейке b появляется шестерка. Затем выполняется оператор у:=a+b+1. Компьютер смотрит, что находится в ячейках а и b, видит там 10 и 6, подставляет их в выражение а+b+1, получает 17 и записывает в ячейку у. Наконец, выполняется оператор WriteLn (у+200). Компьютер заглядывает в ячейку у, видит там 17, вычисляет 17+200 и выводит 217 на экран.

Схематически этот процесс можно изобразить так:

Что находится в ячейках памяти

Источник

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *