Фании Информатика

Асосҳои програмасозии DELPHI7

Элементҳои забон

a) Алфавити забон

Ба алфавити забони Delphi инҳо дохил мешаванд:

  • ҳарфҳо;
  • рақамҳо;
  • символҳои махсус;
  • пробелҳо ва калимаҳои эҳтиётӣ.

Хар яки инро дар алохидаги дида мебароем:

  • Харфхо – Ин харфхои алфавити лотини аз a то z ва аз A то Z мебошад, Инчунин нишонаи зерхат «_» хам дохил мешавад. Дар забон фаркияти байни харфхои калон ва хурд нест, агар факат онхо дар ифодахои символи ва сатри дохил набошанд.
  • Ракамхо – ракамхои арабии аз 0 то 9 мебошанд.
  • Символхои махсус дар Delphi инхо мебошанд.

+ — * / = , ‘ . : ; < > ҳ} ҳ] ^ @ $ #

Дар символхои махсус инчунин чуфтхои символхои зерин хам таълук доранд. <> <= >= := (* *) (. .) //

Дар барнома ин чуфт символхоро бо пробел чудо кардан мумкин нест, агар онхо хамчун нишонаи таносуби амалиёт ва эзох махдудкунанда истифода бурда шаванд. Символхои (. .) мо метавонем ба чои ҳ ] истифода барем.

  • Пробелҳо ва калимаҳои эҳтиётӣ – Чои мухимро дар алфавити забон пробелхо ишғол мекунанд, ки ба онхо тамоми символхои дар диапазони кодии аз 0 то 32 таълук дорад.

Дар Delphi калимахои эхтиётии зерин мавчуд аст:

and, array,as,asm,begin,case,class,const,constructor, destrctor, dispinterface, div, do, downto, else, end, except,exports, file, finalization, finally, for, goto, if, implementation, in, inherited, inintialization, inline, interface, is, ladel, lidrary, mod, nil, not, object, of, or, out, packed, procedure, program, property, raise, r ecord, repeat, resourcestring, set, shl, shr, string, rhen, threadvar, to, try, type, unit, until, uses, var, while, with, xor.

Калимаҳои эхтиётиоро ба сифати идентификаторҳо истифода бурдан мумкин нест.

ӣ) Идентификаторҳо

Идентификаторҳо дар забони DELPHI – Ин номи доимиҳо, таuирёбандаҳо, меткаҳо, типҳо, объектҳо, классҳо, свойстваҳо, процедураҳо, функцияҳо, модулҳо, барнома, ва майдону навиштачотҳо мебошанд. Идентификаторҳо метавонанд дарозии дилхоҳ дошта бошанд.

Идентификатор ҳамавақт бо ҳарфҳо сар мешавад ва баъд аз ҳарфҳо метавонад рақамҳоям ояд. Хотирасон менамоем, ки символи «_» -ро ба сифати ҳарф қабул кардан мумкин аст. Бинобар ҳамин идентификатор метавонад ба символи «_» сар шавад ё ин ки фақат иборат аз як ё якчанд символи «_» бошад. Пробелҳо ва символҳои махсуси алфавит наметавонанд ба идентификатор дохил шаванд.

c) Доимиҳо

Ба сифати доимиҳо дар забони Delphi ададҳои бутун (дар фосилаи

-263 то 263-1 қимат кабул мекунад), хақиқӣ , доимиҳои мантиқӣ (ин ё калимаи True ё False), символӣ ва uайраҳо истифода бурда мешаванд.

Дар забони Delphi ду намуди доими мавчудаст:

1.одди;

2.номдор.

Хар яки инро дар алохидаги дида мебароем:

Ба доимии одди адади бутун ё касри, сатри рамзхо ё ин ки рамзи алохида, ифодаи мантики дохил мешаванд.

Доимихои адади

