190 likes | 649 Views
Alqoritmik dilə aid məsələlər. T u n e l. T U N E L. Alq Tunel Baş kvadrat (10) ; (1,1) vektoru qədər yerini dəyiş kvadrat (7) ; (1,1) vektoru qədər yerini dəyiş kvadrat (4) ; (1,1) vektoru qədər yerini dəyiş kvadrat (1) ; Son Alq Kvadrat ( arq həq a) Baş
E N D
Alqoritmik dilə aid məsələlər
T U N E L AlqTunel Baş kvadrat (10) ; (1,1) vektoru qədər yerini dəyiş kvadrat (7) ; (1,1) vektoru qədər yerini dəyiş kvadrat (4) ; (1,1) vektoru qədər yerini dəyiş kvadrat (1) ; Son AlqKvadrat (arqhəq a) Baş qələmi endir (a, 0) vektoru qədər yerini dəyiş (0, a) vektoru qədər yerini dəyiş (-a, 0) vektoru qədər yerini dəyiş (0, -a) vektoru qədər yerini dəyiş qələmi qaldır Son Kvadrat (10) komandası icra olunan zaman «kvadrat» yardımçı alqoritmi çağrılır və cizgiçi 10 xana uzunluğunda kvadrat çəkir, sonra (1, 1) vektoru qədər yerdəyişir. Kvadrat (7), kvadrat (4) və kvadrat (1) komandalarıda eyni qayda ilə icra olunacaqdır
SPİRAL AlqSpiral Baş qələmi endir burum (1) burum (3) burum (5) burum (7) burum (9) Son Alq burum(arqhəq a) Baş (a, 0) vektoru qədər yerini dəyiş (0, -a) vektoru qədər yerini dəyiş (-a-1, 0) vektoru qədər yerini dəyiş (0, a+1) vektoru qədər yerini dəyiş Son burum (1) komandası icra olunan zaman «burum» yardımçı alqoritmi çağrılır və cizgiçi spiralın birinci dövrəsini çəkir, burum (3), burum (5), burum (7) və burum (9) komandalarıda eyni qayda ilə icra olunacaqdır
KVADRATCIQ • AlqKvadratcıq • Baştam k • (0, 0) nöqtəsinə yerini dəyiş • qələmi endir • dbküçün1dən3dək • (k, 0) vektoru qədər yerini dəyiş • (0, k) vektoru qədər yerini dəyiş • (-k, 0) vektoru qədər yerini dəyiş • (0, -k) vektoru qədər yerini dəyiş • ds • Son
BİLET Hər birində 50 yeri olan 40 sıralı kinoteatrda bir seansa qabaqcadan biletlərin satışı təşkil edilməlidir.Satılmış biletlərin məbləğını və kassada qalan biletlərin cəmini tapan proqram yazın. Adətən kassanın qarşısında kinozaldakı bütün yerlərin göstərildiyi plan olur. Həmin planda bileti satılmış yerlər xaçla qeyd olunur. Bu plan cədvəl şəklində tamcəd a [1:40, 1:50]göstərilir, yerin bileti satılıbsa a[i, j]=1, satılmayıbsa a[i, j]=0 olur. Satışdan əvvəl hələ heç bir bilet satılmayanda cədvəl sıfırla doldurulmalıdır. db i üçün1 dən 40 dək db j üçün1 dən 50 dək a [i, j]: =0 ds ds Məsələn: 25-ci sıradakı 6-cı yerə bilet satdıqda a[25, 6]=1 olur.
SATILMIŞ BİLETLƏRİN MƏBLƏĞİNİ HESABLAMAQ Satılmış biletlərin ümumi qiymətini təyin etmək üçün hər bir biletin qiymətini bilmək lazımdır, ancaq kinoteatrda sıradan asılı olaraq biletlərin qiyməti müxtəlifdir. Bunu yardımçı alqoritm şəklində (xətti cədvəl) etmək olar. alqtam qiymət(tam i) ................ s:=0 db i üçün1 dən 40 dək db j üçün1 dən 50 dək əgəra [i, j]: = 1 ondas:=s+qiymət (i) tamam ds ds ................
KASSADA QALAN BİLETLƏR Cədvəl vasitəsi ilə kassada qalan biletləri (tam qalıq) sayaq. ................ qalıq:=0 db i üçün1 dən 40 dək db j üçün1 dən 50 dək əgəra [i, j]: =0 ondaqalıq:=qalıq+1 tamam ds ds ................
TƏYYARƏ Dünya ölkələri arasından aviaxətlər olan 100 şəhərin adı verilmişdir. Bir şəhərdən ixtiyarı başqa şəhərə (ola bilsin, təyyarə dəyişməklə) uçmaq mümkündür. Hər şəhərdə yalnız bir aeroport var. Elə cədvəl modeli qurmaq tələb olunur ki, onun vasitəsilə bir şəhərdən digərinə minimal sayda təyyarə dəyişməklə necə uçmaq və bu yolun uzunluğunu nə qədər olacağı tapmaq mümkün olsun.
Alq tam n; n:=100| şəhərlərin sayı simcəd ad [1:n]| şəhərlərin adı həqcədməsafə[1:n, 1:n]| i və j şəhərləri arasındakı məsafə baş çapet ad [i1], «şəhərindən», ad [i n], «şəhərinə» əgər məsafə [i1, i n]> 0 ondaçapet «reys var, məsafə=», məsafə [i1, i n] əkshalda p:=0; tapılıb:=«yox» dbnə qədər ki p<n və tapılıb= «yox» p:=p+1 əgər məsafə [i1, p]>0 və məsafədə [p, i n]>0 onda tapılıb:=«hə» tamam ds əgər tapılıb=«hə» ondaçapet ad [p] «-də təyyarə dəyişməklə maşrut var» çapet «məsafə=», məsafə [i1, p]+məsafə [p,i n] tamam tamam son