Главная » Просмотр файлов » Т. Пратт, М. Зелковиц - Языки программирования - разработка и реализация (4-е издание_ 2002)

Т. Пратт, М. Зелковиц - Языки программирования - разработка и реализация (4-е издание_ 2002) (1160801), страница 179

Файл №1160801 Т. Пратт, М. Зелковиц - Языки программирования - разработка и реализация (4-е издание_ 2002) (Т. Пратт, М. Зелковиц - Языки программирования - разработка и реализация (4-е издание_ 2002)) 179 страницаТ. Пратт, М. Зелковиц - Языки программирования - разработка и реализация (4-е издание_ 2002) (1160801) страница 1792019-09-19СтудИзба
Просмтор этого файла доступен только зарегистрированным пользователям. Но у нас супер быстрая регистрация: достаточно только электронной почты!

Текст из файла (страница 179)

Комментарий в Ровгзсг)рг начинается с символами. Строка 2. Иьтя (литерал) Пе1уе1з са помещается в стек операнлов, а затем функция 11 пт) боп1 заменяет это имя на определение шрифта в стеке операндов. НеЬеь(са— это достаточно распространенный шрифт без засечек, Типичным шрифтом с засечками является шрифт Тппев Котпап. Строка 3. Фу и кц ия ьс а1 егоп1 ма с штаб ирует шрифт Н е1 у еб са до кегля 20 (20 точек). В обычных текстах используется шрифт кегля 10 или 11.

Расстояния измеряются в точках; одному дюйму соответствует 72 точки. Строка 4. В1рифт, заданный в стеке операндов (Не!рейса кегля 20), становится текущим шрифтом для программы. Весь текст, который печатает программа, будет печататься именно этим шрифтом, если не будет задан новый шрифт. Строка 5. Курсор перемещается в точку с координатами (200. 400), то есть сдвигается примерно на 3 дюйма вправо от левого края страницы и на 6 дюймов вверх от нижнего края.

Начало координат (точка (0. 0)) располагается в левом нижнем углу страницы. Строка б, тоглтабт ь определяется как функция в пользовательском словаре ызегб1с1, которая помешает целое, расположенное в вершине стека, на страницу. Она создает строку из 10 нулей (10 вггт пд), берет верхний элемент из стека операндов, преобразует его в десятичное число, помещает его в строку (сугв) и затем закрашивает эту строку, начиная с текущей позиции курсора на странице (5Поы). Строка 7. вдг определяется как функция, которая дублирует верхний элемент в стеке и перемножает два верхи их элемента (то есть возводит этот элемент в квадрат).

Строка 8. бозпдт определяется как функция, которая получает в качестве операндов 5 и п и вычисляет и + 1 и 5 ь (и 11' (см. объяснения в обзорс языка 8.2. Функция ехсП используется вместо функции выдр языка Рогг!т, а 1 т пдех заменяет оуег из Гог11з). П.10. Роз(эсг(р( 651 Использует два верхних элемента стека в качестве паралштров и тзменяет их суммой их значений Помещает элементы параметра-массива в стек ниже массина Создает массив длиной, равной значению параметрз Сохраняет и элементов а парамст!и-массиве, который является аерхним элементом стека аСШ2,1) а!оал(!.и.!) аггау(1.1) ат!оге(п+1.

И Сравнннает лна верхних элемента стека и помешает в вер!пину стека логическую величину (!гпе или Га! эе). Вос! сап может принимать значения ес, пе, Ое, От, 1е или 1!. Кроме того, люжпо испольаовать операции апс, ог, по! и хог в их обычном значении Воо!еаы 2, И Извлекает все элементы из стека, очищая его г!еаг(п О) с!еагтсангт(п.О! сору(п+1,2п) сосо!товагс(п,п+1) Извлекает и элементов стека, начиная с верхнего и верхних элемектов стека лублируются и располагаются в стеке Пересчитываются элементы стека, начиная с указанного, и полученное значение помещается в стек Текущий шрифт помещается в стек. (Эту операцию можно использовать для изменения размера текущего шрифта, даже не зная, какой он.

Наприл!ер, сиггепс(оп! 2 тса1егоп! тет(опт в 2 раза увеличивает размер текущего Шрифта и устанавливает полученный и!рифт в кзчествс текуп(его) а Ь с глг! преобразует число а в систему счисления по основанию Ь, сохраняет полученное значение в строке с и возвращает ппдстроку, содержап!ую а. Так, 123 10 10 з!г!пэ счгт возвратит строку (123).!23 2 10 т!шпч сггт преобразует число 123 в двоичную систему и возвратит это число как последовательногть Лвоичных цифр (а ь се! создаст в пользовательском словаре цтегшс! элемент с именем а, опрелеляюп(ий функцию по ее описанию Ь. Обь!чно Ь задается как список операций (х у т) стгз(3.1) Сеп2.0) С)т(2.1) ш т заменяет два верхних элемента стека на их частное Строка 9.

В результате выполнения функции ()озци с параметрами 3 и б получается 4 и 22. Создаются копии целых чисел 4 и 22, и число 22 печатается. Затем печатается строка из трех пробелов, и в текущей позиции курсора печатается 4. Строка 10. Стек очищается от оставшихся в нем значений 4 и 22.

Строка 11. Курсор перемешается примерно иа треть дюйма (25 точек). Строка 12. В результате выполнения операций 0 1 9 (рор Оозцп)) 1ог числа 0, 1, ..., 9 будут последовательно размещаться в вершине стека с последующим выполнением процедуры (рор ()оэцп)). на каждой итерации цикла вызываются функции рор (чтобы избежать использования индексов) и ()оэцп), при этом стек операндов последовательно изменяется: (О, О) ==) (), )) =Ф (2, 5) ==) (3, )4) =Ф =Ф (4, 30) =Ф ... (10,385).