Дар матни программахо доимихои адади ба намуди одди навишта мешаванд, ё ин ки хамчу адад, мисол, барои хали масъалахои математики. Дар навишти адади касри барои чудо кардани кисми бутун ва каср аломати «нукта» истифодабурда мешавад. Агар доими манфи бошад, онгох бевосита пеш аз адад ё ин ки раками аввала аломати «минус» гузошта мешавад.

Дар поён мисолхо оиди доимихои адади оварда шудааст:

123 0.0

-524.03 0

Доимихои сатри ва рамзи

Доимихои сатри ва рамзи дар нохунак гирифта мешаванд. Дар поен мисол оиди доимии сатри оварда шудааст:

‘Гурухи Б – и Информатикаи амли’

‘2.4 (дубутуну аз дах чор)’

‘Тохир’

Домихои мантики

Ифодаи мантики метавонад «дуруст — true» ё ин ки «нодуруст — false» шавад.

Доимии номдор

Доимии номдор – ин идентификаторе ё ин ки номе мебошад, ки дар программа ба чои худи доими истифода бурда мешавад. Доимии номдор ба монанди тағирёбанда бояд дар программа эълон карда шавад.

Да намуди умуми эълони доимихои номдор дар программа чунинанд:

доими = кимат;

Дар ин чо:

доими — номи доими;

кимат — кимати доимихо.

Доимихои номдор дар программа дар бахши эълони доимихо, ки бо калимаи const сар мешавад эълон карда мешаванд. Дар поён мисоли эълони доимихои номдор оварда шудааст.

const

Price = 10;

Title = ‘Имя’;

pi = 3.1415926;

Чи хеле, ки дар боло кайд намудем баъди эълони доимихои номдор дар программа дар чои худи доими номи онро истифода бурдан мумкин аст.

Доимихои номдор аз тағирёбанда дар вакти эълон кардан аз он фарк дорад, ки барои доимихои номдор тип ошкоро нишон дода намешавад.

Типии доимихо аз намуди онхо муайян карда мешавад:

1981 — доимиии типи бутун ;

0.0 — доимиии типи хакики;

‘ аспирант ‘ — доимии сатри;

‘ \’ — доимии рамзи.

d) Ифода

Бо доимиҳо, таuирёбандаҳо, функсияҳо , ки элементҳои асоси ба шумор мераванд, қисми иxрошавии программаҳоро ташкил кардан мумкин аст.

ҳар як аз ин элементҳо қиматҳои муайян ва типҳои ба худ хосро доранд. Бо ёрии нишонаҳои амалиёт ва қавсҳо, доимиҳо, таuирёбандаҳо, функсияхоро истифода бурда ифода тартиб додан мумкин аст, ки он ҳақиқатан ба худ қимати навро қабул мекунад.

Ифода иборат аз операнд ва оператор аст. Операторхо дар байни операндхо чойғиранд, ки операндхо ягон амалро нишон медиханд. Ба сифати операндхо ифода тағирёбанда, доими, функция ё ин ки дигар фодахоро истифода бурдан мумкин аст. Операторхои асосии алгебрави дар чад. 3 оварда шудааст.

Чадвали 3. Операторхои алгебрави

ОператорАмал
+Чамъ
Тарх
*Зарб
/Таксим
DIVХисоб кардани натичаи адади бутун аз таксим
MODХисоб кардани бакия аз таксим

Хангоми навишти ифода байни опрерандхо ва операторхо ғайр аз операторхои DIV ва MOD, пробел мондан мумкин нест.

e) Амалиётҳо

Дар Delphi амалиётҳои зерин мавчуданд.

  • унари — not,@;
  • мултипликативӣ — *,/,div,mod,and,sh1,shr;
  • адитивӣ — +,-,or,xor;
  • муқоиса — =,<>,<,>,<=,>=,in.

Ин амалиётхоро бо мисолхо дида мебароем.

Тағирёбанда

