Разработка программы для построения графиков в декартовой и полярной системе координат
Особенность построения графика функции в полярной системе координат. Характеристика создания программы – текстового редактора. Анализ создания нового файла и изменения шрифта. Проведение работы в графическом режиме. Построение листинга программы.
Рубрика | Программирование, компьютеры и кибернетика |
Вид | отчет по практике |
Язык | русский |
Дата добавления | 18.02.2019 |
Размер файла | 641,4 K |
Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже
Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.
Размещено на http://www.allbest.ru/
Министерство транспорта Российской Федерации
Федеральное агентство железнодорожного транспорта
Федеральное государственное бюджетное образовательное учреждение высшего профессионального образования
Омский государственный университет путей сообщения (ОмГУПС (ОмИИТ))
ОТЧЕТ
по учебной практике
Студент
А.А. Штайгер
Омск 2015
Содержание
1. Разработка программы для построения графиков в декартовой системе координат
1.1 Задание
1.2 Листинг программы
1.3 Результат работы программы
2. Разработка программы для построения графиков в полярной системе координат
2.1 Задание
2.2 Листинг программы
2.3 Результат работы программы
3. Разработка программы для построения графиков в полярной системе координат
3.1 Задание
3.2 Листинг программы
3.3 Результат работы программы
4. Работа в графическом режиме (класс TCanvas)
4.1 Задание
4.2 Листинг программы
4.3 Результат работы программы
Заключение
1. Разработка программы для построения графиков в декартовой системе координат
1.1 Задание
Построить график функции f(x) на интервале [a,b].
,
1.2 Листинг программы
unit Unit1;
{$mode objfpc}{$H+}
interface
uses
Classes, SysUtils, FileUtil, Forms, Controls, Graphics, Dialogs, ExtCtrls,
StdCtrls, math;
//Функция, которая аналитически определяет график.
function f(x:real):real;
//Функция, которая изображает график.
procedure Graphika(a, b: real);
type
{ TForm1 }
TForm1 = class(TForm)
Button1: TButton;
Image1: TImage;
Image2: TImage;
procedure Button1Click(Sender: TObject);
procedure FormCreate(Sender: TObject);
private
{ private declarations }
public
{ public declarations }
end;
var
Form1: TForm1;
//Объявление переменных:
//x0, xk, y0, yk - отступы от границ
//x, y - массивы, определяющие координаты
//точек графика в "бумажной"
//u, v - массивы, определяющие координаты
//точек графика в "компонентной"
//системе координат;
//N - количество точек.
x0, y0, xk, yk, a, b :real;
x, y : array [0..1000] of real;
u, v : array [0..1000] of integer;
N : integer;
implementation
{$R *.lfm}
{ TForm1 }
// функция, которая будет изображена на компоненте Image1
function f (x : real) : real;
begin
if x<-1 then Result:=exp(1/5*(exp(x)+7))
else Result:=x*x-x+2;
end;
//функция, которая рисует график заданной функции на компоненте Image1.
procedure Graphika(a, b: real);
//Kx+1 - количество линий сетки,перпендикулярных оси ОХ.
//Ky+1 - количество линий сетки, перпендикулярных оси ОY.
const Kx=5;Ky=5;
var dx, dy, c, d, g, h, max, min :real;
i, tempx, tempy :integer; s : string;
begin
//Вычисление шага изменения по оси Х.
h:=(b-a)/(N-1);
//Формирование массивов x и y.
x[0]:=a;
y[0]:=f(x[0]);
for i:=1 to N do
begin
x[i]:=x[i-1]+h;
y[i]:=f(x[i]);
end;
//Вычисление максимального и минимального значений массива Y.
max:=y[0]; min:=y[0];
for i:=1 to N do
begin
if y[i]>max then max:=y[i];
if y[i]<min then min:=y[i];
end;
//формирование коэффициентов пересчета из "бумажной" в "компонентную" систему координат.
c:=(Form1.Image1.ClientWidth-x0-xk)/(b-a);
d:=x0-c*x[0];
g:=(Form1.Image1.ClientHeight-y0-yk)/(min-max);
h:=yk-g*max;
//Формирование массивов точек в экранной системе координат.
for i:=0 to N do
begin
u[i]:=trunc(c*x[i]+d);
v[i]:=trunc(g*y[i]+h);
end;
//Form1.Image1.Canvas.Color:= clGray;
Form1.Image1.Canvas .Pen .Mode:= pmNot;
//Рисование графика функции на компоненте Image1.
Form1.Image1.Canvas.MoveTo(u[0],v[0]);
Form1.Image1.Canvas.Pen.Width:= 2;
Form1.Image1.Canvas.Pen.Color:= clGreen;
for i:=1 to N do
Form1.Image1.Canvas.LineTo(u[i],v[i]);
Form1.Image1.Canvas.Pen.Width:= 1 ;
Form1.Image1.Canvas.Pen.Color:= clBlack;
//Рисование осей координат, если они попадают в область графика.
Form1.Image1.Canvas.MoveTo(trunc(x0),trunc(h));
if (trunc(h)>yk) and
(trunc(h)<trunc(Form1.Image1.ClientHeight-y0))
then
Form1.Image1.Canvas.LineTo(trunc
(Form1.Image1.ClientWidth -xk),trunc(h));
Form1.Image1.Canvas.MoveTo(trunc(d),trunc(yk));
if (trunc(d)>x0) and
(trunc(d)<trunc(Form1.Image1.ClientWidth-xk))
then
Form1.Image1.Canvas.LineTo(trunc(d),
trunc(Form1.Image1.ClientHeight -y0));
//Рисование линий сетки, вычисление расстояния между линиями сетки в "компонентной" системе координат,
//перпендикулярных оси ОХ
dx:=(Form1.Image1.ClientWidth -x0-xk)/KX;
//Выбираем тип линии для линий сетки,
for i:=0 to KX do
begin
//первую и последнюю линии сетки рисуем обычной сплошной линией,
if (i=0) or (i=KX) then
Form1.Image1.Canvas.Pen.Style:=psSolid
//остальные - рисуем пунктирными линиями.
else
Form1.Image1.Canvas.Pen.Style:=psDash;
//Рисование линии сетки, перпендикулярной оси Ох.
Form1.Image1.Canvas.MoveTo(trunc(x0+i*dx),
trunc(yk));
Form1.Image1.Canvas.LineTo(trunc(x0+i*dx),
trunc(Form1.Image1.ClientHeight -y0));
end;
//Вычисление расстояния между линиями сетки, перпендикулярными оси ОY, в "компонентной" системе координат.
dy:=(Form1.Image1.ClientHeight -y0-yk)/KY;
for i:=0 to KY do
begin
//Первую и последнюю линии сетки рисуем обычной сплошной линией,
if (i=0) or (i=KY) then
Form1.Image1.Canvas.Pen.Style:=psSolid
//остальные - рисуем пунктирными линиями.
else
Form1.Image1.Canvas.Pen.Style:=psDash;
//Рисование линии сетки, перпендикулярной оси ОY.
Form1.Image1.Canvas.MoveTo(trunc(x0),trunc(yk+i*dy));
Form1.Image1.Canvas.LineTo(trunc
(Form1.Image1.ClientWidth-xk),trunc(yk+i*dy));
end;
Form1.Image1.Canvas.Pen.Style:=psSolid;
//Вывод подписей под осями, определяем dx - расстояние между выводимыми под осью ОХ значениями.
dx:=(b-a)/KX;
tempy:=trunc(Form1.Image1.ClientHeight -y0+10);
for i:=0 to KX do
begin
//Преобразование выводимого значения в строку.
Str(a+i*dx:5:2,s);
//Вычисление х-координаты выводимого под осью ОХ значения в "компонентной" системе.
tempx:=trunc(x0+i*(Form1.Image1.ClientWidth -
x0-xk)/KX)-10;
//Вывод значения под осью ОХ
Form1.Image1.Canvas.TextOut(tempx,tempy,s);
end;
if (trunc(d)>x0) and
(trunc(d)<Form1.Image1.ClientWidth-xk) then
Form1.Image1.Canvas.TextOut(trunc(d)-5,tempy,'0');
//Определяем dy - расстояние между выводимыми левее оси ОY значениями.
dy:=(max-min)/KY;
tempx:=5;
for i:=0 to KY do
begin
//Преобразование выводимого значения в строку.
Str(max-i*dy:5:2,s);
//Вычисление y-координаты выводимого левее оси ОY значения в "компонентной" системе.
tempy:=trunc(yk-5+i*(Form1.Image1.ClientHeight- y0-yk)/KY);
//Вывод значения левее оси ОY.
Form1.Image1.Canvas.TextOut(tempx,tempy,s);
end;
if (trunc(h)>yk) and (trunc(h)<
Form1.Image1.ClientHeight-y0) then
Form1.Image1.Canvas.TextOut(tempx+10,
trunc(h)-5,'0');
tempx:=trunc(x0+i*(Form1.Image1.ClientWidth -x0-xk)/2);
Form1.Image1.Canvas.TextOut(tempx,10,
'График функции');
end;
procedure TForm1.Button1Click(Sender: TObject);
begin
Graphika(a, b);
Form1.Image2.Visible:=true;;
end;
procedure TForm1.FormCreate(Sender: TObject);
var s:string;
kod:integer;
begin
Form1.Image1.Canvas.Brush.Color:=clWhite;
Form1.Image1.Canvas.FillRect(0,0,width,Height);
N:=100;
x0:=40;
xk:=40;
y0:=40;
yk:=40;
repeat
s:=InputBox('График непрерывной функции',
'Введите левую границу','-10');
Val(s,a,kod);
until kod=0;
repeat
s:=InputBox('График непрерывной функции',
'Введите правую границу','10');
Val(s,b,kod);
until kod=0;
end;
1.3 Результат работы программы
На рисунке 1 представлено главное окно программы.
Рисунок 1 - Главное окно программы
На рисунках 2 и 3 изображены окна задания левой и правой границ интервала.
Рисунок 2 - Окно задания левой границы
Рисунок 3 - Окно задания правой границы
На рисунке 4 представлен результат работы программы.
Рисунок 4 - Результат работы программы
2. Разработка программы для построения графиков в полярной системе координат
2.1 Задание
Построить график функции r(б) в полярной системе координат на интервале [б1, б2].
,
где R - длина вектора, м;
F - угол, рад.
2.2 Листинг программы
unit Unit1;
{$mode objfpc}{$H+}
Interface
uses
Classes, SysUtils, FileUtil, Forms, Controls, Graphics, Dialogs, StdCtrls, Types;
type
{ TForm1 }
TForm1 = class(TForm)
Button1: TButton;
procedure Button1Click(Sender: TObject);
private
{ private declarations }
public
{ public declarations }
end;
var
Form1: TForm1;
n:string;
a,b,kod:integer;
implementation
{$R *.lfm}
{ TForm1 }
procedure TForm1.Button1Click(Sender: TObject);
const
Scale = 20;
var
R, phi : Double;
X, Y : Integer;
CX, CY : Integer;
begin
CX := CenterPoint(ClientRect).X;
CY := CenterPoint(ClientRect).Y;
repeat
n:= InputBox('График функции в ПСК','Введите левую границу','0');
Val (n, a, kod) ;
until kod =0;
repeat
n:= InputBox ('График функции в ПСК','Введите правую границу','10');
Val(n, b, kod );
until kod =0;
phi := a;
with Self.Canvas do
while phi < b do
begin
R := abs(phi)*sin(phi);
X := CX + Trunc(Scale * R * Cos(phi));
y := CY - Trunc(Scale * R * Sin(phi));
Pixels[x, y] := clRed;
phi := phi + pi / 1800;
end;
Form1.Canvas.Pen.Width:=3;
Form1.Canvas.Pen.Color:=clBlack;
Form1.Canvas.MoveTo(CX,CY); // перемещаем позицию пера
Form1.Canvas.LineTo (width-20,CY); //рисование линии
Form1.Canvas.TextOut(CX,CY,'O');
Form1.Canvas.TextOut(width-20,CY-5,'A');
end;
end.
2.3 Результат работы программы
На рисунке 5 представлено главное окно программы.
Рисунок 5 - Главное окно программа
На рисунках 6 и 7 изображены окна задания левой и правой границ интервала. полярный текстовый редактор шрифт
Рисунок 6 - Окно задания левой границы
Рисунок 7 - Окно задания правой границы
На рисунке 8 представлен результат работы программы:
Рисунок 8 - Результат работы программы
3. Разработка программы для построения графиков в полярной системе координат
3.1 Задание
Создать программу - текстовый редактор (аналог Notepad). В основном меню программы должны присутствовать как минимум следующие команды: создание нового файла, открытие существующего файла, сохранение файла, сохранение файла под новым именем, изменение шрифта. В качестве основы редактора можно использовать компонент ТМемо.
3.2 Листинг программы
unit Unit1;
{$mode objfpc}{$H+}
interface
uses
Classes, SysUtils, FileUtil, Forms, Controls, Graphics, Dialogs, StdCtrls,
Menus, ComCtrls, ColorBox;
type
{ TForm1 }
TForm1 = class(TForm)
ColorDialog1: TColorDialog;
FontDialog1: TFontDialog;
ImageList1: TImageList;
MainMenu1: TMainMenu;
Memo1: TMemo;
MenuItem1: TMenuItem;
MenuItem10: TMenuItem;
MenuItem2: TMenuItem;
MenuItem3: TMenuItem;
MenuItem4: TMenuItem;
MenuItem5: TMenuItem;
MenuItem6: TMenuItem;
MenuItem7: TMenuItem;
MenuItem8: TMenuItem;
MenuItem9: TMenuItem;
OpenDialog1: TOpenDialog;
SaveDialog1: TSaveDialog;
ToolBar1: TToolBar;
ToolButton1: TToolButton;
ToolButton2: TToolButton;
ToolButton3: TToolButton;
ToolButton4: TToolButton;
procedure MenuItem10Click(Sender: TObject);
procedure MenuItem3Click(Sender: TObject);
procedure MenuItem4Click(Sender: TObject);
procedure MenuItem5Click(Sender: TObject);
procedure MenuItem6Click(Sender: TObject);
procedure MenuItem7Click(Sender: TObject);
procedure MenuItem8Click(Sender: TObject);
procedure MenuItem9Click(Sender: TObject);
private
{ private declarations }
public
{ public declarations }
end;
var
Form1: TForm1;
s:string;
implementation
{$R *.lfm}
{ TForm1 }
procedure TForm1.MenuItem8Click(Sender: TObject); //создать
begin
form1.Memo1.Lines.Clear;
form1.Caption:='Новый файл';
OpenDialog1.FileName:='';
end;
procedure TForm1.MenuItem4Click(Sender: TObject);//открыть
begin
if form1.OpenDialog1.Execute then
form1.Memo1.Lines.LoadFromFile(OpenDialog1.FileName);
form1.Caption:=OpenDialog1.FileName;
end;
procedure TForm1.MenuItem5Click(Sender: TObject); //сохранить
begin
if OpenDialog1.FileName<>'' then
begin
form1.Memo1.Lines.SaveToFile(OpenDialog1.FileName);
showmessage('Файл сохранен');
end
else begin
if form1.SaveDialog1.Execute then
form1.Memo1.Lines.SaveToFile(SaveDialog1.FileName);
form1.Caption:=SaveDialog1.FileName;
OpenDialog1.FileName:=SaveDialog1.FileName;
end;
end;
procedure TForm1.MenuItem6Click(Sender: TObject); //сохранить как
begin
if form1.SaveDialog1.Execute then
form1.Memo1.Lines.SaveToFile(SaveDialog1.FileName);
form1.Caption:=SaveDialog1.FileName;
OpenDialog1.FileName:=SaveDialog1.FileName;
end;
procedure TForm1.MenuItem7Click(Sender: TObject); //выход
begin
if MessageDlg('Сохранить перед закрытием?', mtCustom, [mbYes, mbNO], 0) = mrYes then
begin
if OpenDialog1.FileName<>'' then
begin
form1.Memo1.Lines.SaveToFile(OpenDialog1.FileName);
showmessage('Файл сохранен');
end
else begin
if form1.SaveDialog1.Execute then
form1.Memo1.Lines.SaveToFile(SaveDialog1.FileName);
form1.Caption:=SaveDialog1.FileName;
OpenDialog1.FileName:=SaveDialog1.FileName;
end;
end;
close;
end;
procedure TForm1.MenuItem9Click(Sender: TObject); // шрифт
begin
if form1.FontDialog1.Execute then
form1.Memo1.Font:=form1.FontDialog1.Font;
end;
procedure TForm1.MenuItem10Click(Sender: TObject); //цвет фона
begin
if form1.ColorDialog1.Execute then
Memo1.Color:=ColorDialog1.Color;
end;
procedure TForm1.MenuItem3Click(Sender: TObject); //справка
begin
showmessage('Текстовый редактор v1.3');
end;
end.
3.3 Результат работы программы
На рисунке 9 представлено главное окно программы.
Рисунок 9 - Главное окно программы
На рисунке 10 изображено выпадающее меню файл.
Рисунок 10 - Выпадающее меню «Файл»
На рисунке 11 представлено окно открытия файла.
Рисунок 11 - Окно открытия файла
На рисунке 12 изображено окно программы после форматирования шрифта и фона.
Рисунок 12 - Окно программы после форматирования шрифта и фона
На рисунке 13 изображено окно «Справка».
Рисунок 13 - Окно «Справка»
На рисунке 14 изображено окно выхода из программы.
Рисунок 14 - Окно выхода из программы
4. Работа в графическом режиме (класс TCanvas)
4.1 Задание
Создать программу с имитацией падения снежинок. Снежинки отображать в виде точек. Для каждой снежинки создать запись (или объект) содержащий следующие поля записи:
- x - координата по X;
- y - координата по Y;
- v - скорость.
При запуске программы, создается N снежинок. Для каждой случайным образом определяется положение и начальная скорость падения. По событию таймера, для каждой снежинки определяется новое положение на экране с учетом скорости, после чего скорость опять изменяется случайным образом.
При нажатии на форме левой кнопки мыши, направление движения снежинок изменяется в точку, где была нажата кнопка мышки.
4.2 Листинг программы
unit Unit1;
{$mode objfpc}{$H+}
interface
uses
Classes, SysUtils, FileUtil, Forms, Controls, Graphics, Dialogs, ExtCtrls,
StdCtrls;
type
{ TForm1 }
TForm1 = class(TForm)
Timer1: TTimer;
Timer2: TTimer;
procedure FormClick(Sender: TObject);
procedure FormCreate(Sender: TObject);
procedure Timer1Timer(Sender: TObject);
procedure Timer2Timer(Sender: TObject);
private
{ private declarations }
public
{ public declarations }
end;
type
sneg=record
x,y,vx,vy:array [1..3000] of integer;
end;
var
Form1: TForm1;
i,N,t,q1,q2:integer;
sneginka:sneg;
a:string;
implementation
{$R *.lfm}
{ TForm1 }
procedure TForm1.FormClick(Sender: TObject);
begin
Timer1.Enabled:=false;
q1:=Mouse.CursorPos.x;
q2:=Mouse.CursorPos.y;
with sneginka do
for i:=1 to N do
begin
vx[i]:=(q1-x[i]) div 50;
vy[i]:=(q2-y[i]) div 50;
end;
Timer2.Enabled:=true;
end;
procedure TForm1.FormCreate(Sender: TObject); //начальное положение
begin
a:=inputbox('Снежинки','Введите количество снежинок','150');
N:=strtoint(a);
with sneginka do
for i:=1 to N do
begin
x[i]:=random(width);
y[i]:=random(height);
vx[i]:=random(5);
vy[i]:=random(50);
Form1.Canvas.Pen.Color:=clWhite;
Form1.Canvas.Pen.Width:=5;
Form1.Canvas.MoveTo(x[i],y[i]); // перемещаем позицию пера
Form1.Canvas.LineTo (x[i],y[i]); //рисование линии
end;
end;
procedure TForm1.Timer1Timer(Sender: TObject); //таймер
begin
with sneginka do
for i:=1 to N do
begin
Form1.Canvas.Pen.Color:=clBlack;
Form1.Canvas.MoveTo(x[i],y[i]); // перемещаем позицию пера
Form1.Canvas.LineTo (x[i],y[i]); //рисование линии
Form1.Canvas.Pen.Color:=clWhite;
x[i]:=x[i]+vx[i];
y[i]:=y[i]+vy[i];
Form1.Canvas.MoveTo(x[i],y[i]); // перемещаем позицию пера
Form1.Canvas.LineTo (x[i],y[i]); //рисование линии
if x[i]>=width+20 then x[i]:=random(width);
if y[i]>=height+20 then y[i]:=random(height);
end;
end;
procedure TForm1.Timer2Timer(Sender: TObject);
begin
with sneginka do
for i:=1 to N do
begin
Form1.Canvas.Pen.Color:=clBlack;
Form1.Canvas.MoveTo(x[i],y[i]); // перемещаем позицию пера
Form1.Canvas.LineTo (x[i],y[i]); //рисование линии
Form1.Canvas.Pen.Color:=clWhite;
x[i]:=x[i]+vx[i];
y[i]:=y[i]+vy[i];
Form1.Canvas.MoveTo(x[i],y[i]); // перемещаем позицию пера
Form1.Canvas.LineTo (x[i],y[i]); //рисование линии
if (x[i]>=width+20) or (x[i]<-20) then begin x[i]:=random(height); vx[i]:=random(5); end;
if (y[i]>=height+20) or (y[i]<-20) then begin y[i]:=random(height); vy[i]:=random(50); end;
end;
end;
end.
4.3 Результат работы программы
На рисунке 15 изображено окно задания количества снежинок.
Рисунок 15 - Окно задания количества снежинок
На рисунке 16 представлено главное окно программы.
Рисунок 16 - Главное окно программы
На рисунке 17 представлено окно программы в момент нажатия левой кнопки мыши.
Рисунок 17 - Окно программы в момент нажатия левой кнопки мыши
Заключение
В результате учебной практики было создано 4 программы, использующие графические возможности Lazarus.
Первая программа рисует график заданной функции в декартовой системе координат в интервале, который указывает пользователь.
Вторая - рисует график заданной функции в полярной системе координат в интервале, который задает пользователь программы.
Третья программа - это текстовый редактор с базовыми функциями: открыть файл, сохранить файл, закрыть файл, а также с функцией изменения шрифта и цвета фона.
Четвертая - программа изображает движение снежинок и позволяет при нажатии левой кнопки мыши на экран направить их в эту точку.
Библиографический список
1 Мансуров, К.Т. Основы программирования в среде Lazarus / К.Т. Мансуров. М., 2010. 772 с.
2 Free Pascal и Lazarus: Учебник по программированию/ Е.Р. Алексеев, О.В. Чеснокова, Т.В. Кучер. М.: Изд. ALT Linux; ДМК Пресс, 2010. 438 c.
Размещено на Allbest.ru
Подобные документы
История создания и развитие языка программирования Pascal, его версии. Особенности и порядок построения графика функции на языке Turbo Pascal с использованием декартовой системы координат. Блок схема алгоритма процедур, листинг и тестирование программы.
курсовая работа [102,7 K], добавлен 23.12.2011Разработка алгоритма и написание программы на языке Turbo Pascal. Построение электронных таблиц, отражающих расчеты за услуги фирмы. Вычисление значения функций и построение их графиков в Excel в одной системе координат. Порядок создания Web-страниц.
курсовая работа [1,9 M], добавлен 18.12.2012Выбор режимов адресации, посредством которых будет осуществлен доступ к данным. Этапы создания программы. Характеристика таблицы символов и полученного файла листинга. Анализ изменения состояния регистра IP при выполнении команд JMP, Jcc, LOOPx.
курсовая работа [4,9 M], добавлен 25.03.2012Анализ задания и разработка алгоритма. Основные принципы создания программы. Схема взаимодействия процессов Process 1 и Process 4, в режиме задачи и в режиме ядра. Листинг программы и ее тестирование. Результат работы и выполнения программы в консоли.
контрольная работа [395,9 K], добавлен 18.09.2010Основы программирования графики на языке Паскаль. Способы решения графических программ и рекомендации к их решениям. Связь между декартовой и полярной системами координат. Алгоритм переноса объекта. Построение фракталов, классической пыли Кантора.
курсовая работа [3,3 M], добавлен 24.04.2013Простейший способ построения 2D-графика. Способы проектирования двух графиков в одной системе координат. Закрепление графического окна. Дополнительные параметры команды plot. Axis: управление масштабом. Оформление графиков. Построение 3D-поверхности.
презентация [962,5 K], добавлен 24.01.2014Необходимые компоненты и порядок составления текстового редактора. Текст программы решения задачи на языке программирования C++. Контрольный пример работы текстового редактора. Создание и произведение операции форматирования простого документа.
курсовая работа [1,6 M], добавлен 03.09.2011Разработка программы, аналога Paint системы Windows, с функциями открытия изображения в графическом редакторе и его сохранения, написания текста в любом указанном мышкой месте, изменения шрифта, размера и цвета текста на языке программирования Delphi.
курсовая работа [278,5 K], добавлен 06.04.2014Создание программы для обучения пользователя пониманию и нахождению координат точки на координатной плоскости. Обоснование этапов обработки информации, общая концепция программы "Декартовая система координат", определение ее состава и структуры.
курсовая работа [1,3 M], добавлен 20.10.2022Характеристика и описание массива структур из 3-х элементов. Блок-схемы главной функции main и текст программы на языке Си. Построение графика изменения напряженности поля заряженной частицы. Таблица символических имен, работоспособность программы.
курсовая работа [365,8 K], добавлен 02.02.2010