Будь умным!


У вас вопросы?
У нас ответы:) SamZan.net

Тема- Вводный инструктаж

Работа добавлена на сайт samzan.net:


Тема: Вводный инструктаж. Правила ТБ. Вещественно-энергетическая картина мира.

Мы живем в макромире, то есть в мире, который состоит из объектов, по своим размерам сравнимых с человеком. Обычно макрообъекты разделяют на неживые (здания, средства транспорта, мебель, одежда, станки и механизмы и так далее) и живые (растения, животные, сам человек).

Макрообъекты состоят из молекул и атомов, которые, в свою очередь, состоят из элементарных частиц, размеры которых чрезвычайно малы. Этот мир называется микромиром.

Мы живем на планете Земля, которая входит в Солнечную систему, Солнце вместе с миллионами других звезд образует нашу галактику Млечный путь, а миллионы галактик образуют Вселенную. Все эти объекты имеют громадные размеры и образуют мегамир. Все многообразие этих объектов состоит из вещества.

Согласно физической теории «Большого взрыва» наша Вселенная образовалась в результате взрыва сгустка «перво-материи» около 20 миллиардов лет назад. Тогда материя существовала фактически в форме энергии. Затем на протяжении долей секунды начало образовываться вещество в форме элементарных частиц. Постепенно структура вещества стала усложняться, из элементарных частиц стали образовываться атомы, а из атомов - молекулы. Из атомов и молекул за счет сил гравитационного притяжения образовались сложные структуры мегамира (звезды, планеты, галактики).

Окружающий мир можно представить в виде иерархического ряда объектов: элементарных частиц, атомов, молекул, макротел, звезд, галактик и так далее. Молекулы и макротела с течением времени образуют все более сложные биологические, социальные и технические системы.

Галактики

Макротела

Биологические Человек  Общество

     системы

Молекулы                                                                                                                                                                                                                           

Техника                                                                                                                                                                                                                                                  

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           

  Атомы     

Элементарные частицы

Объекты окружающего мира

Поднятое над поверхностью земли тело обладает механической энергией, нагретый чайник - тепловой, заряженный проводник - электрической, ядра атомов - атомной.

Механическая энергия падающей воды вращает турбины гидроэлектростанций, тепловая энергия превращается в электрическую на тепловых электростанциях, атомная в электрическую - на атомных электростанциях. Электрическая энергия передается по проводам и с помощью электродвигателей превращается в механическую энергию (движение поездов, лифтов и так далее). Все материальные объекты взаимодействуют друг с другом и поэтому обладают энергией.

Вещественно-энергетическая картина мира начала складываться еще в античной философии, а с XVIII века формировалась в основном в рамках физической науки и химии. С середины XX века все большее внимание стало уделяться исследованию строения и функционирования сложных систем (биологических, социальных и технических) в рамках биологии и других наук. Однако не все особенности таких систем оказалось возможным объяснить в рамках традиционного вещественно-энергетического подхода.

Информационная картина мира. Строение и функционирование сложных систем различной природы (биологических, социальных, технических) оказалось невозможным объяснить, не рассматривая общих закономерностей информационных процессов. К концу XX века стала складываться, сначала в рамках кибернетики и биологии, а затем информатики, информационная картина мира. Информационная картина мира рассматривает окружающий мир под особым, информационным углом зрения, при этом она не противопоставлена вещественно-энергетической картине мира, но дополняет и развивает ее.

Информация в природе. Второе начало термодинамики, один из основных законов классической физики, утверждает, что если какую-либо систему «предоставить самой себе» и убрать все внешние воздействия (такую систему называют «закрытой»), то эта система будет стремиться к состоянию термодинамического равновесия. Составляющие ее элементы «перемешиваются», разрушается их структура и наступает полный беспорядок - хаос. Энтропия системы, которая является мерой беспорядка, возрастает, а информация (антиэнтропия), которая является мерой упорядоченности, уменьшается. В соответствии с такой точкой зрения нашу Вселенную ждет «тепловая смерть», то есть прекращение каких-либо изменений и развития.

Однако, по крайней мере, на нашей планете многое происходит наоборот: идет саморазвитие, эволюция живой природы, то есть повышение сложности и разнообразия живых систем. Жизнь является системой открытой, многообразными путями в нее поступают и вещество, и энергия, и информация. Потребляя энергию солнечного излучения в процессе фотосинтеза, растения строят сложные биологические молекулы из простых неорганических, далее животные, поедающие растения и друг друга, создают все более сложные живые структуры и так далее.

Таким образом, энтропия в живой природе уменьшается, а информация (антиэнтропия) — увеличивается.

Получение и преобразование информации является условием жизнедеятельности любого организма. Даже простейшие одноклеточные организмы постоянно воспринимают и используют информацию, например, о температуре и химическом составе среды для выбора наиболее благоприятных условий существования. Биологи образно говорят, что «живое питается информацией», создавая, накапливая и активно используя ее.

Генетическая информация. Любой живой организм, в том числе человек, является носителем генетической информации, которая передается по наследству. Генетическая информация хранится в каждой клетке организма в молекулах ДНК, которые состоят из отдельных участков (генов). Каждый ген «отвечает» за определенные особенности строения и функционирования организма и определяют как его возможности, так и предрасположенность к различным наследственным болезням.

Чем сложнее и высокоорганизованнее организм, тем большее количество генов содержится в молекуле ДНК. Работы по расшифровке структуры генома человека, который содержит более 20 тысяч различных генов, проводились с использованием компьютерных технологий и были в основном закончены в 2000 году.

Человек и информация. Человек живет в мире информации. Человек воспринимает окружающий мир (получает информацию) с помощью органов чувств. Наибольшее количество информации (около 90%) человек получает с помощью зрения, около 9% - с помощью слуха и только 1% с помощью других органов чувств (обоняния, осязания и вкуса). Полученная человеком информация в форме зрительных, слуховых и других образов хранится в его памяти. Человеческое мышление можно рассматривать как процессы обработки информации в мозгу человека. На основе информации, полученной с помощью органов чувств, и теоретических знаний, приобретенных в процессе обучения, человек создает информационные модели окружающего мира. Такие модели позволяют человеку ориентироваться в окружающем мире и принимать правильные решения для достижения поставленных целей.

Процессы, связанные с получением, хранением, обработкой и передачей информации, называются информационными процессами.

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

История человеческого общества - это, в определенном смысле, история накопления и преобразования информации. Весь процесс познания является процессом получения, преобразования и накопления информации (знаний). Полученная информация хранится на носителях информации различных типов (книги, аудио- и видеокассеты и так далее), а в последнее время все больше на электронных носителях информации в цифровой форме (магнитные и лазерные диски и др.).

Объединение компьютеров в глобальную сеть Интернет позволило обеспечить для каждого человека потенциальную возможность быстрого доступа ко всему объему информации, накопленному человечеством за всю его историю.

Информационные процессы в технике. Информационные процессы характерны не только для природы, человека и общества, но и для техники. Нормальное функционирование технических устройств связано с процессами управления, которые включают в себя получение, хранение, преобразование и передачу информации. В некоторых случаях главную роль в процессе управления выполняет человек (например, вождение автомобиля), в других управление берет на себя само техническое устройство (например, кондиционер).

Аппаратные и программные средства информатизации. Человеком созданы специальные технические устройства, предназначенные для кодирования, обработки, хранения и передачи информации в цифровой форме (компьютер, принтер, сканер, модем и др.). Совокупность таких устройств принято называть аппаратными средствами информатизации.

Универсальным устройством, предназначенным для автоматической обработки информации, является компьютер. Управляют работой компьютера программы, которые имеют различные функции и назначение. Совокупность компьютерных программ называется программным обеспечением или программными средствами информатизации.

Информационные и коммуникационные технологии. Для создания на компьютере документа с использованием текстового редактора необходимо овладеть технологией обработки текстовой информации, для редактирования изображения с помощью графического редактора - технологией обработки графической информации, для проведения вычислений в электронных таблицах - технологией обработки числовой информации и так далее.

В процессе исследования информационных моделей приходится разрабатывать алгоритмы и затем кодировать их на языках программирования, то есть использовать технологию программирования.

Поиск и получение необходимой информации из глобальной компьютерной сети Интернет требует использования коммуникационных технологий.

В любом случае кроме использования определенных аппаратных и программных средств необходимо знать и уметь применять определенные информационные и коммуникационные технологии.

Информационные и коммуникационные технологии это совокупность методов, устройств и производственных процессов, используемых обществом для сбора, хранения, обработки и распространения информации.

Информационное общество. В последние два десятилетия массовое производство персональных компьютеров и стремительный рост Интернета существенно ускорили становление информационного общества в развитых странах мира.

В информационном обществе главным ресурсом является информация, именно на основе владения информацией о самых различных процессах и явлениях можно эффективно и оптимально строить любую деятельность. Большая часть населения в информационном обществе занята в сфере обработки информации или использует информационные и коммуникационные технологии в своей повседневной производственной деятельности.

Для жизни и деятельности в информационном обществе необходимо обладать информационной культурой, т. е. знаниями и умениями в области информационных технологий, а также быть знакомым с юридическими и этическими нормами в этой сфере.

Информатика. Информационный подход к исследованию мира реализуется в рамках информатики, комплексной науки об информации и информационных процессах, аппаратных и программных средствах информатизации, информационных и коммуникационных технологиях, а также социальных аспектах процесса информатизации.

Тема: Устройство компьютера. Аппаратная реализация компьютера.

В основу архитектуры современных персональных компьютеров положен магистрально-модульный принцип. Модульный принцип позволяет потребителю самому комплектовать нужную ему конфигурацию компьютера и производить при необходимости ее модернизацию.

Магистраль (системная шина) включает в себя три многоразрядные шины: шину данных, шину адреса и шину управления, которые представляют собой многопроводные линии. К магистрали подключаются процессор и оперативная память, а также периферийные устройства ввода, вывода и хранения информации, которые обмениваются информацией на машинном языке (последовательностями нулей и единиц в форме электрических импульсов).

Шина данных. По этой шине данные передаются между различными устройствами. Разрядность шины данных определяется разрядностью процессора.

Рис.      Магистралыно-модульное устройство компьютера

Шина адреса. Каждое устройство или ячейка оперативной памяти имеет свой адрес. Адрес передается по адресной шине, причем сигналы по ней передаются в одном направлении - от процессора к оперативной памяти и устройствам (однонаправленная шина).

Разрядность шины адреса определяет объем адресуемой памяти (адресное пространство), то есть количество однобайтовых ячеек оперативной памяти, которые могут иметь уникальные адреса. Количество адресуемых ячеек памяти можно рассчитать по формуле:

N = 2I, где I - разрядность шины адреса.

Шина управления. По шине управления передаются сигналы, определяющие характер обмена информацией по магистрали.

Процессор. Процессор аппаратно реализуется на большой интегральной схеме (БИС). Большая интегральная схема на самом деле не является «большой» по размеру и представляет собой, наоборот, маленькую плоскую полупроводниковую пластину размером примерно 20x20 мм, заключенную в плоский корпус с рядами металлических штырьков (контактов). БИС является «большой» по количеству элементов.

