1.Бағдарламалау. Python бағдарламалау тіліндегі функционалдық бағдарламалау.
Функционалды бағдарламалау - бағдарламалау парадигмаларының бірі. Ондағы есептеулер күйлердің өзгеру тізбегі ретінде емес, олардың математикалық түсінігінде функциялардың мәндерін есептеу ретінде түсініледі. Яғни,ФП-дегі функциялар ішкі бағдарламалар емес, белгілі бір ережелерге сәйкес бір жиынның элементтерін екіншісіне салыстыру болып табылады.
2.TIOBE индексіне сәйкес(2022 ж.) бастапқы үш бағдарламалау тілдерін сипаттаңыз және бағдарламалау тілдерінің қолданылу саласы.
ТІВОЕ индексі (2022) бойынша бастапқы үш бағдарламалау тілдері олар:
1. Python
2. C++
3. Java багдарламалау тілдері
1.Python бағдарламалау тілі еркін түрде қол жетімді және шешім туралы шешіміңізді жазу сияқты компьютерлік мәселені оңай шешеді. Кодты бір рет жазуға болады және бағдарламаны өзгертуге тура келмей, дерлік кез келген компьютерде іске қосуға болады. Ол мәтінді, сандарды, суреттерді, ғылыми деректерді және компьютерде үнемдеуге болатын кез келген нәрсені ғана өңдеу үшін пайдаланылуы мүмкін. Ол күнделікті Google іздеу жүйесінің жұмысында, YouTube бейне, NASA және Нью-Йорк қор биржасында жұмыс істейді. Бұл Python бизнестің, үкіметтің және коммерциялық емес ұйымдардың жетістіктерінде маңызды роль атқаратын орындардың бірқатары ғана; басқа да көптеген бар.
2. C++ - Lego конструкторы сияқты: сіз армандаған сарайды тұрғыза аласыз. Оған ойындар жазылады және нейрондық желілер оқытылады, соның арқасында Google іздеу және сауда биржаларының роботтары жұмыс істейді. Ол объектіге бағытталған бағдарламалауды және шаблондарды қоса алғанда, мүмкіндіктердің үлкен жиынтығына ие.
3. Java тілі көп платформалы, объектіге бағытталған және желіге бағытталған тіл, оны жеке платформа ретінде пайдалануға болады. Бұл мобильді қосымшалар мен корпоративтік бағдарламалық құралдан бастап үлкен деректер қолданбалары мен серверлік технологияларға дейінгі барлық нәрсеге арналған жылдам, қауіпсіз және сенімді бағдарламалау тілі. Көптеген танымал мобильді, компьютерлік ойындар Java тілінде жасалған. Тіпті машиналық оқыту немесе виртуалды шындық сияқты озық технологияларды қолданатын заманауи ойындар Java технологиясы арқылы жасалады. Тұрақтылығы мен жылдамдығының арқасында тіл жасанды интеллект қосымшаларын әзірлеу үшін №1 таңдау болды.
3.Python бағдарламалау тілінің шығу тарихы және өзекті нұсқасы.
Python тілін әзірлеу голланд институтының қызметкері Гвидо ван Россуммен 1980 жылдың соңында басталған. Ол оны бос уақытында жаза бастаған. 1991 жылыдың 20 ақпанында алғашқы мәтіндерін жаңалықтар топтамасында жарыққа шығара бастады. Python тілі бастапқыдан объектіге бағытталған бағдарламалау тілі ретінде жобаланды.Автор бағдарламаны 1970-жылдардағы танымал британ комедиялық «Монти Пайтон Ұшатын циркі» телешоуының құрметіне атаған. Көбі оны жыланның атымен байланыстырады. Бағдарламаның python.org сайтында (2.5 нұсқасына дейін) жыланның басы бейнеленген. Python әзірлеушісінің негізгі мақсаты — оны қолданушыға қызықты етіп жасау болды. Оны атауынан да байқауға болады. Python 2.7 нұсқасына қолдау көрсетудің аяқталу күні бастапқыда 2015 жылға орнатылды, содан кейін 2020 жылға ауыстырылды. Python 2.7 2020 жылдың 1 қаңтарынан бастап ресми түрде қолдау көрсетілмейді.
4.Интерпретатордың жұмыс істеу принципі.
Python - интерпретацияланған бағдарламалау тілі. Ол өзінің кодын аппараттық құрал түсінетін машиналық кодқа түрлендірмейді (C және C++-тен айырмашылығы). Оның орнына, Python интерпретаторы бағдарлама кодын Python виртуалды машинасында (PVM) жұмыс істейтін байт кодқа аударады. Интерпретатор - бұл Python нұсқауларын байт кодқа түрлендіретін және оларды орындайтын бағдарлама. Негізінде, интерпретатор - бұл бастапқы код пен аппараттық құрал арасындағы бағдарламалық қамтамасыз ету деңгейі.
5.Интерпретатор және компилятор. Олардың айырмашылықтары.
Интерпретатор – программалау тілінде жазылған кодты орындайтын программа. Ол оны толығымен машиналық кодтарға аудармайды, бірақ командаларды жолдан жолға қабылдайды және оларды дереу орындайды.
Кодты машина оқылатын пішінге «аударудың» тағы бір жолы – компиляция. Бұны орындайтын программалар компиляторлар деп аталады. Айырмашылығы мынада: Интерпретатор кодпен жол бойынша жұмыс істейді, ал компилятор кодтың бүкіл блогын аударады.Интерпретатор кодты қажет жолды «оқыған» бойда орындайды, ал компилятор оны орындау үшін жүйеге береді – ол тек өзін ғана аударады.
6.Python бағдарламалау тіліндегі енгізу және шығару функциялары. Олардың параметрлері.
Python тіліндегі print() функциясы мәтіндік ақпаратты экранға немесе консольге басып шығару үшін пайдаланылады. Бұл функция бір немесе бірнеше аргумент қабылдай алады. Қажетті аргументтердің бірі басып шығарылатын жол немесе нысан болып табылады. input() функциясы консольден пайдаланушы мәлімет енгізуін қамтамасыз етуге мүмкіндік береді, енгізетін барлық нәрсе жол деректер түріне шығарылады.
7.Python бағдарламалау тіліндегі айнымалылар мен деректер түрі.
Айнымалылар деректерді сақтауға арналған. Python тіліндегі айнымалы атауы алфавиттік таңбадан немесе астын сызудан басталуы керек және әріптік-сандық таңбалар мен астын сызу болуы мүмкін. Сонымен қатар, айнымалының аты Python тілінің кілт сөздерінің атауымен бірдей болмауы керек. Кілт сөздер көп емес, оларды есте сақтау оңай. Мысалы, айнымалыны жасайық:
name = “Arnur and Sayat gays”
« “Arnur and Sayat gays”» жолын сақтайтын айнымалы-name
Айнымалылар деректер түрі туралы мәлімет сақтайды. Python-да көптеген әртүрлі деректер түрлері бар. Бұл жағдайда біз ең негізгі түрлерін ғана қарастырамыз: bool, int, float және str.
Bool түрі екі логикалық мәнді білдіреді: True (шын) немесе False (жалған). True мәні бір нәрсенің ақиқат екенін көрсету үшін қолданылады. Ал False мәні, керісінше, бір нәрсенің жалған екенін көрсетеді.
int типі 1, 4, 8, 50 сияқты бүтін санды білдіреді.
float 1.38 , 2.1 сиякты бөлшек сандарды білдіреді.
str немесе string жолды білдіреді.
8.Python бағдарламалау тіліндегі арифметикалық амалдар және math модулі. Өзіңіздің math модуліндегі жиі қолданатын 5 функцияңыз жайында жазыңыз.
+ қосу
,- азайту
,* көбейту
/ бөлу
% қалдық
** дәрежесі
// бүтін сан
Python, басқа бағдарламалау тілдері сияқты, ерекше
кірістірілген математикалық функциялары, бар. math деген модуль бар,ол математикалық есептеулерде қолданады.
Int()- объектіні бүтін санға түрлендіреді
Float()-бүтін санды немесе жолды нақты санға түрлендіреді
мағынасы.
Bin()-ондық санды екілік санау жүйесіне түрлендіреді.
Oct()ондық бөлшекті сегіздікке түрлендіреді.
hex()-Ондық санды он алтылық санға түрлендіреді.
9.Шартты операторлар. Шартты операторлардағы шартты өрнектер мен логикалық өрнектер.
Python шартты операторлар кейде тармақ операторлары деп аталады. Олар берілген айнымалының белгілі бір мәнін ескере отырып, бағдарлама қай нұсқауды орындау керектігін таңдай алатындай етіп жасалады. Шартты операторлар тақырып пен денеден тұрады.
Тек екі логикалық мән бар - True (өрнек ақиқат) және False (өрнек жалған).
Логикалық операциялар; and, or , not ,
10. Python бағдарламалау тіліндегі циклдер. Циклдердің айырмашылықтары
Python-дағы циклдар кодпен жұмыс істеуді жеңілдететін құралдар болып табылады. Бағдарламалауда бәрі циклді. Кез келген бағдарламаны жазу белгілі бір кезеңдерден өтуден, қайталауға болатын тапсырмалардан тұрады. Мұнда қайталанатын элементтерге уақыт жоғалтпау үшін циклдар ойлап табылды.
Python-да тек екі негізгі цикл бар - «while» және «for». Біріншісі қайталану саны алдын ала белгілі болғанда, екіншісі элементтерді санау қажет болғанда қолданылады.
11. Функциялардың сипатталуы және оның аргументтері. Санның квадратын консольге шығаратын функцияны сипаттаңыз.
Python тіліндегі функция аргументтерді қабылдайтын және мәнді қайтаратын нысан болып табылады. Әдетте, функция def операторымен анықталады. def операторына функцияның атауын, аргументтерін, аты-жөнін, түсіндірмесін, функцияны атқару кодын қатармен орналастыруға болады.
def square (a):
"""Берілген санның квадратын шығаратын функция"""
print( a ** 2)
# Функцияның сипатталуынан кейін, оны шақыру үшін көмекші функция
square (5)
12.Python бағдарламалау тіліндегі тізім және оның әдістері. Студенттер атауынан тұратын тізім құрыңыз
Python бағдарламалау тілінде "тізім" дегеніміз белгілі бір деректер түрі, ол әрине элементтерді санаттап отырады. Тізімдер list тіркесімін алады. Тізімдерге стрингтер немесе басқа деректерді орнатуға болады. Тізімнің әдістерін пайдалана отырып, тізімнің элементтерімен жұмыс жасаймыз. Тізімдерді жасау үшін [ ] тегін пайдаланамыз және элементтерді [,] арқылы айырмашылайды. Мысалы, students тізімінің жасау мысалын көрсетейік:
students = ["Айдана", "Әлия", "Даулет", "Нурсултан", "Айжан"]
13. Python бағдарламалау тіліндегі кортеж және оның әдістері. Компания атауларынан тұратын кортеж құрыңыз.
Python-дағы кортеждер[tuple] тізімдер сияқты. Бірақ Кортеждер өзгермейтін деректер құрылымдары болып табылады. Тізімдер сияқты, олар үтірмен бөлінген әртүрлі типтегі элементтерден тұруы мүмкін. Кортеждер төртбұрышты жақшаға емес, дөңгелек жақшаға алынады. Сондай-ақ, кортежде элементтерді қосу және жою әдістері жоқ.
Companies = ("Google", "Amazon", "Microsoftt")
14. Python бағдарламалау тіліндегі сөздік және оның әдістері. Абонент атауы мен сәйкес кодтарынан тұратын сөздік құрыңыз.
Python-да тізімге ұқсас сөздік деп аталатын басқа құрама деректер түрі бар. Сөздік (dict) - бұл кілт арқылы қол жеткізілетін еркін объектілердің ретсіз жинағы. Сөздік ассоциативті массив ретінде жақсы белгілі. Сөздік-мән жұптарының жиынынан тұрады. Әр элементке реттік нөмірі (индекс) арқылы қол жеткізуге болатын тізімнен айырмашылығы, сөздікте элементке кілт арқылы қол жеткізіледі. Сөздік идеясын түсінікті ету үшін кәдімгі сөздікпен, мысалы, ағылшынша-орысша ұқсастық жасайық. cat – кошка, dog – собака, table – стол и т. д.
{'cat': 'кошка', 'dog': 'собака', 'bird': 'птица'}
{'' кілт: 'мән', кілт: 'мән', кілт: 'мән'}
Abonents = {beeline: 771, 'Tele2': '747', 'Activ': 705}
15.Python бағдарламалау тіліндегі жиындар және оның әдістері.
Питондағы жиын кездейсоқ ретпен қайталанбайтын элементтерді қамтитын «контейнер» болып табылады. Жиындар тізімдер мен кортеждерге қарағанда жылдамырақ және көптеген практикалық есептерді шешуді айтарлықтай жеңілдетеді. Жиын тек өзгермейтін деректер түрлерін – жолдарды, сандарды, кортеждерді (кез келген комбинацияда) қамтуы мүмкін. Жиынға тізімді, сөздікті немесе өзгермелі жиынды қосу әрекеті қатеге әкеледі:
>>> a_set = {[2, 3], [4, 7]}
Traceback (most recent call last):
File "
", line 1, in TypeError: unhashable type: 'list'
16.Python бағдарламалау тіліндегі тізім және кортеж. Олардың айырмашылықтары.
Python тіліндегі List және Tuple — Python деректер құрылымының бөлімдері. Тізім динамикалық, ал кортежде статикалық сипаттамалар бар. Бұл тізімдерді өзгертуге болатынын, ал кортеждерді өзгертуге болмайтынын білдіреді, табиғатынан статикалық болғандықтан кортеж тізімге қарағанда жылдамырақ. Тізімдер тік жақшамен, кортеждер жақшамен белгіленеді.
17.Python бағдарламалау тіліндегі сөздік және жиын. Олардың айырмашылықтары.
Python тіліндегі жиын – математикадағы жиындарға баламалы деректер құрылымы. Жиын әртүрлі элементтерден тұруы мүмкін, жиындағы элементтердің реті анықталмаған. Жиынға элементтерді қосуға және жоюға болады, жиынның элементтерін қайталауға болады, жиындармен операцияларды орындауға болады). Жиын элементінің мүшелігін тексеруге болады.
Сөздіктер
Қарапайым тізімдер (массивтер) – бұл нөмірленген элементтер жиыны, яғни тізімнің кез келген элементіне қол жеткізу үшін оның нөмірін көрсету керек. Тізімдегі элементтің нөмірі элементтің өзін бірегей түрде анықтайды. Бірақ деректерді сандық сандар арқылы анықтау әрқашан қолайлы бола бермейді.
18.Python бағдарламалау тілінде файлдармен жұмыс.
Файлдармен жұмыс жасау python программалау тіліндегі кірісті-рілген open() функциясы арқылы орындалады. Оған файл атауы мен оны өңдеу режимі беріледі. Сосын, файлда кез келген әрекеттерді орындағаннан кейін ақпарат жоғалып кетпеу үшін оны close() функциясын пайдаланып файлды жабу керек.
19. Файлдардағы мәліметтерді оқу функциялары мен файлға жазу функциялары.
Файлды read() әдісін қолдана отырып, сіз бүкіл файлды немесе тек белгілі бір байт санын оқи аласыз. file.txt файлында біз алдын ала 'I LOVE KAZAKHSTAN' мәтінін бөлек-бөлек қатарға жазып сақтап алдық.
a = open('file.txt')
print(a.read(6)) # 6 байттығана оқу
print(a.read()) # Барлығын оқу
a.close()
----------------------
I
lOVE
I
LOVE
KAZAKHSTAN
Файлдың тек бір қатарын оқу үшін readline() әдісін қолданамыз.
[19:20, 23.05.2023] Нурали Сагатбек: readlines() әдісі - файлдағы барлық мәтінді оқып, оларды тізім түрінде қайтарады.
Файлға жазу үшін write() және writelines() әдістері бар. write() мәтіндік жолдарды файлға жазады.
20.Python бағдарламалау тіліндегі match конструкциясы(pattern matching).
3.10 версиядан бастап Python тілі pattern matching (үлгіні сәйкестендіру) сияқты функцияларды енгізді. pattern matching өрнекті қандай да бір үлгімен сәйкестендіруге мүмкіндік беретін match конструкциясының қолданбасын білдіреді. Ал егер өрнек үлгіге сәйкес келсе, онда белгілі бір әрекеттер орындалады. Бұл мағынада match конструкциясы қандай да бір шартқа байланысты белгілі әрекеттерді орындайтын if/else/elif конструкциясына ұқсас. Дегенмен, match функционалдығы анағұрлым кеңірек - ол құрама түрлерден деректерді шығаруға және нысандардың әртүрлі бөліктеріне әрекеттерді қолдануға мүмкіндік береді.
21.Python бағдарламалау тіліндегі жолдар(строки). Оның функциялары мен әдістері.
Python-да жолда орындалатын дайын әрекеттер жиынтығы бар. Мұндай әрекеттер жиынтығы әдіс деп аталады. Әдістерді қолдану үшін әдіс атауы жолдан кейін .metod() түрінде жазылады. Pythonның кейбір әдістерімен танып шығайық.
find() Берілген мәнді іздейді. Болса бірінші кезедескен индексті, жоқ болса -1 ді шығарады
index() Берілген мәнді іздейді. Болса бірінші кезедескен индексті, жоқ болса ValueError тудырады
replace() Жолдан ескі мәнді жаңасына аустырады
split() Бөлгіш ретінде пайдаланылады (егер белгісіз қалдырылса, бос орыннан бөлінеді
lower() Жолдағы барлық әріптерді кіші әріптерге айналдырады
22.Алгоритм және бағдарламалау. Алгоритм түрлері
Алгоритм – белгілі бір мәселені шешуге бағытталған әрекеттер тізбегін орындау үшін орындаушыға нақты нұсқау.
Алгоритмдердің үш түрі бар:
ретті – әрекеттер бірінен соң бірі ретімен орындалады;
циклдік – әрекеттердің қайталануын ұйымдастырады;
тармақталу - бір немесе бірнеше логикалық шарттарды қамтиды және бірнеше өңдеу тармақтары бар. Тармақтану базалық талдау нәтижелеріне байланысты іс-әрекет бағытын таңдауға мүмкіндік береді.
23.Python бағдарламалау тіліндегі тармақталған алгоритмнің жасалу жолы.
Тармақталған алгоритмді жасау үшін if, else, elif функциялар қолданады. Мысалы
if n < 100:
a = a + b
if логикалық_өрнек {
өрнек 1;
өрнек 2;
…
}
Оны қарапайым тілмен айтқанда: егер логикалық өрнек ақиқат болса, онда фигуралық жақша ішіндегі өрнектер орындалады; логикалық өрнек жалған мәнді қайтарса, онда фигуралық жақшалар ішіндегі код орындалмайды. Ағылшын тілінен «if» «егер» деп аударылады.
24. Python бағдарламалау тіліндегі циклдік алгоритмнің жасалу жолы.
While циклі арқылы
while - жалпы цикл. Ол құрылымдық бағдарламалауды қолдайтын барлық тілдерде бар, соның ішінде Python. Оның синтаксисін барлық тілдер үшін төмендегідей қорытындылауға болады:
while логикалық_өрнек {
өрнек 1;
…
өрнек n;
}
25. Деректер түрі. Python бағдарламалау тілінде деректер түрін
түрледіру(преобразование).
Python-да бірнеше стандартты деректер түрлері бар:
Numbers (сандар)
Strings (жолдар)
Lists (тізім)
Dictionaries (сөздік)
Tuples (кортеждер)
Sets (жиындар)
Бұл деректер түрлерін, өз кезегінде, бірнеше критерийлер бойынша жіктеуге болады:
өзгермелі (тізімдер, сөздіктер және жиындар)
өзгермейтін (сандар, жолдар және кортеждер)
реттелген (тізімдер, кортеждер, жолдар және сөздіктер)
ретсіз (жиындар)
26.
27. Деректер құрылымының түсінігі.
Деректер құрылымдары өзі айтып тұрғандай кейбір мәліметтерді сақтай алатын құрылым. Басқаша айтқанда, олар қатысты деректерді сақтау үшін пайдаланылады. Python-да төрт кірістірілген деректер құрылымы бар: тізім, кортеж, сөздік және жиын.
28.Python тілінде екі өлшемді тізімдерді енгізу және өңдеу. Есептер шығару.
Бағдарлама екі өлшемді массивке кіруге мүмкіндік берсін, олардың әрқайсысы бос орындармен бөлінген m сандарды қамтитын N жолдар түрінде. Оларды қалай есептеуге болады? Мысалы, осылай:
A = []
for i in range(n):
A.append(list(map(int, input().split())))
N жолдар мен N бағандарынан шаршы массив болсын. Сол жақ жоғарғы бұрышынан оң жақ төменгі бұрышқа өтетін басты диагональдағы элементтерге (яғни ij) 1 мәнді, басты диагональдан жоғары тұрған элементтерге – 0 мәнді, басты диагональдан төмен тұрған элементтерге – 2 мәнді беру қажет.
Бұл мәселені шешудің бірнеше жолдарын қарастырайық. Басты диагоналдан жоғары элементтер-бұл ij элементтері. Келесі алгоритм аламыз:
for i in range(n):
for j in range(n):
if i < j:
A[i][j] = 0
elif i > j:
A[i][j] = 2
else:
A[i][j] = 1
29. Python тілінде тізім элементтерін сұрыптау
Python тілінде сұрыптау, егер олар қайталанатын болса, sorted() функциясымен, ал тізім болса, list.sort() әдісімен орындалады.
30.Құрылымдар. Жиындар. Жиындарды өңдеу
Python-дағы жиындар ретсіз элементтерді қамтитын деректер құрылымдары болып табылады. Элементтер де индекстелмейді. Тізім сияқты жиын элементтерді қосуға және жоюға мүмкіндік береді. Дегенмен, жиынды басқа деректер құрылымдарынан анықтайтын және бөлетін бірқатар арнайы сипаттамалар бар:
Жинақта қайталанатын элементтер жоқ;
Жиынның элементтері өзгермейді (оларды өзгертуге болмайды), бірақ жиынның өзі өзгермелі және өзгертуге болады;
Элементтер индекстелмегендіктен, жиындар кез келген кесу немесе индекстеу әрекеттерін қолдамайды.