Колесный диск LegeArtis SZ22--> Лампа--> 4 класс ЛБЗ Матвеева Информатика 4 кл. Раб. тет. и ИКТ. в 2-х частях. (ЛБЗ) NEW

4 класс ЛБЗ Матвеева Информатика 4 кл. Раб. тет. и ИКТ. в 2-х частях. (ЛБЗ) NEW

4 класс ЛБЗ Матвеева Информатика 4 кл. Раб. тет. и ИКТ. в 2-х частях. (ЛБЗ) NEW



Обзор:

Урок информатики 4класс

Соколова Школа развития речи 3 кл. Раб. тет. (ФГОС) (В 2-х.частях) Соколова Школа развития речи 4 кл.

Раб. тет.(В 2-х.частях) ФГОС Тикунова Пишем сочинение по картинам русских 4.
Feb 4, 2016 · контрольные работы информатика 2 класс матвеева Slideshare uses cookies 4 improve functionality and performance, and to provide you with relevant advertising.


Матвеева Информатика 2 кл. 4.

Учебник информатика 11 класс

тет. 1 часть.(ЛБЗ) ФГОС. 1 кл. учебник в 2-х частях +cd ФГОС.
Русский язык 6кл.Учебник в 2-х частях+ СД ФГОС Русский 4 6кл.Рабоч.тетрадь в 2-х частях ФГОС Русский язык 6 кл. Учебник в 2-х чч + СД ФГОС Самостоятельные и контрол.математика 6 кл.


ГДЗ Грамматика. Ключи к упражнениям. Ю. Б. Голицынский 8 класс

Гольцова, Русский 4. Учебник для 10-11 кл.
Apr 30, 2016 · 4. Проектная работа "Составление интерактивного кроссворда.

Учебник информатика 11 класс

How to carve a scary pumpkin for halloween with knife only - no.
Педагог и психол Теор и технол курс лекц в 2-х 4 Гриценко Л.И. Педагог и психол Теор и технол курс лекц в 2-х ч2 Послушные карандаши Р/Т для дет 4-5 лет Пособие по сольфеджиро и муз диктант 2-3 кл
Feb 11, 2018 · 4 работа № 12, задание 5, "Акробат".

Учебник по информатике, 5 класс, ФГОС. 4 Л.Л.
Франко К. Голубая планета (Энциклопедия знатока). Анонсы новых книг Ожидается поступление 4 книг в электронную библиотеку.


Oct 05, 2015 · Как занимать единицу из целой части в смешанном числе. Математика 5 класс. Математика 4 класс.

Математика 4 класс Построение углов по Петерсону начальная школа 2100

