var
a, b, c, d, y, z: real; function f(x: real): real; begin
f := exp(2 * x) + sin(6 * x)
end;
function g(x: real): real;
begin
g := sqr(x) – 3 * x * sqr(x) * cos(x)
end;
procedure integ(A, B: real; function F(x: real): real; var R: real);
const n = 20;
var
x, h: real; k: integer; begin
h := (B - A) / n;
R := (f(A) + f(B)) / 2;
for k := 1 to n-1 do R := R + f(a + k * h); R := R * h;
end;
{asosiy programmaning operatorlar bo`limi}
begin
{1 - integral chegaralarini kiritish} a := StrToFloat(Edit1.Text);
b := StrToFloat(Edit2.Text); integ(a, b, f, y);
ShowMessage(‘y= ’ + FloatToStr(y));
{2-integral chegaralarini kiriting} c := StrToFloat(Edit1.Text);
d := StrToFloat(Edit2.Text); integ( c, d, g, z);
ShowMessage(‘z= ’ + FloatToStr(z));
end;
Modullar.
Shaxsiy kompyuterlarning eng katta kamchiligi ularda amaliy dasturlar kutubxonasining to`liq emasligidir. Katta EHMlarda dasturchilar uchun juda katta dasturlar kutubxonasi xizmaat qilar va ulardan foydalanib tuzilgan dasturlar o`zlarining ishonchlilik darajasi bilan yuqori turar edi. Shaxsiy kompyuterlarning bu kamchiligini yo`qotish uchun Delphida modullar tushunchasi kiritilgan. Umuman olganda har bir malakali dasturchi o`z dasturini prosedura va funksiyalardan foydalanib tuzadi. Lekin, bu prosedura va funksiyalardan boshqa programmalarda foydalanish uchun ularning matinlarini qayta ko`chirib yozish lozim bo`ladi.
Delphida bu masalani echish uchun modullar yaratilib, ularni kompilyasiya qilinadi va bu moduldan boshqa dasturlarda bemalol foydalansa bo`ladi.
Modul – bu aloxida fayl ko`rinishdagi, vazifalari bo`yicha tartiblangan prosedura va funksiyalarning kutubxonasidir. Delphida modul faylining kengaytmasi
*.DCU.
Har bir modul o`zining vazifasi bo`yicha alohida bo`lingan bo`lib, undan foydalanish uchun uses buyrug`idan foydalaniladi. Oddiy dasturlarni tuzish jarayonida Delphi dasturchi yozgan kodga qarab modullarni e`lon qilish bo`limi(uses)ga avtomatik tarzda kerakli modulni qo`shib qo`yadi. Lekin, shuni ta`kidlab o`tish lozimki Delphining standart modullaridan tashqari modullarni ishlatish uchun ko`pchilik hollarda dasturchining o`zi modul nomini kiritishi zarur bo`ladi.
Oddiy dastur tuzish jarayonida Delphining kodlar oynasida quyidagi modul nomlarini ko`rishimiz mumkin:
unit Unit1;
interface uses
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs;
type
TForm1 = class(TForm)
. . . . . . . .
Deyarli barcha dasturlarni tuzish jarayonida yuqoridagi modullardan foydalaniladi. Shuning uchun bu modullarga ta`rif berib o`tamiz:
Windows – Windows operatsion sistemasi bilan ishlashni tashkil qiluvchi funksiya va proseduralardan tashkil topgan. Undan tashqari oyna, klaviatura, tovushli dinamika bilan ishlashni funksiya va proseduralarini ham o`z ichga oladi;
Message – habarlarning tip va constantalarini o`zida saqlaydi;
SysUtils - qo`shimcha utilitlar paketi bilan ishlash funksiya va proseduralarini o`zida saqlaydi;
Classes – Delphining barcha asosiy (bazaviy) sinflarini o`z ichiga olgan;
Controls – Qurilmalarni boshqarish funksiya va proseduralarini o`zida saqlaydi;
Graphics – tasvirlarni hosil qilish funksiya va proseduralarini o`zida saqlaydi;
Forms – formalarni tashkil qilish va boshqarish funksiya, proseduralarini o`zida saqlaydi;
Dialogs – xabar oynalarining ko`rinish uslublarini o`zida saqlaydi.
Misol sifatida Dialogs modulidan foydalanib xabar beruvchi dastur tuzamiz Dastlab buyruqlar menyusidan Project\View Source tanlanadi. So`ngra oynadagi dastur butunlay o`chirib, o`rniga quyidagi dastur kiritiladi:
program Project1;
uses Dialogs;
var
s: String; begin
s := InputBox('Kiritish oynasi', 'Buyruqlardan birini kiriting',''); ShowMessage('Siz ' + s + ' buyrugini kiritdingiz.');
end.
Do'stlaringiz bilan baham: |