Использование современных высоких технологий позволяет разместить на БИС процессора огромное количество функциональных элементов (переключателей), размеры которых составляют всего около 0,13 микрон (1 микрон = 10"6 метра).

Характеристики процессора:

- тактовая частота, то есть количество тактов в секунду. Такт - это промежуток времени между началами подачи двух последовательных импульсов специальной микросхемой -  генератором тактовой частоты, синхронизирующим работу узлов компьютера. Чем больше тактовая частота, тем больше операций в секунду выполняет процессор. Тактовая частота измеряется в мегагерцах (МГц) и гигагерцах (ГГц). 1 МГц = миллион тактов в секунду.

- разрядность процессора. Разрядность процессора определяется количеством двоичных разрядов, которые могут передаваться или обрабатываться процессором одновременно. Часто уточняют разрядность процессора и пишут 64/36, что означает, что процессор имеет 64-разрядную шину данных и 36-разрядную шину адреса.

- производительность процессора является его интегральной характеристикой, которая зависит от частоты процессора, его разрядности, а также особенностей архитектуры (наличие кэш-памяти и др.). Производительность процессора нельзя вычислить, она определяется в процессе тестирования, по скорости выполнения процессором определенных операций в какой-либо программной среде.

Оперативная память. Оперативная память, предназначенная для хранения информации, изготавливается в виде модулей памяти. Модули памяти представляют собой пластины с рядами контактов, на которых размещаются БИС памяти.

Важнейшей характеристикой модулей оперативной памяти является быстродействие, которое зависит от максимально возможной частоты операций записи или считывания информации из ячеек памяти. В персональных компьютерах объем адресуемой памяти и величина фактически установленной оперативной памяти практически всегда различаются. Хотя объем адресуемой памяти может достигать 64 Гбайт, величина фактически установленной оперативной памяти может быть значительно меньше, например, «всего» 64 Мбайт.

Аппаратная реализация компьютера

Современный персональный компьютер может быть реализован в настольном (desktop), портативном (notebook) или карманном (handheld) варианте.

Системный блок компьютера

Все основные компоненты настольного компьютера находятся внутри системного блока: системная плата с процессором и оперативной памятью, накопители на жестких и гибких дисках, CD-ROM и др. Кроме этого, в системном блоке находится блок питания.

Системная плата. Основным аппаратным компонентом компьютера является системная плата. На системной плате реализована магистраль обмена информацией, имеются разъемы для установки процессора и оперативной памяти, а также слоты для установки контроллеров внешних устройств.

Рис. 1    Логическая схема системной платы

Внешняя (долговременная) память

Основной функцией внешней памяти компьютера является способность долговременно хранить большой объем информации (программы, документы, аудио- и видеоклипы и пр.). Устройство, которое обеспечивает запись/считывание информации, называется накопителем, или дисководом, а хранится информация на носителях (например, дискетах).

Гибкие магнитные диски. Гибкие магнитные диски помещаются в пластмассовый корпус. Такой носитель информации называется дискетой. В центре дискеты имеется приспособление для захвата и обеспечения вращения диска внутри пластмассового корпуса. Дискета вставляется в дисковод, который вращает диск с постоянной угловой скоростью. При этом магнитная головка дисковода устанавливается на определенную концентрическую дорожку диска, на которую и производится запись или с которой производится считывание информации. Информационная емкость дискеты невелика и составляет всего 1,44 Мбайт. Скорость записи и считывания информации также мала (составляет всего около 50 Кбайт/с) из-за медленного вращения диска (360 об./мин).

В целях сохранения информации гибкие магнитные диски необходимо предохранять от воздействия сильных магнитных полей и нагревания, так как такие физические воздействия могут привести к размагничиванию носителя и потере информации.

Жесткие магнитные диски. Жесткий магнитный диск представляет собой несколько десятков дисков, размещенных на одной оси, заключенных в металлический корпус и вращающихся с большой угловой скоростью

За счет гораздо большего количества дорожек на каждой стороне дисков и большого количества дисков информационная емкость жесткого диска может в сотни тысяч раз превышать информационную емкость дискеты и достигать 150 Гбайт. Скорость записи и считывания информации с жестких дисков достаточно велика (может достигать 133 Мбайт/с) за счет быстрого вращения дисков (до 7200 об./мин).

В жестких дисках используются достаточно хрупкие и миниатюрные элементы (пластины носителей, магнитные головки и пр.), поэтому в целях сохранения информации и работоспособности жесткие диски необходимо оберегать от ударов и резких изменений пространственной ориентации в процессе работы.

Лазерные дисководы и диски. Лазерные дисководы (CD-ROM и DVD-ROM —                                                                                                                                                                                                                                        используют оптический принцип чтения информации.

На лазерных CD-ROM (CD — Compact Disk, компакт-диск) и DVD-ROM (DVD — Digital Video Disk, цифровой видеодиск) дисках хранится информация, которая была записана на них в процессе изготовления. Запись на них новой информации невозможна, что отражено во второй части их названий: ROM (Read Only Memory — только чтение). Производятся такие диски путем штамповки и имеют серебристый цвет.

DVD-диски имеют гораздо большую информационную емкость (до 17 Гбайт) по сравнению CD-дисками. Во-первых, используются лазеры с меньшей длиной волны, что позволяет размещать оптические дорожки более плотно. Во-вторых, информация на DVD-дисках может быть записана на двух сторонах, причем в два слоя на одной стороне. Первое поколение DVD-ROM-накопителей обеспечивало скорость считывания информации примерно 1,3 Мбайт/с. В настоящее время 16-скоростные DVD-ROM-дисководы достигают скорости считывания до 21   Мбайт/с.

Существуют CD-R и DVD-R-диски (R — recordable, записываемый), которые имеют золотистый цвет. Информация на такие диски может быть записана, но только один раз. На дисках CD-RW и DVD-RW (RW — Rewritable, перезаписываемый), которые имеют «платиновый» оттенок, информация может быть записана  многократно.

Для записи и перезаписи на диски используются специальные CD-RW и DVD-RW-дисководы, которые обладают достаточно мощным лазером, позволяющим менять отражающую способность участков поверхности в процессе записи диска. Такие дисководы позволяют записывать и считывать информацию с дисков с различной скоростью. Например, маркировка CD-RW-дисковода «40x12x48» означает, что запись CD-R-дисков производится на 40-кратной скорости, запись CD-RW-дисков — на 12-кратной, а чтение — на 48-кратной скорости.

Flash-память. Flash-память - это энергонезависимый тип памяти, позволяющий записывать и хранить данные в микросхемах. Карты flash-памяти не имеют в своем составе движущихся частей, что обеспечивает высокую сохранность данных при их использовании в мобильных устройствах (портативных компьютерах, цифровых камерах и др.).

Flash-память представляет собой микросхему, помещенную в миниатюрный плоский корпус. Для считывания или записи информации карта памяти вставляется в специальные накопители, встроенные в мобильные устройства или подключаемые к компьютеру через USB-порт. Информационная емкость карт памяти может достигать 512 Мбайт.

К недостаткам flash-памяти следует отнести то, что не существует единого стандарта и различные производители изготавливают несовместимые друг с другом по размерам и электрическим параметрам карты памяти.

Устройства ввода информации

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

Координатные устройства ввода. Для ввода графической информации и для работы с графическим    интерфейсом программ используются координатные устройства ввода информации: манипуляторы   (мышь,   трекбол), сенсорные панели тачпад и графические планшеты.

В оптико-механических манипуляторах мышь и трекбол основным рабочим органом является массивный шар (металлический, покрытый резиной). У мыши он вращается при перемещении ее корпуса по горизонтальной поверхности, а у трекбола вращается непосредственно рукой. Вращение шара передается двум пластмассовым валам, положение которых с большой точностью считывается инфракрасными оптопарами (то есть парами «светоизлучатель-фотоприемник») и затем преобразуется в электрический сигнал, управляющий движением указателя мыши на экране монитора. Главным «врагом» мыши является загрязнение, а способом борьбы с ним — использование специального «мышиного» коврика.

В настоящее время широкое распространение получили оптические мыши, в которых нет механических частей. Источник света, размещенный внутри мыши, освещает поверхность, а отраженный свет фиксируется фотоприемником и преобразуется в перемещение курсора на экране.

Разрешающая способность мышей обычно составляет около 600 dpi (dot per inch — точек на дюйм). Это означает, что при перемещении мыши на 1 дюйм (1 дюйм = 2,54 см) указатель мыши на экране перемещается на 600 точек.

Манипуляторы имеют обычно две кнопки управления, которые используются при работе с графическим интерфейсом программ. В настоящее время появились мыши с дополнительным колесиком, которое располагается между кнопками. Оно предназначено для прокрутки вверх или вниз не умещающихся целиком на экране изображений, текстов или Web-страниц.

Современные модели мышей и трекболов часто являются беспроводными, то есть подключаются к компьютеру без помощи кабеля

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

Для рисования и ввода рукописного текста используются графические планшеты                                                                                                                                                                                                                                                                                                                                   С помощью специальной ручки можно чертить, рисовать схемы, добавлять заметки и подписи к электронным документам. Качество графических планшетов характеризуется разрешающей способностью, которая измеряется в lpi (lines per inch — линиях на дюйм) и способностью реагировать на силу нажатия пера.

В хороших планшетах разрешающая способность достигает 2048 lpi (перемещение пера по поверхности планшета на 1 дюйм соответствует перемещению на 2048 точек на экране монитора), а количество воспринимаемых градаций нажатий на перо составляет 1024.

Сканер. Для оптического ввода в компьютер и преобразования в компьютерную форму изображений (фотографий, рисунков, слайдов), а также текстовых документов используется сканер

Сканируемое  изображение  освещается белым светом (черно-белые сканеры) или тремя цветами (красным, зеленым и синим). Отраженный свет проецируется на линейку фотоэлементов, которая движется, последовательно считывает изображение и преобразует его в компьютерный формат. В отсканированном изображении количество различаемых цветов может достигать десятков миллиардов.

Системы распознавания текстовой информации позволяют преобразовать отсканированный текст из графического формата в текстовый. Такие системы способны распознавать текстовые документы на различных языках, представленные в различных формах (например, таблицах) и с различным качеством печати (начиная от машинописных документов).

Разрешающая способность сканеров составляет 600 dpi и выше, то есть на полоске изображения длиной 1 дюйм сканер может распознать 600 и более точек.

Цифровые камеры и ТВ-тюнеры. Последние годы все большее распространение получают цифровые камеры. Цифровые камеры позволяют получать видеоизображение и фотоснимки непосредственно в цифровом (компьютерном) формате.

Цифровые видеокамеры могут быть подключены к компьютеру, что позволяет сохранять видеозаписи в компьютерном формате. Для передачи «живого» видео по компьютерным сетям используются недорогие Web-камеры, разрешающая способность которых обычно не превышает 640x480 точек.

Цифровые фотоаппараты позволяют получать высокачественные фотографии с разрешением до 2272x1704 точек (всего до 3,9 млн пикселей). Для хранения фотографий используются модули flash-памяти или жесткие диски очень маленького размера. Запись изображений на жесткий диск компьютера может осуществляться путем подключения камеры к компьютеру.

Если установить в компьютер специальную плату (ТВ-тюнер) и подключить к ее входу телевизионную антенну, то появляется возможность просматривать телевизионные передачи непосредственно на компьютере.

Звуковая карта. Звуковая карта производит преобразование звука из аналоговой формы в цифровую. Для ввода звуковой информации используется микрофон, который подключается к входу звуковой карты. Звуковая карта имеет также возможность синтезировать звук (в ее памяти хранятся звуки различных музыкальных инструментов, которые она может воспроизводить).

Многие звуковые платы имеют специальный игровой порт (GAME-порт), к которому подключаются игровые манипуляторы (джойстики), которые предназначены для более удобного управления ходом компьютерных игр.

Устройства вывода информации

Монитор. Монитор является универсальным устройством вывода информации и подключается к видеокарте, установленной в компьютере.

Изображение в компьютерном формате (в виде последовательностей нулей и единиц) хранится в видеопамяти, размещенной на видеокарте. Изображение на экране монитора формируется путем считывания содержимого видеопамяти и отображения его на экран.

Частота считывания изображения влияет на стабильность изображения на экране. В современных мониторах обновление изображения происходит обычно с частотой 75 и более раз в секунду, что обеспечивает комфортность восприятия изображения пользователем компьютера (человек не замечает мерцание изображения). Для сравнения можно напомнить, что частота смены кадров в кино составляет 24 кадра в секунду.

В настольных компьютерах обычно используются мониторы на электронно-лучевой трубке (ЭЛТ) — Изображение на экране монитора создается пучком электронов, испускаемых электронной пушкой. Этот пучок электронов разгоняется высоким электрическим напряжением (десятки киловольт) и падает на внутреннюю поверхность экрана, покрытую люминофором (веществом, светящимся под воздействием пучка электронов).

Система управления пучком заставляет пробегать его построчно весь экран (создает растр), а также регулирует его интенсивность (соответственно яркость свечения точки люминофора). Пользователь видит изображение на экране монитора, так как люминофор излучает световые лучи в видимой части спектра. Качество изображения тем выше, чем меньше размер точки изображения (точки люминофора), в высокачественных мониторах размер   точки составляет 0,22 мм.

Однако монитор является также источником высокого статического электрического потенциала, электромагнитного и рентгеновского излучений, которые могут оказывать неблагоприятное воздействие на здоровье человека. Современные мониторы практически безопасны, так как соответствуют жестким санитарно-гигиеническим требованиям, зафиксированным в международном стандарте безопасности ТСО'99.

В портативных и карманных компьютерах применяют плоские мониторы на жидких кристаллах (ЖК). В последнее время такие мониторы стали использоваться и в настольных компьютерах.

LCD (Liquid Crystal Display, жидкокристаллические мониторы — рис. 1.15) сделаны из вещества, которое находится в жидком состоянии, но при этом обладает некоторыми свойствами, присущими кристаллическим телам. Фактически это жидкости, обладающие анизотропией свойств (в частности, оптических), связанных с упорядоченностью в ориентации молекул. Молекулы жидких

кристаллов под воздействием электрического напряжения могут изменять свою ориентацию и вследствие этого изменять свойства светового луча, проходящего сквозь них.

Преимущество ЖК-мониторов перед мониторами на ЭЛТ состоит в отсутствии вредных для человека электромагнитных излучений и компактности.

Мониторы могут иметь различный размер экрана. Размер диагонали экрана измеряется в дюймах (1 дюйм = 2,54 см) и обычно составляет 15, 17 и более дюймов.

Принтеры. Принтеры предназначены для вывода на бумагу (создания «твердой копии») числовой, текстовой и графической информации. По своему принципу действия принтеры делятся на матричные, струйные и лазерные.

Матричные    принтеры - это принтеры ударного действия. Печатающая головка матричного принтера состоит из вертикального столбца маленьких стержней (обычно 9 или 24), которые под воздействием магнитного поля «выталкиваются» из головки и ударяют по бумаге (через красящую ленту). Перемещаясь, печатающая головка оставляет на бумаге строку символов. Недостатки матричных принтеров состоят в том, что они печатают медленно, производят много шума и качество печати оставляет желать лучшего (соответствует примерно качеству пишущей машинки).

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

Струйные принтеры могут печатать достаточно быстро (до нескольких страниц в минуту) и производят мало шума. Качество печати (в том числе и цветной) определяется разрешающей способностью струйных принтеров, которая может достигать фотографического качества 2400 dpi. Это означает, что полоска изображения по горизонтали длиной в 1 дюйм формируется из 2400 точек (чернильных капель).

Лазерные принтеры обеспечивают практически бесшумную печать. Высокую скорость печати (до 30 страниц в минуту) лазерные принтеры достигают за счет постраничной печати, при которой страница печатается сразу целиком.

Высокое типографское качество печати лазерных принтеров обеспечивается за счет высокой разрешающей способности, которая может достигать 1200 dpi и более.

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

Акустические колонки и наушники. Для прослушивания звука используются акустические колонки или наушники, которые подключаются к выходу звуковой платы.

Тема: Файловая система хранения данных

Все программы и данные хранятся в долговременной (внешней) памяти компьютера в виде файлов.

Файл - это определенное количество информации (программа или данные), имеющее имя и хранящееся в долговременной (внешней) памяти.

Имя файла. Имя файла состоит из двух частей, разделенных точкой: собственно имя файла и расширение, определяющее его тип (программа, данные и так далее). Собственно имя файлу дает пользователь, а тип файла обычно задается программой автоматически при его создании (табл. 1.2).

В различных операционных системах существуют различные форматы имен файлов. В операционной системе MS-DOS собственно имя файла должно содержать не более 8 букв латинского алфавита, цифр и некоторых специальных знаков, а расширение состоит из трех латинских букв, например: proba.txt

В операционной системе Windows имя файла может иметь длину до 255 символов, причем можно использовать русский алфавит, например: Единицы измерения информации.doc

Таблица 1.2. Типы файлов и расширений

Файловая система. На каждом носителе информации (гибком, жестком или лазерном диске) может храниться большое количество файлов. Порядок хранения файлов на диске определяется используемой файловой системой.

Каждый диск разбивается на две области: область хранения файлов и каталог. Каталог содержит имя файла и указание на начало его размещения на диске. Если провести аналогию диска с книгой, то область хранения файлов соответствует ее содержанию, а каталог — оглавлению. Причем книга состоит из страниц, а диск — из секторов.

Для дисков с небольшим количеством файлов (до нескольких десятков) может использоваться одноуровневая файловая система, когда каталог (оглавление диска) представляет собой линейную последовательность имен файлов (табл. 1.3). Такой каталог можно сравнить с оглавлением детской книжки, которое содержит только названия отдельных рассказов.

Если на диске хранятся сотни и тысячи файлов, то для удобства поиска используется многоуровневая иерархическая файловая система, которая имеет древовидную структуру. Такую иерархическую систему можно сравнить, например, с оглавлением данного учебника, которое представляет собой иерархическую систему разделов, глав, параграфов и пунктов.

Начальный, корневой каталог содержит вложенные каталоги 1-го уровня, в свою очередь, каждый из последних может содержать вложенные каталоги 2-го уровня и так далее. Необходимо отметить, что в каталогах всех уровней могут храниться и файлы.

Например, в корневом каталоге могут находиться два вложенных каталога 1-го уровня (Каталог_1, Каталог_2) и один файл (Файл_1). В свою очередь, в каталоге 1-го уровня (Каталог_1) находятся два вложенных каталога второго уровня (Каталог_ 1 и Каталог_ 1.2) и один файл (Файл_1.1) — рис. 1.21.

Файловая система — это система хранения файлов и организации каталогов.

Рис. 1.21. Иерархическая файловая система

Рассмотрим иерархическую файловую систему на конкретном примере. Каждый диск имеет логическое имя (А:, В: — гибкие диски, С:, D:, Е: и так далее — жесткие и лазерные диски).

Пусть в корневом каталоге диска С: имеются два каталога 1-го уровня (GAMES, TEXT), а в каталоге GAMES один каталог 2-го уровня (CHESS). При этом в каталоге TEXT имеется файл proba.txt, а в каталоге CHESS — файл chess.exe (рис. 1.22).

Рис. 1.22. Пример иерархической файловой системы

Путь к файлу. Как найти имеющиеся файлы (chess.exe, proba.txt) в данной иерархической файловой системе? Для этого необходимо указать путь к файлу. В путь к файлу входят записываемые через разделитель «\» логическое имя диска и последовательность имен вложенных друг в друга каталогов, в последнем из которых содержится нужный Файл. Пути к вышеперечисленным файлам можно записать следующим образом:

C:\GAMES\CHESS\

С:\ТЕХТ\

Путь к файлу вместе с именем файла называют иногда полным именем файла.

Пример полного имени файла:

C:\GAMES\CHESS\chess.exe

Представление файловой системы с помощью графического интерфейса. Иерархическая файловая система MS-DOS, содержащая каталоги и файлы, представлена в операционной системе Windows с помощью графического интерфейса в форме иерархической системы папок и документов. Папка в Windows является аналогом каталога MS-DOS.

Однако иерархическая структура этих систем несколько различается. В иерархической файловой системе MS-DOS вершиной иерархии объектов является корневой каталог диска, который можно сравнить со стволом дерева, на котором растут ветки (подкаталоги), а на ветках располагаются листья (файлы).

В Windows на вершине иерархии папок находится папка Рабочий стол. Следующий уровень представлен папками Мой компьютер, Корзина и Сетевое окружение (если компьютер подключен к локальной сети) — рис. 1.23.

Рис. 1.23. Иерархическая структура папок

Если мы хотим ознакомиться с ресурсами компьютера, необходимо открыть папку Мой компьютер.

Операции над файлами. В процессе работы на компьютере наиболее часто над файлами производятся следующие операции:

• копирование (копия файла помещается в другой каталог);

• перемещение (сам файл перемещается в другой каталог);

• удаление (запись о файле удаляется из каталога);

• переименование (изменяется имя файла).

Графический интерфейс Windows позволяет проводить операции над файлами с помощью мыши с использованием метода Drag&Drop (перетащи и оставь). Существуют также специализированные приложения для работы с файлами, так называемые файловые менеджеры: Norton Commander, Windows Commander, Проводник и др.

 

Тема: Классификация программных средств

Прикладное программное обеспечение можно разделить на две группы программ: системы программирования и приложения.

Системы программирования являются инструментами для программистов-профессионалов и позволяют разрабатывать программы на различных языках программирования (Basic, Pascal). В настоящее время широкое распространение получили системы визуального программирования (Visual Basic, Borland Lazarus и др.), которые позволяют даже начинающему пользователю компьютера создавать несложные программы.

Приложение функционирует под управлением определенной операционной системы. Так, текстовый редактор Word является приложением операционной системы Windows, a текстовый редактор Edit - приложением операционной системы MS-DOS. Приложения позволяют пользователю обрабатывать текстовую, графическую, числовую, аудио- и видеоинформацию, а также работать в компьютерных сетях, не владея программированием.

Практически каждый пользователь компьютера нуждается в приложениях общего назначения, к числу которых относятся: текстовые редакторы и графические редакторы, электронные таблицы, системы управления базами данных, а также приложения для создания мультимедиа-презентаций. Наиболее распространенными в настоящее время пакетами приложений общего назначения являются Microsoft Office и StarOffice.

В связи со стремительным развитием глобальных и локальных компьютерных сетей все большее значение приобретают различные коммуникационные программы. В последнее время разработчики операционных систем, и в частности разработчики Windows, включают коммуникационные программы непосредственно в состав операционной системы.

В отдельную группу в связи с широким распространением компьютерных вирусов можно отнести антивирусные программы.

Для профессионального использования в различных сферах деятельности квалифицированными пользователями компьютера используются приложения специального назначения. К ним относятся системы компьютерной графики, системы автоматизированного проектирования (САПР), бухгалтерские программы, компьютерные словари, системы автоматического перевода и др.

Все большее число пользователей использует обучающие программы для самообразования или в учебном процессе. Прежде всего, это программы обучения иностранным языкам, программы-репетиторы, тесты по различным предметам и так далее.

Большую пользу приносят различные мультимедиа-приложения (энциклопедии, справочники и так далее) на лазерных дисках, которые содержат огромный объем информации и средства быстрого ее поиска.

Достаточно большое число пользователей начинают знакомство с компьютером с компьютерных игр, которые бывают самых различных типов: логические, стратегические, спортивные и так далее.

  1.  Итог урока.

1. В чем состоит основное различие между операционной системой и прикладными программами?

2. Какие вы знаете виды приложений общего назначения?

3. Какие вы знаете виды приложений специального назначения?

  1.  Задание на дом.

Угринович, с. 65-66

Тема: «Операционная система. Файловая система».

Когда вы включаете компьютер, одновременно с аппаратными компонентами начинает работать специальная программ, которая называется операционной системой (ОС) компьютера.

Операционная система – это комплекс взаимосвязанных программ, предназначенных для управления выполнением программ на компьютере и обеспечения управления ресурсами компьютера.

Операционные системы разные, но их назначение и функции одинаковые. Операционная система является базовой и необходимой составляющей программного обеспечения компьютера.

Выделяют две основные задачи ОС:

  1.  Организация связи и общения человека с ЭВМ и с отдельными ее устройствами (печать, внешняя память, сканирование). Выполнение по требованию пользователя именно тех операций, о которых шла речь.
  2.  Организация взаимодействия всех блоков ПЭВМ в процессе выполнения программы в частности:

- размещение в ОЗУ (операционное запоминающее устройство) данных и результатов решения задачи при использовании файловых данных и размещением их на диске в соответствии с требованиями программы.

- своевременное включение в работу различных типов и устройств ПЭВМ по требованию программы.

Основные функции ОС:

  1.  Создание и ведение библиотеки данных и программ (файловая система).
  2.  Связь ПЭВМ с внешними устройствами.
  3.  Организация общения пользователя с ПК.

Виды ОС:

СР/М, ДВК-3, ДВК, РАФОС, УНКЦ-ФОДОС-2, MSDOS, UNIX, OS/2, ROSDOS, Windows, Linox.

Современные операционные системы имеют сложную структуру, каждый элемент которой выполняет определенные функции по управлению компьютером.

В состав операционной системы входя драйверы устройств, специальные программы, которые обеспечивают управление работой устройств и согласование информационного обмена с другими устройствами, а также позволяют производить настройку некоторых параметров устройств. Каждому устройству соответствует свой драйвер.

Графический интерфейс. Для упрощения работы пользователя в состав операционных систем, и в частности в состав Windows, входят программные модули, упрощающие работу пользователя в ОС и создающие графический пользовательский интерфейс. В операционных системах с графическим интерфейсом пользователь может вводить команды с помощью мыши, тогда как в режиме командной строки необходимо вводить команды с помощью клавиатуры (MSDOS).

В состав ОС входят сервисные программы или утилиты, которые обслуживают диски (проверяют, сжимают, дефрагментируют), выполняют операции с файлами, позволяют работать в компьютерных сетях.

Для удобства пользователя в состав ОС обычно входит справочная система, которая позволяет оперативно получить необходимую информацию.

Процесс работы компьютера сводится к обмену файлами между устройствами. В ОС имеются программные модули, управляющие файловой системой.

В состав ОС входит специальная программа – командный процессор, - которая запрашивает у пользователя команды и выполняет их. Пользователь может дать команду запуска программы, выполнения какой-либо операции над файлами (копирование, удаление, переименование), вывода документа на печать и т.д. ОС должна эту команду выполнить.

В состав ОС входят драйверы устройств, специальные программы, которые обеспечивают управление работой устройств и согласование информационного обмена с другими устройствами, а также позволяют производить настройку некоторых параметров устройств. Каждому устройству соответствует свой драйвер. При включении компьютера производится загрузка драйверов в оперативную память. Пользователь имеет возможность вручную установить или переустановить драйверы.

Компания Microsoft разработала операционную систему Windows. ОС Windows мощная и одновременно простая в использовании. Пользовательский интерфейс Windows ориентирован на пользователя, не знакомого с работой ПК.

Основные особенности ОС Windows.

  1.  Многозадачность – возможность одновременного запуска нескольких программ.
  2.  Единый программный интерфейс – возможность переносить данные из одной программы в другую.
  3.  Гибкость интерфейса – позволяет запускать не только программы, написанные для нее, но и для ОС MS DOS.
  4.  Графический интерфейс – все объекты на экране в виде графических значков.

Существует ОС Windows 98 и Windows 95, Windows HP.

Существенных отличий нет, лишь в ОС Windows 98 ориентирована на работу компьютера в сети Интернет.

Пользовательский интерфейс – это средства и правила, позволяющие пользователю комфортно взаимодействовать (управлять) программными продуктами и периферийным оборудованием.

Фактически пользователь должен знать, что необходимо сделать, чтобы получить определенный результат.

  1.  на начальном этапе необходимо корректно включать и выключать компьютер.

Последовательность включения оборудования: периферийное оборудование, затем системный блок.

При выключении – наоборот, сначала системный блок, затем периферийное оборудование. Такая последовательность включения гарантирует сохранность блока питания и позволит избежать скачков напряжения.

Координатное устройство, предназначенное для взаимодействия пользователя с компьютером - мышь.

Основные приемы управления мыши:

  1.  левый 0щелчок
  2.  двойной щелчок
  3.  щелчок п. к.м.
  4.  перетаскивание
  5.  протягивание мыши (изменение формы)
  6.  специальное перетаскивание (п.к.м.)
  7.  зависание – наведение указателя на значок объекта

На экране курсор мыши обозначается в виде стрелки или песочных часов.

Тема: Компьютерные вирусы. Антивирусные программы.

Типы компьютерных вирусов

Первая массовая эпидемия компьютерного вируса произошла в 1986 году, когда вирус Brain «заражал» дискеты для первых массовых персональных компьютеров. В настоящее время известно несколько десятков тысяч вирусов, заражающих компьютеры с различными операционными системами и распространяющихся по компьютерным сетям.

Обязательным свойством компьютерного вируса является способность к размножению (самокопированию) и незаметному для пользователя внедрению в файлы, загрузочные секторы дисков и документы. Название «вирус» по отношению к компьютерным программам пришло из биологии именно по признаку способности к саморазмножению.

После заражения компьютера вирус может активизироваться и заставить компьютер выполнять какие-либо действия. Активизация вируса может быть связана с различными событиями (наступлением определенной даты или дня недели, запуском программы, открытием документа и так далее).

Компьютерные вирусы являются программами, которые могут «размножаться» и скрытно внедрять свои копии в файлы, загрузочные секторы дисков и документы. Активизация компьютерного вируса может вызывать уничтожение программ и данных.

Разнообразны последствия действия вирусов, по величине вредных воздействий вирусы можно разделить на:

• неопасные, влияние которых ограничивается уменьшением свободной памяти на диске, графическими, звуковыми и другими внешними эффектами;

• опасные, которые могут привести к сбоям и зависаниям при работе компьютера;

• очень опасные, активизация которых может привести к потере программ и данных (изменению или удалению файлов и каталогов), форматированию винчестера и так далее.

По «среде обитания» вирусы можно разделить на файловые, загрузочные, макровирусы и сетевые.

Файловые вирусы. Файловые вирусы различными способами внедряются в исполнимые файлы (программы) и обычно активизируются при их запуске. После запуска зараженной программы вирус находится в оперативной памяти компьютера и является активным (то есть может заражать другие файлы) вплоть до момента выключения компьютера или перезагрузки операционной системы.

При этом файловые вирусы не могут заразить файлы данных (например, файлы, содержащие изображение или звук).

Профилактическая защита от файловых вирусов состоит в том, что не рекомендуется запускать на выполнение файлы, полученные из сомнительного источника и предварительно не проверенные антивирусными программами.

Загрузочные вирусы. Загрузочные вирусы записывают себя в загрузочный сектор диска. При загрузке операционной системы с зараженного диска вирусы внедряются в оперативную память компьютера. В дальнейшем загрузочный вирус ведет себя так же, как файловый, то есть может заражать файлы при обращении к ним компьютера.

Профилактическая защита от таких вирусов состоит в отказе от загрузки операционной системы с гибких дисков и установке в BIOS вашего компьютера защиты загрузочного сектора от изменений.

Макровирусы. Макровирусы заражают файлы документов Word и электронных таблиц Excel. Макровирусы являются фактически макрокомандами (макросами), которые встраиваются в документ.

После загрузки зараженного документа в приложение макровирусы постоянно присутствуют в памяти компьютера и могут заражать другие документы. Угроза заражения прекращается только после закрытия приложения.

Профилактическая защита от макровирусов состоит в предотвращении запуска вируса. При открытии документа в приложениях Word и Excel сообщается о присутствии в них макросов (потенциальных вирусов) и предлагается запретить их загрузку. Выбор запрета на загрузку макросов надежно защитит ваш компьютер от заражения макровирусами, однако отключит и полезные макросы, содержащиеся в документе.

Сетевые вирусы. По компьютерной сети могут распространяться и заражать компьютеры любые обычные вирусы. Это может происходить, например, при получении зараженных файлов с серверов файловых архивов. Однако существуют и специфические сетевые вирусы, которые используют для своего распространения электронную почту и Всемирную паутину.

Интернет-черви (worm) — это вирусы, которые распространяются в компьютерной сети во вложенных в почтовое сообщение файлах. Автоматическая активизация червя и заражение компьютера могут произойти при обычном просмотре сообщения. Опасность таких вирусов состоит в том, что они по определенным датам активизируются и уничтожают файлы на дисках зараженного компьютера. Кроме того, интернет-черви часто являются троянами, выполняя роль «троянского коня», внедренного в операционную систему. Такие вирусы «похищают» идентификатор и пароль пользователя для доступа в Интернет и передают их на определенный почтовый адрес. В результате злоумышленники получают возможность доступа в Интернет за деньги ничего не подозревающих пользователей.

Лавинообразная цепная реакция распространения вируса базируется на том, что вирус после заражения компьютера начинает рассылать себя по всем адресам электронной почты, которые имеются в адресной книге пользователя. Кроме того, может происходить заражение и по локальной сети, так как червь перебирает все локальные диски и сетевые диски с правом доступа и копируется туда под случайным именем.

Профилактическая защита от интернет-червей состоит в том, что не рекомендуется открывать вложенные в почтовые сообщения файлы, полученные из сомнительных источников.

Особой разновидностью вирусов являются активные элементы (программы) на языках JavaScript или VBScript, которые могут выполнять разрушительные действия, то есть являться вирусами (скрипт-вирусами). Такие программы передаются по Всемирной паутине в процессе загрузки Web-страниц с серверов Интернета в браузер локального компьютера.

Профилактическая защита от скрипт-вирусов состоит в том, что в браузере можно запретить получение активных элементов на локальный компьютер.

Антивирусные программы

Наиболее эффективны в борьбе с компьютерными вирусами антивирусные программы. Антивирусные программы могут использовать различные принципы для поиска и лечения зараженных файлов.

Полифаги. Самыми популярными и эффективными антивирусными программами являются антивирусные программы полифаги (например, Kaspersky Anti-Virus, DrWeb). Принцип работы полифагов основан на проверке файлов, загрузочных секторов дисков и оперативной памяти и поиске в них известных и новых (неизвестных полифагу) вирусов.

Для поиска известных вирусов используются так называемые маски. Маской вируса является некоторая постоянная последовательность программного кода, специфичная для этого конкретного вируса. Если антивирусная программа обнаруживает такую последовательность в каком-либо файле, то файл считается зараженным вирусом и подлежит лечению.

Для поиска новых вирусов используются алгоритмы «эвристического сканирования», то есть анализ последовательности команд в проверяемом объекте. Если «подозрительная» последовательность команд обнаруживается, то полифаг выдает сообщение о возможном заражении объекта.

Полифаги могут обеспечивать проверку файлов в процессе их загрузки в оперативную память. Такие программы называются антивирусными мониторами.

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

Ревизоры. Принцип работы ревизоров (например, ADinf) основан на подсчете контрольных сумм для присутствующих на диске файлов. Эти контрольные суммы затем сохраняются в базе данных антивируса, как и некоторая другая информация: длины файлов, даты их последней модификации и пр. При последующем запуске ревизоры сверяют данные, содержащиеся в базе данных, с реально подсчитанными значениями. Если информация о файле, записанная в базе данных, не совпадает с реальными значениями, то ревизоры сигнализируют о том, что файл был изменен или заражен вирусом.

Недостаток ревизоров состоит в том, что они не могут обнаружить вирус в новых файлах (на дискетах, при распаковке файлов из архива, в электронной почте), поскольку в их базах данных отсутствует информация об этих файлах.

Блокировщики. Антивирусные блокировщики — это программы, перехватывающие «вирусоопасные» ситуации и сообщающие об этом пользователю. К таким ситуациям относится, например, запись в загрузочный сектор диска. Эта запись происходит при установке на компьютер новой операционной системы или при заражении загрузочным вирусом.

Наибольшее распространение получили антивирусные блокировщики в BIOS компьютера. С помощью программы BIOS Setup можно провести настройку BIOS таким образом, что будет запрещена (заблокирована) любая запись в загрузочный сектор диска и компьютер будет защищен от заражения загрузочными вирусами.

К достоинствам блокировщиков относится их способность обнаруживать и останавливать вирус на самой ранней стадии его размножения.

Тема: Понятие информации. Количество информации.

Понятие «информация».

Слово «информация» происходит от латинского слова informatio, что в переводе означает сведение, разъяснение, ознакомление. Понятие «информация» является базовым в курсе информатики, невозможно дать его определение через другие, более «простые» понятия. В геометрии, например, невозможно выразить содержание базовых понятий «точка», «луч», «плоскость» через более простые понятия. Содержание основных, базовых понятий в любой науке должно быть пояснено на примерах или выявлено путем их сопоставления с содержанием других понятий.

В случае с понятием «информация» проблема его определения еще более сложная, так как оно является общенаучным понятием. Данное понятие используется в различных науках (информатике, кибернетике, биологии, физике и др.), при этом в каждой науке понятие «информация» связано с различными системами понятий.

Информация в физике. В физике мерой беспорядка, хаоса для термодинамической системы является энтропия системы, тогда как информация (антиэнтропия) является мерой упорядоченности и сложности системы. По мере увеличения сложности системы величина энтропии уменьшается, и величина информации увеличивается. Таким образом, в физике информация рассматривается как антиэнтропия или энтропия с обратным знаком.

Информация в биологии. В биологии, которая изучает живую природу, понятие «информация» связывается с целесообразным поведением живых организмов. Такое поведение строится на основе получения и использования организмом информации об окружающей среде.

Понятие «информация» в биологии используется также в связи с исследованиями механизмов наследственности. Генетическая информация передается по наследству и хранится во всех клетках живых организмов. Гены представляют собой сложные молекулярные структуры, содержащие информацию о строении живых организмов. Последнее обстоятельство позволило проводить научные эксперименты по клонированию, то есть созданию точных копий организмов из одной клетки.

Информация в кибернетике. В кибернетике (науке об управлении) понятие «информация» связано с процессами управления в сложных системах (живых организмах или технических устройствах). Жизнедеятельность любого организма или нормальное функционирование технического устройства зависит от процессов управления, благодаря которым поддерживаются в необходимых пределах значения их параметров. Процессы управления включают в себя получение, хранение, преобразование и передачу информации.

Социально значимые свойства информации. Человек — существо социальное, для общения с другими людьми он должен обмениваться с ними информацией, причем обмен информацией всегда производится на определенном языке — русском, английском и так далее. Участники дискуссии должны владеть тем языком, на котором ведется общение, тогда информация будет понятной всем участникам обмена информацией.

Информация должна быть полезной, тогда дискуссия приобретает практическую ценность. Бесполезная информация создает информационный шум, который затрудняет восприятие полезной информации. Примерами передачи и получения бесполезной информации могут служить некоторые конференции и чаты в Интернете.

Широко известен термин «средства массовой информации» (газеты, радио, телевидение), которые доводят информацию до каждого члена общества. Такая информация должна быть достоверной и актуальной. Недостоверная информация вводит членов общества в заблуждение и может быть причиной возникновения социальных потрясений. Неактуальная информация бесполезна и поэтому никто, кроме историков, не читает прошлогодних газет.

Для того чтобы человек мог правильно ориентироваться в окружающем мире, информация должна быть полной и точной. Задача получения полной и точной информации стоит перед наукой. Овладение научными знаниями в процессе обучения позволяют человеку получить полную и точную информацию о природе, обществе и технике.

Количество информации как мера уменьшения неопределенности знаний

Информация и знания. Человек получает информацию из окружающего мира с помощью органов чувств, анализирует ее и выявляет существенные закономерности с помощью мышления, хранит полученную информацию в памяти. Процесс систематического научного познания окружающего мира приводит к накоплению информации в форме знаний (фактов, научных теорий и так далее). Таким образом, с точки зрения процесса познания информация может рассматриваться как знания.

Информацию, которую получает человек, можно считать мерой уменьшения неопределенности знаний. Если некоторое сообщение приводит к уменьшению неопределенности наших знаний, то можно говорить, что такое сообщение содержит информацию.

Например, после сдачи экзамена по информатике вы мучаетесь неопределенностью, вы не знаете какую оценку получили. Наконец, экзаменационная комиссия объявляет результаты экзамена, и вы получаете сообщение, которое приносит полную определенность, теперь вы знаете свою оценку. Происходит переход от незнания к полному знанию, значит, сообщение экзаменационной комиссии содержит информацию.

Данный подход к информации как мере уменьшения неопределенности знаний позволяет количественно измерять информацию, что чрезвычайно важно для информатики.

Единицы измерения количества информации. Для количественного выражения любой величины необходимо определить единицу измерения. Так, для измерения длины в качестве единицы выбран метр, для измерения массы - килограмм и так далее. Аналогично, для определения количества информации необходимо ввести единицу измерения.

За единицу количества информации принимается такое количество информации, которое содержит сообщение, уменьшающее неопределенность в два раза. Такая единица названа «бит».

Минимальной единицей измерения количества информации является бит, а следующей по величине единицей является байт, причем

1 байт = 23 бит = 8 бит

В информатике система образования кратных единиц измерения количества информации несколько отличается от принятых в большинстве наук. Традиционные метрические системы единиц, например Международная система единиц СИ, в качестве множителей кратных единиц используют коэффициент 10n, где п = 3, 6, 9 и так далее, что соответствует десятичным приставкам Кило (103), Мега (106), Гига (109) и так далее.

Компьютер оперирует числами не в десятичной, а в двоичной системе счисления, поэтому в кратных единицах измерения количества информации используется коэффициент 2n.

Так, кратные байту единицы измерения количества информации вводятся следующим образом:

1 Кбайт = 210 байт    = 1024 байт;

1 Мбайт = 210 Кбайт = 1024 Кбайт;

1 Гбайт  = 210 Мбайт = 1024 Мбайт.

Количество возможных событий и количество информации. Существует формула, которая связывает между собой количество возможных событий N и количество информации I:

N =2I

По этой формуле можно легко определить количество возможных событий, если известно количество информации. Например, если мы получили 4 бита информации, то количество возможных событий составляло:

N = 24 = 16.

Наоборот, для определения количества информации, если известно количество событий, необходимо решить показательное уравнение относительно I. Например, в игре «Крестики-нолики» на поле 8x8 перед первым ходом существует 64 возможных события (64 различных варианта расположения «крестика»), тогда уравнение принимает вид:

64 = 2I.

Так как 64 = 26, то получим:

26 = 2I.

Таким образом, I = 6 битов, то есть количество информации, полученное вторым игроком после первого хода первого игрока, составляет 6 битов.

Алфавитный подход к определению количества информации

При определении количества информации на основе уменьшения неопределенности наших знаний мы рассматриваем информацию с точки зрения содержания, ее понятности и новизны для человека.

Однако при хранении и передаче информации с помощью технических устройств целесообразно отвлечься от содержания информации и рассматривать ее как последовательность знаков (букв, цифр, кодов цветов точек изображения и так далее).

Набор символов знаковой системы (алфавит) можно рассматривать как различные возможные состояния (события). Тогда, если считать, что появление символов в сообщении равновероятно, то можно рассчитать, какое количество информации несет каждый символ.

Так, в русском алфавите, если не использовать букву ё, количество событий (букв) будет равно 32. Тогда:

32 = 2I, откуда I = 5 битов.

Каждый символ несет 5 битов информации (его информационная емкость равна 5 битов). Количество информации в сообщении можно подсчитать, умножив количество информации, которое несет один символ, на количество символов.

Количество информации, которое содержит сообщение, закодированное с помощью знаковой системы, равно количеству информации, которое несет один знак, умноженному на количество знаков.

  1.  Работа по выработке умений и навыков у учащихся

1.Решение задач.

№1. Какое количество информации получит второй игрок после первого хода первого игрока в игре в «Крестики-нолики» на поле размером 4x4?

  1.  Найдем количество возможных событий N: 4*4= 16
    1.  Подсчитаем количество информации по формуле N =2I: 16 =  2I ; 24 = 2I; I = 4 бита.

Ответ: 4 бита.

№2. Каково было количество возможных событий, если после реализации одного из них мы получили количество информации, равное 3 битам? 7 битам?

I = 3 бита

N =2I; N = 23; N = 8

I = 7 бита

N =2I; N = 27; N = 128

  1.  Итог урока.

- Почему невозможно дать определение понятию «Информация»?

- В каких науках используется понятие «Информация»?

- По какой формуле можно посчитать количество информации?

  1.  Задание на дом.

Угринович, с. 72-78


Тема: Формула Шеннона.

Формула Шеннона

Существует множество ситуаций, когда возможные события имеют различные вероятности реализации. Например, если монета несимметрична (одна сторона тяжелее другой), то при ее бросании вероятности выпадения «орла» и «решки» будут различаться.

Формулу для вычисления количества информации в случае различных вероятностей событий предложил К. Шеннон в 1948 году. В этом случае количество информации определяется по формуле:

(1)

где I - количество информации;

N - количество возможных событий;

pi - вероятность i- го события.

Например, пусть при бросании несимметричной четырехгранной пирамидки вероятности отдельных событий будут равны:

P1 = 1/2, р2 = 1/4, р3 = 1/8,  р4 = 1/8.

Тогда количество информации, которое мы получим после реализации одного из них, можно рассчитать по формуле (2.2):

I = -(l/2*log2l/2 + l/4*log2l/4 + l/8*log2l/8 + l/8*log2l/8) = = (1/2 + 2/4 + 3/8 + 3/8) битов = 14/8 битов = 1,75 бита.

Этот подход к определению количества информации называется вероятностным.

Для частного, но широко распространенного и рассмотренного выше случая, когда события равновероятны (pi= 1/N), величину количества информации I можно рассчитать по формуле: (2)

По данной формуле можно определить, например, количество информации, которое мы получим при бросании симметричной и однородной четырехгранной пирамидки:

I = Iog24 = 2 бита.

Таким образом, при бросании симметричной пирамидки, когда события равновероятны, мы получим большее количество информации (2 бита), чем при бросании несимметричной (1,75 бита), когда события неравновероятны.

Количество информации, которое мы получаем, достигает максимального значения,

если события равновероятны.

Выбор оптимальной стратегии в игре «Угадай число».

На получении максимального количества информации строится выбор оптимальной стратегии в игре «Угадай число», в которой первый участник загадывает целое число (например, 3) из заданного интервала (например, от 1 до 16), а второй — должен «угадать» задуманное число. Если рассмотреть эту игру с информационной точки зрения, то начальная неопределенность знаний для второго участника составляет 16 возможных событий (вариантов загаданных чисел).

При оптимальной стратегии интервал чисел всегда должен делиться пополам, тогда количество возможных событий (чисел) в каждом из полученных интервалов будет одинаково и отгадывание интервалов равновероятно. В этом случае на каждом шаге ответ первого игрока («Да» или «Нет») будет нести максимальное количество информации (1 бит).

Как видно из таблицы, угадывание числа 3 произошло за четыре шага, на каждом из которых неопределенность знаний второго участника уменьшалась в два раза за счет получения сообщения от первого участника, содержащего 1 бит информации. Таким образом, количество информации, необходимое для отгадывания одного из 16 чисел, составило 4 бита.

Информационная модель игры «Угадай число»

Какое количество информации получит второй игрок в игре «Угадай число» при оптимальной стратегии, если первый игрок загадал число: от 1 до 64? От 1 до 128?

  1.  Работа по выработке умений и навыков у учащихся

№1. Вероятность первого события составляет 0,5, а второго и третьего — 0,25. Какое количество информации мы получим после реализации одного из них?

- Какие у нас события, равновероятностные или различные вероятности? (различные вероятности)

- Какой формулой воспользуемся?  (1)

- Вероятность события  обозначается какой буквой? (р)

- Вероятность первого события равно чему? Второго, третьего?

р1 = 0,5

р2 = 0,25

р3 = 0,25

- Какое выражение получится?

I = -(0,5 * log20,5 + 0,25* log20,25 + 0,25* log20,25) = -(-0,5 – 0,5 – 0,5) = - (-1,5) = 1,5 бита.

Ответ: 1,5 бита.

Тема: «Расчет количества информации в случае различных вероятностей».

Выбор оптимальной стратегии в игре «Угадай число». На получении максимального количества информации строится выбор оптимальной стратегии в игре «Угадай число», в которой первый участник загадывает целое число (например, 3) из заданного интервала (например, от 1 до 16), а второй — должен «угадать» задуманное число. Если рассмотреть эту игру с информационной точки зрения, то начальная неопределенность знаний для второго участника составляет 16 возможных событий (вариантов загаданных чисел).

При оптимальной стратегии интервал чисел всегда должен делиться пополам, тогда количество возможных событий (чисел) в каждом из полученных интервалов будет одинаково и отгадывание интервалов равновероятно. В этом случае на каждом шаге ответ первого игрока («Да» или «Нет») будет нести максимальное количество информации (1 бит).

Как видно из табл. 2.1, угадывание числа 3 произошло за четыре шага, на каждом из которых неопределенность знаний второго участника уменьшалась в два раза за счет получения сообщения от первого участника, содержащего 1 бит информации. Таким образом, количество информации, необходимое для отгадывания одного из 16 чисел, составило 4 бита.

Таблица 2.1. Информационная модель игры «Угадай число»

Вопрос второго участника

Ответ первого участника

Неопределенность знаний(количество возможных событий)

Полученное количество информации

16

Число больше 8?

Нет

8

1 бит

Число больше 4?

Нет

4

1 бит

Число больше 27

Да

2

1 бит

Число 3?

Да

1

1 бит

  1.  Работа по выработке умений и навыков у учащихся

№1.

После экзамена по информатике, который сдавали ваши друзья, объявляются оценки («2», «3», «4» или «5»). Какое количество информации будет нести сообщение об оценке учащегося А, который выучил лишь половину билетов, и сообщение об оценке учащегося В, который выучил все билеты.

Опыт показывает, что для учащегося А все четыре оценки (события) равновероятны и тогда количество информации, которое несет сообщение об оценке, можно вычислить по формуле

I = log2N

I = Iog24 = 2 бита.

На основании опыта можно также предположить, что для учащегося В наиболее вероятной оценкой является «5» (P1 = 1/2), вероятность оценки «4» в два раза меньше (Р2= 1/4), а вероятности оценок «2» и «3»  еще в два раза меньше (р3 = р4 = 1/8). Так как события неравновероятны, воспользуемся для подсчета количества информации в сообщении формулой (2.1):

I = - (1/2 • log2l/2 + 1/4 • log2l/4 + 1/8 • log2l/8 + 1/8 •log2l/8) бит = 1,75 бита.

Вычисления показали, что при равновероятных событиях мы получаем большее количество информации, чем при неравновероятных событиях.

№2.

В непрозрачном мешочке хранятся 10 белых, 20 красных, 30 синих и 40 зеленых шариков. Какое количество информации будет содержать зрительное сообщение о цвете вынутого шарика.

Так как количество шариков различных цветов неодинаково, то вероятности зрительных сообщений о цвете вынутого из мешочка шарика также различаются и равны количеству шариков данного цвета деленному на общее количество шариков:

рб = 0,1;     рк=0,2;     рс = 0,3;   Рз= 0,4. События неравновероятны, поэтому для определения количества информации, содержащегося в сообщении о цвете шарика, воспользуемся формулой (2.1):

I = - (0,Hog20,l + 0,2-log20,2 + 0,3-log20,3 + 0,4-log20,4) бит.

Для вычисления этого выражения, содержащего логарифмы, воспользуемся компьютерным калькулятором.

№3.

Какое количество вопросов достаточно задать вашему собеседнику, чтобы наверняка определить месяц, в котором он родился?

Будем рассматривать 12 месяцев как 12 возможных событий. Если спрашивать о конкретном месяце рождения, то, возможно, придется задать 11 вопросов (если на 11 первых вопросов был получен отрицательный ответ, то 12-й задавать не обязательно, так как он и будет правильным).

Правильнее задавать «двоичные» вопросы, то есть вопросы, на которые можно ответить только «Да» или «Нет». Например, «Вы родились во второй половине года?». Каждый такой вопрос разбивает множество вариантов на два подмножества: одно соответствует ответу «Да», а другое — ответу «Нет».

Правильная стратегия состоит в том, что вопросы нужно задавать так, чтобы количество возможных вариантов каждый раз уменьшалось вдвое. Тогда количество возможных событий в каждом из полученных подмножеств будет одинаково и их отгадывание равновероятно. В этом случае на каждом шаге ответ («Да» или «Нет») будет нести максимальное количество информации (1 бит).

По формуле (2.2) и с помощью калькулятора получаем: I = Iog212 = 3,6 бита.

Количество полученных бит информации соответствует количеству заданных вопросов, однако количество вопросов не может быть нецелым числом. Округляем до большего целого числа и получаем ответ: при правильной стратегии необходимо задать не более 4 вопросов.

 

Тема: «Формы представления информации».

Для обмена информацией с другими людьми человек использует естественные языки (русский, английский, китайский и др.), то есть информация представляется с помощью естественных языков. В основе языка лежит алфавит, то есть набор символов (знаков), которые человек различает по их начертанию. В основе русского языка лежит кириллица, содержащая 33 знака, английский язык использует латиницу (26 знаков), китайский язык использует алфавит из десятков тысяч знаков (иероглифов).

Последовательности символов алфавита в соответствии с правилами грамматики образуют основные объекты языка — слова. Правила, согласно которым образуются предложения из слов данного языка, называются синтаксисом. Необходимо отметить, что в естественных языках грамматика и синтаксис языка формулируются с помощью большого количества правил, из которых существуют исключения, так как такие правила складывались исторически.

Наряду с естественными языками были разработаны формальные языки (системы счисления, язык алгебры, языки программирования и др.).  Основное отличие формальных языков от естественных состоит в наличии строгих правил грамматики и синтаксиса.

Например, системы счисления можно рассматривать как формальные языки, имеющие алфавит (цифры) и позволяющие не только именовать и записывать объекты (числа), но и выполнять над ними арифметические операции по строго определенным правилам.

Некоторые языки используют в качестве знаков не буквы и цифры, а другие символы, например химические формулы, ноты, изображения элементов электрических или логических схем, дорожные знаки, точки и тире (код азбуки Морзе) и др.

Представление информации может осуществляться с помощью языков, которые являются знаковыми системами. Каждая знаковая система строится на основе определенного алфавита и правил выполнения операций над знаками.

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

Человек воспринимает информацию об окружающем мире с помощью органов чувств (зрения, слуха, обоняния, осязания и вкуса). Чувствительные нервные окончания органов чувств (рецепторы) воспринимают воздействие (например, на глазном дне колбочки и палочки реагируют на воздействие световых лучей) и передают его нейронам (нервным клеткам), цепи которых составляют нервную систему.

Нейрон может находиться в одном из двух состояний: невозбужденном и возбужденном. Возбужденный нейрон генерирует электрический импульс, который передается по нервной системе.

Состояния нейрона (нет импульса, есть импульс) можно рассматривать как знаки некоторого алфавита нервной системы, с помощью которого происходит передача информации.

Генетическая информация во многом определяет строение и развитие живых организмов и передается по наследству.

Хранится генетическая информация в клетках организмов в структуре молекул ДНК (дезокси-рибонуклеиновой кислоты). Молекула ДНК состоит из двух скрученных друг с другом в спираль цепей, построенных из четырех нуклеотидов: A, G, Т и С, которые образуют генетический алфавит.

Молекула ДНК человека включает в себя около 3 миллиардов пар нуклеотидов и поэтому в ней закодирована вся информация об организме человека: его внешность, здоровье или предрасположенность к болезням, способности и пр.

В живых организмах информация передается и хранится с помощью объектов различной физической природы (состояния нейрона, нуклеотиды в молекуле ДНК), которые могут рассматриваться как знаки биологических алфавитов.

Представление информации происходит в различных формах в процессе восприятия окружающей среды живыми организмами и человеком, в процессах обмена информацией между человеком и человеком, человеком и компьютером, компьютером и компьютером и так далее. Преобразование информации из одной формы представления (знаковой системы) в другую называется кодированием.

В процессе обмена информацией часто приходится производить операции кодирования и декодирования информации. При вводе знака алфавита в компьютер путем нажатия соответствующей клавиши на клавиатуре происходит кодирование знака, то есть преобразование его в компьютерный код. При выводе знака на экран монитора или принтер происходит обратный процесс — декодирование, когда из компьютерного кода знак преобразуется в его графическое изображение.

Кодирование — это операция преобразования знаков или групп знаков одной знаковой системы в знаки или группы знаков другой знаковой системы.

Рассмотрим в качестве примера кодирования соответствие цифрового и штрихового кодов товара. Такие коды имеются на каждом товаре и позволяют полностью идентифицировать товар (страну и фирму производителя, тип товара и).

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

Тема: «Определение количества информации, представленной с помощью знаковых систем, графики, звука».

1. Двоичное кодирование текстовой информации

Начиная с конца 60-х годов, компьютеры все больше стали использоваться для обработки текстовой информации и в настоящее время большая часть персональных компьютеров в мире (и наибольшее время) занято обработкой именно текстовой информации.

Традиционно для кодирования одного символа используется количество информации, равное 1 байту, то есть I = 1 байт = 8 битов.

Для   кодирования   одного   символа   требуется 1 байт информации.

Если рассматривать символы как возможные события, то по формуле N = 2I можно вычислить, какое количество различных символов можно закодировать:

N = 2I = 28 = 256.

Такое количество символов вполне достаточно для представления текстовой информации, включая прописные и строчные буквы русского и латинского алфавита, цифры, знаки, графические символы и пр.

Кодирование заключается в том, что каждому символу ставится в соответствие уникальный десятичный код от 0 до 255 или соответствующий ему двоичный код от 00000000 до 11111111. Таким образом, человек различает символы по их начертаниям, а компьютер — по их кодам.

В настоящее время широкое распространение получил новый международный стандарт Unicode, который отводит на каждый символ не один байт, а два, поэтому с его помощью можно закодировать не 256 символов, а N = 216 = = 65536 различных символов. Эту кодировку поддерживают последние версии платформы Microsoft Windows&Office (начиная с 1997 года).

Графическая информация на экране монитора представляется в виде растрового изображения, которое формируется из определенного количества строк, которые в свою очередь содержат определенное количество точек (пикселей).

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

В современных персональных компьютерах обычно используются три основные разрешающие способности экрана: 800 х 600, 1024 х 768 и 1280 х 1024 точки.

В простейшем случае (черно-белое изображение без градаций серого цвета) каждая точка экрана может иметь одно из двух состояний - «черная» или «белая», то есть для хранения ее состояния необходим 1 бит.

Цветные изображения формируются в соответствии с двоичным кодом цвета каждой точки, хранящимся в видеопамяти. Цветные изображения могут иметь различную глубину цвета, которая задается количеством битов, используемым для кодирования цвета точки. Наиболее распространенными значениями глубины цвета являются 8, 16, 24 или 32 бита. Качество двоичного кодирования изображения определяется разрешающей способностью экрана и глубиной цвета.

Каждый цвет можно рассматривать как возможное состояние точки, тогда количество цветов, отображаемых на экране монитора, может быть вычислено по формуле (2.1):

N = 2I, где I - глубина цвета

Цветное изображение на экране монитора формируется за счет смешивания трех базовых цветов: красного, зеленого и синего. Такая цветовая модель называется RGB-моделью по первым буквам английских названий цветов (Red, Green, Blue).

Звук представляет собой звуковую волну с непрерывно меняющейся амплитудой и частотой.

Качество двоичного кодирования звука определяется глубиной кодирования и частотой дискретизации.

Для того чтобы компьютер мог обрабатывать звук, непрерывный звуковой сигнал должен быть превращен в последовательность электрических импульсов (двоичных нулей и единиц).

Задача №1.

Какова мощность алфавита, с помощью которого записано сообщение, содержащее 2048 символов, если его объем составляет 10240 бит.

  1.  Определим количество бит, приходящееся на 1 символ:

10240 : 2048 = 5 бит – I

2. Определим мощность.

N = 2I = 25 = 32

Задача №2.

Пользователь компьютера, хорошо владеющий навыками ввода информации с клавиатуры, может вводить в минуту 100 знаков. Мощность алфавита, используемого в компьютере, равна 256. Какое количество информации в байтах может ввести пользователь в компьютер за 1 минуту.

  1.  Определим количество бит, приходящееся на 1 символ:

N = 2I

256

I = 8 бит

2. Определим сколько бит приходится на 100 знаков.

8*100 = 800 (бит) = 100 байт

Задача №3.

Система оптического распознавания символов позволяет преобразовать отсканированные изображения страниц документа в текстовый формат со скоростью 4 страницы в минуту и использует алфавит мощностью 65536 символов. Какое количество информации будет нести текстовый документ после 5 минут работы приложения, страницы которого содержат 40 строк по 50 символов.

1. Определим количество бит, приходящееся на 1 символ:

N = 2I

2I = 65536

I = 16 бит

2. Определим, сколько  символов содержится в текстовом документе

40*50 = 2000 символов

3. Ответим на вопрос задачи

16*2000*5*4 = 640000 бит = 80000 байт = 80 Кбайт

Задача №4.

Определить объем видеопамяти компьютера, который необходим для реализации графического режима монитора High Color  с разрешающей способностью 1024х768 точек и палитрой из 65536 цветов.

  1.  Определим количество точек изображения:

1024х768 = 786432

  1.  Определим, какое количество информации содержится в одной точке изображения или глубину цвета.

N = 2I

2I = 65536

I = 16 бит

  1.  Определим объем видеопамяти

16*786432 = 12582912 бит = 1572864 байт = 1,5 М байта

Задача №5.

Сканируется цветное изображение размером 10х10 см. Разрешающая способность сканера 600 dpi (точек на дюйм) и глубина 32 бита. Какой информационный объем будет иметь полученный графический файл (количество информации)?

  1.  Переведем разрешающую способность сканера из точек на дюйм в точки на см:

1 дюйм = 2,54 см

600 dpi : 2,54 ~ 236 точек/см

2. Найдем размер сканируемого изображения в точках

236* 10 = 2360 х 2360 точек

  1.  Найдем общее количество точек изображения:

2360х2360 = 5569600

  1.  Информационный объем файла или количество информации, содержащее  изображение:

32 бита * 5569600 = 178227200 бит = 22278400 байт = 22 Мбайт.

Тема: Аналоговый и дискретный способы представления изображения и звука. Повторение изученного материала.

Аналоговый и дискретный способы представления изображений и звука

Человек способен воспринимать и хранить информацию в форме образов (зрительных, звуковых, осязательных, вкусовых и обонятельных). Зрительные образы могут быть сохранены в виде изображений (рисунков, фотографий и так далее), а звуковые — зафиксированы на пластинках, магнитных лентах, лазерных дисках и так далее.

Информация, в том числе графическая и звуковая, может быть представлена в аналоговой или дискретной форме. При аналоговом представлении физическая величина принимает бесконечное множество значений, причем ее значения изменяются непрерывно. При дискретном представлении физическая величина принимает конечное множество значений, причем ее величина изменяется скачкообразно.

Примером аналогового представления графической информации может служить, например, живописное полотно, цвет которого изменяется непрерывно, а дискретного — изображение, напечатанное с помощью струйного принтера и состоящее из отдельных точек разного цвета. Примером аналогового хранения звуковой информации является виниловая пластинка (звуковая дорожка изменяет свою форму непрерывно), а дискретного — аудиокомпакт-диск (звуковая дорожка которого содержит участки с различной отражающей способностью).

Преобразование графической и звуковой информации из аналоговой формы в дискретную производится путем дискретизации.

Дискретизация — это преобразование непрерывных изображений и звука в набор дискретных значений в форме кодов.

№1. 256-цветный рисунок содержит 120 байт информации. Из скольких точек он состоит?

  1.  Определим глубину цвета:

N = 2I

256 = 2I, I = 8 бит

2. Переведем байты в биты:

120 байт = 960 бит

3. Найдем сколько точек содержит рисунок объемом 120 байт:

960 / 8 = 120 точек

№2. Для хранения изображения размером 64х32 точек выделено 64 Кбайта памяти. Определите, какое максимальное число цветов допустимо использовать в этом случае.

  1.  Определим количество точек, содержащееся в изображении:

68*32 = 2048 точек

  1.  Переведем Кбайты в биты:

64*1024=65536 байт * 8 = 524288 бит

3. Найдем максимальное число цветов:

524288/2048=256

Тема: Объектно-ориентированное программирование. Объекты: свойства и методы.

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

Все изменения описываются с помощью программного кода. Создание программного кода в объектно-ориентированном программировании базируется на использовании алгоритмических структур различных типов (линейной, ветвления, цикла), исполнителями которых выступают программные объекты.

Основной единицей в объектно-ориентированном программировании является программный объект, который объединяет в себе как описывающие его данные (свойства), так и средства обработки этих данных (методы). Если говорить образно, то объекты — это «существительные», свойства объекта — это «прилагательные», а методы объекта — это «глаголы».

Программные объекты обладают свойствами, могут использовать методы и реагируют на события.

Классы объектов являются «шаблонами», определяющими наборы свойств, методов и событий. По этим шаблонам создаются объекты. В языке Visual Basic основными являются классы объектов, реализующие графический интерфейс приложения.

Например, в приложении Word существует класс объектов «документ» (Document), который обладает определенными наборами:

  •  свойств: имя (Name), полное имя (FullName) и так далее;
  •  методов: открыть документ (Open), напечатать документ (Printout), сохранить документ (Save) и так далее;
  •  событий: открытие документа (Document_New ()), закрытие документа (Document_Close ()) и так далее.

Экземпляры класса –  объект,  созданный по  «шаблону» класса объектов, является экземпляром класса и наследует весь набор свойств, методов и событий данного класса. Каждый экземпляр класса имеет уникальное для данного класса имя, которое указывается в скобках после названия класса, например:

Document("Проба.doc")

Различные экземпляры класса обладают одинаковым набором свойств, однако значения свойств у них могут отличаться.

Семейство объектов представляет собой объект, содержащий несколько объектов, экземпляров одного класса. Например, все открытые в текущий момент в приложении Word документы образуют семейство, которое обозначается следующим образом:

Обращение к объекту, входящему в семейство, производится по его имени или индексу.

Свойства объектов (Properties). Каждый объект обладает определенным набором свойств, первоначальные значения которых можно установить с использованием диалогового окна системы программирования.

Значения свойств объектов можно изменять в программном коде. Для присвоения свойству объекта нового значения в левой части строки программного кода необходимо указать имя объекта и затем название свойства, которые в соответствии с правилами точечной нотации разделяются между собой точкой. В правой части строки (после знака равенства) необходимо записать конкретное значение свойства:

Объект.Свойство = ЗначениеСвойства

Объект обычно имеет несколько свойств. С помощью инструкции With . . . End With можно задать значения сразу нескольких свойств объекта. Синтаксис установки значения нескольких свойств объекта:

With   Объект

  •  Свойство1 = Значение1
  •  Свойство2 = Значение2
  •  Сврйство n = Значение n

End   With

Методы объектов (Methods). Для того чтобы объект выполнил какую-либо операцию, необходимо применить метод, которым он обладает. Многие методы имеют аргументы, которые позволяют задать параметры выполняемых действий. Для присваивания аргументам конкретных значений используется двоеточие и знак равенства, а друг от друга аргументы отделяются запятой.

Чтобы задать параметры выполняемого действия необходимо обратиться к объекту, методу и аргументу, которому присваивается новое значение.

Объект.Метод. аргумент:=значение

События объекта (Events). Событие представляет собой действие, распознаваемое объектом. Событие может создаваться пользователем или быть результатом воздействия других программных объектов. В качестве реакции на события вызывается определенная процедура, которая может изменять значения свойств объекта, вызывать его методы и так далее.

Тема: Интегрированная среда Lazarus. Общие процедуры.

Для того чтобы начать работу в Lazarus, дважды щелкните кнопкой мыши на ее пиктограмме на рабочем столе Windows или в меню выбора. При этом на экране сначала появится рекламная заставка, сообщающая о том, что среда разработки Lazarus загружается в оперативную память компьютера. Затем Lazarus автоматически создаст новый проект. Это будет уже полностью работающие приложение, пока не имеющее никаких полезных функций. Если не производилось дополнительной настройки, то по умолчанию на переднем плане будет отображаться окно формы с именем Form1, а за ним будет располагаться окно редактора кодов с именем Unit1. Все необходимые процедуры и функции нужно будет добавить в процессе разработки нового приложения. В среде Lazarus предусмотрены различные типы проектов. Программист может легко изменить тип проекта по умолчанию.

Для управления рабочим пространством необходимо открывать и закрывать файлы в зависимости от того, с каким фрагментом программы нужно работать. Для того чтобы закрыть файл, предварительно необходимо его сохранить, для этого необходимо выполнить следующие процедуры:

  1.  File (Файл) - Save As (Сохранить как).
  2.  В появившемся окне набрать латинскими буквами имя файла и нажать ОК
  3.  Далее закрыть окно программы и в появившемся контекстном меню нажать ОК.
  4.  Ввести имя проекта, которое отлично от имени файла и нажать ОК.

Для открытия файла можно использовать пункт меню Open (Открыть) из меню File (Файл). Для повторного открытия файла можно использовать пункт меню Reopen (Повторить открытие) из меню File (Файл).

Когда сохраняется проект, имя проекта сохраняется в файле с расширением .dpr и используется при компиляции программы.

Используя пункты главного меню, можно выполнить большинство задач, которые необходимы при разработке проекта. Для вызова некоторых задач существуют специальные панели и отдельные пиктограммы, но они также дублируются в главном меню.

Панели инструментов

Появившееся после запуска главное окно представляет собой набор отдельных панелей, которые наиболее часто используются при разработке приложений. Для того чтобы убрать или отобразить какую-то из панелей, щелкните правой кнопкой мыши на поле, где расположены панели главного окна. При этом появится ниспадающее меню, где перечислены все доступные панели: Standart (Стандартная), View (Просмотр), Debug (Отладка), Custom (Пользовательская), Component Palette (Палитра компонент), Desktop (Рабочий стол) и Internet, а также есть пункт Customize (Настройка). Исследуйте все пункты меню, последовательно устанавливая или сбрасывая флажки и наблюдая происходящие на экране изменения. Тот же эффект можно получить, используя пункты меню View=>ToolBars (Просмотри Панели).

Окна Object Inspector (Инспектор объектов – находится в левой части рабочего окна) и Object TreeView (Дерево объектов) в этом меню не присутствуют, и для их отображения (если их нет на экране) необходимо выбрать соответствующее название в пункте меню View. Также можно использовать клавиши быстрого вызова, комбинации которых обычно указываются в пунктах меню. Для инспектора объектов и дерева объектов это будут клавиши <F11> и <Shift+Alt+Fll> соответственно. Основные окна форм и модулей также можно вызвать, используя пункты меню View или с помощью клавиш <Ctrl+F12> и <Shift+F12>.

Панели инструментов Lazarus содержат пиктограммы, с помощью которых можно выбирать различные команды. Например, при однократном щелчке кнопкой мыши на пиктограмме, изображающей дискету, компьютер выполняет команду Save (Сохранить). Эту же команду можно выполнить, активизировав соответствующий пункт в меню File. Чтобы узнать назначение любой пиктограммы, нужно на некоторое время установить на ней указатель мыши, после чего рядом с указателем появится этикетка, напоминающая программисту о назначении пиктограммы.

Активизировать пункты меню можно также с помощью клавиатуры.

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

Панель Standart

Стандартная панель инструментов (Standart) содержит пиктограммы общих задач, таких как открытие, сохранение и создание проектов Lazarus, и ассоциированных с ними файлов. Можно добавлять и удалять отдельные файлы из проекта. Делать это удобнее, чем через пункты главного меню, где эти задачи дублируются.

Панель View

Панель инструментов просмотра (View) содержит пиктограммы, предназначенные для создания новых форм, просмотра форм и модулей кода, а также для переключения между формой и модулем кода. С помощью панели просмотра можно быстро сделать видимыми разные окна среды разработки Lazarus. Это необходимо потому, что обычно на экране присутствует довольно много окон, причем они закрывают друг друга.

Панель Debug

Панель инструментов отладки (Debug) используется для интерактивного тестирования и отладки программ. Она обеспечивает быстрый доступ к командам отладчика Lazarus, доступным также из пункта главного меню Run (Выполнение). Отладчик Lazarus представляет собой утилиту времени разработки, т.е. ее можно использовать непосредственно в среде разработки Lazarus при работе над исходным кодом.

Панель Custom

Пользовательская панель инструментов (Custom) по умолчанию содержит только пиктограмму вызова справочной системы Lazarus. Через нее удобнее вызывать справочную систему, чем через главное меню. Пользоваться главным меню для вызова справочной системы необходимо только при отсутствии пользовательской панели.

Панель Component Palette

Палитра компонентов (Component Palette) представляет собой панель с вкладками, обеспечивающими быстрый доступ к компонентам VCL (Visual Component Library — библиотека визуальных компонентов) или CLX (Cross-platform Library). Компоненты библиотек организованы в иерархическую структуру. Они служат строительными блоками графического пользовательского интерфейса любого приложения Lazarus. Во время выполнения приложения компоненты VCL появляются на экране как элементы управления — кнопки, флажки, списки, поля ввода и т.д. Элементы управления составляют подмножество компонентов VCL: каждый элемент управления является компонентом, но не каждый компонент является элементом управления.

Элемент управления — это графический элемент, который размещается в форме, имеет визуальное отображение и способен обрабатывать сообщения операционной системы Windows. Компонент — это более широкое понятие, которое можно рассматривать как объект, выполняющий определенные функции.

Панель Desktop

Панель рабочего стола (Desktop) содержит список имеющихся раскладок рабочего стола. Можно сохранить текущую раскладку и присвоить ей какое-либо имя. Если одну из раскладок выделить, то при следующем запуске Lazarus она будет выведена на экран, и программисту не придется настраивать рабочий стол. С помощью панели рабочего стола программист может манипулировать раскладками рабочего стола, определяющими видимость, размеры, стыковку и расположение окон, а также состав инструментов Lazarus.

Панель Internet

Это новая панель помогает создавать страницы для Web и модули для использования безграничных возможностей Internet. В дальнейшем эти возможности будут описаны подробнее.

Форма

В форме (form) размещают все компоненты, которые и будут составлять внутреннее содержание выполняемой программы. В форме можно размещать стандартные компоненты из библиотеки VCL, которая входит в поставку Lazarus, или использовать компоненты собственной разработки. На рис. показано окно Components (Список компонентов). Чтобы открыть его из главного меню, выберите команду View-Component List (Просмотр-Список компонентов). В этом окне в алфавитном порядке приведены все компоненты, доступные в текущей версии Lazarus и в библиотеке VCL. Большинство компонентов так же отображается на панели компонентов, где они упорядочены по категориям.

Форма, собственно, и является тем пользовательским интерфейсом, который будет отображаться на экране во время выполнения приложения. Форму можно ассоциировать с окном, которое по умолчанию называется Forml, и ее можно редактировать в процессе разработки, т.е. изменять размер, цвет, размещать на ней компоненты и удалять их из формы и т.д. Для внесения всех этих изменений существует связанный с формой инспектор объектов (об этом поговорим подробнее после знакомства с классами). Пример окна с пустой формой и связанный с ней инспектор объектов показаны на рисунке.. Если окна формы не видно на экране или вы хотите работать с другой формой, выберите команду View-Forms (Просмотр-Формы) или щелкните на пиктограмме формы на панели View, что будет удобнее всего. В окне View Form (Просмотр формы) выделите нужную форму и щелкните на кнопке ОК. Если в окне View Form нет ни одной формы, значит, в текущем проекте форм нет. В этом случае при необходимости можно добавить в проект новую форму, выбрав для этого пункты меню File-New-Form (Файл-Новая-Форма).

В среде отладки Lazarus используется объектно-ориентированный язык Object Pascal, представляющий собой расширение стандартного Pascal. Все используемые в Lazarus компоненты являются объектами. С каждым объектом ассоциирован набор его свойств. Например, форма является объектом с такими свойствами {Properties), как Name (Имя), Caption (Заголовок), Client-Height (Высота), ClientWidth (Ширина), Color (Цвет) и т.д., что отражено в инспекторе объектов. При создании новой формы Lazarus автоматически присваивает каждому свойству значение по умолчанию. При разработке программы свойства компонентов можно изменять с помощью диалогового окна Object Inspector (Инспектор объектов). Для этого нужно всего лишь щелкнуть на нужном свойстве кнопкой мыши и заменить его текущее значение. На рисунке показан вид окна инспектора объектов для формы Forml. Если окна инспектора объектов на экране не видно, то для его вывода выберите команду View-Object Inspector или нажмите клавишу <F11>.

Редактор кода

Редактор кода представляет собой полнофункциональный текстовый редактор, с помощью которого можно просматривать и редактировать исходный код программы. Кроме того, редактор кода содержит многочисленные средства, облегчающие создание исходного кода на языке Object Pascal. И хотя редактировать исходный код можно в любом текстовом редакторе, делать это в редакторе кода значительно удобнее, так как встроенные возможности облегчают написание кода, а многочисленные подсказки помогают избежать ошибок. В окне редактора кода каждый модуль кода выводится на отдельной вкладке.   Чтобы  открыть модуль в редакторе кода, выберите   команду View-Units (Просмотри-Модуль), или щелкнуть на пиктограмме модуля, расположенной на панели View. Затем в окне View Unit (Просмотр модуля) выделите имя нужного модуля и щелкните на кнопке ОК.

По умолчанию с окном редактора кодов состыковано окно Exploring (Исследователь кода), расположенное слева от редактора кодов. Можно сделать окно исследователя кодов и самостоятельным окном, для чего необходимо навести указатель мыши на двойную полоску вверху окна и при нажатой левой кнопке мыши перетащить его в любое удобное место. Такие окна, которые могут состыковываться друг с другом, называются "стыкуемые" окна. С помощью исследователя кода программист может легко просматривать файлы модулей. На древовидной диаграмме исследователя кода показаны все типы, классы, свойства, методы, глобальные переменные и глобальные процедуры, определенные в модуле кода, загруженного в данный момент в редактор кода. В исследователе кода перечислены также все модули, используемые текущим модулем редактора кода. Чтобы открыть окно исследователя кода (если его не видно), необходимо последовательно выбрать пункты меню View-Code Explorer (Просмотр-Исследователь кода).

Почти все окна, отображаемые на экране во время проектирования, являются стыкуемыми. Для состыковки двух окон необходимо поместить курсор мыши на заголовок окна и при нажатой кнопке мыши переместить его в другое окно. Появляющаяся рамка покажет новое расположение окна. Для расстыковки окон нужно проделать обратную операцию. Удобство состоит в том, что можно объединить несколько окон в одну группу и в дальнейшем обращаться с ней, как с единым окном.

Также по умолчанию с окном редактора кода состыковано окно сообщений. Оно появляется автоматически, если в процессе компиляции программы были сгенерированы сообщения об ошибках или предупреждающие сообщения. Это можно легко проверить, если в стандартный код проекта по умолчанию внести какую-либо ошибку. Например, в разделе var исправить Forml на Form2, то после компиляции, для чего необходимо нажать клавиши <Ctrl+F9>, появится окно сообщений с сообщением об ошибке, а в окне редактора кодов будет подсвечена та строка, где произошла ошибка. Для отображения окна сообщений можно также щелкнуть правой кнопкой мыши на редакторе кода и в контекстном меню выбрать пункт Message View (Просмотр сообщений). Если дважды щелкнуть кнопкой мыши на каком-либо сообщении, то в редакторе кода подсвечиваются строка или строки, породившие сообщение. Щелчок правой кнопкой мыши в окне сообщений активизирует контекстное меню этого окна, с помощью которого можно удалить или сохранить все или отдельные сообщения, а также сделать переход в окно редактора кода на строку с ошибкой. При выборе в главном меню пунктов Search-Find in Files... (Поиск-Найти в файлах...) в окне сообщений выводятся результаты поиска.

Дерево объектов

Объект, созданный на основе какого-либо класса, — это просто место в памяти, отдельный элемент программы, который может выполнять определенные задачи, и свойства которого можно изменять. Объектом является не только само окно формы, но и все размещаемые в нем компоненты: Button (Кнопка), Label (Надпись), Memo (Область просмотра) и др.

Object TreeView (Дерево объектов), так же как и инспектор объектов, необходимо использовать для повышения скорости работы и получения оперативной информации. Щелчок мыши на объекте в окне дерева объектов выделит этот объект в форме и в инспекторе объектов. Для выделения нескольких объектов необходимо щелкнуть на нужных объектах при нажатой клавише <Shift>. В дереве объектов также можно группировать отдельные объекты, просто перемещая их при нажатой кнопке мыши.

Инспектор объектов

Object Inspector (Инспектор объектов) является основным инструментом для настройки объектов. Для каждого вновь созданного объекта в окне инспектора объектов создается относящаяся к нему вкладка, к которой можно обратиться, если выбрать в поле выбора, находящегося в верхней части окна, имя объекта. Для этого необходимо щелкнуть на кнопке с изображением небольшой стрелки, указывающей вниз, и в появившемся списке имен выбрать нужный объект.

После того как выбран необходимый объект, можно не только изменять и настраивать все его свойства, но и создавать обработчики событий для данного объекта, которые будут определенным образом реагировать на такие события, как, например, щелчок кнопки мыши, перемещение мыши или нажатие клавиш клавиатуры.

Для этого на каждой страничке инспектора объектов существуют две вкладки: Properties (Свойства) и Events (События). Кратко остановимся на некоторых свойствах для такого объекта, как форма.

Для того чтобы создать проект по умолчанию, существует несколько способов.

Первый способ.

Выберите последовательно пункты меню File-New-Application. Проект по умолчанию с формой и редактором кода будет создан. Это полностью работающее приложение, и результат его работы можно увидеть, если нажать клавишу <F9>.

Второй способ.

Щелкните на пиктограмме проекта, расположенной на панели Standart (Стандартная) и в появившемся окне выберите вкладку New, а в ней щелкните на пиктограмме Application (Приложение).

Третий способ.

Последовательно выберите пункты меню Project-Add New Project... Как и во втором случае, появится окно New Items, где выбирается пиктограмма Application из вкладки New.

Названия панелей не отображаются на экране. Поэтому необходимо запомнить расположение панелей, для чего можно щелкнуть правой кнопкой мыши на поле, где расположены панели, и открыть список всех панелей. Последовательно подключая и отключая отдельные панели, можно увидеть их расположение.

Теперь, когда создано рабочее приложение, можно изменять его параметры, что делается с помощью инспектора объектов.

Если окно формы скрыто за окном редактора кодов, то переместите его на передний план, что также можно сделать несколькими способами.

1. Если некоторые элементы окна формы отображаются на экране, то просто щелкните на них мышью, после чего окно полностью отобразится на экране.

2. На панели обзора (View) щелкните на пиктограмме Toggle Form/Unit (Переключение форм/модулей), что приведет к перестановке отображаемых окон.

3. Выберите последовательно пункты меню View-Forms, в результате чего появится диалоговое окно View- Forms, где можно выбрать нужную форму.

Теперь, когда окно формы находится на переднем плане, займемся его редактированием с помощью инспектора объектов. Так как во вновь созданном проекте нет никаких объектов, кроме формы, то именно она и будет отображаться в инспекторе объектов. Выберите вкладку Properties (Свойства) и посмотрите на довольно большой перечень всех свойств. Разумеется, весь перечень не помещается на экране, и для доступа к отдельным свойствам нужно воспользоваться бегунком. Не стоит пугаться такого количества свойств, многие из них интуитивно понятны и они повторяются от объекта к объекту. Поэтому после небольшой практики вы будете хорошо понимать большинство свойств этого списка.

Все свойства расположены в алфавитном порядке, именно так и начнем их рассматривать. Остановимся только на некоторых из них, например Caption (Заголовок). По умолчанию там записано Form1, что и отображается в заголовке окна. Попробуйте изменить это свойство, для чего щелкните на поле, где записано Forml и введите любое подходящее название, например "Мое Окно". Одновременно с набором текста будет меняться название окна формы. Дальше идут два свойства ClientHeight и ClientWidht, которые определяют непосредственные размеры окна. Попробуйте ввести другие значения для них и сразу же увидите изменения на экране. Очень важное свойство Enabled (Блокировка). Обычно оно всегда должно быть в состоянии True. Попробуйте изменить его на False и запустите проект на выполнение (клавиша <F9> или пиктограмма на панели Debug). Эффект будет заметен. Далее есть свойство Icon (Пиктограмма). С помощью его можно изменить пиктограмму, которая будет связана с приложением и будет отображаться рядом с заголовком окна. Пиктограмму можно нарисовать самому или скопировать. Для дополнительного описания функций окна можно использовать свойство Hint (Подсказка). В окно вводится текст, который будет отображаться на экране в виде этикетки при наведении на созданное окно указателя мыши. Но для того, что бы это произошло, нужно разрешить этому тексту отображаться на экране, для чего существует свойство ShowHint (Показать подсказку), которое должно быть установлено в состояние True.

Можно изменять размеры и вид рамки (BorderStyle и BorderWidht) или цвет окна (Color). Можно изменить вид курсора (Cursor), который появится при наведении курсора мыши на созданное окно.

Обычно все перечисленные свойства присутствуют в любом объекте, и ими чаще всего приходится пользоваться.

  1.  

Тема: «Стандартные компоненты системы Lazarus.

Компонент — это объект, который имеет графическое изображение на экране во время работы или проектирования. Наиболее часто используемые компоненты расположены на панели компонентов. С их помощью можно создавать графические интерфейсы пользователя. Но для этого необходимо знать свойства и методы компонента. (Студенты рассаживаются за компьютеры, записывая основные моменты в тетрадь и выполняя действия преподавателя)

Форму тоже можно рассматривать как компонент, хотя ее пиктограмма и отсутствует в палитре компонентов. Рассмотрим несколько компонентов.

Компонент TLabel

Компонент TLabel (Надпись) используется для отображения текста на форме. Рассмотрим методику работы с надписями. Выполните следующие действия.

1. Помещение надписи в форму. Поместите надпись в форму. Для этого на палитре компонент выберите вкладку Standart (обычно она открыта по умолчанию) и дважды щелкните кнопкой мыши на пиктограмме надписи (буква А). Другой способ размещения надписи в форме — один раз щелкнуть кнопкой мыши на пиктограмме надписи на палитре компонентов, а затем щелкнуть в нужном месте формы. При этом можно, не отпуская кнопки мыши, задать необходимые размеры. Чтобы удалить надпись из формы, выделите ее (щелкните на ней мышью, при этом она выделится черными квадратиками) и нажмите клавишу <Delete>. Также удаление можно выполнить с помощью контекстного меню, если щелкнуть правой кнопкой мыши на объекте. Выделение можно сделать и с помощью дерева объектов, щелкнув на пиктограмме надписи. Чтобы отменить выделение, щелкните кнопкой мыши в любом месте за пределами надписи.

- Поэкспериментируйте с размещением и удалением надписей.

2.  Переместите надпись в другое место формы методом перетаскивания. Для этого установите указатель мыши на надписи, щелкните кнопкой мыши и, удерживая ее нажатой, передвиньте надпись в другое место. Когда надпись займет нужное положение, отпустите кнопку мыши. Обратите внимание на то, что при перетаскивании объекта границы надписи будут привязаны к разметочной сетке формы.

3. Свойства компоненты TLabel.  К свойствам компоненты относятся Name (Имя)- вносится на английском языке, можно имя компоненты оставлять по умолчанию Label1. После ввода нужного имени надписи зафиксируйте его, нажав клавишу <Enter>. Свойство Caption (в данном случае можно перевести как надпись)- вносится на русском языке самим пользователем. Надпись появляется в самом окне компоненты. Свойство Color (Цвет) – позволяет изменить цвет фона надписи. Свойство Font (Шрифт) – изменяет шрифт и цвет текста надписи. Свойство AutoSize – автомасштабирование. Определяет размер объекта, который может постраиваться под размер своего содержимого. Если установить состояние False, то автоматического изменения границ происходить не будет, а True – автомасштабирвоание.

Пр. работа. Добавьте на форму надпись. Измените свойство надписи Name (Имя) на MyFirstLabel (по умолчанию она называлась Label 1). После ввода нужного имени надписи зафиксируйте его, нажав клавишу <Enter>. Введите новую надпись: "Моя первая надпись!" и нажмите клавишу <Enter>. В свойстве AutoSize. установить состояние True. Измените цвет фона надписи на желтый цвет. Измените шрифт и цвет текста надписи.  Шрифт на Arial, стиль на Bold Italic, а размер — на 20, выберите красный цвет.

Итак, вы создали простое приложение, которое, правда, пока что ничего полезного не делает. Выполните его. Это можно сделать одним из трех способов: щелкнув на пиктограмме Run (Выполнить) на панели отладки, выбрав в главном меню команду Run-Run или нажав клавишу <F9>. При этом на экране должна появиться форма.

Компонент TEdit

В компоненте TEdit (Поле ввода) хранится текст, который можно помещать в данный компонент как во время разработки, так и во время выполнения. Свойство Name (Имя) по умолчанию задается Editl, изменения вносятся на английском языке. Текст, видимый в поле ввода, находится в свойстве Text (равносильно свойству Caption). Свойство MaxLength определяет максимальное количество символов в поле ввода. Если значение свойства MaxLength равно 0, то количество символов ничем не ограничено. С помощью свойства Font можно устанавливать шрифт текста. Если свойство Readonly (Только чтение) установить в True, то во время выполнения программы пользователь не сможет изменять текст поля ввода. 

Пр. работа. Для лучшего понимания работы поля ввода выполните следующее.

1. Открыть новую форму.

2. Разместите поле ввода в форме. Пиктограмма компонента "Поле ввода" находится рядом с пиктограммой компонента "Надпись" на вкладке Standart. Пиктограмма с буквами ab .

3. Измените размер поля ввода. Для этого установите указатель мыши на одном из черных квадратиков и, удерживая кнопку мыши нажатой, переместите черный квадратик (а с ним и границу поля ввода) в нужном направлении. Установив необходимый размер, отпустите кнопку мыши.

4. Переместите поле ввода в нужное место методом перетаскивания.

5. Установите значение свойства Name в MyText.

6. Выберите в инспекторе объектов свойство Text и введите его новое значение «Поле ввода».

7. Измените цвет текста в поле ввода на синий.

8. Нажав клавишу <F9>, запустите разработанную программу.

Компонент TMemo

Компонент ТМето (Область просмотра) предназначен для вывода на экран нескольких строк текста. Свойство Name (Имя) по умолчанию задается Memol, изменения вносятся на английском языке. Свойства MaxLength, Font и Readonly области просмотра аналогичны соответствующим свойствам поля ввода. Свойство Text содержит весь текст области просмотра, однако это свойство доступно только по время выполнения. Свойство Lines (Строки) содержит список строк, введенных пользователем. Оно доступно как во время разработки, так и во время выполнения. Свойство WordWarp определяет, будут ли переноситься строки, выходящие за пределы области просмотра, или они останутся невидимыми. Если вместо русского текста на экране появились произвольные символы, то нужно изменить значение свойства Charset (Набор символов) объекта Font (Шрифт). 

Пр.работа. Для лучшего знакомства с областью просмотра выполните следующие действия.

1. Создайте новую форму. Разместите область просмотра в форме.

2. Установите подходящий размер области просмотра и переместите область просмотра в удобное место.

3. Измените значение свойства Name области просмотра на memSample.

4. Выберите свойство Lines и щелкните на кнопке с тремя точками. Введите текст:

Строка 1

Строка 2

Строка 3

5. Запустите программу на выполнение.

Компонент TButton

Пиктограмма с ОК. Обычно с помощью компонента TButton (Кнопка) пользователь просматривает фрагмент кода или целой программы. Свойства компонента  TButton аналогичны свойствам надписи TLabel.

Пр.работа.

1. Создайте новую форму.

2. Поместите кнопку в форму.

3. Измените значение свойства Name кнопки на "MyButton".

4. Измените значение свойства Caption кнопки на "Щелкать здесь".

5. Нажав клавишу <F9>, запустите программу.

6. Щелкните на кнопке. При этом кнопка принимает такой вид, будто она нажата. Пока еще с кнопкой не связан какой-либо код, поэтому никакой реакции на нажатие кнопки не происходит.

Первая программа

Теперь вы уже имеете необходимые знания для того, чтобы создать свою первую программу. Это будет простенькая программа, имеющая интерфейс с двумя кнопками и надписью, которую можно как выводить на экран, так и убирать с экрана. Постарайтесь как можно лучше оформить этот незамысловатый графический интерфейс. Образно можно сказать, что программу встречают по одежке, т.е. по виду интерфейса. Сейчас приступим к разработке первой программы, это не займет много времени.

IV. Практическая работа.

1. Сообщение задания.

1. Создайте проект.

2. Разместите на нем две кнопки и надпись. Используя палитру способов выравнивания, или вручную постарайтесь расположить их симметрично, выбрав подходящие размеры.

3. Назовите первую кнопку "Вывод надписи", а вторую — "Очистка" (это свойство Caption).

4. Для надписи выберите размер шрифта 14 пунктов.

5. Создайте обработчики событий для нажатия кнопки.

6. Для создания обработчика события нажатия кнопки необходимо в инспекторе объектов выбрать вкладку Events (События), затем выбрать событие OnClick (Щелчок). Инспектор объектов должен отображать настройки нужного объекта. В нашем случае это будет кнопка Buttonl с названием "Вывод надписи".

7. Щелкните мышкой на появившемся справа от события OnClick белом поле, и Lazarus моментально перенесет вас в редактор кода, где сделает заготовку для обработчика события и установит курсор на том месте, где нужно ввести необходимый код.

8.  Вручную введите следующий код. Labell.Caption := 'Моя первая программа';

9.  Проделайте то же самое со второй кнопкой, для которой введите такой код.

Labell.Caption := ";

10. Запустите программу и пощелкайте на кнопках.

11. Завершите работу программы.

Тема: Ключевые слова, типы данных в системе Lazarus

Ключевые, или зарезервированные слова - это как команды для компилятора, на основе которых он готовится в выполнению определенных действий.

Обычно ключевые слова пишутся строчными буквами. Но Lazarus безразличен к регистру клавиатуры, поэтому можно использовать в своей программе как строчные (нижний регистр), так и прописные (верхний регистр) буквы. Но рекомендуется использовать какой-то один стиль написания, например, тот, к которому вы уже привыкли. Если вы только начинаете программировать, то лучше использовать общепринятые правила и писать ключевые слова строчными буквами.

Program – определяет имя программы, стоит вначале программы.

Uses – определяет раздел подключаемых модулей.

Var – определяет раздел описания переменных

Begin – начало блока

End -  используется с ключевым словом Begin и отмечает конец блока. Также ставится в конце описания типа.

Есть еще несколько ключевых слов, о которых мы поговорим позже.

При описании переменной необходимо указать ее тип. Знание типа переменной необходимо для определения набора значений, которые она может принимать, и действий, которые над ней можно выполнять. Для обозначения типа используют идентификаторы.

Идентификатор – это строка символов, используемая для именования некоторого элемента программы.

Все типы можно разделить на шесть основных подразделов:

■   простой тип;

■   строковый тип;

■   структурный (структурированный) тип;

■  указательный тип;

■   процедурный тип;

■   вариантный тип.

Простые типы

Простые типы определяют упорядоченные множества значений.

Вещественный тип

К вещественному типу относится подмножество вещественных чисел, которые могут быть представлены в формате с плавающей запятой с фиксированным числом цифр (табл. 2.3).

Строковый тип

Значением строкового типа является последовательность символов с динамически изменяемой длиной. Текущее значение атрибута длины можно получить с помощью стандартной функции Length, а с помощью процедуры SetLength можно установить длину строки. Основные строковые типы перечислены в табл. 2.4.

Структурные типы

Структурный тип характеризуется методами структурирования, типами своих компонентов и имеет более одного значения. Структурный тип может иметь неограниченное число уровней. Слово packed (упакованный) в описании структурного типа требует от компилятора уплотнить хранимые данные, даже за счет уменьшения скорости доступа к элементам в переменной этого типа.

Тема: Организация ввода и вывода информации в среде объектно-ориентированного программирования Lazarus

Чтобы текст в поле объекта Edit или Label был доступным в программном коде проекта, необходимо обратиться к свойствам соответствующих объектов, указав имя объекта и свойство через точку, то есть: Editl.text, Label1.caption.

Однако в полях этих объектов может находиться только текстовая информация, а при решении задач приходится вводить целые или вещественные числа. В среде Lazarus имеются функции, которые позволяют перевести целое число в текст и наоборот.

Для работы с целыми числами используют:

1.   StrToInt (стртуинт) - переводит текст в целое число или вводит  

Например: a:=strtoint(editl .text).

2.  IntToStr (инттустр) - переводит целое число в текст или выводит

Например: editl.text:=IntToStr(a), где а типа integer.

Для работы с вещественными числами используют:

1.   StrToFloat - переводит текст в вещественное число или вводит      

Например: a:=strtofloat(editl .text).

2.  FloatToStr – переводит вещественное число в текст или выводит     

Например: editl.text:=FloatToStr(a), где а типа real.

IV. Работа по выработке практических навыков и умений.

Разработать проект, который позволяет найти сумму двух целых чисел и их отношение.

Для этого нам необходимо на форму поместить четыре компонента Label (надпись)

Label1 – целое число a (свойство caption)

Label2 – целое число b (свойство caption)

Label3 – сумма (свойство caption)

Label4 – отношение (свойство caption)

Четыре окна Edit – для ввода данных a, b и вывода значения суммы и отношения.

Можно установить свойства для цвета фона окон и шрифта.

И одну кнопку Button – Нажми (свойство caption)

Чтобы выполнить изменения в программном коде необходимо двойным щелчком мыши нажать на кнопку  Нажми. Появляется программный код.

procedure TForm1.Button1Click(Sender: TObject);

begin

end;

end.

Сначала мы должны описать все переменные, которые будем использовать (a,b,c,d) Какое типа будут переменные a,b,c? (целого – integer) А переменная d? (вещественного – real)

Описываем в разделе описания. Каким ключевым словом открывается раздел описания? (var).

- Как в окне Edit1 вывести не текст, а число? Какую функцию надо использовать? (StrToInt (стртуинт)). Запишем a:= strtoint(edit1.Text);

- Аналогично сделаем для переменной b.  (b:= strtoint(edit2.Text);) Не забываем ставить в конце строк точку с запятой.

- А чтобы получить сумму этих чисел мы должны переменной с присвоить значение суммы чисел a и b. Тогда запишем: c:= a+b;

- Чтобы вывести в окне Edit3 результат, какой функцией необходимо воспользоваться? (IntToStr (инттустр)) Тогда надо записать таким образом: edit3.Text:=inttostr(c);

- Чтобы получить отношение, что необходимо сделать? (a/b и присвоить это переменной d , d:=a/b;)

- А вывести этот результат необходимо в окно Edit4. Тогда запишем, каким образом? (edit4.Text:= floattostr(d);) Обратите внимание, что мы воспользовались функцией, которая работает с вещественным типом.

- Чтобы запустить проект на выполнение необходимо зайти в пункт меню Run-Run или нажать клавишу  F9.

       еnd.

Задание: Разработать проект «Простой калькулятор».

procedure TForm1.Button1Click(Sender: TObject);

var a,b,c,n,m : integer;

d: real;

begin

a:= strtoint(edit1.Text);

b:= strtoint(edit2.Text);

c:= a+b;

edit3.Text:=inttostr(c);

d:=a/b;

edit4.Text:= floattostr(d);

n:=a-b;

edit5.text:= inttostr(n);

m:=a*b;

edit6.text:=inttostr(m);

end;

end.

Тема: Создание простейших проектов приложений.

1). Разработать проект, в котором пользователь вводит трехзначное число. В этом числе необходимо подсчитать количество десятков, сотен и единиц.

2). Даны длины сторон прямоугольника. Найти его периметр и длину диагонали.

