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

ЛИСТ ДЛЯ ЗАМЕЧАНИЙ


 

ОГЛАВЛЕНИЕ

ВВЕДЕНИЕ
ЗАДАНИЕ1
ЗАДАНИЕ 2

 


 

ВВЕДЕНИЕ

 

Все языки программирования делятся на языки низкого, высокого и сверхвысокого уровня. Более многочисленную группу представляю языки программирования высокого уровня, которые допускают описание алгоритма решения задачи в наглядном, легко воспринимаемом вид. Именно к этой группе относится Паскаль. Язык программирования Паскаль назван в честь выдающегося французского математика и философа 17 века Блеза Паскаля. Этот язык разработан швейцарским профессором Никлаусом Виртом 1968-1971 гг. Первоначально он был создан как учебный, но из-за множества достоинств стал использоваться для разработки программных средств в профессиональном программировании.


 

 

ЗАДАНИЕ 1

 

В современных компьютерах изображения на экране строятся в виде растров, и всседа прямоугольных. На растровом устройстве любая фигура состоит из множества точек пикселей. Естественно, положение каждой точки изображения задано координатами Х, У. Координаты-целые числа, они задают номера колонки и строки рстра и не зависят от физического номера экрана. Оси координат направлены следующим образом: горизонтальная ось Х напрвлена слева направо; вертикальная ось У направлена сверху вниз;

Верхний левый угол имеет координаты (0,0).

С помощю модуля graphABC и процедуры line (x1,y1,x2,y2:integer) изображаем заштрихованную плоскость. Для изображения точки T используем процедуру Circle(x,y:integer;r), а для подписи OutTextXY (x,y:integer;text). Используем цикл if для определения принадлежности точки заштрихованной плоскости. Там где точка попадает в область треугольника для начала определяем длины его сторон с уже известными вершинами и после чего вычисляется площадь данного треугольника с помощью формулы Герона. После попадания точки в данную область она разбивается на три треугольника. Аналогичным образом вычисляется площадь каждого из них, и если точка принадлежит области треугольника, то сумма площадей трех треугольников должна быть равна площади треугольника без точки. Код программы для задания 1 приведен ниже:

programzadacha1;

usescrt, graphABC;

varx,y:integer;

s,s1,a,a1,a2,b,b1,b2,c,c1,p,p1, p2,s2,s3, c2,p3, s0:real;

constx1=240; y1=180; x2=320; y2=240; x3=400; y3=180;

Begin

writeln ('Введите координаты х,у');

readln (x);

readln(y);

a:=sqrt(sqr(x2-x1)+sqr(y2-y1));

b:=sqrt(sqr(x3-x2)+sqr(y3-y2));

c:=sqrt(sqr(x1-x3)+sqr(y1-y3));

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

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

a1:=sqrt(sqr(x1-x)+sqr(y1-y));

a2:=sqrt(sqr(x2-x)+sqr(y2-y));

p1:=(a+a1+a2)/2;

s1:=p1*sqrt((p1-a)*(p1-a1)*(p1-a2));

b1:=sqrt(sqr(x3-x)+sqr(y3-y));

b2:=sqrt(sqr(x2-x)+sqr(y2-y));

p2:=(b+b1+b2)/2;

s2:=p2*sqrt((p2-b)*(p2-b1)*(p2-b2));

c1:=sqrt(sqr(x1-x)+sqr(y1-y));

c2:=sqrt(sqr(x3-x)+ sqr (y3-y));

p3:=(c+c1+c2)/2;

s3:=p3*sqrt((p3-c)*(p3-c1)*(p3-c2));

s0:=s1+s2+s3;

If(x>=120) and

(s0<= 64398.7578) thenwriteln ( 'Точка принадлежит области') elsewriteln ( 'Точка не принадлежит области');

Begin

ifk=0 thenfun:=1

elsefun:=fun(k-1)*k;

end;

Begin

writeln ('Введите х'); readln(x);

e:=0.01; s:=0;

Repeat

ifk mod2=0 thenk1:=1 elsek1:=-1;

u:=k1*exp((2*k+1)*ln(x))/(fun(k)*fun(k+1)*exp((2*k+1)*ln(2)));

s:=s+u;

k:=k+1;

untilabs(u)<e;

writeln(' s=',s:6:4);

readln;

end.

 

Графическое изображение программы приведено на рисунке 2.

Рисунок 2 – Графическое представление программы