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

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

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

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

Функция пе)еЕе обьект освободит занятую под указанный объект память, выделенную с помощью функции пеи. П.4. ГОВТВАМ Пример с пояснениями В примере, приведенном в листинге П.б, происходит суммирование элементов вектора. Со времени систем пакетной обработки сохранилось правило, что числовые метки опеоаторов записываются в позициях со 2-й по б-ю, а символ Е в первой позиции обозначает комментарий.

Каждый оператор записывается на одной строке, кроме случая, если в шестой позиции следующей строки записан любой символ, что означает продолжение предыдущего оператора. Листинг П.б. Пример суммирования массива на языке РОРТРАП[ 1 Рй06йАМ МА1М 2 РАРАМЕТЕй (МАХ5[1=99) 3 йЕАЕ А(МАХ5[1) 4 10 йЕАО(5. 100, ЕИО 999) К 5 100 ЕОйМАТ(15) 6 1Р (К.ЕЕ 0 .Ой.

К.ОТ.МАХ5!1) 5ТОР У йЕАО *, (А(1).1=1.К) 0 Рй!МТ *. (А(!),1=1,К) 9 Рй[МТ *,'5ИН ', 56М(А,К) 10 60 ТО 10 602 Приложение, Обзоры языков 11 999 Рй!ЙТ *,"А11 Осле" 12 ВТОР 13 ЕЙО 14 С ПОДПРОГРАММА СУММИРОВАНИЯ 18 ГОЙСТ!ОЙ 5ОМ(У,Й) 16 ЙЕАС : У (Н) 1 Новый стиль объявления 17 5ОМ " 0.0 18 ОО 20 1 - 1.Й 19 5ОМ 5ОМ + Ч(1) 20 20 СОЙТ1ЙОЕ 21 йЕТОйй 22 ЕЙО Пробелы игнорируются, поэтому для облегчения читаемости программы их можно свободно вставлять в любое место, например для обозначения вложенных блоков операторов, как показано в листинге П.б. К сожалению, многие програм- мисты на языке г ОКТКАХ придерживаются правила записи операторов с 7-й по- зиции. Однако это только руководящие принципы, и хорошие программы содер- жат много пустого места для улучтпения читаемости. Порядковые номера строк в левой части листинга П.б не являются частью программы, они приведены здесь только для облегчения разбора примера.

Строка 1. Имя программы МА1М. Строка 2, МА)(5!2 — определенная программистом константа. При трансляции данной программы используется значение 99, а не имя МА)(5!2. Строка 3. Описывается одномерный массив действительных чисел размером 99, границы изменения штдекса от! до 99. Нижняя граница полагается равной единице. Строка 4. В этой строке происходит считывание размера массива и зались его в переменную Й. Поскольку эта переменная не описана, она по умолчанию является целой.

Цифра 5 после оператора ЙЕАО является ссылкой па входной файл, которым является устройство стандартного ввода (например, клавиатура). Цифра 6 указы- вает на стандартный выходной файл (например, дисплей), Строка 5. Здесь оператор ЕОЙМАТ устанавливает, что данные будут целыми (1 формат) и займут пять позиций в строке ввода. Формат Е ((!хетт) является < фик- сированнымл вещественным. Например, вещественное число 5,123 могло бы иметь формат Е5. 3, а это означает, что для представления числа необходимо 5 символов, причем 3 крайних символа справа расположены после десятичной точки.

Строка 7. Оператор йЕАО считывает значения элементов массива от Я(1) до А(Й). Вместо использования оператора ЕОЙМЯТ (как в операторе ЙЕАО(5,101)), звездочка здесь означает использование управляемого списком оператора ЙЕАО, который по- следовательно считывает и анализирует вещественные числа из входного потока. Переменной 1 присваиваются значения, которые действуют только внутри этого оператора.

Строка 10. В языке КОКТКАХ 77 пет конструкции ипт1е. Оператор, записан- ный в этой строке, передаст управление назад, оператору, помеченному меткой 10, для считывания очередных данных массива. Строки 4-10 эффективно создают конструкцию ыбт1е не конец файла Оо Обработаешь следующий кассиа елб П.4. ГОР!ТЕТА!Ч 603 Сглрока 13.

Конец главной программы. Строка 14. Комментарий. Может использоваться в любом месте программы. Строка 15 — 22. Подпрограмма-функция 50М. Эта функция компилируется отдельно от основной программы. Для передачи информации компилятору нс используется информация из главной программы. Ошибочная строка ЕОНСТ!ОН 5ОМ!Ч.Н.М) также буде~ компилироваться, но может дать сбой, когда загрузчик попытается обьединить эту подпрограмму с главной программой. Строка 16.

Хотя массив задан как У С Ю, в вызове функции 50М в строке 9 он ссылается на статически размещенный параметр, вещественный массив А!99) в строке 3. Здесь же показан стиль объявления, используемый в ГОКТКАХ 90, с применением символа::. Также ЕОКТКАХ 90 поддерживает встроенные комментарии, для чего используется восклицательный знак! . Строка 1В.

В цикле 00 устанавливается начальное значение счетчика 1 равное 1, а затем ! увеличивается до М. Метка обозначает конец цикла. Если приращение не равняется 1, то требуется е!цс один параметр: ОО 20 д= 2.20.2 В этом цикле переменная О будет принимать все четные значения от 2 до 20. Строка 19. Возвращаемое ГОКТКАХ-функцией значение присваивается имени этой функции. Строка 20.

Оператор СОМТ1МОЕ является пустым и используется в основном только с меткой. Здесь он заканчивает цикл 00. П.4.1. Объекты данных Переменные н константы. Имена переменных могут быть длиной от 1 до 31 символа, начинаются с буквы и могут содержать буквы, цифры и знак подчеркивания ч .

ЕОКТКАХ нечувствителен к регистру, то есть РВ1МТ, рг!пг, Рг1пТ и Ршпс обозначают одно и то же, Традиционно программы на языке ЕОКТКАХ писались с использованием верхнего регистра, но в настоящее время программисты, пишущие па ГОКТКАХ, смешивают верхний и нижний регистры, как в большинстве других языков программирования. Переменные не обязательно объявлять явно. Явное объявление выглядит слсдуюшим образом: ВЕЯС А.

В, 5ОМ ОООВСЕ РЙЕС!5!ОН О, В СОО!САЕ . Т Описание переменной Т соответствует синтаксису ЕОКТКАХ 90. Если не приведено явное описание, то в силу вступает соглашение об именах, основанное на определении типа переменной по первой букве ее имени. В соответствии с соглашением об именах, если имя переменной начинается с букв из диапазона 1-М, ее тип определяется как 1пге9ег (делал), а вес остальные переменныс определяются как геа1 !вещественныв~. Однако программист может изменить соглашение об именах, используемых в каждой подпрограмме, если начнет описание подпро!раммы с оператора !МРЕ1С!Т.

Например, оператор !МРС!С!! !Н!ЕОЕШЯ-2! 604 Приложение. Обзоры языков расположенный в начале подпрограммы, указывает, что все локальные переменные, не объявленные явным образом, имеют тип ) пгеоег. Объявление !МРОС1Т ИОНЕ отключает все соглашения по умолчанию в ГОВТКАИ) 90, в результате чего любая необъявленная переменная воспринимается компилятором как ошибка. Это хороший способ контроля, который следует использовать в любой программе. Константы, определяемые программистом, можно создавать с помощью оператора РАКАМЕТЕК, задаваемого в начале подпрограммы: РАКАМЕТЕК )КМАХ-100. М10РТ-50) При описании типа константы также применяется соглашение об именах либо константы можно описывать явно: КЕАЕ, РАКАМЕТЕК ЕР5110Н = .0012 В языке ЕОВТВАТН) используется статическая проверка типов, но она неполная.