4). Пользователь вводит четырехзначное число. Разработать проект, который позволяет вычислить сумму цифр этого числа, произведение цифр заданного числа.

№5. Вычислить площадь треугольника по трем его сторонам.

Procedure TForm1.Button1.Click(Sender:TObject)

Var a,b,c: integer;

s,p: real;

Begin

a:= strtoint(edit1.Text);

b:= strtoint(edit2.Text);

c:= strtoint(edit3.Text);

p:= (a+b+c)/2;

s:= sqrt(p*(p-a)*(p-b)*(p-c));

edit4.Text:= floattostr(s);

end;

end.

№6. Вычислить периметр и площадь прямоугольного треугольника по длинам двух его катетов.

Procedure TForm1.Button1.Click(Sender:TObject)

Var a,b: integer;

c,p,s: real;

Begin

a:= strtoint(edit1.Text);

b:= strtoint(edit2.Text);

c:= sqrt (a**2 + b**2);

p:= a+b+c;

edit3.Text:= floattostr(p);

s:= a*b/2;

edit4.Text:= floattostr(s);

end;

end.

№7. Дано трехзначное число. Найти число, полученное при перестановке второй и третьей цифр заданного числа.

№8. Определить число, полученное выписыванием в обратном порядке цифр заданного трехзначного числа.

