Шпаргалка по "Программированию"

Автор работы: Пользователь скрыл имя, 16 Января 2013 в 20:45, шпаргалка

Краткое описание

Работа содержит ответы на вопросы для экзамена (или зачета) по дисциплине "Программирование"

Прикрепленные файлы: 1 файл

шпора програмиров.docx

— 65.88 Кб (Скачать документ)

оператор_1.Если выражение принимает значение_2,то выполняется оператор_2 и так далее. Если выражение не принимает ни одно из значений, то выполняется альтернативный оператор, расположенный после ключевого слова else.

 

 

7.  Графические порцедуры и ф-ии

Холст. поверхности, на которую программа может выводить графику, соответствует свойство Canvas.

В свою очередь, свойство canvas — это объект типа TCanvas. Методы этого типа обеспечивают вывод графических примитивов (точек, линий, окружностей, прямоугольников и т. д.), а свойства позволяют задать характеристики выводимых графических примитивов: цвет, толщину и стиль линий; цвет и вид заполнения областей; характеристики шрифта при выводе текстовой информации. Холст состоит из  отдельных точек — пикселов. Положение пиксела характеризуется его горизонтальной (X) и вертикальной (Y) координатами. Координаты измеряются в пикселах. Пиксел – это наименьший элемент поверхности, с которым можно     манипулировать. Важнейшее свойство пиксела - его цвет. Карандаш применяется для вычерчивания линий и контуров, а кисть — для закрашивания  областей, ограниченных контурами.Карандашу и кисти, используемым для вывода графики на холсте,  соответствуют свойства Реn (карандаш) и Brush (кисть), которые представляют собой объекты типа треп и TBrush, соответственно. Значения свойств этих объектов определяют вид выводимых графических элементов.

TPen. Свойство  Определяет

Color Цвет линии

Width Толщину линии

Style Вид линии

Mode Режим отображения

style определяет вид (стиль) линии

psSolid Сплошная линия

psDash Пунктирная линия, длинные штрихи

psDot Пунктирная линия, короткие штрихи

psDashDot Пунктирная линия, чередование длинного и

короткого штрихов

psDashDotDot Пунктирная линия, чередование одного длинного и двух коротких штрихов

psClear Линия не отображается (используется, если не надо изображать границу области, например, прямоугольника)

Толщина пунктирной линии не может быть больше 1. Если  значение свойства Pen.width больше единицы, то пунктирная линия будет выведена как сплошная.

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

pmBlack Черный, не зав-т от знач-я свойства Pen. Color

pmWhite Белый, не зав-т от знач-я свойства Pen. Color

pmCopy Цвет линии определяется знач-ем св-ва Pen.Color

pmNotCopy Цвет линии является инверсным по отношению к значению свойства Pen. Color

pmNot Цвет точки линии определяется как инверсный по отношению к цвету точки холста, в которую выводится точка линии

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

Color Цвет закрашивания замкнутой области  

Style Стиль (тип) заполнения области вывод текста

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

Объект.Canvas.TextOut(x, у, Текст)

объект —  имя объекта, на поверхность которого выводится текст;

х, у — координаты точки графической поверхности

Текст — переменная или константа символьного типа,. Область вывода текста закрашивается текущим цветом кисти. Поэтому перед выводом текста свойству Brush.Color нужно присвоить значение  bsClear или задать цвет кисти, совпадающий с цветом поверхности, на  которую выводится текст.Шрифт, который используется для вывода текста определяется свойством Font соответствующего объекта canvas. 

Свойство  Font представляет

 собой  объект типа TFont.

TFont

Name

Используемый  шрифт. В качестве значения следует  использовать название шрифта, например Arial

Size

Размер шрифта в пунктах (points). Пункт— это единица измерения размера шрифта, используемая в полиграфии. Один пункт равен 1/72 дюйма

Style

Стиль начертания символов. Может быть

fsBold (полужирный),

fsltalic (курсив),

fsUnderline (подчеркнутый),

fsStrikeOut (перечеркнутый).

style

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

Объект. Canvas . Font : = [fsBold, fs Italic]

Color

Цвет символов. В качестве значения можно использовать константу типа  Tcolor

Методы вычерчивания графических примитивов

Прямая  Линия - метод LinеТо,

Компонент.Canvas.LineTo(x,у)

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

Ломаная линия Метод polyline

В качестве параметра метод 

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

первую  со второй, вторую с третьей, третью с четвертой и т. д.

Окружность  и эллипс Метод Ellipse

вычерчивает эллипс или кружность.

Объект.Canvas.Ellipse(x1,y1, х2,у2]

x1, y1, х2, у2 — координаты прямоугольника, внутри которого

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

Дуга  Arc

Объект.Canvas.Arc(x1,y1,х2,у2,х3,у3,х4,у4) где: x1, y1, х2, у2 — параметры, определяющие эллипс  (окружность), частью которого является вычерчиваемая дуга;

х3, у3 —нач точку дуги;

х4, у4 —конеч точку дуги.

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

Прямоугольник методом Rectangle,

Объект.Canvas.Rectangle(x1, y1,x2, y2)

x1, y1 и х2, у2 — координаты левого верхнего и правого нижнего углов прямоугольника.

Прямоугольник со скругленными углами RoundRec

Объект.Canvas.RoundRec(x1,y1,х2, у2, х3, у3)

x1, y1, х2, у2 -- параметры, определяющие положение углов прямоугольника, в который вписывается прямоугольник со скругленными углами; х3 и у3 — размер эллипса, одна четверть которого используется для вычерчивания скругленного угла

