Көпіршікті әдіс арқылы сұрыптау алгоритмі?



Дата28.04.2023
өлшемі67,95 Kb.
#87813



Көпіршікті әдіс арқылы сұрыптау алгоритмі?
Көпіршікті сұрыптау массив арқылы бірнеше рет өтуді қамтиды. Әр өтуде кезекті элемент келесі элементепен салыстырылады. Егер келесі элемент үлкен болса (өсу ретімен сұрыптағанда), онда массив элементтері ауыстырылады.Осылайша, массив бірінші рет өсу ретімен сұрыпталғанда, массивтің соңғы мәні ең үлкен болады. Келесі салыстыруда соңғы элементтің алдындағы мән қалған сандардың үлкені болады. Соңғы және соңғының алдындағы сандарды салыстырудың мағынасы жоқ. Демек, әр өту кезіндегі қаралған массив элементтерінің саны 1-ге азаяды. Өту саны массив элементтерінің сананын бірге кем болады, өйткені жұптық салыстыру арқылы жүргізіледі.

Пайтон программалау тілінің стандартты функциялары?
Python тілінің кітапханасы бағдарламадан шақыруға болатын дайын функциялардан тұрады. Кейбір функциялар тілдің ядросына енгізілген, мысалы, санның модулін есептеу үшін abs функциясы қолданылады:
print ( abs(-1.2) )
Нақты сандардан бүтін сандарға өтуге арналған енгізілген функциялар бар:
• int(x) нақты санды бүтін санға келтіру, бөлшек бөлікті алып тастау;
• round(x) – нақты санды жақын бүтінге дөңгелектеу.
Python тілінің көптеген стандартты функциялары қызметі бойынша топтарға бөлінеді және әрбір топ модуль деп аталатын жеке файлға жазылады. Математикалық функциялар math модуліне жинақталған:
sqrt(x) – санының квадраттық түбірі ;

sin(x) радианмен берілген бұрышының синусы;
cos(x) – радианмен берілген бұрышының косинусы;
exp(x) – санының экспоненті;
log(x) – санының натурал логарифмі.
Осы модульді қосу үшін импорттау (модульді жүктеу) командасы қолданылады:
import math
Сосын функцияларды шақыру үшін нүктелік жазба деп аталатын команда қолданылады: модульдің аты және сосын нүктеден кейін функцияның атауы көрсетіледі:
print ( math.sqrt(x) )
Басқаша орындауға да болады: модульдің барлық функцияларын жұмыс кеңістігіне жүктеуге болады:
from math import *
Енді math модулінің функцияларын енгізілген функциялардағы секілді шақыруға болады:
print ( sqrt(x) )
Бұл тәсілдің айтарлықтай кемшілігі бар: жұмыс алаңында көптеген қосымша атаулар пайда болады, яғни басқа модульдерде хабарланған функциялардың атауларымен сәйкес келуі мүмкін. Сондықан қажеттілік болмаса, олай істеудің керегі шамалы.
from math import sqrt, sin, cos
Бұл жағдайда аталғандардан басқа (sqrtsincos), math модулінің барлық функциялары қолжетімсіз болады.
Псевдокездейсоқ сандармен жұмыс істеу функциялары random модуліне жинақталған. Берілген аралықта псевдокейздейсоқ сандарды алу үшін функцияларды қолданады:
• random() – жартылай интервалдағы [0,1) кейдейсоқ нақты сан;
• randint(a,b) – [a,b] кездейсоқ бүтін сан.
eval ( ) функциясы мәтіндік форматта берілген өрнектерді есептеуге мүмкіндік береді. Мысалы, егер Python тілінің синтакисінің ережелеріне сәйкес жазылған кейбір алгебралық өрнекті екілік тырнақшаға алсақ, онда мәтін пайда болады. Егер осы мәтінді рrint ( ) функциясының аргументімен көрсететін болсақ, онда экранда сәйкес алгебралық өрнек пайда болады. Егер дәл осы мәтінді (алгебралық өрнекпен) eval () функциясының аргументімен беретін болсақонда сәйкес алгебралық өрнек есептелетін болады.

Пайтон да графикалық интерфейстерді қамтамасыз етуге арналған кітапхана?
Python тіліндегі бағдарламалар үшін пайдаланушының графикалық интерфейсін (GUI, G raphical U ser I nterface) құру графикалық интерфейс компоненттерінің тиісті кітапханаларының көмегімен немесе кальканы ағылшын тілінен, виджет кітапханаларын пайдалана отырып болады.
- Tkinter көп платформалы пакет компоненттердің орналасуын жақсы басқаруға ие. Интерфейс әртүрлі платформаларда (Unix, Windows, Macintosh) бірдей көрінеді. Python стандартты жеткізіліміне кіреді.
- wxPython wxwidgets көп ақылы кітапханасында салынған (бұрын wxWindows деп аталды). Барлық платформалар үшін Ана болып көрінеді, белсенді жетілдірілуде, GL қолдауы жүзеге асырылды. Барлық негізгі платформалар үшін бар.
- PyGTK gtk+ және Gnome үшін визуалды компоненттер жиынтығы. Тек GTK платформасы үшін.
- PyQT / PyKDE Qt (UNIX немесе Windows астында) немесе KDE қолданатын адамдар үшін жақсы пакеттер.
Pythoncard HyperCard/MetaCard идеологиясы бойынша ұқсас графикалық интерфейс құрастырушысы. WxPython базасында жасалған.
Графикалық интерфейс туралы.
Жалпы мақсаттағы барлық заманауи графикалық интерфейстер WIMP - Window, Icon, Menu, Pointer (терезе, иконка, мәзір, көрсеткіш) моделі бойынша құрылады. Терезелердің ішінде Графикалық интерфейстің элементтері бейнеленеді, олар қысқа виджеттер деп аталады (widget - штучка). Мәзір терезенің әр түрлі бөліктерінде орналасуы мүмкін, бірақ олардың мінез-құлықтары бірдей: олар алдын ала анықталған әрекеттер жиынтығынан әрекетті таңдау үшін қызмет етеді.
Графикалық интерфейстің негізгі міндеті пайдаланушы мен компьютер арасындағы коммуникацияны жеңілдету болып табылады. Бұл туралы интерфейсті жобалау кезінде үнемі есте сақтау керек.
Графикалық интерфейсі бар кез келген бағдарламаның негізгі ерекшелігі-интерактивтілік. Бағдарлама жай ғана бір нәрсе (пакеттік режимде) өзінің іске қосылуынан аяғына дейін санайды: оның әрекеттері пайдаланушының араласуына байланысты. Іс жүзінде, графикалық қосымша оқиғаларды өңдеудің шексіз циклын орындайды. Графикалық интерфейсті іске асыратын бағдарлама оқиғалы-бағытталған. Ол өзінің ішкі жағдайына сәйкес өңделетін оқиғалар интерфейсінен күтеді.

Достарыңызбен бөлісу:




©emirsaba.org 2024
әкімшілігінің қараңыз

    Басты бет