Procedure TForm1.Button1.Click(Sender:TObject)

Var a,a1,a2,a3,c,p: integer;

Begin

a:= strtoint(edit1.Text);

a1:= a div 100;

a3:= a mod 10;

c:= a div 10;

a2:= c mod 10;

p:= a3*100 + a2*10 + a1;

edit2.Text:=inttostr(p);

end;

end.

№ 9. Дано трехзначное число n. Найти число десятков  в нем.

n:= strtoint(edit1.Text);

x:= n div 10;

y:= x mod 10;

№10. Даны основания и высота равнобедренной трапеции. Найти ее периметр.

№11. Даны длины сторон прямоугольного параллелепипеда. Найти его объем и площадь боковой поверхности.

Procedure TForm1.Button1.Click(Sender:TObject)

Var a,b,c, V,s: integer;

Begin

a:= strtoint(edit1.Text);

b:= strtoint(edit2.Text);

c:= strtoint(edit3.Text);

V:= a*b*c;

edit4.Text:=inttostr(V);

s:= a*b*4

Edit5.Text:=inttostr(s);

end;

end.

№12. Дано трехзначное число. Найти число, полученное при перестановке первой и второй цифр заданного числа.

№13. Дано трехзначное число. Получить три различных числа, образованных перестановкой цифр заданного числа.