Многоугольник метод Polygon

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

 Сектор  эллипса или круга Метод pie

Объект. Canvas.Pie(x1,y1,x2,y2,х3,у3,х4,у4)

x1, y1, х2, у2 — параметры, определяющие эллипс (окружность), частью которого является сектор;

х3, у3, х4, у4 — параметры, определяющие координаты конечных точек прямых, являющихся границами

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

Точка Свойство pixels, представляющее собой двумерный массив типа TColor, содержит информацию о цвет  каждой точки графической поверхности. Используя свойство Pixels, можно задать требуемый цвет для любой точки графической поверхности, т. е.  "нарисовать" точку. Form1.Canvas.Pixels[10,10]:=clRed  окрашивает точку поверхности формы в красный цвет.Размерность массива pixels определяется размером графической

поверхности.

Класс TPicture - класс-надстройка над TGraphic, точнее — над его потомками. Он содержит поле Graphic, которое может содержать объекты классов TBitmap, Ticon, TMetafile и TJpEGimage.

Вывод иллюстраций

Класс TGraphic является родительским для четырех видов изображений:

значка (компонент TIcon),

метафайла (компонент TMetafile)

растровой картинки (компонент TBitmap)

TJPEGImage — сжатая растровая картинка в формате JPEG

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

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

Битовый образ объекты типа TBitMap 

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

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

Например, переменная pic типа TBitMap, pic.LoadFromFiie('aplane.bmp')

Вывести содержимое битового образа (картинку) на поверхность  формы  или области вывода иллюстрации  можно путем применения метода Draw  к соответствующему свойству поверхности (canvas). Например, Image1.Canvas.Draw(x,у, bm)  выводит картинку на поверхность компонента image1 Если перед применением метода Draw свойству Transparent объекта TBitMap присвоить значение True, то фрагменты рисунка, окрашенные  цветом, совпадающим с цветом левого нижнего угла картинки, не будут выведены — через них будет как бы проглядывать фон. Если в качестве  "прозрачного" нужно использовать цвет, отличный от цвета левой нижней точки рисунка, то свойству Transparentcoior следует присвоить значение символьной константы, обозначающей необходимый

Компоненты  для работы с графикой

Компонент TImage  На его поверхности и будут отображаться графические объекты, содержащиеся в свойстве:

property Picture: TPicture;

В качестве канвы компонента (свойство canvas) используется канва объекта из свойства Picture.Graphic, но только если поле Graphic ссылается на объект класса TBitmap.

Расположение  графического объекта определяют свойства:

property AutoSize: Boolean;

property Stretch: Boolean;

property Center: Boolean;

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

procedure TForml.BitBtnIClick(Sender: TObject);

begin

  OpenPictureDialogI.Filter := GraphicFilter(TGraphic);

if OpenPictureDialogI.Execute then

Imagel.Picture.LoadFromFile (OpenPictureDialogI.FileName);

Другие компоненты для графики:

Компонент TPaintBox

Компонент TShape

Компонент TBevel

 

 

 

10.11.Операторы цикла


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

Оператор цикла с предусловием while . .do

Оператор, реализующий этот алгоритм, в языке Free Pascal имеет вид: while выражение do оператор выражение должно быть логической константой, переменной или логическим выражением.

Работает оператор while следующим образом. Вычисляется значение выражения. Если оно истинно(True), выполняется оператор. Выполнение цикла заканчивается, если условие ложно, после этого управление передается оператору, следующему за телом цикла. Выражение вычисляется перед каждой итерацией цикла. Если при первой проверке выражение ложно(False), цикл не выполнится ни разу.

Если в цикле надо выполнить  более одного оператора, необходимо использовать составной оператор:

while условие do

begin

оператор_1;

оператор_2;

оператор_n;

end;

Оператор цикла с постусловием repeat . . until

В языке Free Pascal цикл с постусловием реализован конструкцией

repeat

оператор;

until выражение;

или, если тело цикла состоит более  чем из одного оператора

repeat

оператор_1;

оператор_2;

оператор_N;

until выражение;

Выражение должно быть логическим.

Работает цикл следующим образом. В начале выполняется оператор, представляющий собой тело цикла. Затем вычисляется значение выражения. Если оно ложно(False), оператор тела цикла выполняется ещё раз. В противном случае цикл завершается, и управление передается оператору, следующему за циклом.

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

Не выполниться ни разу.

Оператор цикла for . . do

«for параметр_цикла:=начальное_значение to конечное_значение do

оператор;

for параметр_цикла:=конечное_значение downto начальное_значение do

оператор;»

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

должны быть того же типа ,что и параметр_цикла.

Шаг изменения цикла for всегда постоянен и равен интервалу между двумя ближайшими значениями типа параметра цикла(при целочисленном значении

Параметра цикла шаг равен1).

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

for параметр_цикла:=начальное_значение to конечное_значение do

begin

оператор_1;

оператор_2;

...

оператор_N;

end;

 

 

 

 

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


Объявление одномерных массивов

1.В разделе переменных

Var имя массива : Array [тип индекса(пример:[1..100])] of тип элементов ;

2.В разделе описания типов

Type имя типа = Array [тип индекса] of тип элементов ;

Var имя массива : имя типа ;

3.В разделе констант

Const имя массива : Array [тип индекса] of тип элементов = (список элементов).

Информация о работе Шпаргалка по "Программированию"