Kontentə keç

Dərs cədvəli hazırlayıcı

Orta məktəblər üçün dərs cədvəli: müəllim, sinif və fənn məlumatlarını daxil edin, sistem tipik məhdudiyyətlərlə avtomatik cədvəl qursun.

🧩 Məktəb konfiqurasiyası və hazırlayıcı
Məktəb parametrləri
Bütün siniflər üçün gündəlik limit standart olaraq “Gündə dərs saatı (max)” qədər tətbiq olunur (sinif cədvəlində ayrıca dəyişmək mümkündür).
Müəllimlər
Hər müəllim üçün həftəlik və gündəlik maksimum saat, uyğun dərs saatları və gəlmə günləri.
Ad, soyad Kod Həftəlikmax Gündəmax Dərssaatları Gəlmə günləri
Siniflər
Səviyyə və növbə hazırda informasiya üçündür. “Gündə max dərs” boş qalarsa standart limit istifadə olunur.
Sinif Səviyyə Növbə Gündə max dərs
Fənn / dərs saatları
Hər sətir: sinif + fənn + müəllim + həftəlik saat. “Qoşa”: Yox seçsəniz bu sinifdə həmin fənn eyni gündə maksimum 1 dəfə ola bilər. İmkan daxilində seçsəniz sistem bu sinifdə həmin fənni eyni gündə 2 dəfə yerləşdirməyə çalışır (mümkünsə ardıcıl, deyilsə yenə eyni gündə 2 ayrı saat). Mütləq seçsəniz bu sinifdə həmin fənn eyni gündə 2 dəfə ardıcıl olmalıdır.
Sinif Fənn Müəllim kodu/adı Həftəlik saat Ağır? Qoşa
Hazırlayıcı

1) Müəllim, sinif və fənn məlumatlarını doldurun.

2) “Cədvəli qur” düyməsini sıxın — sistem tam həll tapana qədər fərqli kombinasiyalar sınayacaq.

Proses zamanı düymə “🛑 Dayandır” olur — istəsəniz axtarışı istənilən vaxt dayandıra bilərsiniz.

Nəticə
Hələ cədvəl qurulmayıb. Məlumatları daxil etdikdən sonra “Cədvəli qur” düyməsini sıxın.

Məlumat

Bu səhifədəki “🧩 Məktəb konfiqurasiyası və hazırlayıcı” bloku dərs cədvəlini tamamilə brauzerdə qurmaq üçün hazırlanıb: siz müəllim/sinif/fənn məlumatlarını daxil edirsiniz, sistem isə konfliktləri minimuma endirərək cədvəli avtomatik yığmağa çalışır.

İş prinsipi (qısa axın)
  1. Məktəb parametrləri — həftə günü sayı və gündə maksimum saatı seçin.
  2. Müəllimlər — hər müəllimin limitlərini, uyğun saatları və gəlmə günlərini yazın.
  3. Siniflər — sinif siyahısını (səviyyə, növbə, gündə limit) daxil edin.
  4. Fənn / dərs saatları — “sinif + fənn + müəllim + həftəlik saat” sətirlərini əlavə edin.
  5. ⚙️ Cədvəli qur — sistem tam həll tapılanadək fərqli kombinasiyalar sınayır.
  6. Nəticə — sinif tablarını dəyişərək cədvəli yoxlayın, lazım olsa parametrləri düzəldin və yenidən qurun.

Proses zamanı ekranda cəhd sayıən yaxşı tapılan nəticə (faizlə) göstərilir. İstəsəniz 🛑 Dayandır düyməsi ilə axtarışı dayandırıb həmin “ən yaxşı” nəticəyə baxa bilərsiniz.

1) Məktəb parametrləri nə edir?

  • Həftəlik iş günü (5/6) cədvəlin sütun sayını müəyyən edir: 5 gün seçəndə Şənbə (Ş) gizlənir və müəllimlərin “Ş” günü avtomatik deaktiv edilir.
  • Gündə dərs saatı (max) hər sinif üçün matrisin (gün × saat) ölçüsünü təyin edir. Məsələn 7 seçsəniz, hər gün 1–7 saat aralığı yaranır.
  • Ağır fənlər mümkün qədər 1-ci/sonuncu saatda olmasın — bu seçim aktivdirsə, “Ağır?” işarələdiyiniz dərslər mümkün olduqca 1-ci və sonuncu saata salınmır (optimallaşdırma).
  • Eyni fənn qaydası — qayda sinif + fənn səviyyəsində tətbiq olunur: standart halda bu sinifdə həmin fənn bir gündə maksimum 1 saat ola bilər. Əgər həmin sinifdə həmin fənn üçün Qoşa = İmkan daxilində və ya Qoşa = Mütləq seçilibsə, həmin fənn üçün gündəlik limit 2 saat olur (Mütləq: ardıcıl 2; İmkan daxilində: mümkünsə ardıcıl). Ümumi limit heç vaxt gündə 2-dən çox olmur.
  • Sinifdə boşluq olmasın (dərslər 1-ci saatdan ardıcıl başlayır) — aktivdirsə, sinifdə dərs olan günlərdə dərslər 1-ci saatdan başlayır və günün son dərsinə qədər ardıcıl gedir. Boşluq yalnız günün sonunda ola bilər.

