Написать программу в которой окружность пробегает по периметру прямоугольника

Написать программу, в которой окружность «пробегает» по периметру прямоугольника.

Код к задаче: «Написать программу, в которой окружность «пробегает» по периметру прямоугольника»

Листинг программы

uses graphABC; var x1,y1,x2,y2,r,x,y:integer; begin r:=20; x1:=r; y1:=r; x2:=windowwidth-r; y2:=windowheight-r; x:=x1; y:=y1; lockdrawing; while x=x1 do begin clearwindow; setpencolor(clBlue); rectangle(x1,y1,x2,y2); setpencolor(clRed); circle(x,y,r); sleep(50); x:=x-5; redraw; end; while y>=y1 do begin clearwindow; setpencolor(clBlue); rectangle(x1,y1,x2,y2); setpencolor(clRed); circle(x,y,r); sleep(50); y:=y-5; redraw; end; end.

Источник: studassistent.ru

Untitled

Guest User

Not a member of Pastebin yet? Sign Up, it unlocks many cool features!

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

text 8.70 KB | None | 0 0

//Написать программу, в которой описана иерархия классов: геометрические фигуры (круг, прямоугольник, треугольник).

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

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

using namespace std;

class Figure<

virtual double CalcPerimetr()=0;

virtual double CalcArea()=0;

virtual void Print()=0;

virtual void Read()=0;

class Circle: public Figure<

double _r, _P, _S;

Circle(double r, double P, double S)//конструктор

