takrorlanuvchi jarayonlarni hisoblash algoritmlari va dasturlarini tuzish.
Reja:
1. Aralash strukturali algoritmlar
2. Pascal dasturlashtirish tilida massiflar bilan ishlash
Tayanch iboralar: Aralash strukturali algoritmlar, massiflar, protsedura, standart funktsiyalar,
foydalanuvchining funktsiyasi, qism dasturlar
Adabiyotlar: 12, 13, 22, 23, 26, 30, 35, 38
Aralash strukturali algoritmlar
Chiziqli, tarmoqlanuvchi va takrorlanuvchi dasturlardan tashqari ko‘pgina masalalarni
yechishda bu uchala jaryondan ham bir yula foydalanishga to‘g‘ri keladi. Bunday algortmlar aralash
stukturali algoritmlar deyiladi.
Ya‗ni bu algortmda uchala algoritmdan ham foydalanish mumkin. Demak uchala turdagi
algortmlar katnashgan algortmlar aralash algortmlar deb atalar ekan.
Ko‘pgina muxandislik masalalarini, texnologik va xakozo jarayonlarni dasturlashtirishda
aralash strukturali dasturlardan foydalanishga to‘g‘ri keladi. Biz yuqorida Chiziqli, tarmoqlanuvchi va
takrorlanuvchi algoritmlarni dasturlashtirishni bir xil turdagilariga misollar keltirib, urganib chiqdik.
Lekin kundalik xayotda aralash strukturali algoritmlar juda ko‘p ishlatiladi. Bunday algoritmlarni
dasturlashtirish uchun yuqorida aytganimizdek uchala turdagi algoritmlarni dasturlashtirishni bilish
yetarli
Pascal dasturlashtirish tilida massiflar bilan ishlash
Murakkab uzgaruvchilar bilan bitta identifikator yordamida bir necha uzgaruvchilarni e‗lon
qilish mumkin. Uzgaruvchilarni bunday ko‘rinishlariga massiflar deyiladi.
Masalan ko‘p hollarda
115
b={ b
1
, b
2
, b
3
,… b
n
} yoki
nn
n
n
n
n
a
a
a
a
a
a
a
a
a
A
...
...
...
...
...
...
...
2
1
2
22
21
1
12
11
kabi vektor va matritsalar bilan иш
kuriladi.
Bu uzgaruvchilar Pascal tilida massiflar ko‘rinishida e‗lon kilinadi. Massiflarni e‗lon qilishda
array xizmatchi suzidan foydalaniladi.
const n=25;
var
b: array [1..n] of real;
a: array[1..n, 1..n] of real;
Massiflarni e‗lon qilish jarayonida kurinib turibdiki, bir xil uzgaruvchilar (yozuvlar) qaytarilishi
uchramokda. Bu noqulayliklarni bartaraf etish Maqsadida Pascal tilida uzgaruvchilarning
(massiflarning) turidegan tushuncha kiritiladi.
Masalan:
type
vec=array[1..n] of real;
matr=array[1..n, 1..n] of real;
var b,c: vec;
x,y,z: matr;
Uzgaruvchilarning turi yordamida foydalanuvchining uzi ham mustaqil ravishda yangi
uzgaruvchilar turini kiritishi mumkin.
Massiflar bilan ishlashga quyidagi misolni keltiramiz.
Misol:
Quyidagi formula orqali A matritsaning elementlarini aniqlang:
,
ln
3
3
j
i
j
i
a
ij
3
,
1
i
3
,
1
j
;
program massiv(input,output);
var a:array[1..3, 1..3] of real;
i, j: integer;
begin
for i:=1 to 3 do
for j:=1 to 3 do
begin
a[i,j]:=ln(abs(i+j*j*j))/sqrt(i*i*i+j);
116
writeln(‗a(‗, i, ‘,‘ ,j, ‘)=‘, a[i,j]);
end;
end.
Do'stlaringiz bilan baham: |