Procedure TForm1.Button1.Click(Sender:TObject)

Var a,a1,a2,a3,c,p,n,k: integer;

Begin

a:= strtoint(edit1.Text);

a1:= a div 100;

a3:= a mod 10;

c:= a div 10;

a2:= c mod 10;

p:= a3*100 + a2*10 + a1;

edit2.Text:=inttostr(p);

n:= a2*100 + a1*10 +a3;

edit3.Text:=inttostr(n);

k:= a2*100 + a3*10 +a1;

edit4.Text:=inttostr(k);

end;

end.

№14. Дано четырехзначное число n. Найти число десятков  в нем.

x:= n div 10;

y:= x mod 10;

edit2.Text:=inttostr(y);

end;

end.

Тема: Организация ветвления в среде ООП Lazarus.

Вычислительный процесс называется разветвляющимся, если в зависимости от выполнения определенных условий, он реализуется по одному из нескольких, заранее предусмотренных (возможных) направлений. Каждое отдельное направление называется ветвью вычислений. Выбор той или иной ветви осуществляется уже при выполнении программы в результате проверки некоторых условий и определяется свойствами исходных данных и промежуточных результатов.

Ветвление в среде ООП позволяет реализовать оператор if, который позволяет выбрать один из двух возможных вариантов развития программы. Выбор осуществляется в зависимости от выполнения условия. Различают полный и неполный оператор if.