Circle (const Circle

_P = (2*3.14f*_r);

double CalcArea() override <

_S = 3.14f*_r*_r;

void Read() override <

cout << «Введите радиус r круга: r= «;

while (_r <= 0 )<

cout << «Ощибка, введите заново:»<< endl;

cout << «Введите радиус r круга: r= «;

void Print() override <

cout << «Периметр круга равен: Р= «<< _P << endl;

cout << «Площадь круга равна: S= » << _S << endl;

class Rect: public Figure<

double _w, _h, _P, _S;

Rect (double w, double h, double P, double S)//конструктор

Rect (const Rect

double CalcArea() override <

void Read() override <

cout << «Введите высоту h прямоугольника: h= «;

while (_h <= 0 )<

cout << «Ощибка, введите заново:»<< endl;

cout << «Введите высоту h круга: h= «;

cout << «Введите ширину w прямоугольника: w= «;

while (_w <= 0 )<

cout << «Ощибка, введите заново:»<< endl;

cout << «Введите ширину w круга: w= «;

Читайте также:
Как создать программу саморазвития

void Print() override <

cout << «Периметр прямоугольника равен: Р= «<< _P << endl;

cout << «Площадь прямоугольника равна: S= » << _S << endl;

class Triangle: public Figure<

double _x, _y, _z, _P, _S, _p, _pz;

Triangle (double x, double y, double z, double P, double S, double p, double pz)

Triangle (const Triangle

_P=(_x + _y + _z);

double CalcArea() override <

_p = CalcPerimetr() / 2.0;

_pz = _p*(_p-_x)*(_p-_y)*(_p-_z);

void Read() override <

cout << «Введите длину первой стороны треугольника: x= «;

while (_x <= 0 )<

cout << «Ощибка, введите заново:»<< endl;

cout << «Введите первую сторону x круга: x= «;

cout << «Введите длину второй стороны треугольника: у= «;

while (_y <= 0 )<

cout << «Ощибка, введите заново:»<< endl;

cout << «Введите вторую сторону y круга: y= «;

cout << «Введите длину треьей стороны треуголника: z= «;

while (_z <= 0 )

cout << «Ощибка, введите заново:»<< endl;

cout << «Введите третью сторону z круга: z= «;

while ((_x+_y >_z _x+_z > _y _y+ _z > _x)!=1)

cout << «Ошибка, такого треугольника не существует! Введите данные заново!» << endl << endl;

cout << «Введите длину первой стороны треугольника: x= «;

while (_x <= 0 )<

cout << «Ощибка, введите заново:»<< endl;

cout << «Введите первую сторону x круга: x= «;

Источник: pastebin.com

Язык программирования Pascal — графика

Данная презентация предназначенна для проведения урока по теме «Язык программирования Pascal — графика» для 11 класса. Соответствуют стандарту ФГОС. В презентации представлен теоретический материал, приведены примеры программ по даной теме, а также задачи для выполнения самостоятельной работы обучающихся. Данная презентация расчитана на 2 урока. Изучение теоретического материала и выполнение практических работ (закрепление полученных знаний).

Вы уже знаете о суперспособностях современного учителя?

Тратить минимум сил на подготовку и проведение уроков.

Быстро и объективно проверять знания учащихся.

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

Избавить себя от подбора заданий и их проверки после уроков.

Наладить дисциплину на своих уроках.

Получить возможность работать творчески.

Читайте также:
Необходимо восстановить программу office с помощью панели управления как это сделать

Просмотр содержимого документа
«Язык программирования Pascal — графика»

МИНИСТЕРСТВО ПРОФЕССИОНАЛЬНОГО ОБРАЗОВАНИЯ, ПОДГОТОВКИ И РАССТАНОВКИ КАДРОВ РЕСПУБЛИКИ САХА (ЯКУТИЯ) ГОСУДАРСТВЕННОЕ АВТОНОМНОЕ ПРОФЕССИОНАЛЬНОЕ ОБРАЗОВАТЕЛЬНОЕ УЧРЕЖДЕНИЕ РЕСПУБЛИКИ САХА (ЯКУТИЯ) «РЕГИОНАЛЬНЫЙ ТЕХНИЧЕСКИЙ КОЛЛЕДЖ В Г.МИРНОМ» Язык программирования Pascal Графика

МИНИСТЕРСТВО ПРОФЕССИОНАЛЬНОГО ОБРАЗОВАНИЯ, ПОДГОТОВКИ И РАССТАНОВКИ КАДРОВ РЕСПУБЛИКИ САХА (ЯКУТИЯ)

ГОСУДАРСТВЕННОЕ АВТОНОМНОЕ ПРОФЕССИОНАЛЬНОЕ ОБРАЗОВАТЕЛЬНОЕ УЧРЕЖДЕНИЕ РЕСПУБЛИКИ САХА (ЯКУТИЯ)

«РЕГИОНАЛЬНЫЙ ТЕХНИЧЕСКИЙ КОЛЛЕДЖ В Г.МИРНОМ»

Язык программирования Pascal

Графика Для работы в графическом режиме необходимо подключение модуля GraphABC. Uses GraphABC; Для работы с текстом - модуль Crt. Uses Crt; program …; uses crt, GraphABC; var …; begin … End. Управление экраном SetWindowWidth(w) -Устанавливает ширину графического окна; SetWindowHeight(h) - Устанавливает высоту графического окна;

Для работы в графическом режиме необходимо подключение модуля GraphABC. Uses GraphABC;

Для работы с текстом — модуль Crt. Uses Crt;

Управление экраном SetWindowWidth(w) -Устанавливает ширину графического окна;

SetWindowHeight(h) — Устанавливает высоту графического окна;

Графика Точка SetPixel(x,y,color) – Закрашивает один пиксель с координатами (x,y) цветом color program tochka; uses GraphABC; begin SetPixel(300,200,clred); end. Линии Line(x1,y1,x2,y2) - рисует отрезок с началом в точке (x1,y1) и концом в точке (x2,y2). x1,y1 Program liniay; uses GraphABC; begin line(100,50,500,250); x2,y2 end.

Точка SetPixel(x,y,color) – Закрашивает один пиксель с координатами (x,y) цветом color

Линии Line(x1,y1,x2,y2) — рисует отрезок с началом в точке (x1,y1) и концом в точке (x2,y2). x1,y1

Графика Цвет линии SetPenColor(color) – устанавливает цвет пера, задаваемый параметром color. Program liniay; uses GraphABC; begin setpencolor(clred); line(30,30,400,350); end.

Цвет линии SetPenColor(color) – устанавливает цвет пера, задаваемый параметром color.

Графика Прямоугольник Rectangle(x1,y1,x2,y2) – рисует прямоугольник, заданный координатами противоположных вершин (x1,y1) и (x2,y2).x1,y1 Program pryamougolnik; uses GraphABC; begin x2,y2 Rectangle(50,50,200,200); End.

Прямоугольник Rectangle(x1,y1,x2,y2) – рисует прямоугольник, заданный координатами противоположных вершин (x1,y1) и (x2,y2).x1,y1

Графика Заливка цветом FloodFill(x,y,color) – заливает область одного цвета цветом color, начиная с точки (x,y).x1,y1 Program pryamougolnik; uses GraphABC; x2,y2 begin Rectangle(50,50,200,200); FloodFill(100,100,clBlue); End. Треугольник Рисуется процедурами Line(x1,y1,x2,y2); LineTo(x,y); Program treugolnik; uses GraphABC; begin setpenwidth(20); setpencolor(clred); line(300,100,500,300); lineto(100,300); lineto(300,100); floodfill(300,200,clgreen); end.

Заливка цветом FloodFill(x,y,color) – заливает область одного цвета цветом color, начиная с точки (x,y).x1,y1 Program pryamougolnik;

Треугольник Рисуется процедурами Line(x1,y1,x2,y2); LineTo(x,y);

Графика Окружность Circle(x,y,r) - рисует окружность с центром в точке (x,y) и радиусом r. Program circle; uses GraphABC; r begin x1,y1 Circle(500,200,100); FloodFill(500,200,clred); End.

Окружность Circle(x,y,r) — рисует окружность с центром в точке (x,y) и радиусом r.

Графика Дуга окружности Arc(x,y,r,a1,a2) - Рисует дугу окружности с центром в точке (x,y) и радиусом r, заключенной между двумя лучами, образующими углы a1 и a2 с осью OX (a1 и a2 – вещественные, задаются в градусах и отсчитываются против часовой стрелки). Program duga; uses GraphABC; x,y Begin SetPenWidth(10); Arc(300,250,150,45,135); End.

Дуга окружности Arc(x,y,r,a1,a2) — Рисует дугу окружности с центром в точке (x,y) и радиусом r, заключенной между двумя лучами, образующими углы a1 и a2 с осью OX (a1 и a2 – вещественные, задаются в градусах и отсчитываются против часовой стрелки).

Операторы SetWindowHeight(h); - Устанавливает высоту графического окна SetWindowWidth(w); - Устанавливает ширину графического окна ClearWindow; - очищает графическое окно белым цветом. ClearWindow(color); - очищает графическое окно указанным цветом. SetPixel(x,y,color); - Закрашивает один пиксел с координатами (x,y) цветом color LineTo(x,y); - рисует отрезок от текущего положения пера до точки (x,y); координаты пера при этом также становятся равными (x,y). Line(x1,y1,x2,y2); - рисует отрезок с началом в точке (x1,y1) и концом в точке (x2,y2). SetPenColor(color); - устанавливает цвет пера, задаваемый параметром color.

SetWindowHeight(h); — Устанавливает высоту графического окна

SetWindowWidth(w); — Устанавливает ширину графического окна

ClearWindow; — очищает графическое окно белым цветом.

ClearWindow(color); — очищает графическое окно указанным цветом.

SetPixel(x,y,color); — Закрашивает один пиксел с координатами (x,y) цветом color

LineTo(x,y); — рисует отрезок от текущего положения пера до точки (x,y); координаты пера при этом также становятся равными (x,y).

Line(x1,y1,x2,y2); — рисует отрезок с началом в точке (x1,y1) и концом в точке (x2,y2).

SetPenColor(color); — устанавливает цвет пера, задаваемый параметром color.

Операторы SetPenWidth(n); - устанавливает ширину (толщину) пера, равную n пикселям. Rectangle(x1,y1,x2,y2); - рисует прямоугольник, заданный координатами противоположных вершин (x1,y1) и (x2,y2). FloodFill(x,y,color); - заливает область одного цвета цветом color, начиная с точки (x,y). SetBrushColor(color); - устанавливает цвет кисти, заливка кистью распространяется на замкнутый контур, описание которого следует за процедурой установки цвета кисти. Circle(x,y,r); - рисует окружность с центром в точке (x,y) и радиусом r. Ellipse(x1,y1,x2,y2); - рисует эллипс, заданный своим описанным прямоугольником с координатами противоположных вершин (x1,y1) и (x2,y2).

SetPenWidth(n); — устанавливает ширину (толщину) пера, равную n пикселям.

Rectangle(x1,y1,x2,y2); — рисует прямоугольник, заданный координатами противоположных вершин (x1,y1) и (x2,y2).

FloodFill(x,y,color); — заливает область одного цвета цветом color, начиная с точки (x,y).

SetBrushColor(color); — устанавливает цвет кисти, заливка кистью распространяется на замкнутый контур, описание которого следует за процедурой установки цвета кисти.

Читайте также:
Сколько шагов в стартовой программе фаберлик

Circle(x,y,r); — рисует окружность с центром в точке (x,y) и радиусом r.

Ellipse(x1,y1,x2,y2); — рисует эллипс, заданный своим описанным прямоугольником с координатами противоположных вершин (x1,y1) и (x2,y2).

Операторы SetFontName(‘name’);- устанавливает наименование шрифта. SetFontColor(color); - устанавливает цвет шрифта. SetFontSize(sz); - устанавливает размер шрифта в пунктах. SetFontStyle(fs); - устанавливает стиль шрифта.

SetFontName(‘name’);- устанавливает наименование шрифта.

SetFontColor(color); — устанавливает цвет шрифта.

SetFontSize(sz); — устанавливает размер шрифта в пунктах.

SetFontStyle(fs); — устанавливает стиль шрифта.

Стиль шрифта: fsNormal – обычный; fsBold – жирный; fsItalic – наклонный; fsBoldItalic – жирный наклонный; fsUnderline – подчеркнутый; fsBoldUnderline – жирный подчеркнутый; fsItalicUnderline – наклонный подчеркнутый; fsBoldItalicUnderline – жирный наклонный подчеркнутый

Стиль шрифта:

fsBoldItalic – жирный наклонный;

fsBoldUnderline – жирный подчеркнутый;

fsItalicUnderline – наклонный подчеркнутый;

fsBoldItalicUnderline – жирный наклонный подчеркнутый

Примеры Задача: Нарисовать

Программа

Пример Рисование шара uses GraphABC; var I,X,Y,D: integer; begin X:=20; Y:=30; D:=100; ClearWindow; SetBrushColor(clGreen); Ellipse(X+I,Y,X+I+D,Y+D); end.

  • Program Seventh; uses GraphABC; Begin Line (200,200,400,200); LineTO (300,140); lineTO (200,200); FloodFill (300,170,clblue); Line (200,200,400,200); LineTo (300,260); LineTo (200,200); FloodFill (300,230,cllime); circle (160,200,40); FloodFill (160,200,clred); circle (440,200,40); FloodFill (440,200,clyellow); End.

var I,X,Y,D: integer;

Пример Движение шара uses GraphABC; var I,X,Y,D: integer; begin X:=20; Y:=30; D:=100; for i:=1 to 500 do begin ClearWindow; SetBrushColor(clGreen); Ellipse(X+I,Y,X+I+D,Y+D); Sleep(1); end; end.

var I,X,Y,D: integer;

for i:=1 to 500 do

Пример Движение шара (без мерцания) uses GraphABC; var I,X,Y,D: integer; begin X:=20; Y:=30; D:=100; LockDrawing; for i:=1 to 500 do begin ClearWindow; SetBrushColor(clGreen); Ellipse(X+I,Y,X+I+D,Y+D); Redraw; Sleep(1); end; end.

Движение шара (без мерцания)

var I,X,Y,D: integer;

begin X:=20; Y:=30; D:=100;

for i:=1 to 500 do

Пример

Задание 1. Написать программу, которая выводит на экран шар движущийся по вертикали. 2. Написать программу, которая выводит на экран два шара: красный шар стоит на месте, а зеленый движется по горизонтали к нему навстречу.</p><p> После столкновения зеленый шар останавливается на месте, а красный шар начинает падать вниз (движение по вертикали). 3. Написать программу, которая выводит на экран два шара: красный шар стоит на месте, а зеленый движется по горизонтали к нему навстречу. После столкновения зеленый шар двигается в обратном направлении, а красный шар начинает падать вниз (движение по вертикали). 4. Написать программу, в которой окружность «пробегает» по периметру прямоугольника. 5. Написать программу «Круги на воде»: на экране в произвольном месте появляется окружность, которая сначала увеличивается, а потом уменьшается, затем так же появляются другие окружности. Начальные радиусы у окружности всегда разные

  • uses GraphABC;
  • var I,X,Y,D,X1,X2: integer;
  • begin X:=20; Y:=30; D:=70; X1:=350; X2:=500; LockDrawing; for I:=1 to X1-D do // зеленый шар движется, красный стоит на месте
  • begin
  • ClearWindow;
  • SetBrushColor(clGreen);
  • Ellipse(X+I,Y,X+I+D,Y+D);
  • SetBrushColor(clRed);
  • Ellipse(X+X1,Y,X+X1+D,Y+D);
  • Redraw;
  • Sleep(5);
  • end;
  • for I:=X1 to X2 do // зеленый шар стоит на месте, красный шар движется
  • begin
  • ClearWindow;
  • SetBrushColor(clGreen);
  • Ellipse(X+X1-D,Y,X+X1,Y+D);
  • SetBrushColor(clRed);
  • Ellipse(X+I,Y,X+I+D,Y+D);
  • Redraw;
  • Sleep(5);
  • end;
  • end.

1. Написать программу, которая выводит на экран шар движущийся по вертикали.

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

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

4. Написать программу, в которой окружность «пробегает» по периметру прямоугольника.

5. Написать программу «Круги на воде»: на экране в произвольном месте появляется окружность, которая сначала увеличивается, а потом уменьшается, затем так же появляются другие окружности. Начальные радиусы у окружности всегда разные

Источник: kopilkaurokov.ru

Рейтинг
( Пока оценок нет )
Загрузка ...
EFT-Soft.ru