Многие возможности языка, включая параметры в вызовах подпрограмм и использование блоков СОММОИ, не могут быть проверены статически — отчасти потому, что подпрограммы компилируются независимо. Конструкции, которые не могут быть проверены статически, обычно остаются непроверенными во время работы программ на яэыкс гОР5ТР5А)ч. Числовые типы данных. Для иельа, вещественных и вещественных удвоенной точности числовых типов обычно используется прямое аппаратное представление чисел. Комплексный тип (совр1ех) представляется парой вещественных чисел (гез1), под которые отводится блок из двух машинных слов.

Для арифметических действий и преобразований между четырьмя числовыми типами имеется широкий набор элементарных операций. Основные арифметические операции (+, —, *,!) и операция возведения в степень (**) дополняются как болыпим набором стандартных встроенных функций, включая тригонометрические и логарифмические функ)1ии (51п, со5, Йвп, 109), операцию извлечения квадратного корня (50гг), нахождения максимального (0)вх) и минимального (0)1п) числа, так и явными функциями преобразования типов данных для различных числовых типов. Также имеются обычные операции сравнения числовых значений, которые записываются следующим образом.

Логический тип данных. Булез тип называется логическим (ЕОО)СЯЕ), литеральными константами этого типа являются . ТРОЕ. и ЕЯЕ5Е.. Основные булевы операции представлены операциями . ИОТ, АИО. и .ОК . Булеза эквивалентность нее отрицание обозначаются как ЕОН. и, ИЕОу. соответственно. Логические выражения с числовыми данными можно конструировать обычным способом(например,(П.ЕТ 7).ОК.(В ВЕ.15)). Указатели. Более старые версии г ОВТВА)И не поддерживают указателей, поскольку все данные размещаются статически. Следовательно, построение списко- п.4.РОР)те)Ан 605 вых структур на языке ГОКТКАХ часто подразумевает использование больших массивов, где индекс массива служит указателем на следующий элемент списка.

Такая процедура работает эффективно, если все размещаемые структуры одного типа, Олнако при конструировании программ, в которых созлаются произвольные структуры данных, возникают трудности. В версии ГОКТКА)ч) 90 указатели добавлены как объекты нового типа данных. Указатели объявляются следующим образом: !МТЕ6ЕМ, РО)МТЕР: Р Здесь устанавливается, что Р является указателем на целую переменную.

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

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

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