Главная » Все файлы » Просмотр файлов из архивов » PDF-файлы » К. Йенсен, Н. Вирт - Паскаль - Руководство для пользователя

К. Йенсен, Н. Вирт - Паскаль - Руководство для пользователя, страница 9

PDF-файл К. Йенсен, Н. Вирт - Паскаль - Руководство для пользователя, страница 9 Информатика (37419): Книга - 1 семестрК. Йенсен, Н. Вирт - Паскаль - Руководство для пользователя: Информатика - PDF, страница 9 (37419) - СтудИзба2019-04-28СтудИзба

Описание файла

PDF-файл из архива "К. Йенсен, Н. Вирт - Паскаль - Руководство для пользователя", который расположен в категории "". Всё это находится в предмете "информатика" из 1 семестр, которые можно найти в файловом архиве МГУ им. Ломоносова. Не смотря на прямую связь этого архива с МГУ им. Ломоносова, его также можно найти и в других разделах. .

Просмотр PDF-файла онлайн

Текст 9 страницы из PDF

ПЕРЕЧИСЛЯЕМЫЕ ТИПЫ Определение любого перечисляемого типа задает упорядоченное множество значений, перечисляя имена констант, обозначающие эти значения. Ординальный (порядковый) номер первой из перечисленных констант равен О, следующей — 1 и т. д. Р и с. б.!. Синтаксическая диаграмма ддя Перечисляемого тына Пример: Суре Со!ос = (ММ!Се, Вес, В1ие, уе11ои, Рнгр1е, Огееп, Огапве, В!асК); Зех = (Ма1е, Еева1е); Оау = (Моп, Тие, Иеа, Тпи, Ег(, Зао, Зип); Орегавога = (Р1иа, Мхпиа, Тгвеа, ОгнЫе); СопСгпепС = (А(г!са, АпСагсСхса, Аа!а, Аиасга1!а„ Еигоре, МогСПАвег!са, ЗооСМАвег!са) 6. Перечисляемые а Ваалааанггыа галы 6) Пример неверного определения: Суре Иогййау = (Моп, Тпеа, Нес, Тппг, Ггг, 3аС); Ггее = (Зае, 3пп); ьпсс(И!пс) = )сион ргев (В)пе) = йей ого(В)пс) = 2 апсс(Х) напрнмср ргеп (Х) ого (Х) следующее аа Х предшествующее Х ордннальный номер Х Если предположить, что С и С~ относятся к типу Со(ог, приведенному выше,  — к типу Воо1еап, а Яь ..., 5, — некоторые произвольные операторы, то вполне осмысленны следующие операторы: Тог С := В1асй йоипзо Вей со 31 нй(1е (С1 <> С) апй В Оо 31 И С > Ий(зе Сйеп С := ргали(С) сазе С о( Вес, В1пе, Уе11огн 3!; Рогр1е: 32; Сгееп, Огапйе: 33; ИЫСе, В1асй: 34 епй .

Программа 5.! иллюстрирует работу с перечисляемыми типами: ргойгае ОауТ1ее(ОпзрпС); (Программа 5.1 — Пример перечисляемых типов.) Неверен он из-за того, что тип константы Ва! — двусмыслен. Вы уже познакомились с предопределенным типом Воо(еап, который можно было бы определить следуюшим образом: (уре Воо!еап = (Та(зе, (гпе); Это автоматически предполагает, что для имен констант !а!зе и 1гпе справедливо соотношение (а!зе (гпе. Ко всем перечисляемым типам применимы операции Отношения (если, конечно, оба операнда одного типа): =, (), <=, >= и ).

Порядок устанавливается последовательностью перечисления констант. Для аргументов, относяШихся к ординальным типам, суШествуют такие предописанные функции: 62 Тгукоесдство для пользователя Суре раув = (Иоп, Тце, Иед, ТЬц, Гг!, ЯаС, Яцп); йпеп = (Раво, Ргевепс, Гцоцге); наг Оду: Одув; уевсегг)ау, Тобау, Топоггаи: раув; Т1ае: Ипеп; ЬеЯ1п Тоцау := Яцп ( В Паскале вводить значение перечисляемого типа нельзя ); Типе := Ргевепо; гереас т( Т1ве = Ргевепс Спеп ( Вычисление Тгевтегс)ау) Ьея1п Т1ае := РавС; 11 Толпу = Иоп Спеп Уеввегбау := Яцп Ф е1ве уевоегоау := Ргец(Тобау); Оау := Уевоегцау епо е1ве 11 Ттае = Раво Спеп )Вычисление Тоягогтоглг) Ьея1п Т)пе := ГцСцге; 11 Тоцау = Яцп Спел Топоггои := Иоп е1ве Тоаоггои:= Яцсс(Тоцау); Оау := Тоаоггои епб е1ве ) Т1ае = Гцсцге; Возврат к Ргевепо ) ЬеЯ(п Ттае := РгевепС; Оау := Тобау епо; сазе Оау о1 Иоп: йг!Се(ОцСрцС, 'Иоппау'); Тце: йг1се(ОцСрцС, 'Тцевдау'); Иод: Иг!Се(Оцорцс, 'Иебпевдау'); Тпц: Иг!Се(ОцврцС, 'ТЬцгвОау'); Гг1: Юг!Се(ОцсрцС, 'Гг)ааУ'); Яав: Иг1Се(ОцорцС, 'ЯаСцгбау'); Яцп: Иг!Се(ОцорцС, 'Яцпбау') , епо; 5.

Перечисляелме и диопоеонные типы ба Нг!се1п10иьрп1, ОгО(Т1ае) —.1) ипЦ1 Т1ее = Ргеееп1 епа . Дает в качестве Результата: Зетстдау -1 йепоеу 1 зппдау О 5.2. ДИАПАЗОННЫЕ ТИПь) Этот тип можно определить, указав некоторый диапазон значений нз любого другого предварительно определенного ординального типа — он называется базовым 1ЬозЦ типом. Диапазон определяется просто указанием наименьшего и наибольшего постоянного значения, входящих в диапазон; причем нижняя граница не должна превышать верхнюю. Выделять диапазон, относяшийся к типу Кеа!, нельзя, ведь зто не ординальный тип.

Констен|е — — — Е=.= Я= Р и с. 5.2. Сиитиксичсския диаграмма для Диопаеонного тапа Основание диапазонного типа определяет и операции над значениями данного диапазонного типа. Напоминаем: совместимость при присваивании с ординальным типом предполагает, что переменная и выражение относятся к одному типу или к диапазонам одного ордннального типа, причем значение выражения находится вн) три замкнутого интервала, заданного типом переменной. 1!усть, например, дано описание: уат А: 1..!О; В: 0..30; С: 20..30; Базовый тип для переменных А„В и С вЂ” 1п1едег. Следовательно, все присваивания: А:=В; С:= В; В:=С; считаются допустимыми, хотя нх выполнение иногда и може~ приводить к ошибке. Всякий раз, когда в тексте речь пойдет об ординальных типах, будем предполагать, что неявно присутствует дополнение силн диапазон упомянутого типа».

б4 Руководство дяя пользователя Пример: Фуре Оауз = (Иоп,Тое,иеовТИо,ггызаФ,Зоп) (перечисляемый тип); Иогхоауз = Моп..гг) ( диапааон "дней" ); 1пбех = О. Бз (диапазон для )пеепег) ) еФФег = 'А'..'7' ( диапазоядля Слог); ИаФога1 = О..Иах1пФ; Роз)Ф)не = 1..Мах1пФ; Диапазонные типы позволяют формулировать проблему в более наглядной форме. А для реализаторов языка появляется возможность экономить память и проводить во время выполнения программы контроль присваиваний. (В качестве примера употребления диапазонных типов см.

программу 6.1.) Если переменная относится, скажем, к типу 0..200, то она может занимать всего один байт, хотя переменная целого типа будет занимать несколько байтов. ОБЗОР СОСТАВНЫХ ТИПОВ. МАССИВЫ Простые типы (ординальные и вещественные) — зто типы, значения которых не имеют выраженной структуры. Однако в Паскале предусмотрены и другие типы: составные (или сложные) и ссылочные.. Подобно тому, как сложные операторы состоят из других операторов, составные типы — из других типов. В случае составных типов имеет смысл говорить о типе (типах) компонент и, что более важно, о методе образования или о структуре сложного типа.