Qeyd: “Ağır fənn kənar saat olmasın” optimallaşdırmadır. Qayda kimi tətbiq olunanlar: müəllim konfliktləri, müəllimin gəlmə günləri, müəllimin seçdiyi dərs saatları, müəllim/sinif limitləri, “Sinifdə boşluq olmasın (dərslər 1-ci saatdan ardıcıl başlayır)” (aktivdirsə) və “Eyni fənn” qaydası (standart max 1; Qoşa=İmkan daxilində/Mütləq üçün eyni gündə 2; ümumi max 2).

2) Müəllimlər bölməsi necə istifadə olunur?

  • Ad, soyadKod: “Fənn / dərs saatları” bölməsində müəllimi tapmaq üçün sistem müəllimi kodla və ya adla uyğunlaşdırır. Praktik üsul: hər müəllimə qısa kod verin (məs: İSF).
  • Həftəlik maxGündə max: müəllimin həftəlik/gündəlik dərs limitidir. 0 yazılsa (və ya boş qalsa) sistem bunu “limitsiz” kimi qəbul edir.
  • Dərs saatları: müəllimin dərsinin hansı saatlarda ola biləcəyini göstərir. Heç nə seçməsəniz sistem standart olaraq bütün saatları uyğun sayır. Bu seçim qayda kimidir və pozulmur.
  • Gəlmə günləri: müəllimin dərsinin hansı günlərdə ola biləcəyini göstərir. Heç nə seçməsəniz, sistem hamı günlər kimi qəbul edir. Vacib: “gəlmə günləri” qayda kimidir — pozulmur.
Diqqət (uyğunlaşdırma)

“Fənn / dərs saatları” bölməsində müəllimi kod və ya ad ilə yazanda, bu dəyər müəllim cədvəlindəki kod/ad ilə eyni yazılışda olmalıdır (sistem yalnız boşluqları kəsir). Məsələn FİR ilə fir fərqli sayılır.

3) Siniflər bölməsi necə işləyir?

  • Sinif (məs: 5A) — “Fənn / dərs saatları” sətirlərində də eyni adla yazılmalıdır.
  • Gündə max dərs boş qalarsa standart limit kimi “Gündə dərs saatı (max)” tətbiq olunur. Əgər rəqəm yazsanız, həmin sinif üçün gündəlik limit ayrıca təyin olunur.
  • Növbə (Səhər/Günorta) hazırda informasiya üçündür — alqoritm növbəyə görə ayrıca məhdudiyyət tətbiq etmir.

4) Fənn / dərs saatları: ən vacib hissə

Bu cədvəldəki hər sətir bir “tədris tapşırığıdır”: hansı sinifə, hansı fənn, hansı müəllimhəftədə neçə saat.

  • Həftəlik saat daxil etdikdə sistem bunu “bloklara” parçalayır və yerləşdirir.
  • Qoşa rejimi:
    • Yox → bu sinifdə həmin fənn bir gündə maksimum 1 saat ola bilər.
    • İmkan daxilində → bu sinifdə həmin fənn eyni gündə 2 saat olmağa çalışır (mümkünsə ardıcıl, deyilsə yenə eyni gündə 2 ayrı saat).
    • Mütləq → bu sinifdə həmin fənn eyni gündə 2 saat ardıcıl olmalıdır (qayda kimi tətbiq olunur).
  • Ağır? seçilibsə: “Ağır fənlər 1-ci/sonuncu saatda olmasın” parametri aktiv olanda sistem əvvəlcə ağır fənni 1-ci/sonuncu saata salmamağa çalışır.

5) “Cədvəli qur” düyməsi arxada nə edir?

  • Sistem “dərs bloklarını” müxtəlif ardıcıllıqlarda və slot kombinasiyalarında yerləşdirməyə çalışır.
  • Qayda kimi tətbiq olunan məhdudiyyətlər (müəllim konfliktləri, gəlmə günləri, müəllim saat seçimi, limitlər, sinif tutumu, “Eyni fənn” qaydası: standart max 1; Qoşa=İmkan daxilində/Mütləq üçün eyni gündə 2; ümumi max 2, boş saat olmaması, Qoşa=Mütləq) pozulmur.
  • Optimallaşdırmalar (ağır fənnin kənar saatlara düşməməsi, Qoşa=İmkan daxilində ardıcıllıq) mümkün olduqca qorunur.
  • Tam həll tapılanadək axtarış davam edir. Konfiqurasiya həqiqətən mümkünsüzdürsə axtarış da uzana bilər — bu halda 🛑 Dayandır düyməsi ilə prosesi dayandırıb ən yaxşı tapılmış nəticəni görə bilərsiniz.

Tez-tez rast gəlinən problemlər və həll yolları

  • “Sinif/müəllim tapılmadı” xətası → sinif adlarını və müəllim kod/adını bütün yerlərdə eyni yazın.
  • Çox “Yerləşdirilməyənlər” çıxır → sinif/müəllim limitlərini yoxlayın, sinif tutumunu artırın (gündə max), müəllim gəlmə günlərini və uyğun saatları genişləndirin.
  • Axtarış çox uzanır → çox vaxt bu ya konfiqurasiyanın mümkünsüz olmasına, ya da limitlərin həddən artıq sərt olmasına işarə edir.

Qeyd: Bu alqoritm brauzerdə işləyir və “tam həll tapılanadək” axtarış aparır. Real məktəb cədvəllərində ən stabil nəticə üçün kod/ad uyğunluğunu qorumaq və limitləri realist qurmaq ən vacibdir.