Формат использования полного оператора в программном коде:

if условие then оператор 1 else оператор 2

Формат использования полного оператора в программном коде:

if условие then оператор

Замечание: Если после then или else используется несколько операторов, то все они заключают процедурные скобки begin ... end.

Выполняется оператор if следующим образом:

1.  Вычисляется значение условия (условие - выражение логического типа, значение которого может быть равно True или False).

2.  Если условие истинно (значение выражения условие равно True), то выполняются инструкции, следующие за словом then (между begin и end). На этом выполнение операции if заканчивается, то есть инструкции, следующие за else, не будут выполнены. Если условие ложно (значение выражения условие равно False), то выполяются инструкции, следующие за словом else (между begin и end).

Для организации работы в среде ООп используются метки, текстовые поля.

IV. Работа по выработке практических навыков и умений.

1. Составить проект приложения, который позволяет вычислить стоимость разговора по телефону. Учесть, что по субботам и воскресным дням скидка 20%. Цена минуты - 15 копеек.

№1.    Дано четырехзначное число. Определить, кратна ли трем сумма его цифр.

Procedure TForm1.Button1.Click(Sender:TObject)

Var a,a1,a2,a3,a4, c,p, s: integer;

Begin

a:= strtoint(edit1.Text);

a1:= a div 1000;

a4:= a mod 10;

c:= a div 10;

a3:= c mod 10;

p:= c div 10;

a2:= p mod 10;

s:= a1+a2+a3+a4;

if (s mod 3 = 0) then label2.caption:= ‘да ‘ else label2.caption:= ‘нет ‘

end;

end.

№2. Даны три различных целых числа. Определить большее из них.

Procedure TForm1.Button1.Click(Sender:TObject)

Var a,b, c: integer;

Begin

a:= strtoint(edit1.Text);

b:= strtoint(edit2.Text);

c:= strtoint(edit3.Text);

If (a>b) and (a>c) then label4.caption:= ‘Число a больше’

Else begin

if (b>a) and (b>c) then label4.caption:= ‘Число b больше’

Else label4.caption:= ‘Число c больше’;

end;

end.

№3. Задать с помощью условного оператора следующие действия: большее из трех заданных чисел уменьшить на 5.

Procedure TForm1.Button1.Click(Sender:TObject)

Var a,b, c,max, k: integer;

Begin

a:= strtoint(edit1.Text);

b:= strtoint(edit2.Text);

c:= strtoint(edit3.Text);

if a>b then max:=a else max:=b;

if c>max then max:=c;

k:= max -5;

edit4.Text:=inttostr(k);

end;

end.

4. Дано четырехзначное число n, определить количество сотен в нем.

x:= n div 100;

y:= x mod 10;

edit2.Text:=inttostr(y);

end;

end.

5. Найти периметр прямоугольного треугольника, зная его катеты.

Procedure TForm1.Button1.Click(Sender:TObject)

Var a,b: integer;

c,p: real;

Begin

a:= strtoint(edit1.Text);

b:= strtoint(edit2.Text);

c:= sqrt (a**2 + b**2);

p:= a+b+c;

edit3.Text:= floattostr(p);

end;

end.

6. Дано трехзначное число n. Получить число, переставив первую и последнюю цифры данного числа.

Procedure TForm1.Button1.Click(Sender:TObject)

Var a,a1,a2,a3,c,p,n,k: integer;

Begin

a:= strtoint(edit1.Text);

a1:= a div 100;

a3:= a mod 10;

c:= a div 10;

a2:= c mod 10;

p:= a3*100 + a2*10 + a1;

edit2.Text:=inttostr(p);

end;

end.

Тема: Организация ветвления в среде ООП Lazarus.

В языке Lazarus есть оператор case, который позволяет эффективно реализовать множественный выбор. В общем виде он записывается следующим образом:

case Селектор of

список 1: оператор 1;

список 2: оператор 2;

список n: оператор n;

else оператор n+1;

end;

где:

•    Селектор - выражение, значение которого определяет дальнейший ход выполнения программы;

•    Список N — список констант. Если константы представляют собой диапазон чисел, то вместо списка можно указать первую и последнюю константу диапазона, разделив их двумя точками. Например, список 1, 2, 3, 4, 5, 6 может быть заменен диапазоном 1..6.

Выполняется инструкция case следующим образом:

1. Сначала вычисляется значение выражения-селектора.

2. Значение выражения-селектора последовательно сравнивается с константами из списков констант.

3. Если значение выражения совпадает с константой из списка, то выполняется соответствующая этому списку группа операторов. На этом выполнение инструкции case завершается.

4.  Если значение выражения-селектора не совпадает ни с одной константой из всех списков, то выполняется последовательность инструкций, следующая за else.

Для   реализации   оператора   выбора  в   среде   ООП   Lazarus   удачно   используется компонент ListBox, который находится на панели инструментов Standart.

Наибольший интерес  представляют свойства Items  и  Itemindex.  Свойство  items содержит элементы  списка.   Свойство  itemindex задает  номер  выбранного элемента списка. Если ни один из элементов не выбран, то значение свойства равно минус единице.

Список может быть сформирован во время создания формы или во время работы программы. Для формирования списка во время создания формы надо в окне Object Inspector выбрать свойство items и щелкнуть на кнопке запуска редактора списка строк В открывшемся диалоговом окне String List Editor нужно ввести список, набирая каждый элемент списка в отдельной строке. После ввода очередного элемента списка для перехода к новой строке необходимо нажать клавишу <Enter>. После ввода последнего элемента клавишу <Enter> нажимать не надо. Завершив ввод списка, следует щелкнуть на кнопке ОК.

IV. Работа по выработке практических умений и навыков.

