Ћекции.ќрг


ѕоиск:




 атегории:

јстрономи€
Ѕиологи€
√еографи€
ƒругие €зыки
»нтернет
»нформатика
»стори€
 ультура
Ћитература
Ћогика
ћатематика
ћедицина
ћеханика
ќхрана труда
ѕедагогика
ѕолитика
ѕраво
ѕсихологи€
–елиги€
–иторика
—оциологи€
—порт
—троительство
“ехнологи€
“ранспорт
‘изика
‘илософи€
‘инансы
’ими€
Ёкологи€
Ёкономика
Ёлектроника

 

 

 

 


ѕоследовательное выполнение




 

Ќа предыдущей лекции мы рассмотрели такие пон€тии как ѕаскаль-машина, ѕаскаль-программа, рассмотрели программу PrintHello и начали рассматривать последовательное выполнение ѕаскаль-программ.

 

ѕаскаль-программы выполн€ютс€ ѕаскаль-машиной последовательно, в один момент времени может выполн€тьс€ только один оператор. ѕаскаль-программы могут печатать символьные строки на одной и той же строке или на нескольких строках.

 

Ќовые идеи: оператор WRITE, таблица выполнени€, продолжение печати на той же строке, новые строки, печать псевдографики.

 

Ќа прошлом зан€тии мы рассмотрели программу PrintHello. —егодн€ ¬ам предлагаетс€ ее модифицированна€ верси€ PrintHelloTwo

 

PROGRAM PrintHelloTwo(INPUT, OUTPUT);

BEGIN

WRITE(СHEТ);

WRITE(СLТ);

WRITELN(СLOТ)

END.

 

ƒанна€ программа демонстрирует последовательное выполнение, он выводит слово СHELLOТ по один-два символа. ¬ программе встречаетс€ новое стандартное слово WRITE, с помощью которого задаютс€ операторы WRITE. ќператор WRITE выводит данные в OUTPUT, но не закрывает строку текста, тогда как оператор WRITELN, рассмотренный нами на предыдущей лекции, выводит данные с закрытием строки, после предложени€ WRITELN данные будут выводитьс€ на новой строке.

Ўаги выполнени€ программы разделены точкой с зап€той, этого достаточно, но мы разместили каждый оператор на отдельной строке дл€ читаемости. —тандартные слова BEGIN и END не отдел€ютс€ точкой с зап€той от предложений заключенных внутри.

 

ќпробуем определить OUTPUT дл€ различных точек в последовательности выполнени€ программы:

WRITE(СHEТ);

OUTPUT: HE

WRITE(СLТ);

OUTPUT: HEL

WRITELN(СLOТ)

OUTPUT: HELLO

 

ќдним иp способов описани€ последовательного выполнени€ программы €вл€етс€ таблица выполнени€, построим ее дл€ программы PrintHelloTwo

¬ таблице показаны строки программы, поэтому мы не пишем разделители.

 

  OUTPUT
PROGRAM PrintHelloTwo(INPUT, OUTPUT) BEGIN WRITE(СHEТ) WRITE(СLТ) WRITELN(СLOТ) END. _ _ HE_ HEL_ HELLO/_ HELLO

 

ѕосле выполнени€ первой строчки программы создаетс€ OUTPUT дл€ данных €вл€ющимис€ результатами выполнени€ программы. ћы будем изображать OUTPUT как строку символов, заканчивающуюс€ символом курсора, указывающего место, где будет напечатан следующий символ.

Ј ¬ начале выполнени€ OUTPUT пуст, курсор в начале строки.

Ј ¬тора€ строка со словом BEGIN не измен€ет OUTPUT, как мы уже говорили, оператор BEGIN служит дл€ задани€ границ выполнени€.

Ј “реть€ строка с помощью оператора WRITE выводит символы СHEТ в OUTPUT в позицию курсора и сдвигает курсор на две позиции.

Ј „етверта€ строка выводит в OUTPUT СLТ и сдвигает курсор на одну позицию.

Ј јналогично, п€та€ строка выводит в OUTPUT СLOТ и закрывает строку и передвигает курсор. «акрытие строки мы показываем с помощью символа / - так будет изображатьс€ в таблице выполнени€ маркер конца строки. ћаркер конца строки Ц невидимый символ, результатом вывода которого в OUTPUT €вл€етс€ по€вление новой строки.

Ј ѕоследн€€ строка программы, слово END, прекращает выполнение программы и возможность вывода данных в OUTPUT.  урсор и маркер конца строки пропадают, в OUTPUT остаетс€ строка HELLO как результат выполнени€ программы.

ћы можем поместить другие строки внутри предложений WRITE и WRITELN и, соответственно, получим другой OUTPUT

 

PROGRAM PrintGreeting(INPUT, OUTPUT);

BEGIN

WRITE(СHELLOТ);

WRITE(С Т);

WRITELN(СTHEREТ)

END.

 

OUTPUT: HELLO THERE

 

 ому-то может показатьс€ странным, но пробел €вл€етс€ таким же символом как, например СLТ и он может быть напечатан в OUTPUT. ѕостроим таблицу выполнени€ дл€ программы PrintGreeting

 

  OUTPUT
PROGRAM PrintGreeting(INPUT, OUTPUT); BEGIN WRITE(СHELLOТ); WRITE(С Т); WRITELN(СTHEREТ) END. _ _ HELLO_ HELLLO _ HELLO THERE/_ HELLO THERE

 

ѕрограмма VerticalGreeting выводит более одной строчки в OUTPUT

PROGRAM VerticalGreeting(INPUT, OUTPUT);

BEGIN

WRITELN(СHELLOТ);

WRITELN(СTHEREТ)

END.

 

“аблица выполнени€ дл€ программы VerticalGreeting

  OUTPUT
PROGRAM VerticalGreeting(INPUT, OUTPUT) BEGIN WRITELN(СHELLOТ) WRITELN(СTHEREТ) END   _ _ HELLO/_ HELLO/THERE/_ HELLO THERE

 

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

 

ќператор WRITELN может быть использован без данных дл€ того чтобы закрыть строку в OUTPUT. “аким образом с помощью оператора WRITELN мы можем разметить данные в OUTPUT на нескольких строках.

 





ѕоделитьс€ с друзь€ми:


ƒата добавлени€: 2015-01-25; ћы поможем в написании ваших работ!; просмотров: 1315 | Ќарушение авторских прав


ѕоиск на сайте:

Ћучшие изречени€:

Ќе будет большим злом, если студент впадет в заблуждение; если же ошибаютс€ великие умы, мир дорого оплачивает их ошибки. © Ќикола “есла
==> читать все изречени€...

665 - | 528 -


© 2015-2023 lektsii.org -  онтакты - ѕоследнее добавление

√ен: 0.008 с.