389
Prosedurlar və
funksiyalar
Təyinatı
MkDir(S:String)
Prosedur cari kataloqda S altkataloqu yaradır.
Rename(
var F,s
)
Prosedur F faylının ünvanınıdəyişdirir. Yeni ünvan s
sətrində verilir.
RmDir(
S: String)
Prosedur boş S altkataloqunu ləğv edir.
FileSize(var F):
LongInt
Funksiya tipli və tipsiz faylların ölçüsünü təyin edir.
Digər prosedurlar
Prosedurlar
Yerinə yetirdiyi əməliyyat
Exclude (var S:
set of Т; I: T)
I elementini S çoxluğundan ləğv edir.
Include (var S:
set of Т; I: T)
I elementini S çoxluğuna əlavə edir.
Randomize
Cari sistem vaxtına uyğun təsadüfü ədədlər generatorunu
aktiv edir.
Digər funksiyalar
Funksiyanın adı
Yerinə yetirdiyi əməliyyat
Hi(X; Word):
Byte
X arqumentinin böyük baytını müəyyən edir.
High(X)
X arqumentinin maksimal qiymətini müəyyən edir.
Lo(X: Word):
Byte
X arqumentinin kiçik baytını müəyyən edir.
Low(X)
X arqumentinin maksimal qiymətini müəyyən edir.
Random (Range)
Təsadüfi ədədi müəyyən edir. Range parametri verilmədikdə
[0;1] intervalında yerləşən, parametr verildikdə isə [0;Range-1]
intervalında yerləşən təsadüfü ədədləri müəyyən edir
.
SizeOf(X):
x arqumentinin baytını müəyyən edir.
Dinamik paylanma prosedur və funksiyaları dərsliyin Gostəricilər
paraqrafında verilmişdir.
2.20. Turbo Pascal dilinin qrafiki imkanları
Turbo Pascal dilinin qrafiki imkanları GRAPH modulunun standart
prosedurları vasitəsilə müvafiq qrafiki drayver yükəndikdə yerinə yetirilir. Qrafiki
drayver video adapter qurğusunun qrafiki rejimlərini idarə edir. Qrafiki rejimlər ilk
rənglərin sayı və piksellərin
1
sayı ilə fərqlənir.
Qrafiki iş rejimini müəyyən etmək üçün uses işçi sözü vasitəsilə GRAPH
modulunu qoşmaq, sonra isə InitGraph(var Driver, Mode: Integer; Path: String)
1
Piksel kompyuter qrafikasında ölçü vahididir.
390
prosedurunu yerinə yetirmək lazımdır. Qeyd edək ki, prosedur Path ünvanında
yerləşən və Driver parametrilə təyin olunan drayveri operativ yaddaşa yükləyərək
video adapteri Mode parametrilə təyin olunan iş rejiminə keçirir. Əgər proqram
ixtiyari video adapter üçün nəzərdə tutulubsa, onda qrafiki iş rejimini aşağıdakı
formada müəyyən etmək olar.
var DriverVar, ModeVar: integer;
begin
DriverVar:=Detect;
InitGraph(DriverVar, ModeVar,’\TP\GRAPH’);
Qrafiki rejim müəyyən olunduqdan sonra Graph modulunun aşağıdakı prosedur
və funksiyaları vasitəsilə qrafiki obyektlər təmin olunur.
Prosedurlar
Prosedurlar
Təyinatı
SetColor(a: word);
Rəsmin rəngini müəyyən edir.
SetBkColor(a: word);
Fonun rəngini müəyyən edir.
SetFillStyle(b, a:
word);
Qapalı oblast üçün rənglənmənin stilini və rəngini
müəyyən edir, b-arqumenti stilin, a arqumenti rəngi
təyin edir.
SetLineStyle(a, b, c:
word);
Xəttin stilini, rəngini və qalınlığını müəyyən edir.
SetTextStyle(a, b, c:
word);
Mətn üçün şrifti, stili və ölçüsünü müəyyən edir.
ClearDivice;
Monitoru təmizləyir .
SetViewPort(x1, y1, x2,
y2: integer, Clip:
boolean);
Qrafiki düzbucaqlı pəncərə müəyyən edir. x1, y1, x2,
y2 müvafiq olaraq pəncərənin sol yuxarı və sağ aşağı
təpələrinin kordinatlarını təyin edir.
ClearViewPort
Cari pəncərəni təmizləyir.
PutPixel(a, b, c:
integer);
(a,b) kordinatlı c rəngli nöqtəni monitorda əks etdirir.
Line(x1, y1, x2, y2:
integer);
(x1, y1) nöqtəsindən (x2,y2) nöqtəsinə yönəlmiş düz
xətt çəkir.
Rectangle(x1, y1, x2,
y2: integer);
Diaqonalı (x1, y1) nöqtəsindən (x2,y2) nöqtəsinə
yönəlmiş düzbucaqlı çəkir.
Bar(x1, y1, x2, y2:
integer);
Diaqonalı (x1, y1) nöqtəsindən (x2,y2) nöqtəsinə
yönəlmiş müəyyən edilmiş rənglə və stillə rənglənmiş
düzbucaqlı çəkir.
Bar3D(x1, y1, x2, y2, d:
integer; a: boolean);
Paralelepiped çəkir. x1, y1, x2, y2 arqumentləri ön
üzün yuxarı və aşağı təpə nöqtələrini kordinatları, d:
yan tilinin qalınlığını, a: yuxarı tilin əks olunması
391
Prosedurlar
Təyinatı
rejimini müəyyən edir.
Circle(x, y, r: word);
Mərkəzi (x, y) nöqtəsində olan r radiuslu çevrəni
çəkir.
Arc (X,Y:Integer; U1,
U2, R:Word)
Cari rəngli qövs çəkir. X, Y – qövsün mərkəzinin
kordinatları, U1 – qövsün ilk nöqtəsinə qədər bucaq,
U2 – qövsün son nöqtəsinə qədər bucaq R – qövsün
radiusunu müəyyən edir.
Ellipse (X, Y: Integer;
U1, U2, XR, YR: Word)
Ellips tipli qövs çəkir. X, Y – qövsün mərkəzinin
kordinatları, U1 – qövsün ilk nöqtəsinə qədər bucaq,
U2 – qövsün son nöqtəsinə qədər bucaq, XR, XY –
üfüqi və şaquli yarımoxu müəyyn edir.
FillEllipse(x, y, Rx,
Ry: integer);
Rəngli ellips çəkir.
MoveTo(x, y: integer);
Cari kursoru (x, y) nöqtəsinə sürüşdürür.
MoveRel(x, y: integer);
Cari kursoru üfüqi istiqamətdə x qədər, şaquli
istiqamətdə isə y qədər sürüşdürür.
OutText(text: string);
Monitorda sətri əks etdirir.
OutTextxy(x, y: integer;
text: string);
Monitorda (x, y) nöqtəsindən başlayaraq sətir əks
olunur.
Funksiyalar
Funksiyalar Təyinatı
GetBkColor: Word
Fonun rənginin kodunu müəyyən edir.
GetColor: Word
Cari rəngi müəyyən edir.
GetDriverName; String Cari drayverin adını təyin edir.
GetGraphMode: Integer Cari qrafiki rejimi təyin edir.
GetMaxColor; Word
SetColor prosedurunda parametr kimi istifadə edilən
rəng kodunun maksimal qiymətini təyin edir.
GetMaxMode: Integer
Cari drayverin maksimal rejiminin nömrəsini təyin
edir.
GetMaxX: Integer
Qrafiki rejimdə monitorun üfüqi istiqamətdə
maksimal koordinatını təyin edir.
GetMaxY; Integer
Qrafiki rejimdə monitorun şaquli istiqamətdə
maksimal koordinatını təyin edir.
GetModeName(ModeNum:
Word): String
Cari anda aktiv olan qrafiki rejimin adını təyin edir.
GetPaletteSize: Integer Rəng palitrasının ölçüsünü təyin edir.
GetPixel (X, Y;
Integer) : Word
(X,Y) kordinatlı pikselin rəngini təyin edir.
392
Funksiyalar Təyinatı
GetX: Integer
Kursorun absisini müəyyən edir.
GetY; Integer
Kursorun ordinatını müəyyən edir.
TextHeight (TextStr:
String) : Word
Sətrin hündürlüyünü piksellə təyin edir.
TextWidth(TextStr:
String): Word
Sətrin enini piksellə təyin edir.
Turbo Pascal dilində rənglər aşağıdakı rənglər və rənglənmə stilləri nəzərdə
tutulmuşdur.
Rənglər cədvəli
Rəng
Kod
Rəng
Kod
Black (qara)
0
DarkGray (tünd qonur)
8
Blue (göy)
1
LightBlue (mavi)
9
Green (yaşıl)
2
LghtGreen (tünd yaşıl) 10
Gyan (firuzəyi)
3
LightGyan (tünd firuzı) 11
Red (qırmızı)
4
LightRed (tünd qırmızı) 12
Magenta (narıncıı) 5
LightMagenta
(tünd
narıncı)
13
Brown (boz)
6
Yellow (sarı) 14
LightGray (açıq
qonur)
7 White
(ağ) 15
Rəngləmə şablonu
Rəngləmə şablonu Kod
EmptyFill 0
SolidFill 1
LineFill 2
LtSlashFill 3
SlashFill 4
BkSlashFill 5
LtBkSlashFill 6
HatchFill 7
XhatchFill 8
InterleaveFill 9
WideDotFill 10
CloseDotFill 11
UserFill 12
Məsələn,
uses graph; crt:
Const
393
PrD:real=80;
PATH=’’;
Var
W,H,gd,gm,i,N,X,Y.R:integer;
Angle:real;
procedure WH (var W,H:integer);
begin
W:=( GetMaxX+1);
H:=( GetMaxY+1);
end;
Function Xscr (X:integer):integer;
Begin Xscr:=X + W div 2 end;
Function Yscr (Y:integer):integer;
Begin Yscr:=H div 2 – Y end;
BEGIN
repeat
write (‘ Duzgun Coxbucaqlinin tereflerinin sayini
daxil edin);
readln(N);
until N>2;
gd:=DETECT;
initgraph (gd,gm,path);
WH(W,H);
R:=round(PrD*0.01/*H/2);
Angle :=2*pi/N;
MoveTo (Xscr(R), Yscr(0));
SetColor (Yellow);
For i:=1 to N do begin
X:=round (R*cos(Angle*i));
Y:= round (R*sin(Angle*i));
LineTo (Xscr(X), Yscr(Y));
End;
Repeat until keypressed;
CloseGraph;
End.
Proqram çevrənin daxilinə düzgün çoxbucaqlının cəkilməsini təmin edir.
2.21. Göstəricilər
Göstərici dəyişənin operativ yaddaşda mövqeyini bildirən dəyişəndir. Başqa
sözlə göstərici verilənin saxlandığı operativ yaddaş sahəsinin ilk baytının ünvanını
bildirir. Proqramda göstəricidən operativ yaddaşın dinamik paylanması üçün
istifadə olunur. Belə ki, proqram kompilyasiya olduqda hər bir statik verilən üçün
onun tipinə uygun yaddaşda müəyyən yer ayrılır və ayrılmış yaddaşın ümumi
maksimum 64 kbayt ola bilər. Bu səbəbdən böyük həcmli massivlərlə işlədikdə
yaddaş çatışmamazlığı meydana çıxa bilər. Dinamik paylanma zamanı isə verilən
operativ yaddaşın bütün oblastında saxlanıla bilər. Bu zaman dəyişənlər və sabitlər
394
üçün yaddaş kompilyasiya zamanı deyil, proqram yerinə yetirildikdə ayrılır və
sonradan yaddaş azad oluna bilər.
Proqramın yerinə yetirildiyi zaman yaradılan və
ləğv olunan dəyişənlər dinamik dəyişənlər adlanır. Göstəricilərə aşağıdakı
münasibət operatorları “<>” və “=” tətbiq edilə bilər. Iki göstərici eyni bir veriləni
təyin etdikdə bərabər hesab olunur.
Göstərici təyin etdiyi dəyişənə uyğun olaraq tipli və tipsiz ola bilər. Tipli
göstərici konkret tipli dəyişənin saxlandığı yaddaş sahəsinin ünvanını bildirir. Tipli
dəyişəni elan etmək üçün “^” simvolundan istifadə olunur. Məsələn,
Type BytePtr = ^ Byte;
WordPtr = ^ Word;
Var
A: BytePtr;
B: WordPtr;
C: ^ integer;
Göstəricinin təyin etdiyi dəyişən istinad dəyişəni adlanır. Istinad dəyişəninə
qiymət mənimsətmək üçün @ unar operatorundan istifadə olunur. @ operatoru
istinad dəyişənin ünvanını bildirir. Həmçinin istinad dəyişəninin qiymətinə
göstərici vasitəsilə müraciət etmək olar. Bu zaman gostərici dəyişənin
identifikatorundan sonra
^
işarəsi qoyulmalıdır. Məsələn, aşağıda verilən
proqramda k-dəyişəninin qiymətini iki üsulla ekrana vermək olar.
Type
WordPtr =^Word;
Var
p : WordPtr;
k :Word;
i :integer;
begin
k:=3;
For i:=1 to 5 do
k:=k+i;
p:=@k;
write (k,' ', p^)
end.
Proqramın nəticəsi aşağıdakı kimi olacaq.
18 18
Qeyd edək ki, Turbo Pascal-da xüsusi göstərici
Nil
nəzərdə tutulmuşdur.
O, heç bir yaddaş ünvanını bildirmir və ixtiyari tip istinad dəyişənilə birlikdə
istifadə oluna bilər.
Turbo Pascal-da proqramın yerinə yetirilməsi zamanı tipi dəyişilən
dəyişənlərin yaddaşda ünvanını müəyyən etmək üçün tipsiz göstəricidən istifadə
olunur. Tipsiz göstərici
Pointe
r işçi sözü ilə elan olunur. Proqramda qeyri-aşkar
şəkildə tipsiz gostəriciyə tipli göstərici mənimsədilə bilər. Tipli gostəriciyə tipsiz
göstərici isə yalnız aşkar şəkildə mənimsədilə bilər. Məsələn,
Type
preal=^ real;
var
395
p: pointer;
pr: ^integer;
a:preal;
begin
p:=pr;
a:
=preal(p);
pr^:=3.14;
Dinamik yaddaş və göstəricilərlə işləmək üçün aşağıdakı standart
prosedurlar nəzərdə tutulmuşdur:
Prosedur Təyinatı
Dispose(var P:
Pointer)
Dinamik dəyişəni ləğv edir.
FreeMem(var P:
Pointer; Size:
Word)
Dinamik dəyişənin tutduğu yaddaşı təmizləyir
GetMem(var Р:
Pointer; Size:
Word)
Konkret ölçülü dinamik yaddaş yaradır və göstərici
dəyişənin ünvanına daxil edilir.
New(var P;
Pointer)
Yeni dinamik dəyişən yaradır və ona göstərici təyin
edir.
396
Ə D Ə B İ Y Y A T
1.
Информатика и информационные технологии : учеб. пособие для
студентов / Ю.Д.Романова [и др.] ; под ред.Ю.Д.Романовой М. : Эксмо,
2008
2.
С.Д. Шапорев. Информатика. Теоретический курс и практические
занятия : учеб.для студентов вузов / С.Д.Шапорев СПб. : БХВ-
Петербург, 2008
3.
В.А. Острейковский Информатика : учеб.для студентов вузов М. : Высш.
шк., 2007
4.
С.В.Симонович Общая информатика : [универс.курс] СПб. : Питер,
2007
5.
А.Н.Степанов Информатика : Учеб.пособие для студентов вузов / СПб.:
Питер, 2007
6.
С.Е.Столяр,А.А.Владыкин М Информатика : представление данных и
алгоритмы /: БИНОМ. Лаб. знаний
7.
Г. А.Сырецкий Информатика: фундам.курс : учеб.для студентов вузов :
Т.2. Информационные технологии и системы / СПб.: БХВ-Петербург,
2007
8.
М.Сухарев Turbo Pascal 7.0: теория и практика программирования /
СПб. : Наука и техника, 2007
9.
В.В.Фаронов Turbo Pascal : Учеб.пособие для студентов вузов / СПб.:
Питер, 2007
10.
В.В.Фаронов Turbo Pascal 7.0 : нач.курс:учеб.пособие для студентов
вузов / М. : КНОРУС, 2007
11.
Ю.С.Ковтанюк Программирование на Turbo Pascal / М. : Эксмо, 2008
12.
Н.Б. Культин Программирование в Turbo Pascal 7.0 и Delphi СПб. :
БХВ-Петербург, 2008
13.
Ю.А.Шпак Turbo Pascal М. : Эксмо, 2008
14.
М.П.Малыхина Программирование на языке высокого уровня Turbo
Pascal : учеб.пособие для студентов СПб. : БХВ-Петербург, 2006
15.
О.А.Меженный Turbo Pascal М. : Диалектика, 2006
16.
С.В.Мельников Delphi и Turbo Pascal на занимательных примерах /
СПб. : БХВ-Петербург, 2006
17.
А.Н.Моргун Справочник по Turbo Pascal для студентов М. :
Диалектика, 2006
397
18.
В.В.Потопахин Turbo Pascal : Решение слож.задач СПб. : БХВ-
Петербург, 2006
19.
Фаронов В.В. Turbo Pascal 7.0.Начальный курс : Учеб.пособие для
студентов вузов М. : КНОРУС, 2006
20.
А.А.Борисенко Локальная сеть М. : Эксмо, 2006
21.
А.И.Ватаманюк Беспроводная сеть своими руками / СПб. : Питер, 2006
22.
Д.Н.Колисниченко
Сделай
сам
компьютерную
сеть :
Монтаж,настройка,обслуживание СПб. : Наука и техника, 2006
23.
А.А.Борисенко Локальная сеть М. : Эксмо, 2007
24.
Джон Буравчик Локальная сеть без проблем М. : Лучшие кн., 2005
25.
А.О.Даниленков,Ю.В.Васильев Локальная сеть своими руками : 100%
самоучитель / М. : Технолоджи-3000, 2008
26.
И.Я.Минаев Локальная сеть своими руками : 100% самоучитель М. :
Технолоджи-3000, 2004
27.
А.В. Поляк-Брагинский Локальная сеть. Самое необходимое СПб. :
БХВ-Петербург, 2009
167
MÜNDƏRICAT
Ön soz........................................................................................
3
Giriş...........................................................................................
5
FƏSIL 1 Kompüterlərin texniki-proqram təminati .............
7
1.1 Kompüterlər və onların inkişaf tarixi
................................. ....
9
1.2 Kompüterlərin təsnifatı
……………..……………………………15
1.3 Masaüstü fərdi kompüterin tərkib hissələri
.........................
22
1.4 Alqoritm anlayışı, alqoritmin əsas xassələri, tipləri və təsvir
üsulları.
............................................................................................
44
1.5 Kompüterlərin proqram təminatı
...........................................
50
1.6 Alqoritmik dillər.................................................................
57
1.7 Kompüter şəbəkələri
...............................................................
60
1.7.1 Şəbəkə komponentləri.........................................................
62
1.7.2 Şəbəkə topologiyası. ............................................................
66
1.7.3 Şəbəkəninin məntiqi arxitekturası. .......................................
71
1.7.4 Naqilsiz şəbəkələr ................................................................
72
1.7.5 Şəbəkə arxitekturaları ..........................................................
74
FƏSIL 2 Turbo Pascal alqoritmik dili .................................
78
2.1. Dilin əsas elementləri
............................................................
80
2.2 Proqramın strukturu
................................................................
90
2.3 Verilənlərin tipləri. Sadə və sətir tiplər
................................
90
2.4 Operatorlar
...............................................................................
95
2.5 Giriş və çıxış prosedurları
....................................................
101
2.6 Şərti keçid operatoru
.............................................................
103
2.7 Seçim və ya variant operatoru
.............................................
106
2.8 Şərtsiz keçid operatoru
.........................................................
108
2.9 Dövr operatorları
...................................................................
108
2.10
Çoxluqlar
..............................................................................
114
2.11 Massivlər
..............................................................................
119
2.11.1 Massivlər üzərində əməllər
.............................................
122
2.11.2 Sabit massivlər
................................................................
125
2.12 Yazılar
..................................................................................
126
168
2.12.1 Birləşdirmə operatoru................................................
129
2.12.2 Variantla olan yazılar.................................................
130
2.12.3 Sabit yazılar...............................................................
131
2.13 Prosedurlar .....................................................................
132
2.14 Funksiyalar
.............................................................
135
2.15 Prosedur tipli dəyişənlər.................................................
136
2.16 Rekursiyalar ..................................................................
138
2.16.1 Forward operatoru
………………..…………….………...…139
2.17 Fayl tipli dəyişənlər. Fayllarla əməliyyatlar.
...................
140
2.18 Modullar
...............................................................................
146
2.19 Standart prosedur və funksiyalar
......................................
149
2.20 Turbo Pascal dilinin qtafiki imkanları
..............................
155
2.21 Göstəricilər
...........................................................................
160
Ədəbiyyat..............................................................................
.164
Document Outline - AZA2D
- titul
- Giris
- I Hisse
- II Hisse
- Mundericat
Dostları ilə paylaş: |