Page 66 - Программирование. Python. Для школьников. bizdin.kg
P. 66

66              PYTHON ПРОГРАММАЛОО ТИЛИ                                                                        МАССИВДЕРДИ ИШТЕТҮҮ АЛГОРИТМДЕРИ




            Булардын кээ бирөөлөрүн тереңирээк карайлы: массивдин реверси, мас-
            сивдин элементтерин жылдыруу жана керектүү элементтерди тандоо.
            Массивдин реверси

            Массивдин реверси (reverse) – бул анын элементтерин тескери тартипте
            жайгаштыруу: биринчи элемент акыркысы болуп, ал эми акыркы элемент
            биринчи жайгашып калат.

            Python тилинде массивдер 0дөн башталат. Ошондуктан эгерде элемент-
            тердин жалпы саны N болсо, анда i үчүн каршысындагы элемент төмөнкү
            формула менен аныкталат: N - i - 1. Мисалы (төмөнкү таблицаны карагыла),
            2 индексиндеги элементти алмаштыра турган элементтин индексин табуу
            үчүн, төмөнкү формула менен чыгарабыз:

                                                 N    i
                                         9 – 2 – 1 = 6

            Демек, 2 индексиндеги элемент 6 индексиндеги элемент менен алмашат.

             Массивдин элементтери    16    29    -5    -11    23    14    -7    23    18
                                                                                  7      8
                    Индекстер          0      1      2      3      4      5      6  же  же
                                                                                (n -2) (n -1)


            Элементтин экинчи түгөйүн табуу үчүн, биз массивдин биринчи жарымын-
            дагы эле индекстерди карайбыз. Бул болсо циклди массивдин ортосунан
            токтотуу керек дегенди түшүндүрөт:
            a = [16, 29, -5, -11, 23, 14, -7, 23, 18]
            n = len(a)  #массивдеги элементтердин санын эсептейбиз
            for i in range(n//2):#массивдин 1-жарымынын индекстери
                a[i], a[n-i-1] = a[n-i-1], a[i] #элементтердин ордун ал-
            маштырабыз
            print(a)                                              ЭСИҢЕ ТУТ
            >>>
            [18, 23, -7, 14, 23, -11, -5, 29, 16]           Python тилинде индекстер-
            Массивди реверстөө амалын стандарт-             дин маанилери терс болушу
            тык reverse() методунун жардамында да           да мүмкүн. Бул учурда номер-
            аткарса болот:                                  лөө аягынан баштап жүрөт.
                                                            Мисалы, массивдин эң акыр-

                           a.reverse ()                     кы элементинин индекси -1,
                                                            андан беркисиники -2 ж.б.






                                                                       www.trk.kg
   61   62   63   64   65   66   67   68   69   70   71