Масснвовые ти Записные типы Множественные типы Файловые типы Р и с. КП Схема сосгааиых типов данных Р и с. б.2. Сиитаксияеская диаграмма для Составного типа Каковы бы ни были метод образования или структура значений, всегда можно указать предпочтительное внутреннее представление данных. Перед определением типа можно поставить префикс рас(гег) (упакованный), указывающий, что транслятор должен зко- бб Руководство оля иольвовителл номить память даже за счет дополнительного времени выполнения и увеличения самой программы из-за необходимости операций по упаковке и распаковке. Если пользователь экономит память в ущерб эффективности, то он за это и отвечает. (Фактический эффект от экономии памяти зависит от реализации и в действительности может быть нулевым.) 6.1.

МАССИВОВЫИ ТИ1! Любой объект массивового типа (массив) состоит из фиксированного числа компонент (число определяется при введении этого массивового типа). Все компоненты относятся к одному типу, его называют типом компонент. Каждая компонента может быть явно обозначена с помощью имени переменной-массива, за которым в квадратных скобках следует индекс. Индексы можно вычислять; их тип называется типом индекса. Более того, время, требуемое для селекции (доступа) любой компоненты, не зависит от значения селектора (индекса) . Поэтому о массивах можно говорить как об объектах, структура которых допускает случайный (или прямой) доступ. При определении нов11го массивового типа указывается и тип компонент, и тип индекса.