№1. Разработать проект, который пересчитывает вес из фунтов в килограммы. Программа учитывает, что в разных странах фунт "весит" по-разному. Например, в России фунт равен 409,5 граммов, в Англии — 453,592 грамма, а в Германии, Дании и Исландии фунт весит 500 граммов.

№2.Составить программу, которая в зависимости от порядкового номера дня недели (1, 2, ..., 7) выводит на форму его название (понедельник, вторник, ..., воскресение).

procedure TForm1.Button1Click(Sender: TObject);

var

t: string;

begin

case listBox1.ItemIndex of

0: t:='понедельник';

1: t:= 'вторник';

2: t:= 'среда';

3: t:= 'четверг';

4: t:= 'пятница';

5: t:= 'суббота';

6: t:= 'воскресенье';

end;

label2.Caption:= 'Сегодня'+ ' ' + (t)+ '.' ;

end;

end.

№3. Дано трехзначное число. Определить во сколько раз сумма цифр заданного числа больше произведения цифр этого числа.

procedure TForm1.Button1Click(Sender: TObject);

var

z, a1,a2,a3,b,s,p: integer;

k: real;

begin

z:= strtoint (edit1.Text);

a3:= z mod 10;

a1:= z div 100;

b:= z div 10;

a2:= b mod 10;

s:=  a1+a2+a3;

p:= a1*a2*a3;

k:= s/p;

if s>p then label2.Caption:= 'Сумма цифр данного числа больше произведения цифр данного числа в' + ' ' + floattostr (k) + 'раз.' else  label2.Caption:= 'Сумма цифр данного числа меньше произведения цифр данного числа в' + ' ' + floattostr (k) + 'раз.' ;

       end;

       end.

№4. Разработать проект приложения для нахождения значения функции:

 x +12, если x>1

У=

 x2 – 2x +1, в противном случае

 

procedure TForm1.Button1Click(Sender: TObject);

var

x,y: real;

begin

x:= strtofloat(edit1.Text);

if x>1 then y:= x+12 else y:= x*x - 2*x +1;

edit2.Text:= floattostr(y);

end;

end.

№5. Дано трехзначное число. Определить есть ли 3 (тройки) в этом числе.

procedure TForm1.Button1Click(Sender: TObject);

var

z, a1,a2,a3,b: integer;

begin

z:= strtoint (edit1.Text);

a3:= z mod 10;

a1:= z div 100;

b:= z div 10;

a2:= b mod 10;

if (a1=3) or (a2=3) or (a3=3) then label2.Caption:= 'В данном числе есть тройки' else label2.Caption:= 'В данном числе нет троек';

end;

end.

№6.Составить программу, которая в зависимости от порядкового номера месяца (1, 2, ..., 12) выводит на форму его название (январь, февраль, ..., декабрь).

procedure TForm1.Button1Click(Sender: TObject);

var

t: string;

begin

case listBox1.ItemIndex of

0: t:=январь;

1: t:= февраль;

2: t:= март;

3: t:= апрель;

4: t:= май;

5: t:= июнь;

6: t:= июль;

7: t:= август;

8: t:= сентябрь;

9: t:= октябрь;

10: t:= ноябрь;

11: t:= декабрь;

end;

label2.Caption:= 'Сейчас'+ ' ' + (t)+ '.' ;

end;

end.

№7. Написать программу, проверяющую принадлежность числа заданному интервалу (0;5).

procedure TForm1.Button1Click(Sender: TObject);

var

x: real;

begin

x:= strtofloat (edit1.Text);

if (x>0) and (x<5) then label2.Caption:= 'Число принадлежит интервалу' else label2.Caption:= 'Число не принадлежит интервалу';

end;

end.

№8. Вывести на экран номер четверти координатной плоскости, которой принадлежит точка с координатами (х,у).

  

procedure TForm1.Button1Click(Sender: TObject);

var

x,y: real;

begin

x:= strtofloat(edit1.Text);

y:= strtofloat (edit2.Text);

if (x>0) and (y>0) then label3.Caption:= 'Первая четверть' else if (x<0) and (y>0) then label3.Caption:= 'Вторая четверть'  else if (x<0) and (y<0) then label3.Caption:= 'Третья четверть'else label3.Caption:= 'Четвертая четверть'

end;

end.

№9. Составить программу, которая в зависимости от порядкового номера карты (1, 2, ..., 4) выводит на форму ее название (пики, трефы, бубны, червы). Мастям условно присвоены следующие номера: пики - 1, трефы - 2, бубны - 3, червы – 5.

procedure TForm1.Button1Click(Sender: TObject);

var

t: string;

begin

case listBox1.ItemIndex of

0: t:=пики;

1: t:= трефы;

2: t:= бубны;

3: t:= червы;

end;

label2.Caption:= 'Карта масти'+ ' ' + (t)+ '.' ;

end;

end.

№10. Разработать проект приложения для нахождения значения функции:

 3x -2, если x<1

У=

 x2 + 5x, в противном случае

 

procedure TForm1.Button1Click(Sender: TObject);

var

x,y: real;

begin

x:= strtofloat(edit1.Text);

if x<1 then y:= 3*x-2 else y:= x*x + 5*x;

edit2.Text:= floattostr(y);

end;

end.

№11. Дано четырехзначное число. Определить, кратна ли пяти сумма его цифр.

Procedure TForm1.Button1.Click(Sender:TObject)

Var a,a1,a2,a3,a4, c,p, s: integer;

Begin

a:= strtoint(edit1.Text);

a1:= a div 1000;

a4:= a mod 10;

c:= a div 10;

a3:= c mod 10;

p:= c div 10;

a2:= p mod 10;

s:= a1+a2+a3+a4;

if (s mod 5 = 0) then label2.caption:= ‘да ‘ else label2.caption:= ‘нет ‘

end;

end.

№12. Дано трехзначное число. Определить является ли оно палиндромом.

procedure TForm1.Button1Click(Sender: TObject);

var

z, a1,a2,a3,b, z1 : integer;

begin

z:= strtoint (edit1.Text);

a3:= z mod 10;

a1:= z div 100;

b:= z div 10;

a2:= b mod 10;

z1:= a3*100 +a2*10 +a1;

if z=z1 then label2.Caption:= ‘Данное число является палиндромом' else label2.Caption:= ‘Данное число не является палиндромом';

end;

end.

№13. Написать программу, проверяющую принадлежность числа заданному интервалу (-5;3).

procedure TForm1.Button1Click(Sender: TObject);

var

x: real;

begin

x:= strtofloat (edit1.Text);

if (x>-5) and (x<3) then label2.Caption:= 'Число принадлежит интервалу' else label2.Caption:= 'Число не принадлежит интервалу';

end;

end.

№14. Составить программу, которая в зависимости от порядкового номера достоинства карты (1, 2, ..., 9) выводит на форму ее название достоинства (шесть, семь, …, туз). Достоинству карт присвоены следующие номера: шестерке – 1, семерке – 2, восьмерке – 3, девятке – 4, десятке – 5, валету – 6, «даме» - 7, «королю» - 8, «тузу» -9

procedure TForm1.Button1Click(Sender: TObject);

var

t: string;

begin

case listBox1.ItemIndex of

0: t:=шесть;

1: t:= семь;

2: t:= восемь;

3: t:= девять;

4: t:= десять;

5: t:= валет;

6: t:= дама;

7: t:= король;

8: t:= туз;

end;

label2.Caption:= 'Карта'+ ' ' + (t)+ '.' ;

end;

end.

№15. Разработать проект приложения для нахождения значения функции:

 2x2 -2, если x=1

У=

 4x + 0.5, в противном случае

 

procedure TForm1.Button1Click(Sender: TObject);

var

x,y: real;

begin

x:= strtofloat(edit1.Text);

if x=1 then y:= 3*x*x-2 else y:= 4*x + 0.5;

edit2.Text:= floattostr(y);

end;

end.

№16. Дано четырехзначное число. Определить, кратна ли трем произведение его цифр.

Procedure TForm1.Button1.Click(Sender:TObject)

Var a,a1,a2,a3,a4, c,p, s: integer;

Begin

a:= strtoint(edit1.Text);

a1:= a div 1000;

a4:= a mod 10;

c:= a div 10;

a3:= c mod 10;

p:= c div 10;

a2:= p mod 10;

s:= a1*a2*a3*a4;

if (s mod 3 = 0) then label2.caption:= ‘да ‘ else label2.caption:= ‘нет ‘

end;

end.

№17. Дано трехзначное число. Определить равен ли квадрат этого числа сумме кубов его цифр.

procedure TForm1.Button1Click(Sender: TObject);

var

z, a1,a2,a3,b, k, s : integer;

begin

z:= strtoint (edit1.Text);

a3:= z mod 10;

a1:= z div 100;

b:= z div 10;

a2:= b mod 10;

k:= z*z;

s:= a1*a1*a1 +a2*a2*a2+ a3*a3*a3;

if k=z then label2.Caption:= ‘Квадрат числа равен сумме кубов его цифр' else label2.Caption:= ‘Квадрат числа не равен сумме кубов его цифр';

end;

end.

Тема: Организация циклических процессов в среде объектно-ориентированного программирования Lazarus.

При проектировании проекта приложения для решения определенного ряда задач возникает необходимость повторять один и тот же набор вычислений.

(Учащиеся записывают в тетради определение циклического вычислительно процесса, формат записи в программном коде цикла с параметром, цикла с предусловием и с постусловием).

Вычислительный процесс с многократным повторением однотипных вычислений для различных значений обрабатываемых величин (переменных) называет - циклическим; повторяющиеся участки вычислений - циклами, изменяющиеся в цикле величины - переменными цикла.

В среде ооп Lazarus используется три вида операторов цикла:

1) оператор цикла с параметром;

2) оператор цикла с предварительным условием;

3) оператор цикла с последующим условием.

Оператор   цикла   с  параметром   организует   выполнение   одного   оператора  (простого   или составного) заранее известное число раз.

Формат записи оператора:

for <параметр>:= ml to m2 do -оператор>;     

{тело цикла}

for <параметр>:=m1 to m2 do

begin

оператор 1>;

оператор 2>;

оператор n>

end;

Параметр - переменная порядкового типа; ml - выражение, определяющее начальное значение параметра цикла; m2 - выражение, определяющее конечное значение параметра цикла. Значения выражений ml и m2 не могут быть типа real. Операторы 1,2, ..., n образуют тело цикла.

Цикл работает следующим образом:

1) вычисляются и запоминаются значения выражений ml и m2;

2) параметру цикла присваивается значение выражения ml;

3) значение параметра цикла сравнивается со значением выражения m2, если значение параметра < = m2, то выполняется тело цикла, в противном случае - выход из цикла;

4) значение параметра цикла увеличивается на 1 и переходим к пункту 3. Если ml>m2, то тело цикла не выполняется ни разу.

Оператор цикла с предусловием используется, как правило, для организации итерационных циклов (с неизвестным количеством повторений).

Формат записи оператора:

while <условие> do <оператор>;

Или

while <условие> do

begin

<оператор 1>;

<оператор 2>;

.....

<оператор n>

end;

где <условие> - логическое выражение, <оператор> (или операторы 1, 2, ..., n) -тело цикла. Оператор цикла с предусловием работает следующим обратом: определяется значение истинности условия, если логическое выражение имеет значение TRUE (условие выполнено), то выполняется тело цикла, иначе (на FALSE) происходит выход из цикла. Если логическое выражение сразу принимает значение FALSE, тело цикла не выполняется ни разу, а выполняется оператор, следующий в программе за оператором while.

Оператор цикла с постусловием используется, как правило, для организации итерационных

циклов.

Формат записи оператора:

repeat

<оператор>    {тело цикла}

until <условие>;

или

repeat

<оператор 1>;

<оператор 2>,

<оператор п>

until <условие>;

Если телом цикла является составной оператор (операторы 1, 2, ..., n), то операторные скобки не

используются.

Оператор repeat - until работает следующим образом: тело цикла выполняется (по крайней мере один раз) до тех пор, пока логическое выражение (условие) имеет значение FALSE. На TRUE происходит выход из цикла и выполняется оператор, стоящий в программе за оператором цикла. Для организации работы с операторами циклов в среде Lazarus, используют метки (LаЬе1), текстовые поля (edit), а так же списки (ListBox).

Известны оценки ученика по 10 предметам. Определить среднюю оценку.

procedure TForm1.Button1Click(Sender: TObject);

var

i, s:integer;

sr: real;

begin

s:=0;

for i:=0 to 9 do

s:= s+ strtoint (listbox1.items [i]);

sr:= s/10;

label2.Caption:= 'Среднее арифметическое равно' + ' ' + floattostr (sr);

end;

end.

procedure TForm1.Button1Click(Sender: TObject);

var

i, s:integer;

begin

s:=1;

for i:=0 to 9 do

s:= s* strtoint (listbox1.items [i]);

label2.Caption:= 'Произведение равно' + ' ' + inttostr (s);

end;

end.

Тема: Работа с одномерным массивом в среде Lazarus.

Любой из структурированных типов (а в Object Pascal их четыре: массивы, записи, множества и файлы) характеризуется множественностью образующих этот тип элементов. Каждый элемент, в свою очередь, может принадлежать структурированному типу, что позволяет говорить о возможной вложенности типов.

Массивы в ооп Lazarus во многом схожи с аналогичными типами данных в других языках программирования. Отличительная особенность массивов заключается в том, что все их компоненты данные одного типа (возможно, структурированного). Эти компоненты можно легко упорядочить и обеспечить доступ к любому из них простым указанием его порядкового номера, таким образом, массив - пронумерованная последовательность данных одного типа и имеющая одно имя.

Описание массива задается двумя способами:

Например:

var

a,b : array [1..10] of Real;

В среде ооп Lazarus можно одним оператором присваивания передать все элементы одного массива другому массиву того же типа, например:

var

a,b : array [1..5] of Single;

begin

a := b;

end.

После этого присваивания все пять элементов массива а получат те же значения, что и в массиве в. Однако, описание

var

a: array [1..5] of Single;

b: array [1..5] of Single;

создаст разные типы массивов, поэтому оператор а := Ь; вызовет сообщение об ошибке.

Для ввода массива удобно  использовать  компонент StringGrid.  Значок компонента StringGrid находится на вкладке Additional.

Компонент StringGrid представляет собой таблицу, ячейки  которой содержат строки символов. В таблице перечислены некоторые свойства компонента StringGrid.

Таблица 1. Свойства компонента StringGrid

1. Дан массив из 5 элементов. Найти сумму элементов массива.

 

еnd;

еnd.

№2. Дан массив из 10 элементов. Найти произведение элементов массива.

procedure TForm1.Button1Click(Sender: TObject);

var

a:array [1..10] of integer;

i, p: integer;

begin

p:=1;

for i:=0 to 9 do

a[i+1]:= strtoint (stringGrid1.Cells [i,0]);

for i:=1 to 10 do

p:=p * a[i];

edit1.Text:= inttostr(p);

end;

end.

3.  Оценки группы студентов за экзамен по информатике заданы в массиве. Определить средний балл группы.

procedure TForm1.Button1Click(Sender: TObject);

var

a:array [1..32] of integer;

i, s: integer;

sr: real;

begin

s:=0;

for i:=0 to 31 do

a[i+1]:= strtoint (stringGrid1.Cells [i,0]);

for i:=1 to 32 do

s:=s + a[i];

sr:= s/32;

edit1.Text:= floattostr(sr);

end;

end.

4. Дан массив из 10 целых чисел от 2 до 50. Найти максимальный элемент массива.

procedure TForm1.Button1Click(Sender: TObject);

var

a:array [1..10] of integer;

i, max: integer;

begin

for i:=0 to 9 do

a[i+1]:= strtoint (stringGrid1.Cells [i,0]);

max:= a[1];

for i:=1 to 10 do begin

if a[i] > max then max:= a[i];

end;

Label2.Caption:= 'Максимальный элемент равен' + ' ' + inttostr(max);

end;

end.

5.Дан массив из 10 целых чисел от 2 до 50. Найти минимальный элемент массива.

procedure TForm1.Button1Click(Sender: TObject);

var

a:array [1..10] of integer;

i, min: integer;

begin

for i:=0 to 9 do

a[i+1]:= strtoint (stringGrid1.Cells [i,0]);

min:= a[1];

for i:=1 to 10 do begin

if a[i] < min then min:= a[i];

end;

Label2.Caption:= 'Минимальный элемент равен' + ' ' + inttostr(min);

end;

end.

6.Дан массив из 5 элементов. Определить количество неотрицательных элементов массива.

 

procedure TForm1.Button1Click(Sender: TObject);

var

x:array [1..5] of integer;

i,s: integer;

begin

for i:=0 to 4 do

x[i+1]:= strtoint (stringGrid1.Cells [i,0]);

s:=0;

for i:=1 to 5 do begin

if x[i]<0 then s:=s+1;

end;

label2.Caption:= 'Количество неотрицательных элементов массива равно' + ' ' + inttostr (s);

end;

end.

7. Дан массив из 10 элементов. Определить количество элементов, отличных от последнего элемента.

procedure TForm1.Button1Click(Sender: TObject);

var

x:array [1..10] of integer;

i,s: integer;

begin

for i:=0 to 9 do

x[i+1]:= strtoint (stringGrid1.Cells [i,0]);

s:=0;

for i:=1 to 10 do begin

if x[i]<>x[10] then s:=s+1;

end;

label2.Caption:= 'Количество элементов отличных от последнего равно' + ' ' + inttostr (s);

end;

end.

8. Дан массив из 5 элементов. Определить максимальный элемент.

procedure TForm1.Button1Click(Sender: TObject);

var

x:array [1..5] of integer;

i,max: integer;

begin

for i:=0 to 4 do

x[i+1]:= strtoint (stringGrid1.Cells [i,0]);

max:=x[1];

for i:=2 to 5 do begin

if x[i]>max then max:=x[i];

end;

label2.Caption:= 'Максимальный элемент равен' + ' ' + inttostr (max);

end;

end.

9. Дан массив из 9 элементов. Найти сумму элементов массива, кратных двум.

procedure TForm1.Button1Click(Sender: TObject);

var

a:array [1..9] of integer;

i, s: integer;

begin

s:=0;

for i:=0 to 8 do

a[i+1]:= strtoint (stringgrid1.Cells[i,0]);

for i:=1 to 9 do begin

if a[i] mod 2 =0 then s:= s+a[i];

end;

edit1.Text:= inttostr (s);

end;

end.

10. Дан одномерный массив из 10 элементов. Найти произведение максимального и минимального элементов массива.

procedure TForm1.Button1Click(Sender: TObject);

var

a:array [1..10] of integer;

i,p, max,min: integer;

begin

for i:=0 to 9 do

a[i+1]:= strtoint (stringgrid1.Cells[i,0]);

max:=a[1];

for i:=1 to 10 do begin

if a[i]>max then max:= a[i];

end;

min:=a[1];

for i:=1 to 10 do begin

if a[i]< min then min:= a[i];

end;

p:=max*min;

edit1.Text:= inttostr (p);

end;

end.

Тема: Работа с величинами строкового типа в Lazarus.

Для хранения и обработки символов в среде ооп Lazarus используются переменные типа AnsiChar и wideChar. Тип AnsiChar представляет собой набор ANSI-символов, при котором каждый символ кодируется восьмиразрядным двоичным числом (байтом). Тип wideChar представляет собой набор символов в кодировке Unicode, в которой каждый символ кодируется двумя байтами. Тип Char, эквивалентный AnsiChar. Значением переменной символьного типа может быть любой отображаемый символ:

•    буква русского или латинского алфавитов;

•    цифра;

•    знак препинания;

Переменная символьного типа должна быть объявлена в разделе объявления переменных. Переменную типа char можно сравнить с другой переменной типа char или с символьной константой. Сравнение основано на том, что каждому символу поставлено в соответствие число, причем символу 'о' соответствует число меньшее, чем символу У, символу А' — меньшее, чем 'в', символу V — меньшее, чем а.

В тексте программного кода вместо символа можно указать его код, поставив перед числом оператор #. Например, вместо константы 'в' можно записать #193.

В программах обработки символьной информации часто используют функции chr и Ord.

Значением функции chr является символ, код которого указан в качестве параметра. Например, в результате выполнения инструкции c:=chr(32) переменной с будет присвоено значение пробел.

