Существует два основных вида компьютерной графики - векторная и растровая. Растровый рисунок представляет из себя сетку пикселей, разность цветов этих пикселей образует графический образ, воспринимаемый человеческим глазом как единая картина. Векторный же рисунок состоит из отдельных сущностей: линии, многоугольники, эллипсы и т.п. геометрические фигуры, отрисовкой этих фигур попиксельно занимается просмотрщик изображения (например браузер).
Основным преимуществом векторного рисунка является то, что такой рисунок может как угодно трансформироваться и масштабироваться без потери качества. Каждая геометрическая фигура перед выводом на экран рассчитывается по математическим формулам и может быть перерисована (перерассчитана) за доли секунды, если это потребуется. Естественно, это дает преимущество и в конечном размере файла, так как нет необходимости описывать каждый пиксель, все пиксели отрисовываются, исходя из инструкций.
Однако в векторном формате можно создавать лишь достаточно примитивные изображения. Представьте себе красочную фотографию, где присутствует пляж, закат, пальмы, туристы, птицы. Представили? А теперь подумайте, сколько нужно усилий, чтобы эту фотографию сделать из геометрических фигур, сколько математических формул применить, сколько маленьких участков залить цветом и каким образом реализовать плавный переход от синего моря до желтого пляжа. Наверное, вам стало страшно, именно поэтому основным способом хранения для фотографий является растровый формат JPEG с большой степенью сжатия.
Вектор идеально подходит для создания схем, простых образов без сложного перехода цветов.
Векторное изображение: Растровое изображение:
растровое изображение
Пример сложной векторной графики:
Сложная векторная графика
Как видите, каждая из веток графики содержит свои плюсы и минусы. Было бы глупо не найти способ объединить эти виды в единое целое, поэтому большинство форматов векторной графики сегодня позволяют смешивать себя с растровой графикой. Растровая картинка в векторном формате является такой же единой сущностью, как и другие геометрические фигуры. Например, в SVG растровые картинки можно подключать из отдельного файла и выводить на любом участке холста.
Вот программа, довольно понятная,
комментарии:
lepestkov:=13; - тут можно менять количесто лепестков
fi:=2*3.14*i/lepestkov;
2*Pi - это полный угол 360 градусов. мы делим его на количество лепестков. Таким образом мы получаем угол на который должен идти лепесток.
Картинка ромашки во вложении. если такая не пойдет, отмечай как нарушение.
uses crt, graph;
var gDriver, gMode, errCode:integer;
i:integer;
lepestkov:integer;
fi,x,y:real;
radius:integer;
begin
gDriver:=Detect;
InitGraph(gDriver, gMode,'');
ErrCode:=GraphResult;
if(GraphResult <> grOK) then
begin
writeln('ne mogu naiti file graphiki');
readln;
end;
setcolor(green);
line(320,200,320,400);
setcolor(yellow);
setFillStyle(SolidFill, yellow);
fillellipse(320,200,15,15);
setFillStyle(SolidFill, white);
setcolor(white);
lepestkov:=13;
for i:=1 to lepestkov do
begin
fi:=2*3.14*i/lepestkov;
for radius:=24 to 60 do
begin
x:=320 + radius*cos(fi);
y:=200 + radius*sin(fi);
fillellipse(round(x),round(y),10,10);
end;
end;
readln;
end.
Const
K = 13;
Var
A:array[1..K] of integer;
i,S:integer;
Begin
Write('Исходный массив: ');
For i:= 1 to K do
Begin
A[i]:=random(21)-10;
Write(A[i],' ');
End;
S:=0;
i:=0;
Repeat
i:=i+1;
if A[i]>0 then
Repeat
S:=S+A[i];
i:=i+1
Until i>K;
Until i>=K;
WriteLn;
WriteLn('S = ',S);
End.
Материнская плата - служит для построения самого ПК.
Процессор (ЦП) - выполнение разных операций, инструкций, мозг ПК.
ОЗУ (Оперативная память) - во время работы компьютера содержит в себе разную информацию.
Чипсет - так называемый мост между компонентами, северный как правило соединяет ЦП и ОЗУ, а южный PCI разъёмы и другие порты.
Блок питания - даёт электричество каждому компоненту.
Видеокарта - как правило преобразует информацию из цифровой в графическую
Жёсткий диск(HDD) или твердотелый накопитель (SSD) - отвечает за сбережение информации.
P.S.
Чипсет это компонент самой материнской платы, но он тоже считается важным.
Ещё стоит упомянуть батарейку CMOS которая хранит настройки BIOS или UEFI, но компьютер может спокойно работать без неё, поэтому указывать её не стоит.
Program gt;
var n,i:integer;
s:real;
begin
read(n);
for i:=1 to n do
begin
read;
s:=s+sqrt(i);
end;
writeln(s:0:3);
<span>end.</span>