WHILE х #у DO
IF х > у THEN
х : = х — у
ELSE у: = у — х
END IF
WEND
Иерархия операторов в данном фрагменте текста отражает структуру алгоритма. Первый набросок — это один оператор, который содержит другой — подчиненный «оператор» (текст в кавычках). В формальном тексте этот внутренний оператор детализирован.
Развитие идей структурного программирования привело к появлению модульного программирования. Программа разбивается на модули, соответствующие иерархии абстракций. Каждый модуль с точки зрения его внешнего функционирования соответствует какой-либо абстракции, например, операция ввода-вывода; при этом нам совершенно безразлично внутреннее устройство модуля. Более того, внутреннее устройство модуля должно быть скрыто. Такое скрытие внутренней информации модуля, защищенность от внешнего доступа, с одной стороны, гарантирует правильность функционирования модуля, с другой стороны, предоставляет возможность изменения в случае необходимости только этого модуля без изменения остальных модулей.
С внедрением в широкую практику разработки программ объектно-ориентированного программирования, впитавшего в себя идеи структурного и модульного программирования, структурное программирование стало фактом истории информатики.
Билет № 9
Текстовый редактор, назначение и основные функции.
Для работы с текстами на компьютере используются программные средства, называемые текстовыми редакторами или текстовыми процессорами. Существует большое количество разнообразных текстовых редакторов, различающихся по своим возможностям, — от очень простых учебных до мощных, многофункциональных программных средств, называемых издательскими системами, которые используются для подготовки к печати книг, журналов и газет. Наиболее известны среди пользователей IBM-совместимых компьютеров текстовые редакторы Lexicon и Word for Windows.
Основное назначение текстовых редакторов — создавать текстовые файлы, редактировать тексты, просматривать их на экране, изменять формат текстового документа, распечатывать его на принтере.
Набираемый на клавиатуре компьютера текст воспроизводится на экране дисплея в рабочем поле редактора. Специальный значок — курсор указывает то место на экране, на которое пользователь в данный момент может оказывать воздействие (создавать, изменять символы и т.д.) с помощью редактора. Работая с текстовым редактором, можно получить на экране информацию о текущем состоянии курсора, т. е. его координатах на экране (номер строки и позиции в строке), а также о номере страницы текста, его формате, используемом шрифте и т.д.
Интерфейс практически каждого текстового редактора позволяет иметь на экране меню команд
управления редактором — изменение режимов работы, обращение за помощью, форматирование текста, печати и т. д. Как правило, меню имеет не только текстовую форму, но и форму пиктограмм, указывающих на выполняемую команду.
Функциональные возможности большинства современных текстовых редакторов позволяют пользователю выполнять следующие операции: набирать текст с клавиатуры;
• исправлять символы, вставлять новый символ на место ошибочного;
• вставлять и удалять группы символов в пределах строк, не набирая заново всю строку, а сдвигая часть ее влево/вправо в режиме вставки;
• копировать фрагмент текста, используя определенную часть памяти — так называемый «буфер» (или «карман», как говорят программисты) для временного хранения копируемых фрагментов текста;
° удалять одну или несколько строк, копировать и перемещать их в другое место текста;
• раздвигать строки набранного текста, чтобы вставить туда новый фрагмент;
• вставлять фрагменты из других текстов, просматривать тексты и обнаруживать встречающиеся в этом тексте слова или группы слов, заранее выделенных пользователем;
сохранять набранный текст (а при необходимости и все промежуточные варианты этого текста) в виде файла на магнитном диске или другом запоминающем устройстве;
• форматировать текст (т. е. изменять длину строки, межстрочные расстояния, выравнивать текст по краю или середине строки и т.д.);
• изменять шрифты, их размер, делать выделения с помощью подчеркивания или применения различного начертания букв (курсивного, полужирного и т. п.);
° распечатывать подготовленный текст на принтере.
Большинство редакторов текста имеют также режим орфографического контроля текста. В этом случае в памяти компьютера хранится достаточно большой словарь. Благодаря этому становится возможным автоматический поиск орфографических ошибок в тексте и последующее их исправление.
Широкие возможности текстовых редакторов позволили компьютеру практически вытеснить пишущие машинки из делопроизводства, а использование компьютерных издательских систем во многом изменило организацию подготовки рукописи к изданию, автоматизировало труд людей нескольких типографских профессий — верстальщика, наборщика, корректора и др.
Основные типы и способы организации данных (переменные, массивы, списки).
Базисным понятием для обсуждения организации данных, т. е. информации, подлежащей обработке, является переменная. Обычно этот термин ассоциируется с понятием переменной величины в математике. С развитием технологии программирования первоначальное значение этого термина было расширено. Сейчас под переменной понимают идентификатор (имя), который указывает на какой-либо элемент данных, а в объектно-ориентированных языках — на объект, в котором инкапсулированы (содержатся) как данные, так и процедуры.
Почти во всех современных языках переменную следует объявить, прежде чем использовать. При объявлении переменной указывается ее тип, который определяет множество допустимых значений переменной и набор допустимых действий, которые можно совершать с этой переменной. Как правило имеются базовые типы и типы, которые может задавать пользователь. Типы условно делятся на скалярные и структурные. Переменная скалярного типа указывает на одно значение, например число или символ. Переменная структурного типа состоит из некоторого числа элементов, как бы содержит в себе множество других переменных и фиксирует их взаимосвязь.
Вот как выглядит иерархия скалярных типов (классов) в языке Смолток:
В популярном языке Java имеются следующие базовые скалярные типы: четыре целочисленных, два вещественных, символьный и логический. Во многих языках используется такой тип, как указатель. Переменная этого типа содержит физический адрес, который указывает на какую-либо другую переменную.
Структурные типы языка Смолток имеют следующую иерархию:
В языке Паскаль и родственных ему языках для создания сложных структур данных используется тип «запись», в языке С для этой же цели служит тип «структура».
Билет № 10
Графический редактор, назначение и основные функции.
В компьютерах первых поколений форма представления результатов решения задач была очень громоздкой и ненаглядной — необозримые колонки чисел или огромные таблицы. Очень часто, чтобы облегчить восприятие этой информации, приходилось вручную строить диаграммы, рисовать графики или чертежи. Известно, что в графическом виде информация становится более наглядной, лучше воспринимается человеком.
Поэтому возникла идея поручить компьютерам осуществлять графическую обработку информации. Так появились графопостроители (или плоттеры), с помощью которых компьютер смог рисовать графики, чертежи, диаграммы. Однако это был только первый шаг в компьютерной графике.
Следующим, принципиально новым шагом стало создание графических дисплеев. На графическом дисплее совокупности точек (так называемых «пикселов» — от английских слов picture element) различного цвета позволяют создавать статическое и даже динамическое (изменяющееся, движущееся) изображение.
Работой графического дисплея управляет графический адаптер, состоящий из двух частей: видеопамяти и дисплейного процессора. Видеопамять (часть ОЗУ) служит для хранения видеоинформации — двоичного кода изображения. Дисплейный процессор управляет лучами электронно-лучевой трубки дисплея в соответствии с информацией, хранящейся в видеопамяти. Дисплейный процессор непрерывно «просматривает» (50—60 раз в секунду) содержимое видеопамяти и выводит его на экран.
Появление графических дисплеев существенно расширило возможности компьютерной графики. Она стала повсеместно применяться в инженерно-конструкторской работе, архитектуре, дизайне, геодезии и картографии, полиграфии, кино, телевидении, рекламе и т. д.
Для построения, коррекции, сохранения и получения «бумажных» копий рисунков и других изображений используется специальная программа — графический редактор.
Для создания изображений в графическом редакторе используются определенные «инструменты» — линейка («отрезок»), прямоугольник, круг, эллипс и т. д. Такие инструменты, позволяющие изображать простые фигуры, называются «графическими примитивами». Это как бы простейшие элементы, из которых строится изображение. Чтобы воспользоваться инструментом, необходимо выбрать соответствующий « графический примитив » и установить курсор в ту точку экрана, где необходимо изобразить выбранную фигуру.
Функции всех графических редакторов приблизительно одинаковы (один из простейших графических редакторов для IBM-совместимых компьютеров — PaintBrush). Они позволяют пользователю:
— создавать рисунки из графических примитивов;
— применять для рисования различные цвета и «кисти» (т. е. использовать линии различной ширины и конфигурации);