- •Фгоу спо : «Псковский колледж строительства и экономики» Отчет
- •Оглавление
- •Глава 1. Языки программирования 3
- •Глава 2. Невизуальное программирование. 5
- •Глава 3. Визуальное программирование. 12
- •Глава 1. Языки программирования
- •Глава 2. Невизуальное программирование.
- •2.1.Кораблик
- •2.2.Графические рисунки
- •2.3.Городской пейзаж
- •Глава 3. Визуальное программирование.
- •3.1Калькулятор - Delphi
- •3.2.Редактор – Delphi
- •3.3.Калькулятор – Visual Basic
- •3.4.Редактор – Visual Basic
- •Заключение
Глава 2. Невизуальное программирование.
2.1.Кораблик
unit ship_;
interface
uses
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
StdCtrls, ExtCtrls;
type
TForm1 = class(TForm)
Timer1: TTimer;
procedure Timer1Timer(Sender: TObject);
procedure FormActivate(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form1: TForm1;
x,y: integer; // координаты корабля (базовой точки)
implementation
{$R *.DFM}
procedure Titanik(x,y: integer; // координаты базовой точки
color: TColor); // цвет корабля
const
dx = 5;
dy = 5;
var
buf: TColor;
begin
with form1.canvas do
begin
buf:=pen.Color; // сохраним текущий цвет
pen.Color:=color; // установим нужный цвет
// рисуем ...
// корпус
MoveTo(x,y);
LineTo(x,y-2*dy);
LineTo(x+10*dx,y-2*dy);
LineTo(x+11*dx,y-3*dy);
LineTo(x+17*dx,y-3*dy);
LineTo(x+14*dx,y);
LineTo(x,y);
// надстройка
MoveTo(x+3*dx,y-2*dy);
LineTo(x+4*dx,y-3*dy);
LineTo(x+4*dx,y-4*dy);
LineTo(x+13*dx,y-4*dy);
LineTo(x+13*dx,y-3*dy);
MoveTo(x+5*dx,y-3*dy);
LineTo(x+9*dx,y-3*dy);
// капитанский мостик
Rectangle(x+8*dx,y-4*dy,x+11*dx,y-5*dy);
// труба
Rectangle(x+7*dx,y-4*dy,x+8*dx,y-7*dy);
// иллюминаторы
Ellipse(x+11*dx,y-2*dy,x+12*dx,y-1*dy);
Ellipse(x+13*dx,y-2*dy,x+14*dx,y-1*dy);
// мачта
MoveTo(x+10*dx,y-5*dy);
LineTo(x+10*dx,y-10*dy);
// оснастка
MoveTo(x+17*dx,y-3*dy);
LineTo(x+10*dx,y-10*dy);
LineTo(x,y-2*dy);
pen.Color:=buf; // восстановим старый цвет карандаша
end;
end;
// обработка сигнала таймера
procedure TForm1.Timer1Timer(Sender: TObject);
begin
Titanik(x,y,form1.color); // стереть рисунок
if x < Form1.ClientWidth
then x := x+5
else begin // новый рейс
x := 0;
y := Random(50) + 100;
end;
Titanik(x,y,clWhite); // нарисовать в новой точке
end;
procedure TForm1.FormActivate(Sender: TObject);
begin
x:=0;
y:=100;
Form1.Color:=clNavy;
Timer1.Interval := 50; // сигнал таймера каждые 50 мСек
end;
end.
2.2.Графические рисунки
unit Unit1;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs;
type
TForm1 = class(TForm)
procedure FormPaint(Sender: TObject);
private
{ Private declarations
public
{ Public declarations }
end;
var
Form1: TForm1;
implementation
{$R *.dfm}
procedure TForm1.FormPaint(Sender: TObject);
begin
//eeiey
form1.Canvas.Pen.Color:=clRed;
form1.Canvas.Pen.Width:=1;
form1.Canvas.Pen.Style:=pssolid;
form1.Canvas.MoveTo(100,100);
form1.Canvas.LineTo(250,250);
//i?yiioaieuiee
form1.Canvas.Pen.Color:=clblue;
form1.Canvas.Brush.Color:=clgreen;
form1.Canvas.Brush.Style:=bscross;
form1.Canvas.Rectangle(350,100,600,250);
//i?yiioaieuiee n caaioouie oaeaie
form1.Canvas.Brush.Style:=bshorizontal;
form1.Canvas.RoundRect(620,100,850,250,150,100);
//yeein
form1.Canvas.Pen.Color:=clyellow;
form1.Canvas.Brush.Style:=bsdiagcross;
form1.Canvas.Brush.Color:=clblack;
form1.Canvas.ellipse(100,300,250,450);
// iieoe?oa
form1.Canvas.Pen.Color:=clgray;
form1.Canvas.Brush.Style:=bsclear;
form1.Canvas.Brush.Color:=clyellow;
form1.Canvas.pie(300,300,550,450,400,400,400,350);
form1.Canvas.Brush.Color:=clblack;
form1.Canvas.Ellipse(420,320,430,330);
//a?ea
form1.Canvas.Pen.Width:=5;
form1.Canvas.Pen.Color:=clwhite;
form1.Canvas.Arc(600,300,800,500,800,400,600,400);
//caacaa
form1.Canvas.Pen.Width:=5;
form1.Canvas.Pen.Color:=clred;
form1.Canvas.Polyline([Point(300,550),Point(280,600),point(230,600),point(280,630),point(260,680),
point(300,645),point(340,680),point(320,630),point(370,600),point(320,600),point(300,550)]);
end;
end.
end;
end.