Министерство Образования Российской Федерации
Федеральное агентство по образованию
Южно-Уральский Государственный Университет
Кафедра «Технология машиностроения»
Создание расчетных приложений и программы поиска в базе данных в среде
Delphi
7.0
Пояснительная записка к курсовой работе
по информатике
Выполнил: Ф.И.О.
группа МТ-ххх
Проверил: Выбойщик А.В.
Челябинск
2006
Аннотация
Фамилия И.О. (студента)
Создание расчетных приложений и программы поиска в базе данных в среде Delphi 7.0:
Пояснительная записка к курсовой работе по информатике
-Челябинск: ЮУрГУ,
2005. - 21 с.
В работе выполнено: 1. Блок-схемы
2. Тексты программ в Delphi и Паскаль
3. Выполнение разбиения таблицы
4. Текст программы поиска в базе данных
в среде Delphi 7.0
Содержание
Введение
Условия и блок-схемы задач
Текст программ в Delphi
Текст программ в Паскаль
Таблицы
Текст программы поиска в базе данных
Заключение
Библиографический справочник
Введение
В работе необходимо создать расчётные приложения задач и программу поиска в базе данных в среде BorlandDelphi 7.0 Enterprise
Задача №1. Линейные алгоритмы
10.9. Заданы высота конуса Н и радиус окружности, лежащий в основании R. Найти площадь поверхности конуса S
№2. Ветвящиеся алгоритмы
20.13. Задано каноническое уравнение поверхности 2 порядка
Определить, является ли эта поверхность однополостным гиперболоидом.
Если условие выполняется, вывести N=1, в противном случае вывести N=0.
Задача №3.
Алексеев В.Е. №1.49 в) Задан массив (Х1, Х2, ….., Х50). Требуется переписать положительные элементы массива Х подряд в массив Y, а отрицательные – подряд в массив Z.
Задача
1
procedure TForm4.Button1Click(Sender: TObject);
const pi=3.14;
var H,R,S: real;
begin
H:=StrToFloat(Trim(MaskEdit1.Text));
R:=StrToFloat(Trim(MaskEdit2.Text));
S:=pi*R*(R+SQRT(SQR(H)+SQR(R)));
MaskEdit3.Text:=FloatToStr(S);
Memo1.Lines.Add('площадьповерхностиконуса S равна' +MaskEdit3.Text);
end;
Задача
2
procedure TForm5.Button1Click(Sender: TObject);
var n,a,b,c:Real;
var M:Boolean;
begin
n:=StrToFloat(Trim(MaskEdit1.Text));
a:=StrToFloat(Trim(MaskEdit2.Text));
b:=StrToFloat(Trim(MaskEdit3.Text));
c:=StrToFloat(Trim(MaskEdit4.Text));
if trunc(n/2)+2=n
THEN
M:=True
ELSE
M:=False;
MaskEdit5.Text:=boolToStr(M);
Memo1.Lines.Add('Если M=1, то это однополостный гиперболоид, в противном случае нет' +MaskEdit5.Text);
end;
Задача
3
// Вводмассива
procedure TForm6.Button1Click(Sender: TObject);
var k, p, i: Integer;
begin
k:=0;
StringGrid2.colCount:=k+1;
p:=0;
StringGrid3.colCount:=p+1;
for i:=1 to StringGrid1.ColCount - 1 do
if STrToFloat(StringGrid1.Cells[i,1]) >0 then
begin
k:=k+1;
StringGrid2.colCount:=k+1;
StringGrid2.Cells[k,1]:= FloatToStr(StrToFloat(StringGrid1.Cells[i,1]))
end
else
begin
p:=p+1;
StringGrid3.colCount:=p+1;
StringGrid3.Cells[p,1]:= FloatToStr(StrToFloat(StringGrid1.Cells[i,1]));
end;
for i:=1 to StringGrid3.ColCount-1 do
StringGrid3.Cells[i,0]:='Z'+'['+Inttostr(i)+' ]';
for i:=1 to StringGrid2.ColCount-1 do
StringGrid2.Cells[i,0]:='Y'+'['+Inttostr(i)+' ]';
end;
procedure TForm6.StringGrid1KeyPress(Sender: TObject; var Key: Char);
begin
if not (key in [#8, '0' .. '9' , '-' , ',' ]) then key:=#0;
end;
// Решениезадачи
procedure TForm6.Button2Click(Sender: TObject);
var i : Integer;
begin
StringGrid1.ColCount:=SpinEdit1.Value+1;
for i:=1 to StringGrid1.ColCount-1 do
StringGrid1.Cells[i,0]:='X'+'['+Inttostr(i)+' ]';
end;
Текст программ в Паскаль
Задача 1
Programkino5;
const pi=3.14;
var H,R,S real;
{H-высота конуса
R-радиус окружности
S-площадь поверхности конуса}
begin
read ln(H,R);
S:=pi*R*(R+SQRT(SQR(H)+SQR(R)));
writeln('S=',S);
end.
Задача 2
Program kino5;
var n,a,b,c:Real;
var M:Boolean
begin
real ln(n,a,b,c);
if trunc(n/2)+2=n
M:=True
ELSE
M:=False;
writeln('M=',M);
end.
Задача 3
Var
A: avray[1..50] f Real;
var k:Integer;
var p:Integer;
var i:Integer;
var b,c:avray[1..50] of Real;
begin
k:=0;
p:=0
for i:=0 to 50 do
if A[i]>0 then
begin
Inc(R);
b[k]:=A[i];
end
else
begin
Inc(p);
c[p]:=A[i];
end;
for i:=1 to k do
Writeln (b[i]);
for i:=1 to p do
Writeln(c[i]);
end.
Таблицы
Таблица 1
скорость детали V мм\мин, не более |
СТАЛЬ |
ЧУГУН |
поперечная подача на оборот стола S, мм\об, не более |
1,2 |
1,8 |
3,2 |
5 |
7,5 |
11 |
16 |
1,8 |
3,2 |
5 |
7,5 |
11 |
6,3 |
0,007 |
0,006 |
0,005 |
0,0045 |
0,004 |
0,0035 |
0,003 |
0,012 |
0,009 |
0,007 |
0,006 |
0,005 |
8 |
6 |
5 |
45 |
4 |
35 |
3 |
0,0025 |
0,01 |
8 |
6 |
5 |
0,0045 |
10 |
5 |
45 |
4 |
35 |
3 |
25 |
- |
0,008 |
7 |
5 |
45 |
4 |
12 |
45 |
4 |
35 |
3 |
25 |
- |
- |
7 |
6 |
45 |
4 |
3 |
16 |
4 |
35 |
3 |
25 |
- |
- |
- |
6 |
5 |
4 |
3 |
- |
20 |
35 |
3 |
25 |
- |
- |
- |
- |
5 |
4 |
3 |
- |
- |
Таблица 2
Code_metod |
S |
V |
X |
1 |
1,2 |
6,3 |
0,007 |
1 |
1,8 |
6,3 |
0,006 |
1 |
3,2 |
6,3 |
0,005 |
1 |
5 |
6,3 |
0,0045 |
1 |
7,5 |
6,3 |
0,004 |
1 |
11 |
6,3 |
0,0035 |
1 |
16 |
6,3 |
0,003 |
1 |
1,2 |
8 |
6 |
1 |
1,8 |
8 |
5 |
1 |
3,2 |
8 |
45 |
1 |
5 |
8 |
4 |
1 |
7,5 |
8 |
36 |
1 |
11 |
8 |
3 |
1 |
16 |
8 |
0,0025 |
1 |
1,2 |
10 |
5 |
1 |
1,8 |
10 |
45 |
1 |
3,2 |
10 |
4 |
1 |
5 |
10 |
35 |
1 |
7,5 |
10 |
3 |
1 |
11 |
10 |
25 |
1 |
1,2 |
12 |
45 |
1 |
1,8 |
12 |
4 |
1 |
3,2 |
12 |
35 |
1 |
5 |
12 |
3 |
1 |
7,5 |
12 |
25 |
1 |
1,2 |
16 |
4 |
1 |
1,8 |
16 |
35 |
1 |
3,2 |
16 |
3 |
1 |
5 |
16 |
25 |
1 |
1,2 |
20 |
35 |
1 |
1,8 |
20 |
3 |
1 |
3,2 |
20 |
25 |
2 |
1,8 |
6,3 |
0,012 |
2 |
3,2 |
6,3 |
0,009 |
2 |
5 |
6,3 |
0,007 |
2 |
7,5 |
6,3 |
0,006 |
2 |
11 |
6,3 |
0,005 |
2 |
1,8 |
8 |
0,01 |
2 |
3,2 |
8 |
8 |
2 |
5 |
8 |
6 |
2 |
7,5 |
8 |
5 |
2 |
11 |
8 |
0,0045 |
2 |
1,8 |
10 |
0,008 |
2 |
3,2 |
10 |
7 |
2 |
5 |
10 |
5 |
2 |
7,5 |
10 |
45 |
2 |
11 |
10 |
4 |
2 |
1,8 |
12 |
7 |
2 |
3,2 |
12 |
6 |
2 |
5 |
12 |
45 |
2 |
7,5 |
12 |
4 |
2 |
11 |
12 |
3 |
2 |
1,8 |
16 |
6 |
2 |
3,2 |
16 |
5 |
2 |
5 |
16 |
4 |
2 |
7,5 |
16 |
3 |
2 |
1,8 |
20 |
5 |
2 |
3,2 |
20 |
4 |
2 |
5 |
20 |
3 |
Кодирование материала:
Таблица 3
Mater |
Code_ metod |
Сталь |
1 |
Чугун |
2 |
Текст программы поиска в базе данных в среде
Delphi
7.0
procedure TForm2.Button1Click(Sender: TObject);
var x1,res:variant;
label 1,2,3,4,5;
begin
x1:=TableMater.Lookup('Mater',DBComboBox1.Text,'Code_metod');
TableX.First;
While not TableX.EOF do
1: if x1=TableX.FieldByName('Code_metod').AsInteger then
2: if strtofloat(Trim(MaskEdit1.Text))<=TableX.FieldByName('S').AsFloat then
3: if strtofloat(Trim(MaskEdit2.Text))<=TableX.FieldByName('V').AsFloat then
begin
res:=TableX.Lookup('Code_metod;S;V', VarArrayOf([x1, TableX.FieldByName('S').Asfloat, TableX.FieldByName('V').AsFloat]), 'X');
goto 5;
end
else
begin
TableX.Next;
goto 3;
end
else
begin
TableX.Next;
goto 2;
end
else
begin
TableX.Next;
goto 1;
end;
5: Maskedit3.Text:=res;
end;
end.
Заключение
В работе выполнены блок-схемы задач, приведены листинги расчетных приложении. Приведено изготовление реляционной базы данных, а также листинг программы поиска в этой базе данных в среде BorlandDelphi 7.0 Enterprise.
Библиографический список
1. Обработка металлов резанием. Под ред. А.А Панова. М.: Машиностроение, 1988.
2. Галисеев Г. В. Программирование в среде Delphi 7. Самоучитель.
М.: Издательский дом «Вильямс», 2004.
|