45
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, Buttons;
type
TForm1 = class(TForm)
Edit1: TEdit;
Edit2: TEdit;
Edit3: TEdit;
Label1: TLabel;
Label2: TLabel;
Label3: TLabel;
Label4: TLabel;
BitBtn2: TBitBtn;
BitBtn1: TBitBtn;
Label5: TLabel;
procedure Edit1KeyPress(Sender: TObject; var Key: Char);
procedure Edit3KeyPress(Sender: TObject; var Key: Char);
procedure Edit2KeyPress(Sender: TObject; var Key: Char);
procedure BitBtn1Click(Sender: TObject);
procedure BitBtn2Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form1: TForm1;
implementation
{$R *.dfm}
procedure TForm1.Edit1KeyPress(Sender: TObject; var Key: Char);
begin
case key of
'0'..'9':;
#8:;
#13:form1.Edit2.SetFocus
else key:=chr(0);
end;
end;
procedure TForm1.Edit3KeyPress(Sender: TObject; var Key: Char);
begin
case key of
'0'..'9':;
#8:;
#13:form1.BitBtn1.Click
else key:=chr(0);
end;
end;
procedure TForm1.Edit2KeyPress(Sender: TObject; var Key: Char);
begin
case key of
'0'..'9':;
46
#8:;
#13:form1.Edit3.SetFocus
else key:=chr(0);
end;
end;
procedure TForm1.BitBtn1Click(Sender: TObject);
var d,d1,d2,a,b,c:real;
begin
a:=strtofloat(form1.Edit1.Text);
b:=strtofloat(form1.Edit2.Text);
c:=strtofloat(form1.Edit3.Text);
d:=(a*b)/100; //ïðîöåíò ãîäîâûõ;
d1:=d/365; //ïðîöåíò îäíîãî äíÿ;
d2:=d1*c; //êîíå÷íûé ïðîöåíò;
form1.Label5.Caption:='Âàø äîõîä ñîòàâëÿåò -> '+ floattostrf(d2,fffixed,8,0);
end;
procedure TForm1.BitBtn2Click(Sender: TObject);
begin
form1.Close;
end;
Есептеу нәтижелері шығарылған жоба формасы
end
.
Консольдық қосымша құру
Консольдық қосымша
келсі жолме құрылады. Delphi-ді іске қосқаннан кейін немесе
File
менюінен команды New Application таңдағаннан кейін керек емес терезелердің бәрін
жабу керек: алғашқы форма терезесін (Forml) және қосымш модулінің терезесін
(Unitl.pas).
Қосымша модулінің терезесін жапқаннан кейін Delphi келесідей сұрақ
шығарады: Save changes to Unitl.pas?
(Unitl.pas-
тағы өзгерістерді саұқтау керек пе?),
ол
сұраққа "жоқ" - деп жауап беру керек (No батырмасын басу керек). Нәтижесінде экранда
тек Delphi-дің бас терезесі мен жауып тастауға болатын Object Inspector терезесі қалады.
Одан кейін Project менюінен View Source командасын таңдау керек. Нәтижесінде
Delphi мен құрылған қосымшаның бас процедурасының шаблоны орналасқан
Projectl.dpr
терезесі ашылады.
<
Консольдық режимді> орнату үшін:
менюден: file ► new application-ді таңдау керек.
Forml, Unitl.pas, Object Inspector -
терезелерін жабу керек.
на запрос: (Unitl.pas-тағы өзгерістерді саұқтау керек пе?), - деген сұраққа, No - деп жауап
беру керек.
Одан кейін <Консольдық терезені> ашу үшін:
менюден: Project ► View Source таңдау керек.
бас процедурасының шаблоны орналасқан Projectl.dpr терезесі ашылады.
47
Керек емес қатарларды алып тастап, мысал түрінде берілген программаның мәтінін теру
керек.
Қосымшаның бас процедурасының терезесінде (1 сурет) программаның нұсқауын ере
беруе болады.
Консольдық қосымшада хабарлама орыс тілінде шығу проблемасын ANSI қатарын
ASCII қатарына қайта кодтау функциясын құрастыру арқылы шешуге болады. Егер бұл
функцияны Rus, деп атаса, онда хабарламаны орыс тілінде шығару нұсқауы, мысалы,
мына түрде болуы мүмкін: write line (Rus ('У лукоморья дуб зеленый')).
Листинг 1-де пайдаланушыдан салмақтың фунт түрінде берілген шамасын сұрап, оны
килограммға ауыстырып қайта есептеп, нәтижені экран бетіне шығаратын программаның
листингісі берілген. Хабарламаны өңдеп шығару үшін Rus функциясы пайдаланылады.
Листинг 1. Салмақты футтан килограммға қайта есептеп, ауыстыру (консольдық
қосымша)
Program funt2kg;
{$APPTYPE CONSOLE}
// Rus функциясы ANSI-қатарды ASCII-қатарға қайта өңдейді
function Rus(mes: string):string;
// ANSI
де орыс әріптері 192 ден 255-ге дейінгі сандамен кодталады,
//
в ASCII - от 128 до 175 (А..Яа..п) и от 224 239 (р..я).
var
i: integer; //
өңделетін символдың нөмірі
begin
for i:=l to length(mes) do
case mes[i] of
'A'..'n' : mes[i] := Chr(Ord(mes[i]) - 64);
'
р'..'я' : mes[i] := Chr(Ord(mes[i]) - 16);
end;
rus := mes;
1
сурет.
қосымшаның бас процедурасының терезесі
Достарыңызбен бөлісу: |