Содержание
Минимальные системные требования для использования Delphi
Свойства и структура главной программы
Свойства и структура первой программы
Свойства и структура второй программы
Результат выполнения программы
Свойства и структура третьей программы
Инструкция по применению программы
Целью данной курсовой работы является выполнение заданий на Delphi по предмету “программирование на языках высокого уровня».
Данная работа содержит три задачи, написанные на Delphi. Это задачи на разные темы, в которых применяются различные элементы языка программирования и компоненты Delphi.
В первой задаче вычисляется сумма ряда, значение функции, погрешность и строится график функции. Во второй задаче вводим, выводим и преобразуем элементы массива. В третьей задаче используется графика, движение фигуры по определенному контуру.
Для создания программы использовались компоненты из вкладок Standard и Additional:
Button – кнопка;
StringGrid– таблица для отображения каких-либо значений;
Label – компонента, для отображения не редактируемого текста;
Edit – компонент ввода-вывода текстовой строкиж
Panel – панель с надписью;
TChart – компонента для прорисовки графика.
Первые пять компонентов наиболее часто применяются при написании программ. Изменяя их свойства можно писать большое количество программ с разным содержанием задачи. Последний компонент из данного списка очень полезны при решении конкретных задач.
Помимо этого для решения третей задачи были использованы функции API, позволяющие управлять интерфейсом приложений Windows.
Минимальные системные требования для использования Delphi
Процессор - Intel Pentium 233 МГц и выше
Операционная система - MicrosoftWindowsXP, Windows 2000
Оперативная память - 64 Мбайт (рекомендуется 128 Мбайт)
Пространство на жестком диске - 450 Мбайт
Монитор - SVGA или выше
Другое аппаратное обеспечение - CD-ROM, мышь
Создаем форму и изменяем необходимые свойства главной формы в окне свойств:
Height - ширина формы;
Width- длина формы;
Caption - название формы.
Добавляем на главную форму необходимые элементы управления:
Button – запуск вычислений, открытие окна графика, выход из программы;
StringGrid– отображение таблицы значений x, y, s.
Label – отображение не редактируемого текста;
Edit – ввод данных для вычислений.
Прописываем в компонентах Edit текст по умолчанию в свойство Text.
Изменяем свойства добавленного элемента управления StringGrid:
- ColCount
- RowCount
- FixedCols
- FixedRows
Пишем для кнопок алгоритмы, которые будут выполнять различные действия.Прописываем действие на открытие формы на главной форме работы.
Создаем отдельную форму для графика, на нее помещаем компонент TChart. Пишем команду ее открытия на одну из кнопок.
Запускаем программу с целью проверки ее работоспособности. Сохраняем проект.
План работы для второй задачи
Создаем форму и изменяем необходимые свойства главной формы в окне свойств:
Height - ширина формы;
Width- длина формы;
Caption - название формы.
Добавляем на главную форму необходимые элементы управления:
Button – запуск вычислений, открытие окна графика, выход из программы;
StringGrid– отображение таблицы значений x, y, s.
Label – отображение не редактируемого текста;
Edit – ввод данных для формирования массивов и вывода полученных числовых рядов.
Изменяем свойства добавленного элемента управления StringGrid:
- ColCount
- RowCount
- FixedCols
- FixedRows
Пишем для кнопок алгоритмы, которые будут выполнять различные действия.Прописываем действие на открытие формы на главной форме работы. Запускаем программу с целью проверки ее работоспособности. Сохраняем проект.
План работы для третьей задачи
Создаем форму и изменяем необходимые свойства главной формы в окне свойств:
Height - ширина формы;
Width- длина формы;
Caption - название формы.
Задаем для формы регион, в который она будет вписана.
Пишем алгоритм движения по кромке экрана.Запускаем программу с целью проверки ее работоспособности. Сохраняемпроект.
Кодглавнойпрограммы
unit Unit1;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, ExtCtrls, StdCtrls;
type
TForm1 = class(TForm)
Button1: TButton;
Button2: TButton;
Button3: TButton;
Panel1: TPanel;
Panel2: TPanel;
Button4: TButton;
procedure Button4Click(Sender: TObject);
procedure Button1Click(Sender: TObject);
procedure Button2Click(Sender: TObject);
procedure Button3Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form1: TForm1;
implementation
uses Unit2, Unit4, Unit7;
{$R *.dfm}
procedure TForm1.Button4Click(Sender: TObject);
begin
Form1.Close; // закрывает главную форму и приложение
end;
procedure TForm1.Button1Click(Sender: TObject);
begin
form2.showmodal; // показывает форму задания № 1
end;
procedure TForm1.Button2Click(Sender: TObject);
begin
form4.showmodal; // показывает форму задания №2
end;
procedure TForm1.Button3Click(Sender: TObject);
begin
form7.showmodal; // показывает форму задание №3
end;
end.
1. Построить график:
Псевдокод:
Начало Расчет (a,b,n\x,y,s)
константа h=0.05
вещ s,y,a,b,x,su
цел i,n,j,k,p
ввод a,b,n
k:=round(1+(b-a)/h);
x=a
Цикл для i от одного до k
s:=(x-1)/3;
Цикл для j от двух до n
su:=1
Цикл для p от одного до j
su:=su*(x-1)/x
Все цикл
s:=s+su/j
Всецикл
y:=ln(x)
Вывод x,s,y
Построение графика на форме 3
x:=x+h
Все-цикл
Конец Расчет.
В первой программе использовались компоненты:
Edit – для ввода параметров вычисления;
Button1-кнопка для вычисления S и Y;
Button2-кнопка для закрытия формы;
Button3-кнопка для открытия формы с графиком;
StringGrid1-таблица для вывода результатов вычислений;
Компоненты, которые использовались для оформления:
Image1 – для вывода на экран задания;
Label- компонента для отображения текста.
Для вывода графика создана отдельная форма с компонентом Chart1.
unitUnit2;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, Grids, ExtCtrls, Math, jpeg;
type
TForm2 = class(TForm)
Image1: TImage;
StringGrid1: TStringGrid;
Label1: TLabel;
Label2: TLabel;
Label3: TLabel;
Edit1: TEdit;
Edit2: TEdit;
Edit3: TEdit;
Button1: TButton;
Button2: TButton;
Button3: TButton;
procedure Button2Click(Sender: TObject);
procedure Button1Click(Sender: TObject);
procedure Button3Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form2: TForm2;
implementation
uses Unit3;
{$R *.dfm}
procedure TForm2.Button2Click(Sender: TObject);
begin
Form2.Close; // закрывает форму задания №1
end;
procedureTForm2.Button1Click(Sender: TObject); // производит вычисления x, y, s, заполнение таблицы, постройка графика
const h=0.05;
var i,n,j,k,p:integer;
s,y,a,b,x,su:real;
begin
a:=strtofloat(edit1.text);
b:=strtofloat(edit2.text);
n:=strtoint(edit3.text);
k:=round(1+(b-a)/h);
x:=a;
StringGrid1.ColWidths[0]:=20; // задаетширинустолбца
StringGrid1.cells[1,0]:='x'; // задаетподписьстолбца
StringGrid1.cells[2,0]:='s'; // задает подпись столбца
StringGrid1.cells[3,0]:='y'; // задает подпись столбца
for i:=1 to k do
begin
s:=(x-1)/3;
for j:=2 to n do
begin
su:=1;
for p:=1 to j do
su:=su*(x-1)/x;
s:=s+su/j;
end;
y:=ln(x);
StringGrid1.cells[0,i]:=inttostr(i); // нумеруетстрокитаблица
StringGrid1.cells[1,i]:=floattostr(x); //выводит x
StringGrid1.cells[2,i]:=FloatToStr(Round(s*exp(10*ln(10)))/(exp(10*ln(10)))); // выводит y
StringGrid1.cells[3,i]:=FloatToStr(Round(y*exp(10*ln(10)))/(exp(10*ln(10)))); // выводит s
Form3.Grafik.SeriesList[0].AddXY(x,ln(x),'',clRed); // строитграфик
x:=x+h;
end;
end;
procedure TForm2.Button3Click(Sender: TObject);
begin
form3.ShowModal; //показывает форму графика
end;
end.
Дана матрица размера n*(n+1), числа а1, …, аn+1,b1, …, bn+1, натуральные числа р, g (p <= n, g <= n+1). Образовать новую матрицу размера (n+1)*(n+2) вставкой после строки с номером р данной матрицы новой строки с элементами a1, …, an+1 и последующей вставкой после столбца с номером g нового столбца с элементами b1, …, bn+1.
Во второй программе использовались компоненты:
Edit – для ввода параметров заполнения и вывода числовых рядов;
Button1-кнопка для заполнения числовых рядов и массивов;
Button2-кнопка для закрытия формы;
StringGrid1-таблица для вывода начального массива a[i;j];
StringGrid2-таблица для вывода конечного массива b[i;j];
Компоненты, которые использовались для оформления:
Label- компонента для отображения текста.
unitUnit4;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, Grids, StdCtrls;
type
TForm4 = class(TForm)
Label2: TLabel;
Label3: TLabel;
Label4: TLabel;
Edit1: TEdit;
Label1: TLabel;
Edit2: TEdit;
Label5: TLabel;
Edit3: TEdit;
Button1: TButton;
Button2: TButton;
StringGrid1: TStringGrid;
StringGrid2: TStringGrid;
Edit4: TEdit;
Edit5: TEdit;
Label6: TLabel;
Label7: TLabel;
procedure Button1Click(Sender: TObject);
procedure Button2Click(Sender: TObject);
private