Міністерство Освіти Російської Федерації
Федеральне агентство з освіти
Південно-Уральський державний університет
Кафедра «Технологія машинобудування»
Створення розрахункових додатків і програми пошуку в базі даних у середовищі Delphi 7.0
Пояснювальна записка до курсової роботи
з інформатики
Виконав: П.І.Б.
група МТ-ххх
Перевірив: Вибойщік А.В.
Челябінськ
2006
Анотація
Прізвище І.О. (Студента)
Створення розрахункових додатків і програми пошуку в базі даних у середовищі Delphi 7.0:
Пояснювальна записка до курсової роботи з інформатики
-Челябінськ: ЮУрГУ,
2005. - 21 с.
У роботі виконано: 1. Блок-схеми
2. Тексти програм в Delphi і Паскаль
3. Виконання розбиття таблиці
4. Текст програми пошуку в базі даних
в середовищі Delphi 7.0
Зміст
Введення
Умови і блок-схеми завдань
Текст програм в Delphi
Текст програм в Паскаль
Таблиці
Текст програми пошуку в базі даних
Висновок
Бібліографічний довідник
Введення
У роботі необхідно створити розрахункові програми завдань і програму пошуку в базі даних в середовищі Borland Delphi 7.0 Enterprise
Завдання № 1. Лінійні алгоритми
10.9. Задані висота конуса Н і радіус кола, що лежить в основі R. Знайти площу поверхні конуса S
SHAPE \ * MERGEFORMAT
№ 2. Розгалужені алгоритми
20.13. Визнач канонічне рівняння поверхні 2 порядку
Визначити, чи є ця поверхня однополостной гіперболоїдом.
Якщо умова виконується, вивести N = 1, у противному разі вивести N = 0.
SHAPE \ * MERGEFORMAT
Завдання № 3.
Алексєєв В.Є. № 1.49 в) Задано масив (Х1, Х2, ... .., х50). Потрібно переписати позитивні елементи масиву Х поспіль в масив Y, а негативні - підряд в масив Z.
SHAPE \ * MERGEFORMAT
Задача 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
Program kino5;
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
Таблиця 2
Кодування матеріалу:
Таблиця 3
Текст програми пошуку в базі даних у середовищі 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.
Висновок
У роботі виконано блок-схеми завдань, наведені листинги розрахункових додатку. Наведено виготовлення реляційної бази даних, а також лістинг програми пошуку в цій базі даних в середовищі Borland Delphi 7.0 Enterprise.
Бібліографічний список
1. Обробка металів різанням. Під ред. А.А Панова. М.: Машинобудування, 1988.
2. Галісеев Г. В. Програмування в середовищі Delphi 7. Самовчитель.
М.: Видавничий дім «Вільямс», 2004.
Федеральне агентство з освіти
Південно-Уральський державний університет
Кафедра «Технологія машинобудування»
Створення розрахункових додатків і програми пошуку в базі даних у середовищі Delphi 7.0
Пояснювальна записка до курсової роботи
з інформатики
Виконав: П.І.Б.
група МТ-ххх
Перевірив: Вибойщік А.В.
Челябінськ
2006
Анотація
Прізвище І.О. (Студента)
Створення розрахункових додатків і програми пошуку в базі даних у середовищі Delphi 7.0:
Пояснювальна записка до курсової роботи з інформатики
-Челябінськ: ЮУрГУ,
2005. - 21 с.
У роботі виконано: 1. Блок-схеми
2. Тексти програм в Delphi і Паскаль
3. Виконання розбиття таблиці
4. Текст програми пошуку в базі даних
в середовищі Delphi 7.0
Зміст
Введення
Умови і блок-схеми завдань
Текст програм в Delphi
Текст програм в Паскаль
Таблиці
Текст програми пошуку в базі даних
Висновок
Бібліографічний довідник
Введення
У роботі необхідно створити розрахункові програми завдань і програму пошуку в базі даних в середовищі Borland Delphi 7.0 Enterprise
Завдання № 1. Лінійні алгоритми
10.9. Задані висота конуса Н і радіус кола, що лежить в основі R. Знайти площу поверхні конуса S
Кінець |
р, H, R |
S = РR (R + |
S |
Початок |
№ 2. Розгалужені алгоритми
20.13. Визнач канонічне рівняння поверхні 2 порядку
Визначити, чи є ця поверхня однополостной гіперболоїдом.
Якщо умова виконується, вивести N = 1, у противному разі вивести N = 0.
Початок |
n, a, b, c |
SHAPE \ * MERGEFORMAT
M = 1 |
M = 0 |
M |
Так |
Ні |
Кінець |
Завдання № 3.
Алексєєв В.Є. № 1.49 в) Задано масив (Х1, Х2, ... .., х50). Потрібно переписати позитивні елементи масиву Х поспіль в масив Y, а негативні - підряд в масив Z.
B (k); C (p) |
|
|
|
Початок |
А (50) |
k = 0 |
p = 0 |
i = 1, 50 |
a i> 0 |
Кінець |
|
Задача 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
Program kino5;
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 | - | - | |
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.
Висновок
У роботі виконано блок-схеми завдань, наведені листинги розрахункових додатку. Наведено виготовлення реляційної бази даних, а також лістинг програми пошуку в цій базі даних в середовищі Borland Delphi 7.0 Enterprise.
Бібліографічний список
1. Обробка металів різанням. Під ред. А.А Панова. М.: Машинобудування, 1988.
2. Галісеев Г. В. Програмування в середовищі Delphi 7. Самовчитель.
М.: Видавничий дім «Вільямс», 2004.