Пример #1
0
        /// <summary>
        /// Becsli egy specializációra (ágazatra) besorolható maximális hallgatói létszámot a specializációcsoport besorolás közbeni aktuális létszáma alapján.
        /// </summary>
        /// <param name="spec">A specializáció (ágazat).</param>
        /// <param name="specGroup">A specializációcsoport, ahova az ágazat tartozik.</param>
        /// <param name="specGroupCount">A specializációcsoport aktuális létszáma.</param>
        /// <param name="totalCount">A teljes besorolható létszám.</param>
        /// <param name="unplacedCount">A még be nem sorolt hallgatók létszáma.</param>
        /// <returns>A specializációra (ágazatra) besorolható maximális létszámra adott becslés.</returns>
        private static int GetSpecMaxCount(Specialization spec, SpecializationGrouping specGroup, int specGroupCount, int totalCount, int unplacedCount)
        {
            // A maximális specializációcsoport-létszám alapján becsüljük a maximumot. A tényleges maximum lehet kisebb.
            int maxSpecGroupCount = Math.Min(specGroup.GetMaxCount(totalCount), specGroupCount + unplacedCount);

            return(spec.GetMaxCount(maxSpecGroupCount));
        }
Пример #2
0
 public SpecializationHeadcount(Specialization spec, SpecializationGrouping specGroup, int totalHeadcount)
 {
     MinimumCount       = GetSpecMinCount(spec, specGroup, 0, totalHeadcount);
     MaximumCount       = GetSpecMaxCount(spec, specGroup, 0, totalHeadcount, totalHeadcount);
     SameRankCount      = 0;
     MinimumRankAverage = double.MaxValue;
 }
Пример #3
0
        /// <summary>
        /// Becsli egy specializációra (ágazatra) besorolandó minimális hallgatói létszámot a specializációcsoport besorolás közbeni aktuális létszáma alapján.
        /// </summary>
        /// <param name="spec">A specializáció (ágazat).</param>
        /// <param name="specGroup">A specializációcsoport, ahova az ágazat tartozik.</param>
        /// <param name="specGroupCount">A specializációcsoport aktuális létszáma.</param>
        /// <param name="totalCount">A teljes besorolható létszám.</param>
        /// <returns>A specializációra (ágazatra) besorolandó minimális létszámra adott becslés.</returns>
        private static int GetSpecMinCount(Specialization spec, SpecializationGrouping specGroup, int specGroupCount, int totalCount)
        {
            // A minimális specializációcsoport-létszám alapján becsüljük a minimumot. A tényleges minimum lehet nagyobb.
            int minSpecGroupCount = Math.Max(specGroup.GetMinCount(totalCount), specGroupCount);

            return(spec.GetMinCount(minSpecGroupCount));
        }
Пример #4
0
 public SpecializationGroupingHeadcount(SpecializationGrouping specGroup, int totalCount)
 {
     MinimumCount = specGroup.GetMinCount(totalCount);
     MaximumCount = specGroup.GetMaxCount(totalCount);
 }