Схема его определения такова: 1уре А = аггау !Т1) о! Т2; где А — имя нового типа, Т1 тип индекса, который должен быть ординальным, а Т2 — любой тип. Массивы позволяют группировать под одним именем несколько переменных, имеющих Идентичные характеристики. Описание переменной-массива дает имя всему массиву целиком. Ко всей переменной-массиву применимы две операции: присваивание, и выборка (селекция) компоненты.

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

Синтаксическая диаграмма для Переменной-комионеиты К Обвар светленых типов. Массивы 67 []римеры описаний переменных: Иеаогу: аггау [О..Иах] о! 1пСебег Я!сХ: расЬеб аггау [Оауа] о! Воо1еап Примеры простых присваиваний: Иеаогу[1+3] := Х В[сЬ[иоп] := Сгве (Конечно, мы здесь предполагаем, что вспомогательные переменные описаны.) Приведенные ниже программы б.! и 6.2 иллюстрируют применение массивов. Разберитесь, как можно было бы усовершенствовать программу б.2, чтобы она строила график более чем одной функции.

Сделайте зто как с помощью массивов, так и без них. ргобгаа И!плах(1прво,оворвС); [ Программа б.! — Поиск максимального и минимального числа а яадвнном списке. 1 сопя! Иахз!Се = 20; Суре Ы яСБ!ге = 1..Иахб!Се; ваг 1Сеп: 1!вСЗ!Се; Итп, Иах, Г!гхС, Зесопб: 1псебег; А: аггау [Йясз!хе] о! 1пеебег; Ьебхп (ог Сова:= 1 Со Иахзнге бо Ьео!и Иевб(1првс, А[1Сеа]); Иг!Се(бверво, А[1Сеа] ;4) епб; г Иг!Се1п(бвсрвС); И!и := А[1]; Иах:= Инп 1сеа;= 2; ию!е 1Сеп < Иахачхе бо Ьеб!и Г!гяС := А[1!ее]; Зесопб:= А[1сеа+Ц; !! Г!гяС > Зесопб Соеп Ьеб[п и 1!гяС > Иах СЬеп Иах := 1!геС; !! Бесове < И!и Сбеп И!п := Зесопб епб е1ее Ьее!и П Зесопб » Мех Спеп Мех : Зеаопб; П Г!геС < М!и СЬеп М!и: Г!геС епб; Таев := Тоее + 2 епб; П 1Сев = МахЗие Спеп И А[МахЗ!ге] » Мах СЬеп Мех; А[МехЗ!ге] е1хе П А[МехЗгге] < М!и Спеп и!и := А[ИехЗ!ге]; Мг!Се!п(оаерпе, Мах, М!и) епб .

Дает в качестве результата: 35 68 94 7 88 -5 -3 12 35 Я -6 3 0 -2 74 88 52 43 5 4 94 -6 рго8гав ОгарЬ2(ОасроС); ( Программа 6.2 — Формирование графического представления (с осью Х] Функции: [(Х) = ехр(-Х) е е!п(2"РгьХ) сапе! ХС!пез = 16 ( число строк на единицу абсциссы Зса1е = 32 ( число символов на единицу ординаты ); Хегот = 34 ( положение оси Х ); ХС!в!С = 32 (размер графика в строках); УС!в!С = 68 ( размер графика в символах); Суре Оова[п = ]..УС!в!С,' хаг Ое1Са: йеа1 ( приращение вдоль абсциссы); ТноР[: Кеа! ( 2 ' Р! = 8 " АгсТап(1.0) ): Х, У: Кеа1; Ро1пС: 1пае8ег; Р1оС, ТРоз!С!оп, Ехаепо; Оава!п; УР1аС: еггау [Оова!и] а! СЬаг; Ье8!и ( инициация констант: ') Ое1Са := 1 / Х11пее; ТкоР[ := 8 ' АгсТап(1.0); [аг Р1аС := 1 Со у1ип!С бо УР1оС[Р]аС] [ог Ро1пС := 0 Со ХС!в!С бо Ье8!и К := Ое1Са " Ро!пС; у := Ехр(-Х) ' 3!п(!нор! ' Х); УР1оЦЕегоУ):= ': '; Урое!С!оп := йосси(Ясе1е ' У) + негру; УР1оЦУРое!С!оп) Ц УРое!й!оп < ЕегоУ Сйеп Ехоеп! ;= УегоУ е1ее Ехоепй := УРае1И оп; (ог Р1ой:= 1 оо Ехоеп! бо йгйе(Опарой, УР1ао[Р1оЦ); Кг!Ее1п(Опорой); УР1оЦ(УРое!!!оп) епд епб .

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