Затем функция 1огз)ас)'! помещает верхний элемент стека (385) на страницу. Строка 13. Полученная страница распечатывается. Примеры операций Розсзстйрс. Для каждой операции указывается число необходимых для ее выполнешгя параметров (верхние элементы стека) и число вычисляел!ых значений, помешаемых в стек, Для обычной бинарной операции (например, ВО()), которая получает два параметра из стека н заменяет их одним результируюшим значением, задание параметров будет выглядеть как (2, ) ). б52 Приложение.

Обзоры языков Очр дублирует значение верхнего элемента стека, добавляя его в вершину стека Оцр(1.2) Меннет местами дна верхних элемента стека ехси(2,2) 1лии1оие(1.1) По указанному имени шрифта из системного словаря помешает его в вершину стека а Ь с ргос 1ог поочерелно помещает а, а + Ь. а л 2Ь ... в вершину стека до тех нир, пока це будет постигнуто значение с, вызывая иа каждом шаге процедуру р~ ос.

Индекс а остается н стеке, если только процедура ргос не удалит его оттуда (ог(з.а) з ргсс 1ога11 вызывает г(роцсдуру ргис для каждого элемента строки л Ь ргос л1 выполняет процедуру ргос,если Ь имеет значение тгце гога))(2,а) лц2,0) л(е)зе(З 0) Ь ргас1 ргос2 лге)ле выполняет процедуру ргос!, если Ь имеет значение сгпе, и ргос2, если Ь имеет значение 1а) зе Последовательность а Ь с .