Решаем. Slideshare uses cookies to improve functionality and performance, and to provide you with relevant advertising.
If you continue browsing the site, you agree to the use of cookies on this website.
Slideshare uses cookies to improve functionality and performance, and to provide you with relevant advertising.
If you continue browsing the site, you agree to the use of cookies on this website.
See our and for details.
ISBN 978-9975-67-932-9 © Вот ссылка Gremalschi.
Alba-Iulia, 75; MD-2051, Chișinău; tel.
Editat din sursele financiare ale Fondului Special pentru Manuale.
ISBN 978-9975-67-932-9 004 075.
ФУНКЦИИ И ПРОЦЕДУРЫ 5 1.
ДИНАМИЧЕСКИЕ СТРУКТУРЫ ДАННЫХ 31 2.
МЕТОДЫ РАЗРАБОТКИ ПРОГРАММНЫХ ПРОДУКТОВ 81 3.
АНАЛИЗ АЛГОРИТМОВ 94 4.
МЕТОДЫ РАЗРАБОТКИ Здесь 114 5.
АЛГОРИТМЫ РЕШЕНИЯ НЕКОТОРЫХ МАТЕМАТИЧЕСКИХ ЗАДАЧ 172 6.
В начале учебника вводятся синтаксис и семантика изучаемых конструкций языка ПАСКАЛЬ, за которыми следуют примеры их применения и рекомендации по написанию программ, предназначенных для непосредственного выполнения на компьютере.
При изучении методов программирования изложены базовые по- нятия и математические основы соответствующих подходов, после чего приведены способы организации данных, описания алгоритмов, рекомендации по разработке и отладке программ на языке ПАСКАЛЬ.
Особое внимание уделено взаимозави- симости между способами практического внедрения изучаемых методов програм- мирования, производительностью компьютера и сложностью решаемых на нем задач.
Реализация наиболее широко известных методов программирования иллю- стрируется на примере задач, которые часто встречаются в современной жизни и изучаются в рамках других предметов лицейского цикла.
Темы учебника тесно связаны со знаниями из других областей общественной жизни, науки и техники.
Они ориентированы на решение задач, требующих боль- ших объемов вычислений, что подчеркивает существенную роль математического мышления в появлении и развитии информатики.
Примеры, упражнения и ин- дивидуальные задания, включенные в учебник, помогут лучше понять роль и ме- сто компьютера, его влияние на развитие математики, физики, химии, социально- гуманитарных наук.
Для большинства тем учебника были разработаны обучающие программы, что позволяет индивидуализировать процесс обучения, организовать практические занятия и развивать творческие способности каждого ученика.
Материал учебника ориентирован на развитие следующих компетенций: нажмите для продолжения анализ задачи; деление сложных задач на более простые и сведение их к уже ранее решенным; оценка сложности алгоритмов, предназначенных для решения предложенных задач; использование 4 методов для разработ- ки алгоритмов, написания и отладки соответствующих программ.
Очевидно, что перечисленными навыками должны обладать не только будущие специалисты по информатике, но и каждый культурно развитый человек, который будет жить и работать в обществе, основанном на широком применении информационных тех- нологий.
Подпрограммы Любая сложная задача может быть решена путем ее разбиения на ряд под- Аквариумная лампа Hagen 15 4 решения каждой подзадачи записывается соответствующая по- следовательность операторов, называемая подпрограммой.
Таким образом, задача решается с помощью основной программы, в которой для решения подзадач вызываются подпрограммы.
Когда в основной программе встреча- ется обращение к подпрограмме, управление передается первому оператору вызванной подпрограммы рис.
После завершения выполнения операто- ров подпрограммы управление передается оператору основной программы, следующему за оператором вызова подпрограммы.
Programul principal Вызов подпрограмм Подпрограмма 1 Подпрограмма 2 Основная программа Рис.
Взаимодействие между программой и подпрограммой В языке ПАСКАЛЬ существуют два вида подпрограмм: функция и проце- дура.
Язык ПАСКАЛЬ содержит ряд стандартных функций, известных любой программе: sin, cos, eof и т.
Помимо этого программист может создавать собственные функции, к которым можно обращаться так же, как и к стандартным функциям.
Таким образом, концепция функции расширяет понятие выражения в языке ПАСКАЛЬ.
Процедура — это подпрограмма, которая осуществляет обработку данных, переданных в момент обращения.
В языке ПАСКАЛЬ существуют стандартные процедуры: read, readln, write, writeln и т.
Помимо этого програм- мист может создавать собственные процедуры, к которым можно обращаться так же, как и к стандартным процедурам.
Таким образом, концепция процеду- ры расширяет понятие оператора в языке ПАСКАЛЬ.
Подпрограммы объявляются в разделе описаний программы.
Обращение к https://booksarchive.ru/lampa/koltsevaya-lampa-yq-480b-selfi-lampa-s-derzhatelem-dlya-smartfona-zerkalom-i-shtativom-diametr-lampi.html и процедурам производится в разделе операторов.
Подпрограмма может обращаться и к самой себе, такое обращение называ- ется рекурсивным.
В каких операторах языка может появиться обращение к функции?
Функции На языке ПАСКАЛЬ функция описывается следующим образом: function f x1, x2.
За заголовком следует тело функции, состоящее из произвольных локаль- ных описаний D и составного оператора begin … end.
Локальныеописаниясостоятиз следующихразделов некоторыеизкоторых могут отсутствовать : label, const, type, var, function, procedure.
Последнее значение, присвоенное функ- ции f, возвращается в основную программу.
Как правило, формальный параметр из списка x1, x2, …, xn имеет вид: v1, v2.
Обращение к функции f осуществляется следующим образом: f a1, a2.
Обычно, фактическими параметрами являются выражения, значения которых передаются функции.
Связь между фактическим и формальным параметрами определяется их пози- цией в рассматриваемых списках.
Фактический параметр должен быть совме- стимым с точки зрения присваивания с типом формального параметра.
Функция Putere имеет два формальных параметра: x типа real и n типа Natural.
Функция возвращает значение типа real.
В теле функции описаны локальные переменные p и i.
При обращении к функции Putere a, b значения 3.
Отметим, что тип параметра а совпадает с типом параметра х, а тип b — c типом n.
В случае обращения к функции Putere s, t тип фактических параме- тров s, t не совпадает с типом формальных параметров — соответственно x и n.
Однако такое обращение корректно, так как соответствующие типы совме- стимы с точки зрения присваивания.
Укажите переменные, описанные в теле функции.
Напишите программу, которая выводит на экран значения n!
Напишите функции, которые для двух заданных треугольников проверяют: a одинаковы ли площади данных треугольников; б являются ли треугольники подобными; в находится ли первый треугольник внутри второго.
Процедуры Процедура продолжить чтение следующим образом: procedure p x1, x2.
Процедура может возвращать несколько результатов, но не через свое имя, а через специально предназначенные для этого переменные следующие за сло- вом var из списка формальных параметров.
Параметры из списка, вводимые через описания вида v1, v2.
Они служат для передачи значений из основной программы в процедуру.
Формальные параметры, введенные в список через описания вида var v1, v2.
Запуск процедуры выполняется путем ее вызова: p a1, a2.
В отличие от функции, обращение к процедуре является оператором.
Операторы вызова процедур вставляются в основную программу там, где требуется выполнить соответству- ющую обработку данных.
Для параметра-значения в качестве фактического параметра можно ис- пользовать любое выражение соответствующего типа, в частности константу или переменную.
Изменения параметров-значений не передаются во внеш- нее окружение подпрограммы.
Для параметра-переменной в качестве фактического параметра можно ис- пользовать только переменную.
Все изменения указанных параметров будут переданы в программу, которая вызвала соответствующую процедуру.
Процедура Lac имеет три формальных параметра: r, l, s.
Параметр r является параметром-значением, а l и s 4 параметрами-переменными.
При выполнении процедуры Lac a, b, c значение моему Uniel S-GEC4-030C нужные />Аналогично оператор Lac 3.
Какие из следующих операторов корректны?
Введите тип данных для обработки больших натуральных чисел и напишите про- цедуры для их сложения и вычитания.
Области видимости Тело любой программы или подпрограммы называется блоком.
Поскольку подпрограммы включены в основную программу и, в свою очередь, могут со- держать другие подпрограммы, блоки могут быть вложенными включен- ными один в другой.
Такое вложение блоков называется зарегистрировался Петер Хакс Амфитрион структу- рой программы.
В таких структурах каждому блоку i соответствует некоторый уровень вло- женности.
Основной программе соответствует уровень вложенности 0, блоку, определенному в основной программе — уровень вложенности 1.
Блоку, опре- деленному на уровне n, соответствует уровень вложенности n+1.
В качестве примера на рис.
Как правило, любой блок на языке ПАСКАЛЬ содержит описания меток, переменных, функций, параметров и т.
При описании вводится имя, кото- рое может быть меткой или идентификатором.
Описание, находящееся во внутреннем блоке, может переопределить имя, описанное за его пределами.
Таким образом, одно и то же имя в различных частях программы может обо- значать различные объекты.
Под областью видимости некоторого описания понимается текст програм- мы, в котором введенные имена обозначают объект, определенный данным описанием.
Область видимости начинается сразу же после завершения опи- узнать больше здесь и заканчивается вместе с текстом соответствующего блока.
Поскольку блоки могут быть вложенными, область видимости не является непрерывной привожу ссылку в тексте программы.
жмите видимости описания из некоторого вло- женного блока перекрывает область видимости описания, в котором участву- ет это же имя, находящееся во внешнем блоке.
Например, в программе Р105 областью видимости описания var a: real является текст, заключенный между пунктами {1}-{7}.
Область видимости описания var c: real состоит из двух фрагментов текста, заключенных меж- ду {2}, {3} и {5}, {6}.
Областью видимости описания var c: char является текст, заключенный между {4} и {5}.
Для нахождения объекта, обозначенного некоторым именем, необходимо знать области видимости.
Естественно, описание любого формального параметра является видимым только в теле соответству- ющей подпрограммы.
Блочная структура программы на языке ПАСКАЛЬ Например, областью видимости описания procedure Q является текст, находящийся между пунктами {3} и {6}.
Областью видимости описания d:integer является текст, находящийся между пунктами {3} и {5}.
Для каждого описания установите область видимости и определите объекты, которые обозна- чают идентификаторы с и х при каждом своем появлении.
Что выведет на экран данная программа?
Связь через глобальные переменные Вызов подпрограммы подразумевает передачу подлежащих обработке данных вызываемой функции или процедуре.
После выполнения последнего оператора подпрограммы полученные результаты необходимо возвратить на место вызова.
Мы уже знаем, что подлежащие обработке данные и получен- ные результаты могут передаваться через параметры.
Формальные параме- тры указываются в заголовке функции или процедуры, а фактические — в той части программы, где производится вызов.
В дополнение к способу передачи данных через параметры, язык ПАСКАЛЬ допускает передачу данных между программой и вызываемыми подпрограм- мами через глобальные переменные.
Любая переменная является локальной по отношению к подпрограмме в которой она объявлена.
Переменная является глобальной по отношению к подпрограмме, если она объявляется в основной программе или во внешней подпрограмме, без повторного объявления в рассматриваемой подпрограмме.
Так как глобальные переменные известны как в подпрограмме, так и за ее пре- делами, они могут использоваться для передачи данных, подлежащих обра- ботке, и возвращения результатов.
Данные, подлежащие обработке, передаются процедуре Р через глобальную переменную а.
Результат, полученный процедурой, возвращается на место вы- зова через глобальную переменную b.
Значение аргумента функции F переда- ется через глобальную переменную b.
Отметим, что переменная a является ло- кальной для F и не может использоваться для передачи данных в эту функцию.
Как правило, связь через глобальные переменные используется в тех случаях, когда несколько подпрограмм обрабатывают одни и те же данные.
Например, функции, аргументы которых относятся к 4 массив; процедуры, которые обра- батывают массивы или файлы с данными о работниках, учениках и т.
Что выводит на экран данная программа?
Напишите процедуру, кото- рая: a находит https://booksarchive.ru/lampa/zvezdi-jt-zvezda-zadnyaya-jtr80746.html и минимальную температуры; б находит час часыкогда была зарегистрирована максимальная температура; в записывает в текстовый файл час, когда была зарегистрирована минимальная температура.
Связь с соответствующими процедурами осуществляется через глобальные пере- менные.
Напишите функцию, которая: a возвращает количество строк в файле; б находит количество гласных в тексте; в находит количество слов в тексте слова представляют собой последователь- ности символов, разделенных пробелами или символами конца строки ; г возвращает среднюю длину строк текста; д возвращает среднюю длину слов текста; е возвращает число знаков пунктуации в тексте.
Связь с соответствующими процедурами осуществляется через глобальные пере- менные.
Побочные эффекты Любая функция возвращает единственный результат — значение функции.
Как правило, значения аргументов передаются функции через параметры- значения, а результат возвращается на место вызова через имя функции.
Помимо этого, язык ПАСКАЛЬ допускает передачу аргументов через глобаль- ные переменные и параметры-переменные.
Под побочным эффектом понимается присваивание внутри функции некоторого значения глобальной переменной или формальному параметру- переменной.
Побочные эффекты могут непредвиденным образом влиять на ход программы, усложняя тем самым процесс ее отладки.
Ниже представлены примеры программ, в которых используются функции с побочными эффектами.
Таким образом, для одного и того же значения 1 аргумента х функ- ция возвращает различные результаты, что противоречит обычному опреде- лению функции.
Тот факт, что идентичные по тексту обращения F aF a и F a возвращают различные результаты, может привести к осложнениям в процессе отладки.
Что касается процедур, то здесь операции присваивания над глобальными переменными приводят к таким же побочным эффектам, которые рассматри- вались в случае функций.
Так как стандартным способом возврата результа- тов процедуры является возврат через формальные параметры-переменные, операции присваивания над такими параметрами не считаются побочными эффектами.
Побочные эффекты вносят отклонения в стандартный процесс связи программа—подпрограмма, при котором используемые переменные указыва- ются явно в качестве формальных параметров в описании и фактических пара- метров при вызове.
Последствия побочных эффектов могут распространяться на области видимости глобальных описаний и взаимодействовать с подобными эффектами, возникающими при выполнении других процедур и функций.
В таких условиях использование глобальных переменных становится рискован- 4 />Поэтому для составления сложных программ рекомендуется: 1.
Связь функций со средой вызова осуществлять посредством передачи данных в функцию через формальные параметры- значения, возврат единст- венного результата — через ее имя.
Связь процедур со средой вызова осуществлять посредством передачи данных в процедуру через формальные параметры-значения или параметры- переменные, а возврат результатов — через формальные параметры-переменные.
Глобальные переменные можно использовать для передачи данных в под- программы, однако внутри подпрограмм их значения не должны меняться.
К каким последствиям могут привести указан- ные эффекты?
Рекурсия Рекурсией называется прямое или косвенное обращение 4 к 4 себе.
Подпрограмма, которая вызывает саму себя, называется рекурсив- ной.
Значениями функции если если если являются числа Фибоначчи.
Из данных примеров видно, что рекурсия используется для того, чтобы за- программировать повторяющиеся вычисления.
Повторение осуществляется с помощью подпрограммы, внутри которой есть вызов самой себя: когда про- цесс выполнения программы достигает соответствующего места, вызывается новое выполнение данной процедуры.
Очевидно, любая рекурсивная подпрограмма должна содержать условие остановки процесса повторения.
Например, в случае факториала процесс по- вторений останавливается, когда n принимает значение 0; в случае функции Fib процесс останавливается, когда n принимает значения 0 или 1.
При любом вызове подпрограммы в память компьютера заносится следую- щая информация: — текущие значения параметров, передаваемых через значение; — местонахождение адреса параметров-переменных; — адрес возврата, т.
Таким образом, при рекурсивном вызове занимаемая область памяти уве- личивается очень быстро, что ведет к риску https://booksarchive.ru/lampa/istochnik-bespereboynogo-pitaniya-delta-electronics-ultron-dps-200-kvt-ges204ds3312e35-on-line-3f3f.html памяти https://booksarchive.ru/lampa/nastolnaya-lampa-maytoni-erich-mod221-tl-01-n.html ра.
Этого можно избежать путем замены рекурсии на итерацию операторы for, while, repeat.
Какая информация заносится в па- мять компьютера при выполнении рекурсивного вызова?
Попробуйте вычислить а 4, 4 и а 10, 10.
Объясните 4, выводимые на экран.
Рекурсивная форма такой функции непосредственно вытекает из мета- лингвистической формулы.
Заголовок процедуры Заголовок функции Идентификатор Идентификатор; :var Рис.
Синтаксическая диаграмма Отметим,чтоприотсутствииключевогословаvarидентификаторыизсписка указываютпараметры-значения.
Заголовок некоторой функции процедуры указывает на параметр-функцию процедуру.
В Turbo PASCAL такие параметры описываются явно, относятся к процедурному типу и имеют вид параметров-значений.
Язык ПАСКАЛЬ рас- ширяет обычный смысл понятия функции, допуская возврат значений не толь- ко через имя функции, но и через параметры-переменные.
Связь между фактическим и формальным по ссылке определяется пози- цией, которую они занимают в этих двух списках.
В случае параметра-значения в качестве фактического параметра может использоваться любое выражение, в частности константа или переменная.
Изменения параметров-значений не передаются за пределы подпрограммы.
Имя функции Имя процедуры Список фактических параметров Выражение Переменая Имя функции Имя процедуры Список фактических параметровРис.
Синтаксис вызова функций и процедур В случае параметра-переменной в качестве фактических параметров могут использоваться только переменные.
Изменения параметров-переменных пере- даются за пределы подпрограммы.
В случае параметра-функции процедуры в качестве фактического пара- метра может использоваться любое имя функции процедурызаголовок кото- рой имеет вид, указанный в списке формальных параметров.
Ссылочный тип Переменные, описанные в разделе var любой программы или подпрограм- мы, называются статическими переменными.
Число статических перемен- ных устанавливается в момент написания программы и не может изменяться в процессе ее выполнения.
Однако очень часто встречаются задачи, в которых необходимое число переменных заранее неизвестно.
Предположим, что необходимо обработать данные 4 людях, которые стоят в очереди в кассу за билетами.
Длина очереди заранее неизвестна.
Каждый раз, когда появляется новый человек, необходимо создать переменную соответ- ствующего типа.
После того, как человек уходит, соответствующая переменная становится излишней.
Переменные, которые создаются и уничтожаются в процессе выполнения программы, называются динамическими переменными.
Доступ к динамическим переменным осуществляется через переменные ссылочного типа.
источник ссылочные типы.
Синтаксическая диаграмма представлена на рис.
Синтаксическая диаграмма Множество значений ссылочного типа состоит из адресов.
Каждый адрес указывает на динамическую переменную, которая принадлежит базовому типу.
К указанному множеству адресов добавляется специальное значение nil нулькоторое не указывает никакую переменную.
Аналогично переменные ссылочного типа r и с ука- зывают на переменные типа real и соответственно char.
Значения ссылочного типа не могут быть введены с клавиатуры и выведены на экран.
Динамическая переменная создается с помощью стандартной функции new новая.
Вызов данной процедуры имеет вид new p где р — переменная ссылочного типа.
Процедура выделяет область памяти для создаваемой переменной и воз- вращает адрес соответствующей области через переменную р.
Если в качестве адреса использовать некоторую переменную ссылочного типа с содер- жанием nil, то это приведет к ошибке выполнения.
Следовательно, выполнение операторов new p ; new p .
При этом переменная p указывает на последнюю из созданных динамиче- ских переменных ура, ESL-FPL-27-4000-GY10Q Лампа энергосберегающая.