Тағирёбанда – ин сохаи хотирае, ки дар он маълумотхо чойгир буда, программа ба он такя намудааст. Дар он сурате программа ба тағирёбанда мурочиат карда метавонад, ки агар тағирёбанда ном дошта бошад. Номи тағирёбандаро программист (барномасоз) номгузори мекунад. Ба сифати номи программа аз пайдарпаии харфхои лотини, ракам ва якчанд рамзхои махсус истифода бурдан мумкин аст. Аввали рамзи номи тағирёбанда бояд харф бошад. Пробелро (фосила холиги) дар номи тағирёбанда истифода бурдан мумкин нест. Як чизро бояд диккат дод, ки компилятори забони Delphi харфхои калон ва майдаро дар номи тағирёбанда аз якдигар фарк намекунад. Барномасоз номи тағирёбандаро дар ин ё он забони барномасози бояд тавре гузорад, ки бо номи тағирёбандахои масъала ё мисоли додашуда мантикан алокаманд бошанд.

Мисол: Намуди умумии муодилаи квадрати ах2 + bх + с = 0 дода шудааст.

Дар ин чо ба сифати номи тағирёбандахо номгузории а, ӣ, с, x1 и х2 мантикан мувофик аст.

Дар забони Delphi хар як тағирёбанда пеш аз истифода бурдан бояд дар программа эълон карда шавад. Бо ёри эълон кардан на танхо мавчудияти тағирёбанда маълум карда мешавад, балки типи он хам дода мешавад.

Дар намуди умуми инструкцияи эълон кардани тағирёбанда чунин аст:

Ном : тип;

Дар ин чо:

ном — номи тағирёбанда;

тип — типии маълумотхо.

Мисол:

а : Real; ӣ : Real; i : Integer;

Дар мисоли овардашуда ду тағирёбандаи типи real як тағирёбандаи типи integer эълон карда шудааст. Агар дар программа якчанд тағирёбандаи дорои як тип бошанд, онгох онхоро дар як сатр навишта аз якдигар бо «вергул» чудо намуда ва дар охирин тағирёбанда «ду нукта» гузошта, типи маълумотро навиштан мумкин аст. Мисол: а,b,с : Real.

Инструксияи бахшиш

Инструксияи бахшиш яке аз инструксияихои асоситарини хисобарори ба шумор меравад. Агар дар программа ичрокунии хисобкуни лозим шавад, онгох зарурати истифодабарии инструксияи бахшиш пайдо мешавад.

Дар натичаи ичроиши инструксияи бахшиш киммати тагирёбанда ба киммати ба у бахшидамешуда иваз мешавад.

Намуди умумии инструксияи бахшиш чунин аст:

Ном : = Ифода;

Дар ин чо:

Ном — тағгирёбандае, ки киммати вай дар натичаи ичроиши инструксияи бахшиш тағир меёбад;

: = — рамзи инструксияи бахшиш.

Ифода — кимматаш ба тағйирёбандае бахшида мешавад, ки номи он аз тарафи чаппи рамзи инструксияи бахшиш чойғир аст.

Мисол:

Price := Сеnа * Kol.

Функсияхои стандартӣ

Дар забони программасозии Delphi функсияхои стандартии зерин мавчуд аст:

  1. Функсияхои математики, ки дар чад.4. оварда шудааст.

Чадвали 4. Функсияхои математики

ФунксияКимат
Аbs (n)Киммати мутлаки n
Sqrt (n)Решаи квадрати аз n
Sqr (n)Квадрати n
Sin (n)Синуси n
Cos (n)Косинуси n
Arctan (n)Арктангенси n
Ехр(n)Экспонентаи n
Ln(n)Логарифми натуралии n
Rardom(n)Ададхои бутуни эхтимоли дар диапазони аз 0 то n- 1

Бузургии кунчии функсияхои тригонометрии бояд бо радиан ифода карда шавад. Барои мубадал сохтани бузургихои кунчи аз градусхо ба радианхо формулаи (а*3.141525б)/180 истифода бурда мешавад, ки дар ин чо : а— бузургии кунчи бо градус; 3.1415926 — адади pi. Дар чои доимии касрии 3.1415926 доимии номдори PI –ро истифода бурдан мумкин аст. Дар ин холат формула намуди зеринро мегирад: a*Pi/180.

