|
Создание расчетных приложений и программы поиска в базе данных в среде Delphi 7.0
Создание расчетных приложений и программы поиска в базе данных в среде Delphi 7.0
Министерство Образования Российской Федерации Федеральное агентство по образованию Южно-Уральский Государственный Университет Кафедра «Технология машиностроения» Создание расчетных приложений и программы поиска в базе данных в среде 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 №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 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 | - | - | | |
Таблица 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. Заключение В работе выполнены блок-схемы задач, приведены листинги расчетных приложении. Приведено изготовление реляционной базы данных, а также листинг программы поиска в этой базе данных в среде Borland Delphi 7.0 Enterprise. Библиографический список 1. Обработка металлов резанием. Под ред. А.А Панова. М.: Машиностроение, 1988. 2. Галисеев Г. В. Программирование в среде Delphi 7. Самоучитель. М.: Издательский дом «Вильямс», 2004.
|
|