Картонная упаковка так на vn.
Так как значения переменных ссылочного типа явля- ются адресами конкретных областей внутренней памяти компьютера, данные переменные называются указателями адреса, или просто указателями.
Уничтожение динамической переменной и освобождение соответствую- щей области памяти осуществляются с помощью стандартной процедуры dispose освобождение.
Вызов данной процедуры имеет вид: dispose p где р — переменная ссылочного типа.
К динамическим переменным можно применять все операции, допустимые в базовом типе.
В отличие от статических переменных, которые занимают области памяти, вы- деленные компилятором, динамические переменные занимают продолжить памяти, предлагаемые функцией new.
Соответствующие области памяти освобождаются с помощью процедуры dispose и могут быть повторно использованы для раз- мещения новых динамических переменных.
Таким образом, процедуры new и dispose обеспечивают динамическое распределение памяти: область памяти предоставляется динамической переменной только на время ее существования.
Количество динамических переменных, способных существовать одновре- менно при выполнении программы, зависит от типа переменных и области памяти, имеющейся в распоряжении.
Когда в памяти не остается свободного места, вызов процедуры new приведет к ошибке 4 />Динамическое распределение памяти требует особого внимания от про- граммиста, который обязан создавать и уничтожать динамические перемен- ные, а также обеспечивать правильную ссылку на них.
А к динамическим переменным?
Созданным переменным присвойте любые значения и выведите на экран результат конкатенации соответствующих строк.
Объясните выражение динамическое распределение памяти.
Cтруктуры данных Структура данных состоит из самих данных и связей между ними.
В зависи- мости от метода организации структура данных может быть явной или неявной.
Массивы, строки символов, записи, файлы и множества, изученные в пре- дыдущих главах, относятся к неявным структурам данных.
Связи между ком- понентами указанных структур являются предопределенными и неизменяе- мыми.
Так как структура массивов, строк символов, записей, файлов и множеств не изменяется в процессе выполнения любой программы или подпрограммы, соответствующие как сообщается здесь являются статическими.
Используя данные со статической структурой, можно решать лишь ограни- ченный класс задач.
Очень часто связи между компонентами не только дина- мически изменяются, но и могут оказаться очень сложными.
Например, в случае очереди за билетами в кассу связи между людьми изме- няются: вновь прибывшие становятся в очередь; те, у которых мало времени, уходят, так и не купив билеты; отошедшие на некоторое время возвращаются на свои места и т.
В таких случаях ис- пользование данных со статической структурой становится неестественным, сложным и неэффективным.
Таким образом, в ряде задач необходимо использовать структуры дан- ных, связи https://booksarchive.ru/lampa/fortinet-utm-komplekt-fwf-60e-dsl-s-podpiskoy-8x5-na-5-let-fwf-60e-dsl-bdl-900-60.html компонентами которых представляются и обрабатываются явно.
Этого можно достичь, если к каждой компоненте добавить информа- цию, характеризующую ее связи с другими компонентами структуры.
В боль- шинстве случаев дополнительная информация, называемая структурной информацией, представляется с помощью ссылочных переменных.
Структуры данных, компоненты которых создаются и уничтожаются во вре- мя выполнения программы, называются динамическими структурами.
Часто используемыми динамическими структурами данных являются односвязные и двусвязные списки, очереди, стеки, деревья и др.
Структура называется рекурсивной, если ее можно разложить на данные точно такой же структуры.
В качестве примера можно 4 односвязные и двусвязные списки.
В противном случае структура является неоднородной.
Приведите примеры однородных и неоднородных структур данных.
Односвязные списки Односвязные списки — это явные динамические структуры данных, состав- ленные из ячеек.
Каждая ячейка представляет собой динамическую перемен- ную типа record, которая в основном состоит из двух полей: поле данных и поле связей.
В поле данных запоминается обрабатываемая информация, свя- занная с ячейкой.
Поле связей содержит указатель адреса ячейки, в которую можно попасть из текущей ячейки.
Предполагается, что в любую ячейку мож- но попасть, начиная с первой ячейки, называемой базой списка.
В качестве примера на рис.
Ячейки содержат элементы A, B, C и D.
Для простоты считает- ся, что тип Info является строковым.
В поле Urm последней ячейки списка со- держится значение nil.
Адрес первой ячейки базовый адрес запоминается в переменную ссылочного типа P рис.
Односвязный список Отметим, что при описании ссылочного типа AdresaCelula базовый тип Celula еще не известен.
Согласно правилам языка ПАСКАЛЬ, это возмож- но только в случае динамических переменных при условии, что базовый тип определяется ниже в этом же описании.
Односвязный список может быть создан путем добавления в вершину спи- ска по одному элементу.
Естественно, перед началом работы создаваемый спи- сок является пустым, то есть не содержит ни одной ячейки.
Urm end; readln; end.
Процесс составления данного списка представлен на рис.
Urm, адрес только что созданной ячейки запоминается в переменной V адрес вершины.
Urm текущей ячейки адрес после- дующей ячейки еще не известен.
Любой односвязный список можно определить рекурсивно следующим об- разом: a отдельная ячейка является односвязным списком; б ячейка, которая содержит указатель на другой односвязный список, так- же ссылка односвязным списком.
Например, дан- ные из рис.
Однако такое представление является неприемлемым в случае списков с за- ранее неизвестным числом элементов.
Для чего нужно поле свя- зей?
Какая информация записывается в данное поле?
Создайте два списка, один из которых состоит из отрицательных чисел, а другой — из положительных.
Обработка односвязных списков Наиболее часто к односвязным спискам применяются следующие операции: — проход по списку и обработка информации из каждой ячейки; — поиск определенного элемента, заданного своим значением; 4 вставка заданного элемента в указанное место списка; — удаление некоторого элемента из списка и т.
Предположим, что существует непустой список рис.
Urm; Адрес найденной ячейки заносится в переменную R.
Отметим, что приведенная последовательность операторов выполняется правильно только в случае, когда список содержит, по крайней мере, одну ячейку с искомой информацией.
Вставка ячейки, заданной указателем Q, за ячейкой, заданной указателем R рис.
Urm; Отметим, что для вставки или удаления базового элемента списка необходимо обновить базовый адрес Р.
Clipping is a handy way to collect important slides you want to go back to later.
Now customize the name of a clipboard to store your clips.

Комментарии 11

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

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