Въведение в типове данни и променливи на програмата
-
0:01 - 0:03Това, което искам да направя с това видео,
-
0:03 - 0:07е да Ви запозная с идеята
-
0:07 - 0:09какво представлява една компютърна програма.
-
0:09 - 0:10И в случай, че искате да следвате примерите заедно с мен,
-
0:10 - 0:11а аз горещо Ви препоръчвам да го направите,
-
0:11 - 0:13защото най-добрият начин да научите компютърни науки,
-
0:13 - 0:15е всъщност да играете с кода сами.
-
0:15 - 0:18Това е средата на Python, така че
-
0:18 - 0:21ще програмирам доста на Python.
-
0:21 - 0:24Тази среда специфично се нарича PyScripter.
-
0:24 - 0:27P-Y-S-C-R-I-P-T-E-R.
-
0:27 - 0:30Безплатна е и е софтуер с отворен код.
-
0:30 - 0:33Аз използвам Python...
-
0:33 - 0:35Мисля, че използвам Python 2.6 или 2.7.
-
0:35 - 0:36Ако използвате Python 2,
-
0:36 - 0:39примерите Ви ще бъдат същите като моите,
-
0:39 - 0:40ще работят по същия начин.
-
0:40 - 0:41Но ако използвате Python 3,
-
0:41 - 0:43ще Ви се наложи да използвате малко по-различен
-
0:43 - 0:45език от време на време, за да работи правилно.
-
0:45 - 0:49Ще се опитам да обръщам внимание, когато нещо подобно възникне.
-
0:49 - 0:52Нека започнем с писането на първата ни компютърна програма.
-
0:52 - 0:53Готиното е,
-
0:53 - 0:55че можем да пишем програмата си направо тук.
-
0:55 - 0:58И всъщност наистина просто редактираме текст във файл.
-
0:58 - 0:59Това е всичко.
-
0:59 - 1:01Просто множество инструкции
-
1:01 - 1:03и компютърът ще започне
-
1:03 - 1:05в началото на файла и ще тръгне надолу,
-
1:05 - 1:07четейки инструкцийте.
-
1:07 - 1:08Въпреки че по-късно ще видите,
-
1:08 - 1:09че има начини да кажем на компютъра
-
1:09 - 1:13да прескача от ред на ред и обратно през инструкциите,
-
1:13 - 1:16така че да може да прави някои неща повече от веднъж, а някои да пропусне.
-
1:16 - 1:19След като сме изяснили това, нека напишем първата си проста програма
-
1:19 - 1:20и междувременно
-
1:20 - 1:22ще представим някои от основните идеи,
-
1:22 - 1:25които използваме в компютърната програма.
-
1:25 - 1:30Нека напиша една много проста компютърна програма.
-
1:30 - 1:32Една проста компютърна програма
-
1:32 - 1:35Е буквално просто един израз.
-
1:35 - 1:41Нека напиша само "print 3+7",
-
1:41 - 1:45и тя ще вземе 3+7 и ще го отпечата.
-
1:45 - 1:47Програмата ще го предаде на функцията за отпечатване,
-
1:47 - 1:48вградена в Python.
-
1:48 - 1:52Може би ще го напиша като "print(3+7)"
-
1:52 - 1:54Нека запазим файла.
-
1:54 - 1:56ако се замислим, има само една команда
-
1:56 - 1:58на първия ред. Тя казва да се отпечата 3+7.
-
1:58 - 1:59Всъщност, нека добавим друга команда,
-
1:59 - 2:02само за да видите, че "инструкциите" се дават отгоре-надолу.
-
2:02 - 2:07Нека добавим нов ред: print(2-1)
-
2:07 - 2:16и още един: print ("this is a chunk of text")
-
2:16 - 2:18Сега, нека видим какво би направила тази
-
2:18 - 2:20компютърна програма.
-
2:20 - 2:22Нека я запазим.
-
2:22 - 2:23Нека я запазим.
-
2:23 - 2:28Запазих я под името "testarea.py"
-
2:28 - 2:32Разширението .py показва, че файлът е за Python
-
2:32 - 2:34Сега, нека стартираме програмата.
-
2:34 - 2:36Какво е чудесното на тази среда за разработка,
-
2:36 - 2:39тази IDE (Интегрирана среда за разработка) e това,
-
2:39 - 2:42че в общи линии можем да пишем и стартираме програмите си от едно и също място.
-
2:42 - 2:44Освен това, тя оцветява текста,
-
2:44 - 2:46така че може да се различи ясно кое е функция, кое не е,
-
2:46 - 2:47и различните типове данни...
-
2:47 - 2:49ще кажем повече за типовете данни по-късно.
-
2:49 - 2:52Да видим какво става, като стартираме програмата!
-
2:52 - 2:54Ето, пуснахме я!
-
2:54 - 2:56Отпечата 10, след това отпечата 1,
-
2:56 - 2:59след това - "this is a chunk of text"
-
2:59 - 3:00Така че направи точно каквото и казахме
-
3:00 - 3:01И го стори в същата наредба
-
3:01 - 3:06Започна с 3+7, което е равно на 10,
-
3:06 - 3:08и го отпечата - отпечата 10.
-
3:08 - 3:12после отпечата 2-1,
-
3:12 - 3:13и накрая отпечата "this is a chunk of text"
-
3:13 - 3:16Сега, още едно нещо, което искам да Ви покажа от рано,
-
3:16 - 3:17това е идеята за типове данни.
-
3:17 - 3:19Може би като видяхте примера,
-
3:19 - 3:21имахте странното чувство,
-
3:21 - 3:22че има някаква разлика
-
3:22 - 3:27между 3, 2, 1 или 7 и "this chunk of text".
-
3:27 - 3:32Това е число. Мога да събирам числата. Те представят
-
3:32 - 3:34някакъв вид количество. Докато това тук представя
-
3:34 - 3:39парче текст. И интуицията Ви би била права -
-
3:39 - 3:40това наистина са различни видове данни.
-
3:40 - 3:43това наистина са различни видове данни.
-
3:43 - 3:463, 7 и 1 - това са числа.
-
3:46 - 3:49В нашия случай, те са цели числа
-
3:49 - 3:52И... това тук,
-
3:52 - 3:53това всъщност е низ
-
3:53 - 3:55което е дума, която чувате доста в компютърните науки.
-
3:55 - 3:59Всъщност това е последователност от символи.
-
3:59 - 4:02и в Python всъщност можем да попитаме какъв тип са всички тези неща
-
4:02 - 4:04и в Python всъщност можем да попитаме какъв тип са всички тези неща
-
4:04 - 4:05Просто ги подаваме на функцията type
-
4:05 - 4:11така че сега трябва да изведе типа на 3+7, а не просто 10
-
4:11 - 4:15Нека опитаме. Сега ще изведа 2-1, за да Ви покажа разликата
-
4:15 - 4:19След това ще изведа типа на this chunk of text
-
4:19 - 4:22Типа на this chunk of text.
-
4:22 - 4:25Нека запазим файла. Ще натисна Ctrl+S, което е пряк път към запазването му.
-
4:25 - 4:27Нека запазим файла. Ще натисна Ctrl+S, което е пряк път към запазването му.
-
4:27 - 4:30и после ще се опитам да пусна програмата.
-
4:30 - 4:31и после ще се опитам да пусна програмата.
-
4:31 - 4:33Започва от вътрешната скоба.
-
4:33 - 4:35Започва от вътрешната скоба.
-
4:35 - 4:393+7 е 10. След това намира типа на 10, който е int
-
4:39 - 4:43int е типът, затова отпечатва този тип Int.
-
4:43 - 4:45Ето тук го виждате, казва тип "int"
-
4:45 - 4:47int е съкратено от Integer (=цяло число)
-
4:47 - 4:48Ето тук пише print(2-1). Програмата го изпълнява на ето този ред,
-
4:48 - 4:50Ето тук пише print(2-1). Програмата го изпълнява на ето този ред,
-
4:50 - 4:51изписва 1, след което изписва типа на цялото нещо тук.
-
4:51 - 4:55изписва 1, след което изписва типа на цялото нещо тук.
-
4:55 - 4:56Така че вместо да отпечата текста
-
4:56 - 5:00отпечатва типа и. И типът е String.
-
5:00 - 5:02следващото нещо, което искам да Ви покажа,
-
5:02 - 5:05следващото нещо, което искам да Ви покажа,
-
5:05 - 5:07докато експериментираме с програмите,
-
5:07 - 5:10е идеята за променлива (Variable). Защото ще искаме
-
5:10 - 5:13да запазим тези неща на различни места.
-
5:13 - 5:14В следващите видеота ще научим, че в Python
-
5:14 - 5:17е по-скоро все едно имаме етикети за тези неща
-
5:17 - 5:19и етикетите могат да се променят.
-
5:19 - 5:21и етикетите могат да се променят.
-
5:21 - 5:26Нека напишем съвършено различна програма,
-
5:26 - 5:28като използваме променливи. Готиното с Python е,
-
5:28 - 5:30въпреки че някои хора не го харесват, че можеш да сложиш
-
5:30 - 5:35всеки тип данни в какъвто и да е тип данни променлива.
-
5:35 - 5:41Така че можем да напишем a=3+5
-
5:41 - 5:51и после b=a*a-a-1
-
5:51 - 5:53забележка: използваме * за умножение
-
5:53 - 6:03и после можем да напишем c=a*b
-
6:03 - 6:06и после можем да напишем c=a*b
-
6:06 - 6:12Ще направя малко място тук, за да изглежда малко по-чисто
-
6:12 - 6:14Ще направя малко място тук, за да изглежда малко по-чисто
-
6:14 - 6:20Нека отпечатаме c. Ако искате, можете да се пробвате
-
6:20 - 6:23Нека отпечатаме c. Ако искате, можете да се пробвате
-
6:23 - 6:24да познаете стойността на с,
-
6:24 - 6:26или просто можем да пуснем програмата.
-
6:26 - 6:27Така че, нека да пуснем програмата и тогава
-
6:27 - 6:28ще се върнем да видим дали всичко е наред.
-
6:28 - 6:30ще се върнем да видим дали всичко е наред.
-
6:30 - 6:32Ще запазя програмата и ще я пусна
-
6:32 - 6:35Ще запазя програмата и ще я пусна
-
6:35 - 6:39Извежда, че 440 е стойността на с. Нека проверим
-
6:39 - 6:443+5=8, така че а ще има стойност 8
-
6:44 - 6:47На всяко място в програмата, докато не променим а,
-
6:47 - 6:51всеки път, когато пишем а, ще се разбира, че имаме предвид 8.
-
6:51 - 6:53Стигаме дотук, където трябва да дефинираме b
-
6:53 - 6:57като a*a. Програмата знае точно как се подреждат операциите,
-
6:57 - 7:00така че умножението е първо. a*a е 64.
-
7:00 - 7:03така че умножението е първо. a*a е 64.
-
7:03 - 7:0664-а е 64-8, което е 56. Минус 1 е 55.
-
7:06 - 7:1564-а е 64-8, което е 56. Минус 1 е 55.
-
7:15 - 7:21така че b=55. c е a*b,
-
7:21 - 7:26което е 8 пъти по 55, тоест 440. Всичко е наред.
-
7:26 - 7:28което е 8 пъти по 55, тоест 440. Всичко е наред.
-
7:28 - 7:33Може би искате да видите какво се случва, когато
-
7:33 - 7:34имаме различни а-та. Нека опитаме.
-
7:34 - 7:35имаме различни а-та. Нека опитаме.
-
7:35 - 7:38Можем просто да направим а равно на -6
-
7:38 - 7:41Можем просто да направим а равно на -6
-
7:41 - 7:45Можем просто да направим а равно на -6
-
7:45 - 7:49и да пуснем програмата, за да видим какво се случва.
-
7:49 - 7:51Получаваме -246. Можете да го проверите ако искате.
-
7:51 - 7:54Започваме ред по ред, и получаваме стойността на всички тези променливи
-
7:54 - 7:57как са дефинирани
-
7:57 - 8:00и виждаме какъв отговор получаваме.
-
8:00 - 8:03Сега, ако програмите бяха само някакви команди
-
8:03 - 8:05и винаги протичаха по един и същи начин,
-
8:05 - 8:08нямаше да можем да правим интересни неща!
-
8:08 - 8:10За да правим наистина интересни неща, както и ще стане,
-
8:10 - 8:13ще започнем да виждаме неща като условия и цикли
-
8:13 - 8:16ще започнем да виждаме неща като условия и цикли
-
8:16 - 8:16ще започнем да виждаме неща като условия и цикли
-
8:16 - 8:20Нека видим едно условие. Ще оставя първите редове непроменени.
-
8:20 - 8:35Ще напишем if (a<0). В този случай, ще print(c)
-
8:35 - 8:50след това ще напишем else, и в този случай ще print (c-a)
-
8:50 - 8:52Това е интересно. Може би вече предчувствате
-
8:52 - 8:54какво ще се случи тук. Но нека запазим файла.
-
8:54 - 8:57Невероятно е колко много може да бъде направено
-
8:57 - 8:58само чрез тези условия. Така че това казва,
-
8:58 - 9:00че ако а е по-малко от 0, да се направи това, иначе
-
9:00 - 9:04ако а не е по-малко от 0, да се направи онова.
-
9:04 - 9:06Забележете, че не се изпълнява всичко, ред по ред
-
9:06 - 9:10В зависимост от това дали стойността на а е по-малка от 0 или не
-
9:10 - 9:12ще се изпълни или този ред,
-
9:12 - 9:14или другият.
-
9:14 - 9:18И Python знае дали да изпълни
-
9:18 - 9:21print(c), ако a e по-малко от 0, защото
-
9:21 - 9:23print(c) има аргумент с.
-
9:23 - 9:26То знае, че има други аргументи,
-
9:26 - 9:28заради тази запетая
-
9:28 - 9:30заради тази запетая
-
9:30 - 9:32и ако а е не по-малко от 0, тогава се изпълнява този else.
-
9:32 - 9:35и ако а е не по-малко от 0, тогава се изпълнява този else.
-
9:35 - 9:38И ако искате да направите нещо друго след това,
-
9:38 - 9:40без значение дали а е по-малко от нула или не,
-
9:40 - 9:42можете да се отървете от тази if-else клауза,
-
9:42 - 9:44можете да се отървете от тази if-else клауза,
-
9:44 - 9:46като сложим край на този абзац. Така че сега можем да отпечатаме един низ.
-
9:46 - 9:50като сложим край на този абзац. Така че сега можем да отпечатаме един низ.
-
9:50 - 9:53Всъщност, нека добавим още код към тази клауза.
-
9:53 - 9:58Нека да отпечатаме тук "a<0"
-
9:58 - 10:00Забележка: Това няма да бъде изчислено.
-
10:00 - 10:02То е в низ, така че направо ще се отпечата.
-
10:02 - 10:04Точно тук ще кажем
-
10:04 - 10:14print ("a is not less than 0")
-
10:14 - 10:18Това е интересна програма. Нека сега я пуснем.
-
10:18 - 10:23Да се надяваме, че ще работи. Запазвам я. Нека пуснем програмата.
-
10:23 - 10:26Отпечата "a<0", така че явно сме вътре в тази клауза.
-
10:26 - 10:30Отпечата "a<0", така че явно сме вътре в тази клауза.
-
10:30 - 10:34Отпечата "a<0", така че явно сме вътре в тази клауза.
-
10:34 - 10:36след това отпечатва с, което е -246.
-
10:36 - 10:42след това отпечатва с, което е -246.
-
10:42 - 10:43Това не се изпълни, защото би било
-
10:43 - 10:47изпълнено само ако а не беше по-малко от 0.
-
10:47 - 10:48Но след това излиза от клаузата и отпечатва
-
10:48 - 10:50Но след това излиза от клаузата и отпечатва
-
10:50 - 10:51"we are done with the program", без значение стойността на а.
-
10:51 - 10:53Нека сега променим а, за да видим дали можем
-
10:53 - 10:55да пуснем другата клауза. Нека а е по-голямо от 0
-
10:55 - 10:57да пуснем другата клауза. Нека а е по-голямо от 0
-
10:57 - 11:04Нека присвоим на а стойността 9 и пуснем програмата.
-
11:04 - 11:08Така, а е 9. Програмата проверява дали а е по-малко от нула,
-
11:08 - 11:10и очевидно а не е по-малко от 0, така че тя не би
-
11:10 - 11:11и очевидно а не е по-малко от 0, така че тя не би
-
11:11 - 11:13пуснала това, и стига до else клаузата.
-
11:13 - 11:15Сега би отпечатала "a is not less than 0"
-
11:15 - 11:19каквото и стори тук, след това отпечата с-а
-
11:19 - 11:22което е 630. Излиза от клаузата
-
11:22 - 11:25и без значение каква е стойността на а,
-
11:25 - 11:28отпечатва "we are done with the program".
- Title:
- Въведение в типове данни и променливи на програмата
- Description:
-
Това видео описва стъпките на програмиране на проста програма в Python (Питон). Основи на типове данни, променливи, различни команди и условни оператори ще бъдат представени.
- Video Language:
- English
- Duration:
- 11:28
![]() |
Stan B edited Bulgarian subtitles for Introduction to Programs Data Types and Variables | |
![]() |
Stan B edited Bulgarian subtitles for Introduction to Programs Data Types and Variables | |
![]() |
Khan Academy BG edited Bulgarian subtitles for Introduction to Programs Data Types and Variables | |
![]() |
Khan Academy BG edited Bulgarian subtitles for Introduction to Programs Data Types and Variables | |
![]() |
Stan B edited Bulgarian subtitles for Introduction to Programs Data Types and Variables | |
![]() |
Stan B edited Bulgarian subtitles for Introduction to Programs Data Types and Variables | |
![]() |
Ivo edited Bulgarian subtitles for Introduction to Programs Data Types and Variables | |
![]() |
Ivo edited Bulgarian subtitles for Introduction to Programs Data Types and Variables |