ц и лицехберетл-йэлементстека и дублирует его в вершине стека, и=0 соответствует верхнему эяементу стека в текущий момент, и-1 соответствует предыдущему элементу, и т. д. Операцию днр можно заменить оиерзцией 0 шлеи 1илех(и+2.и+3) Помещает в вершину стека число элементон параметра-массива Помешает в стек метку Два параметра этой операции представляют собой координаты х и у относительно левого нижнего угла страницы. Расстояние изл(еряется в точках (в люйне содержится 72 точки) 1еж)тм!дв наг1(0,1) вече(о(2.0) ич1(2 1) ин1 заменнет дна вгрхтлх элемента на произвсление их значений Удаляет верхний элемент стека Завер~иает выполнение Роз(асор( рор(1. 0) Онп(0.0) геэеат(2.1) плоче)о(2.0) го11(и+2 и) зса1е1ои1(2.

1) и ргсс гереа1 повторяет и раз процедуру ргос Устанавливает новос положение курсора опнвппслыю тскуп(сй позиции а Ь с ., О в и го11 вызывает циклический сднигвобъелтон иа и пози~(ий Операция заменяет сущестнующий шрифт на лласштабированцый в соответствии с заданным масштабным множитсдем Устанавливает масштабироваш|ый шрифт как текущий !'асполагает верхний злелгеит стека на странице Печатает текущую страницу и затем очищает се Создает строку, состоя(цую нч нулей, длина строки оцрепслястся параметром операции (то есть 10 лгщиз создает строкуиз 10 нулей) лнс заменяет два верхних элемента стека разностью их значений зе11ои1(1,0) Фон(1.

0) зисмраче(О.О) з1г1иО(1.1] зиЬ(2.1) Операции среды. Эти в(ерации сохраняют или восстанавливают состояние интсрпретатора Розьзсг)р(1 + 5аче(0.1) и ге5Ьоге(1,0) — операция 5аче помещает копию текущей среды в стек, а гез логе восстанавливает сохраненную среду. Эти операции оказываются полезными, если, например, к среде применяется масштабирование и преобразование, а потом требуется вернуться к исходной среде. Эти команды также сохраняют графическое состояние. + дзачЕ(0. 1) и дге5(оге (1, О) — операция дзачЕ сОхраняЕт тЕкущЕе графичсекОЕ состоя)п!ьь а дге5соге ВосстанаВлнВает его. п.11. Рго]оо 653 П.10.2.

Графические команды Эти команды используются для создания рисунков иа странице. х у г а Ь згс вычерчиваетдугу окружностис центром в точке с коорлинатами х и у и ралиусом г от угла э (в градусах) до угла Ь. Например, чтобы нарисовать окружность с цснтрол! в точке с координатами (х, у), нужна следуююая командж х у вохе!о х у г 0 050 эгс агс(5.0) гдех" х+ г Замыкает контур, проводя линию к точке, которан указана командой искрами Помещает координаты текущей точки в стек Закрашивает область, ограниченную текущим контуром, цветом заливки. Для очистки области можно воспользоваться этой кома|шой, установив белый цвет в качестве текущего.

Для об!литов неправильной формы используется правило четности и иечетности За краш извет страницу белым цветом (то есть стирает все содержимое страницы) Закрещивает область ко!пура цветом заливки. Для того чтобы стереть часть страницы, ее можно закрасить белым цветом с помощью этой команды Проводит линию из прелыдушсй точки в точку, координатами которой явля)отса параметры этого оператора Начинает новый контур с текущий точки Масштабпрует систему координат, улиюжая координаты х ну этой системы на гоотвстствующис параметры операции (множители) а ь зе!Оззь устанавливает шаблон для вычсрчинания линии. з — вто массив, элементы которого извлекаются циклически и онрсделяют иослеловательность отрезков и пробелов в линии.

Характеристики

Список файлов книги

Свежие статьи
Популярно сейчас
Зачем заказывать выполнение своего задания, если оно уже было выполнено много много раз? Его можно просто купить или даже скачать бесплатно на СтудИзбе. Найдите нужный учебный материал у нас!
Ответы на популярные вопросы
Да! Наши авторы собирают и выкладывают те работы, которые сдаются в Вашем учебном заведении ежегодно и уже проверены преподавателями.
Да! У нас любой человек может выложить любую учебную работу и зарабатывать на её продажах! Но каждый учебный материал публикуется только после тщательной проверки администрацией.
Вернём деньги! А если быть более точными, то автору даётся немного времени на исправление, а если не исправит или выйдет время, то вернём деньги в полном объёме!
Да! На равне с готовыми студенческими работами у нас продаются услуги. Цены на услуги видны сразу, то есть Вам нужно только указать параметры и сразу можно оплачивать.
Отзывы студентов
Ставлю 10/10
Все нравится, очень удобный сайт, помогает в учебе. Кроме этого, можно заработать самому, выставляя готовые учебные материалы на продажу здесь. Рейтинги и отзывы на преподавателей очень помогают сориентироваться в начале нового семестра. Спасибо за такую функцию. Ставлю максимальную оценку.
Лучшая платформа для успешной сдачи сессии
Познакомился со СтудИзбой благодаря своему другу, очень нравится интерфейс, количество доступных файлов, цена, в общем, все прекрасно. Даже сам продаю какие-то свои работы.
Студизба ван лав ❤
Очень офигенный сайт для студентов. Много полезных учебных материалов. Пользуюсь студизбой с октября 2021 года. Серьёзных нареканий нет. Хотелось бы, что бы ввели подписочную модель и сделали материалы дешевле 300 рублей в рамках подписки бесплатными.
Отличный сайт
Лично меня всё устраивает - и покупка, и продажа; и цены, и возможность предпросмотра куска файла, и обилие бесплатных файлов (в подборках по авторам, читай, ВУЗам и факультетам). Есть определённые баги, но всё решаемо, да и администраторы реагируют в течение суток.
Маленький отзыв о большом помощнике!
Студизба спасает в те моменты, когда сроки горят, а работ накопилось достаточно. Довольно удобный сайт с простой навигацией и огромным количеством материалов.
Студ. Изба как крупнейший сборник работ для студентов
Тут дофига бывает всего полезного. Печально, что бывают предметы по которым даже одного бесплатного решения нет, но это скорее вопрос к студентам. В остальном всё здорово.
Спасательный островок
Если уже не успеваешь разобраться или застрял на каком-то задание поможет тебе быстро и недорого решить твою проблему.
Всё и так отлично
Всё очень удобно. Особенно круто, что есть система бонусов и можно выводить остатки денег. Очень много качественных бесплатных файлов.
Отзыв о системе "Студизба"
Отличная платформа для распространения работ, востребованных студентами. Хорошо налаженная и качественная работа сайта, огромная база заданий и аудитория.
Отличный помощник
Отличный сайт с кучей полезных файлов, позволяющий найти много методичек / учебников / отзывов о вузах и преподователях.
Отлично помогает студентам в любой момент для решения трудных и незамедлительных задач
Хотелось бы больше конкретной информации о преподавателях. А так в принципе хороший сайт, всегда им пользуюсь и ни разу не было желания прекратить. Хороший сайт для помощи студентам, удобный и приятный интерфейс. Из недостатков можно выделить только отсутствия небольшого количества файлов.
Спасибо за шикарный сайт
Великолепный сайт на котором студент за не большие деньги может найти помощь с дз, проектами курсовыми, лабораторными, а также узнать отзывы на преподавателей и бесплатно скачать пособия.
Популярные преподаватели
Добавляйте материалы
и зарабатывайте!
Продажи идут автоматически
6381
Авторов
на СтудИзбе
308
Средний доход
с одного платного файла
Обучение Подробнее