Функсияихои мубадалкунонӣ

Функсияхои мубадалкунони дар чад.5 оварда шудааст.

Чад.5. Функсияхои мубадалкунони

ФунксияКимати функсия
Chr(n)

IntToStr (k)

Рамзе, ки коди он баробари n мебошад.

Сатре, ки адади бутуни k-ро инъикос мекунад

FloatToStr (n)Сатре, ки адади хакикии n -ро инъикос мекунад.
FloatToStrF(n, f , k,m)Сатре, ки адади хакикии n –ро бо формати f (тарзи намоишдихи); k— аники (микдори умумии ракамхо); m — микдори ракамхои касри баъди вергул инъикос мекунад.
StrToInt (s)Адади бутуни s -ро ба сатр муббадал мегардонад.
StrToFloat (s)Адади хакикии s -ро ба сатр муббадал мегардонад.
Round (n)Адади бутун n баъди такрибикунони аз руи коидаи муайян.
Trunc (n)Адади бутуне, ки баъди партофтани кисми касрии n ба даст меорем.
Frac(n)Кисми касри адади хакики n.
Int (n)Кисми бутуни адади хакики n.

Одатан функсия ба сифати опреранди ифода баромад мекунад. Параметри функсия метавонад доими,тагирёбанда ё ин ки ифодаи ба типи функсия мувофикатмекардаги бошад. Мисоли зерин оид ба истифодабарии функсияи стандарти ва функсияи мубадалкунони оварда шудааст.

var

a,b,c:real;

begin

a:=strtofloat(edit1.Text);

b:=strtofloat(edit2.Text);

c:= int(a/b);

edit3.Text:= floattostr(c);

end;

Дохилкунӣ ва хориҷкунии маълумот

Бисёртар программа барои ба даст овардани маълумоти ибтидоиро аз окнои дохилкуни истифода мебарад. (яъне аз компоненти Edit).

Дохилнамои аз окнои дохилкуни

Окнои дохилкуни — ин окнои стандартии диалогие мебошад, ки он дар экран дар натичаи чеғ задании функсияи inputbox пайдо мешавад.

Дар намуди умуми ин функсия чуни наст:

Тағирёбанда := Inputbox(Сарлавха, Фахмондадихи, Кимат);

Дар ин чо:

Тағирёбанда — тагирёбандаи типии сатрие, ки киммати вай бояд аз тарафи истифодабаранда ба даст оварда шавад;

Сарлавха — матни сарлавхаи окнои дохилкуни;

Фахмондадихи — матне, ки бояд чи амалро кард мефахмонад;

Киммат — матн ё ададе, ки он дар майдони дохилкуни чойгир аст.

Мисол,

procedure TForm1.button2Click(Sender: TObject);

var

s:string;

begin

s:=InputӢox(‘Вазн’, ‘Дохилнамоии вазн бо кг’,’0′);

end;

矶⟇矶

Бояд як чизро диккат дод, ки киммати функсияи inputbox типии сатри (string) мебошад. Барои хамин агар ба воситаи ин функсия адад дохил кардани бошем аз функсияи мубадалнамои истьифода бурдан мукин аст.Мисол,

s:=Inputbox(‘Вазн’, ‘Дохилнамоии вазн бо кг’,’0′); funt := StrToFloat(s);

Истифодаи компаненти Edit

Дохил намудани маълумот аз майдони тахриркуни (дар ин чо компаненти Edit – ро дар назар дорем, агар он дар форма чойгир карда шуда бошад) ба воситаи хусусияташ (свойства) яъне Text амали гардонида мешавад.

Рас. 2. Компоненти Edit1.

Дар рас 2 компоненти Editl, ки барои дохил намудани маълумоти аввала истифода бурда мешавад, оварда шудааст.

Хоричкунии натичахо

Бисёртар программа барои баровардани натичаи кори худ дар намуди майдони хоричкуни аз компоненти Laӣel истифода мебарад.