Функция ord позволяет определить код символа, который передается ей в качестве параметра. Например, в результате выполнения инструкции k:=ord('*') переменная к будет содержать число 42 — код символа *.

Строки могут быть представлены следующими типами: shortstring, Longstring и widestring. Различаются эти типы предельно допустимой длиной строки, способом выделения памяти для переменных и методом кодировки символов.

Переменной типа Shortstring память выделяется статически, т. е. до начала выполнения программы, и количество символов такой строки не может превышать 255.

Переменным типа Longstring и widestring память выделяется динамически — во время работы программы, поэтому длина таких строк практически не ограничена. Помимо перечисленных выше типов можно применять универсальный строковый тип String. Тип String эквивалентен типу Shortstring.

Пример объявления переменных строкового типа: name: string[30]; buff: string;

Если в объявлении строковой переменной длина строки не указана, то ее длина задается равной 255 символам.

Используя операции =, <, >, <=, >= , переменную типа string можно сравнить с другой переменной типа string или со строковой константой. Строки сравниваются посимвольно, начиная с первого символа. Строки можно склеивать с использованием знака «+».

Функции и процедуры для работы со строками:

1. Функция length

Функция length возвращает длину строки. У этой функции  один параметр — выражение

строкового типа. Значением функции length (целое число) является количество символов, из

которых состоит строка.

Например, в результате выполнения инструкций

n:=length('HBaHOB');

m:=length(' Невский проспект');

значение переменных пит будет равно 6 и 20.

2. Процедура delete

Процедура delete позволяет удалить часть строки. В общем виде обращение к этой процедуре выглядит так: delete(CTpoKa, p, п) где:

•    Строка — переменная или константа строкового типа;

•    р — номер символа, с которого начинается удаляемая подстрока;

•    п — длина удаляемой подстроки. Например, в результате выполнения инструкций р:=Тород Санкт-Петербург';

delete(s,7,6);

значением переменной s будет строка ' город Петербург'.

3. Функция pos

Функция роз позволяет определить положение подстроки в строке. В общем виде обращение к

функции выглядит так:

P:=pos (Подстрока,Строка) ;

где Подстрока — строковая константа или переменная, которую надо найти в строковой

константе или переменной строка.

Например, в результате выполнения инструкции

р := ро8('Пе','Санкт-Петербург');

значение переменной р будет равно 7.

4. Функция сору

Функция сору позволяет выделить фрагмент строки. В общем виде обращение к функции сору

выглядит так:

S:=copy( Строка, р, п ) где:

строка — выражение строкового типа, содержащее строку, фрагмент которой надо получить;

•    р — номер первого символа, с которого начинается выделяемая подстрока;

•    п — длина выделяемой подстроки. Например, в результате выполнения инструкций st:= 'Инженер Иванов'; fam:=copy(st, 9, 6).

Замечание: К элементам строки можно обратиться как к элементу массива символьного типа.

Для организации работы с величинами строкового и символьного типа в среде ооп Lazarus можно использовать следующие компоненты среды:

•    Label,

•    Edit,

•    ListBox,

•    StringGrid.

1). Составить проект, который из слова «Информатика» получить слово «форма».

2). Дано предложение. Все буквы «е» в нем заменить на буквы «и».

3). Дан текст, в котором имеются цифры. Найти их сумму._____

Составить проект, в котором путем вырезок и склеек букв получить из слова «апельсин»

слово «спаниель».

procedure TForm1.Button1Click(Sender: TObject);

var

a,b:string;

begin

a:= edit1.Text;

b:= copy(a,6,1) + copy (a,2,1)+ copy(a,1,1) + copy (a,8,1) + copy (a,7,1) + copy (a,3,3);

Edit2.Text:= b;

end;

end.

Составить проект, в котором путем вырезок и склеек букв получить из слова «преподаватель» слово «подавать».

procedure TForm1.Button1Click(Sender: TObject);

var

a,b:string;

begin

a:= edit1.Text;

b:= copy(a,4,7) + copy (a,13,1);

Edit2.Text:= b;

end;

end.

№1. Дано предложение. Все буквы «а» в нем заменить на буквы «о».

procedure TForm1.Button1Click(Sender: TObject);

var

a,b:string;

i,n:integer;

begin

a:= edit1.Text;

n:= length (a);

b:= '';

for i:=1 to n do

if a[i] = 'а' then b:= b + 'о' else b:= b + a[i];

Edit2.Text:= b;

end;

end.

№2. Дано предложение. Подсчитать, сколько раз в предложении встретится знак «*».

procedure TForm1.Button1Click(Sender: TObject);

var

a:string;

b,i,n:integer;

begin

a:= edit1.Text;

n:= length (a);

b:= 0;

for i:=1 to n do

if a[i] = '*' then b:= b + 1;

Label2.Caption:= inttostr (b);

end;

end.

№2. Дано предложение. Все его символы, стоящие на четных местах, заменит на «ы».

procedure TForm1.Button1Click(Sender: TObject);

var

a,b: string;

n,i: integer;

begin

a:= Edit1.Text;

n:= length(a);

b:='';

for i:= 1 to n do

if i mod 2 = 0 then b:= b + 'ы' else b:= b + a[i];

Edit2.Text:= b;

end;

end.

Тема: Графика в среде объектно-ориентированного программирования. Построение графических примитивов.

Для рисования графических объектов в Lazarus используется контекстное устройство, которое обозначается служебным словом Canvas. Это контекстное устройство относится к классу TCanvas. Он объединяет в себе и "холст", и "рабочие инструменты" (перо, кисть, шрифт), и даже "подмастерьев" (набор функций по рисованию типовых геометрических фигур). Этот компонент часто называют канвой.

Основные свойства класса TCanvas:

Lazarus позволяет программисту разрабатывать программы, которые могут выводить графику: схемы, чертежи, иллюстрации. Программа выводит графику на поверхность объекта (формы или компонента Image). Поверхности объекта соответствует свойство canvas. Для того чтобы вывести на поверхность объекта графический элемент (прямую линию, окружность, прямоугольник и т. д.), необходимо применить к свойству canvas этого объекта соответствующий метод.

Кисти определяют способ закрашивания фигур.       

Карандаш (перо). С использованием данного метода можно изображать различные линии. Данный метод обладает следующими свойствами:

Штриховой и пунктирный стили можно использовать для пера толщиной в 1 пиксель. С помощью стиля psClear можно устранить линии, рисуемые по внешней границе геометрической фигуры. В качестве значения свойства Color можно использовать любую из констант типа TColor.

Значения свойства Brush.style определяют тип закрашивания

Изображение линий, точек, многоугольников в среде ооп Lazarus. Вычерчивание прямой линии осуществляет метод LiпеТо, инструкция вызова которого в общем виде выглядит следующим. образом:

Компонент.Canvas.LiпеТо(х,у).

Метод LiпеТо вычерчивает прямую линию от текущей позиции карандаша в точку с координатами, указанными при вызове метода. Начальную точку линии можно задать, переместив карандаш в нужную точку графической поверхности при помощи метода MoveTo, указав в качестве параметров координаты нового положения карандаша. Вид линии (цвет, толщина и стиль) определяется значениями свойств объекта Реп графической поверхности, на которой вычерчивается линия.

Метод Polygon вычерчивает многоугольник. В качестве параметра метод получает массив типа TPoint. Каждый элемент массива представляет собой запись, поля (х, у) которой содержат координаты одной вершины многоугольника. Метод Polygon вычерчивает многоугольник, последовательно соединяя прямыми линиями точки, координаты которых находятся в массиве: первую со второй, вторую с третьей, третью с четвертой и т. д. Затем соединяются последняя и первая точки. Цвет и стиль границы многоугольника определяются значениями свойства Pen, a цвет и стиль заливки области, ограниченной линией границы, - значениями свойства Brush, причем область закрашивается с использованием текущего цвета и стиля кисти.

Прямоугольник задает метод Rectangle (x1,y1,x2,y2); x1,y1 – левый верхний угол, x2,y2 – нижний правый угол

Используя свойство Pixels, можно задать требуемый цвет для любой точки графической поверхности, т. е. "нарисовать" точку. Например, инструкция

Form 1. Canvas. Pixels[10,10] :=clRed

окрашивает   точку   поверхности   формы   в   красный   цвет.   Свойство   Pixels   можно использовать для построения графиков.

Построение дуг, окружностей, эллипсов в среде ооп Lazarus.

Метод Ellipse вычерчивает эллипс или окружность, в зависимости от значений параметров. Инструкция вызова метода в общем виде выглядит следующим образом:

Объект.Canvas.Ellipse(x1,yl, x2,y2)

где:

• объект - имя объекта (компонента), на поверхности которого выполняется вычерчивание;

•  xl, yl, х2, у2 - координаты прямоугольника, внутри которого вычерчивается эллипс или. если прямоугольник является квадратом, окружность.

Цвет, толщина и стиль линии эллипса определяются значениями свойства Реn. а цвет и стиль заливки области внутри эллипса - значениями свойства Brush поверхности (canvas), на которую выполняется вывод.

Вычерчивание дуги выполняет метод Arc, инструкция вызова которого в общем виде выглядит следующим образом:

Объект.Canvas.Arc(xl,yl,x2,y2,x3,y3,x4,y4) где:

•  xl, yl, х2, у2 - параметры, определяющие эллипс (окружность), частью которого является вычерчиваемая дуга;

•  хЗ, уЗ - параметры, определяющие начальную точку дуги; х4. у4 - параметры, определяющие конечную точку дуги.

Начальная (конечная) точка - это точка пересечения границы эллипса и прямой, проведенной из центра эллипса в точку с координатами хЗ и уЗ (х4, у4). Дуга вычерчивается против часовой стрелки от начальной точки к конечной.

Цвет, толщина и стиль линии, которой вычерчивается дуга, определяются значениями свойства Реn поверхности (canvas), на которую выполняется вывод.

Значения параметров метода Arc определяют дугу как часть эллипса (окружности)

IV.   Работа по выработке практических навыков и умений. Создать проект, который выводит на экран изображение дома с различной штриховкой.

Тема: Вывод текста на форму. Компоненты среду для совмещения графики и текста.

Метод TextOut.

Наиболее примитивным способом вывода текста на канву является применение метода TextOut. В него передаются координаты X и Y, а также выводимый текст. Это выглядит следующим образом:

Canvas.TextOut (20, 20, 'Информатика');

Этот оператор отображает на форме заданную строку текста в позиции (20, 20). Следует обратить внимание,  что координаты X и Y определяют левый верхний угол выводимой строки, а вовсе не её базовую линию. Проиллюстрировать сказанное можно с помощью следующего примера:

Canvas.TextOut (20, 20, 'Это текст.');

Canvas.MoveTo (20, 20);

Canvas.LineTo(100, 20);

Здесь сначала происходит вывод текста в позиции (20, 20), а затем из этой же точки в точку с координатами (100, 20) проводится прямая линия.

Во всех случаях, когда не требуется особо точного позиционирования при выводе текста на экран, можно использовать метод TextOut.

Метод TextRect.

Позволяет задавать для выводимого текста прямоугольный регион отсечения. Этот метод используется в тех случаях, когда необходимо ограничить выводимый текст определённой областью экрана. Всё, что окажется за пределами этой области, будет отсечено. Следующий оператор гарантирует, что на экране будет не более ста пикселей выводимой строки:

Canvas.TextRect (Rect (20, 50, 120, 70), 20, 50, 'This is a test.');

Однако и TextOut и TextRect могут выводить только одну строку текста - никакого циклического переноса текста они не допускают.

Фон текста.         

Фон выводимого текста определяется цветом текущей кисти (белым по умолчанию). Изменить фон текста можно одним из следующих способов: либо изменяя цвет кисти канвы, либо сделать цвет фона прозрачным.

Изменить цвет фона текста несложно. Весь вопрос, какой именно цвет нужен. Например, чтобы задать в качестве цвета фона текущий цвет формы, необходимо записать следующее:

Canvas.Brush.Color : = Color;

В большинстве случаев этого вполне достаточно, однако необходим лучший контроль над ситуацией, то есть цвет фона сделать прозрачным. Это выполняется с помощью следующего кода:

var

OldStyle : TbrushStyle;

begin

OldStyle : = Canvas.Brush.Style;

Canvas.Brush.Style : = bsClear;

Canvas.TextOut (20, 20, 'This is a test');

Canvas.Brush.Style : = OldStyle; end;

Здесь сначала сохраняется текущий стиль кисти. После этого его делают прозрачным (bsClear) и отображается текст на экране. Затем восстанавливается исходный стиль кисти. Полезно взять за правило всегда сохранять исходный стиль кисти и восстанавливать после окончания вывода текста на экран.

У прозрачного стиля есть ряд преимуществ. Он используется, чтобы вывести текст на фоне какого-нибудь рисунка. С помощью прозрачного фона тексту можно придать объёмный вид: для этого он сначала выводится белым цветом, а затем с некоторым смещением - серым.

Тема:   Составление   проекта   приложения   с   использованием   компонент   среды   объектно-ориентированного программирования.

1) Поместить на форму метку (текстовое поле) и две командные кнопки (Ввод данных и Выход). При щелчке на кнопке Ввод данных поочередно появляются четыре окна ввода InputBox. Пользователь должен ввести фамилию, имя, отчество и возраст. По окончании ввода анкетные данные выводятся на метку.

2). Создать проект простейшего текстового редактора, в котором можно изменить цвет текста, его размер, сохранить документ, выйти из редактора.

     

Сохраняет документ

выход

цвет

размер

Тема:   Составление   проекта   приложения   с   использованием   компонент   среды   объектно-ориентированного программирования для тестирования.

1) Поместить на форму метку (текстовое поле) и две командные кнопки (Ввод данных и Выход). При щелчке на кнопке Ввод данных поочередно появляются четыре окна ввода InputBox. Пользователь должен ввести фамилию, имя, ответить на 5 вопросов и вывести результат выполнения теста на метку.

procedure TForm1.Button1Click(Sender: TObject);

var

f,i,a1,a2,a3,a4,a5: string;

k: integer;

begin

k:=0;

f:= inputbox ('Ввод фамилии','Введите фамилию','');

i:= inputbox ('Ввод имени','Введите имя','');

a1:=inputbox ('1 вопрос','Метод для перемещения указателя','');

if a1 = 'moveto' then k:= k+1;

a2:= inputbox ('2 вопрос','Метод для изображения прямоугольника','');

if a2 = 'rectangle' then k:= k+1;

a3:= inputbox ('3 вопрос','Метод для изображения эллипса','');

if a3 = 'ellipse' then k:= k+1;

a4:= inputbox ('4 вопрос','Метод для заливки','');

if a4 = 'brush' then k:= k+1;

a5:= inputbox ('5 вопрос','Метод для размещения текста','');

if a5 = 'textout' then k:= k+1;

if (k>0) and (k<=2) then label1.Caption:= 'Необходимо выучить материал. Вам неудовлетворительно';

if (k>2) and (k<=3) then label1.Caption:= 'Ваша оценка "три"';

if (k>3) and (k<=4) then label1.Caption:= 'Вы получаете четыре';

if (k>4) and (k<=5) then label1.Caption:= 'Молодец, отлично';

end;

end.

№1. Дано трехзначное число. Найти число, полученное при перестановке второй и первой цифр заданного числа.

№2. Найти значение функции  y= x2 + 2z, если x и z любое число.

Var

y, x, z: real;

Begin

x:= strtofloat (edit1.text);

z:=  strtofloat (edit2.text);

y:= x*x + 2*z;

edit3.text:= floattostr (y);

end;

end.

№3. Даны катет и гипотенуза прямоугольного треугольника. Найти периметр и площадь этого прямоугольника.

Var

a, c, b,p,s: real;

Begin

a:= strtofloat (edit1.text);

c:=  strtofloat (edit2.text);

b:=sqrt(c*c – a*a);

s:= ½ * a*b;

edit3.text:= floattostr (s);

p:= a+b+c;

edit4.text:= floattostr (p);

end;

end.

Тема:   Работа с компонентами среды ООП Lazarus. Разработка приложений.

  1.  Дано трехзначное число. Определить, кратно ли 5 произведение его цифр?

 

procedure TForm1.Button1Click(Sender: TObject);

var

a, a1,a2,a3, b, p: integer;

begin

a:= strtoint (edit1.Text);

a1:= a div 100;

a3:= a mod 10;

b:= a mod 100;

a2:= b div 10;

p:= a1*a2*a3;

if p mod 5 = 0 then label2.Caption := 'Кратно' else label2.Caption := 'Нет';

end;

end.

№2. Дано четырехзначное число. Выяснить содержит ли данное число цифру 8?

procedure TForm1.Button1Click(Sender: TObject);

var

a, a1,a2,a3,a4, c, b: integer;

begin

a:= strtoint (edit1.Text);

a1:= a div 1000;

a4:= a mod 10;

b:= a div 100;

a2:= b mod 10;

c:= a mod 100;

a3:= c div 10;

if (a1=8) or (a2=8) or (a3=8) or (a4=8) then label2.Caption := 'Есть' else label2.Caption := 'Нет';

end;

end.

№3.

Составить программу, которая в зависимости от порядкового номера месяца (1, 2, ..., 12) выводит на форму его название (январь, февраль, ..., декабрь).

procedure TForm1.Button1Click(Sender: TObject);

var

t: string;

begin

case listBox1.ItemIndex of

0: t:=январь;

1: t:= 'февраль';

2: t:= 'март';

3: t:= 'апрель';

4: t:= 'май';

5: t:= 'июнь';

6: t:= 'июль';

7: t:= 'август;

8: t:= 'сентябрь';

9: t:= 'октябрь';

10: t:= 'ноябрь';

11: t:= 'декабрь';

end;

label2.Caption:= 'Номер соответствует месяцу'+ ' ' + (t)+ '.' ;

end; end.

№1. Известны оценки ученика по 10 предметам. Определить средний балл.

procedure TForm1.Button1Click(Sender: TObject);

var

i, s:integer;

sr: real;

begin

s:=0;

for i:=0 to 9 do

s:= s+ strtoint (listbox1.items [i]);

sr:= s/10;

label2.Caption:= 'Среднее арифметическое равно' + ' ' + floattostr (sr);

end;

end.

№2.  1. Дан массив из 10 элементов. Найти сумму элементов массива.

 

еnd;

еnd.

№3. Дан массив из 5 целых чисел от 2 до 30. Найти максимальный элемент массива.

procedure TForm1.Button1Click(Sender: TObject);

var

a:array [1..5] of integer;

i, max: integer;

begin

for i:=0 to 4 do

a[i+1]:= strtoint (stringGrid1.Cells [i,0]);

max:= a[1];

for i:=1 to 5 do begin

if a[i] > max then max:= a[i];

end;

Label2.Caption:= 'Максимальный элемент равен' + ' ' + inttostr(max);

end;

end.




1. Операционно-технологическая карта на операцию- перепашка пара
2. то ждала В застывшем взгляде искрились растерянность и неподдельный страх
3. 1 Психология осмотра места происшествия
4. язык тела жесты и мимику 38 на интонацию и всего лишь 7 на смысл употребляемых слов.
5. тема взглядов на мир и человека а изучением человека занимается именно психология
6. Развитие межбанковского взаимодействия. Система SWIFT
7. 01 Политическая социология- Басенко 2 пары 17-15 а
8. Тема 17 Охоронна діяльність Правове регулювання охоронної діяльності в Україні Департамент УДСО т
9. Организационно-правовая форма хозяйствующих субъектов
10. Аксиос Осенний тур ~ 2013 г
11. кардинальная проблема развития искусства начала XX века
12. 2013 г п-п Фамилия имя 1
13. физический продукт ~ это товар в узком смысле обладающий определенными физическими свойствами размерами
14. Управление рисками в коммерческом банке
15. на тему- Оцінка та управління потенціалом підприємства Студента 5 курсу групи ДЕУЕк13спец.
16. Тема- Сущность и формы комического в литературе
17. Практика создания информационных систем в организациях
18. Особенности управленческой структуры казино Ls Vegs г Кингисеппа
19. Компания ТрансТелеКом ~ дочерняя компания ОАО РЖД и ведущий оператор связи национального масштаба сви
20. Неологизмы в современном английском язык