Истифодаи окнои хабардиҳӣ

Окнои хабардихи барои чалб намудани диккати истифодабаранда истифода бурда мешавад. Бо ёрии окнои хабардихи программа метавонад ба истифодабаранда хангоми нодуруст кор кардан дар программа маълумот дихад.

Окнохои хабардихи ин проседураи ShowMessage ё ин ки функцияи MessageDlg мебошанд.

Проседураи ShowMessage дар экран окно бо матни аз тарафи программист навишташуда ва кнопкаи фармонии ОК –ро мебарорад.

Дар намуди умуми ин проседура чунин аст:

ShowMessage(Хабардихи).

Дар ин чо;

Хабардихи — матне, ки дар окно бароварда мешавад.

Дар рас 3 . ичроиши ин проседура оварда шудааст:

ShowMessage(‘Информатикаи амали’);

расми 3 . Ичроиши проседураи ShowMessage

Функцияи MessageDig нисбат ба ShowMessage бисёртар универсали мебошад. Ин функсия имконият медихад, ки дар окно хабардихиро бо яке аз нишонахои стандарти ба монанди «диккат» ва микдору типи кнопкахои фармониро чойгир намояд.

Мисол,

r:=MessageDlg(‘Файл ‘+ FName + ‘ Тоза карда мешавад.’, mtWarning, [mbOk,mbCancel] , 0) ;

Рис. *. Пример окна сообщения

Намуди умумии ин функсия чунин аст:

Интихоб: = MessageDlg( Хабардихи, Тип, Кнопкхо, КонтекстМаълумотномахо).

Дар ин чо:

Хабардихи — матни хабардихи;

Тип — типи хабардихи. Хабардихи метавонад информатсиони, огохикунони ё ин ки хабардихи оид ба хатоги. Хар як типии хабардихи бо нишонахои мувофик муайян карда мешаванд. Типии хабардихи бо доимихои зерин дода мешавад.(табл. 1);

Таблица 1. КДоимихои функсияи MessageDlg.

ДоимиТипи хабардихиНишона
mtWarningДиккат
mtErrorХатоги
mt InformationИнформация
mtConfirmationТасдиккуни (Подтверждение)
mtCustomОддиБе нишона

Кнопкахо — руйхати кнопокахое, ки дар окнои хабардихи инъикос меёбад. Руйхат метавонад аз якчанд доимихо тартиб ёбад, ки онхо бо вергул чудо карда мешаванд. (табл. 2). Тамоми руйхат дар кавси квадрати гирифта мешаванд.

Таблица 2. Доимихои функцияи MessageDlg

Доими КнопкаДоимиКнопка
mbYesYesmb AbortAbort
mbNoNombRetryRetry
mbOKOKmblgnoreIgnore
mbCancelCancelmbAllAll
mbHelpHelp

Мисол, барои он ки дар окнои хабардихи кнопкахои ОК ва Cancel барояд, руйхати ин кнопкахо бояд намуди зеринро гиранд:

[mbOK,mbCancel]

Ғайр аз ин доимихо метавонем дигар доимихоро истифода барем ба монанди: mbokcancel, mbYesNoCancel и mbAbortRetryIgnore.

КонтекстМаълумотномахо — параметре, ки кисми системахои маълумотиро да экран муайян мекунад, агар истифодабаранда клавиши <F1> -ро пахш кунад. Агар барориши маълумот зарур набошад, онгох киммати параметри КонтекстМаълумотномахо бояд ба нол баробар шавад.

Киммати баргардонии функцияи MessageDig (табл.3), имконияти муайян кардани кадом аз ин кнопкахои фармониро истифодабарнда пахш кардааст медихад.

Таблица 3. Значения функции MessageDlg

Киммати функцияи MessageDigДиалог хангоми пахши кнопка махкам карда мешавад.
mrAbortAbort
mrYesYes
mrOkOk
mrRetryRetry
mrNoNo
mrCancelCancel
mrIgnoreIgnore
mrAllAll

1. Алгоритми суммаи ададхои ток аз пайдарпаии 1,2,3,…,n тартиб дода шавад.

  1. Дохилкунии n
  2. S=1:i=2
  3. Агар i MOD 2 <>0 онгох гузар ба кадами 4 дар акси холл гузар ба кадами 6
  4. S=S+i
  5. Агар i>=n онгох гузар ба кадами 7 дар акси хол гузар ба кадами6
  6. i=i+1 гузар ба кадами 3
  7. Хоричкунии S
  8. Хотима

2. Алгоритми суммаи ададхои чуфт аз пайдарпаии 1,2,3,…,n тартиб дода шавад.

  1. Дохилкунии n
  2. S=1:i=2
  3. Агар i MOD 2 <>0 онгох гузар ба кадами 6 дар акси холл гузар ба кадами 4
  4. S=S+i
  5. Агар i>=n онгох гузар ба кадами 7 дар акси хол гузар ба кадами6
  6. i=i+1 гузар ба кадами 3
  7. Хоричкунии S
  8. Хотима

3. Алгоритми суммаи ададхои содда аз пайдарпаии 1,2,3,…,n тартиб дода шавад.

1. Дохилкунии n

2. s=0

3. i=2

4. j=1

5.k=0

6. Агар i MOD j =0 онгох гузар ба кадами 7 дар акси холл гузар ба кадами 8

7. k=k+1

8. Агар j>=n онгох гузар ба кадами 11 дар акси хол гузар ба кадами 9

9. j=j+1

10. Гузар ба кадами 6

11. Агар k=2 онгох гузар ба к.12 дар акси холл гузар ба к.13

12. s=s+i

13. Агар i>=n онгох гузар ба к.16 дар акси хол гузар ба к.14

14. i=i+1

15. Гузар ба к.4

16. Хоричкунии s

17. Хотима.

Программа дар Delphi 7

procedure TForm1.button3Click(Sender: TObject);

var

f,s,k,i,j:integer;

begin

s:=0;

f:=strtoint(edit1.Text);

for i:= 1 to f do

begin

k:=0;

for j := 1 to f do

if i mod j = 0 then

begin

k:=k+1;

end;

if k =2 then

begin

s:=s+i;

edit2.Text:=inttostr(s);

end;

end;

end;

Хулоса ва мустаҳкамкунии дарс

Дар матни программахо доимихои адади ба намуди одди навишта мешаванд, ё ин ки хамчу адад, мисол, барои хали масъалахои математики. Дар навишти адади касри барои чудо кардани кисми бутун ва каср аломати «нукта» истифодабурда мешавад. Агар доими манфи бошад, онгох бевосита пеш аз адад ё ин ки раками аввала аломати «минус» гузошта мешавад. Бо доимиҳо, таuирёбандаҳо, функсияҳо , ки элементҳои асоси ба шумор мераванд, қисми иxрошавии программаҳоро ташкил кардан мумкин аст.

Ҳар як аз ин элементҳо қиматҳои муайян ва типҳои ба худ хосро доранд. Бо ёрии нишонаҳои амалиёт ва қавсҳо, доимиҳо, таuирёбандаҳо, функсияхоро истифода бурда ифода тартиб додан мумкин аст, ки он ҳақиқатан ба худ қимати навро қабул мекунад.

Ифода иборат аз операнд ва оператор аст. Операторхо дар байни операндхо чойгиранд, ки операндхо ягон амалро нишон медиханд. Ба сифати операндхо ифода тағирёбанда, доими, функция ё ин ки дигар фодахоро истифода бурдан мумкин аст. Тағирёбанда – ин сохаи хотирае, ки дар он маълумотхо чойгир буда, программа ба он такя намудааст. Дар он сурате программа ба тағирёбанда мурочиат карда метавонад, ки агар тағирёбанда ном дошта бошад.

Main Aditor

Здравствуйте! Если у Вас возникнут вопросы, напишите нам на почту help@allinweb.info

Саҳифаҳои монанд

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *