You are on page 1of 169
Ban du thao TAC GIA: Tign sf DS Dute Dong - Trugng DHCN-DHQG HN (Chi bién) Thae sy DS Thi Thiy Duong - Trung chuyén Nguyén Hué Thac s9 Nguyén Thanh Ting - Truong chuyén Ha NGi-Amsterdam Huong dan hoc tin hoc Iop 11 voi Python » é Habook LOI NOI DAU Doi voi moi ca.nh4n, tinh toan di 1a mot ki nang quan trong trong cudc s6ng hang ngay va lap trinh sé 14 mt kd ning méi dong vai tr quan trong trong x3 héi hién dai Ki ning nay gitp ching ta sai Hi thong tin, diéu khién cdc thiét bi ty dong. Viée trang bi Ki nang va rén luyén tr duy lap trinh 4a duoc cac chuyén gia giao duc trong nude quan tim ding mitc va thé hién 6 trong chung trinh gido duc pho théng mdi cia mén Tin hoc, duge B6 Gido duc va Dao tao ban hinh nim 2018. Khi ging day vé lip trinh, ching ta phi lya chon ngém ngft lip trinh 8 minh hoa. Trong cdc tai liéu gidng day vé lp trinh trrdc day (ca trong nude va nude ngoai) thuong sit dung cdc ngon ngi lap trink abut Pascal, C/C++, ... d€ minh hoa. Tuy ahién, hién nay, cdc tai ligu mréc ngoai thudng hay sir dung ngén ngit lap trink Python cho di urgng hoc sinh phé thing ciing nh sinh vién dai hoc. Ngdn ngtt Lip winh Python 6 cdu tic 16 rang, ngin gon, dé hiéu, dé hoc, dugc si dung nhiéu trong phan tich di liéu, trong linh wite tri tué nhan tao va cé nhiéu trién vong trong thé gidi hién dai_ ‘Quyén sach nay la ti Liu day hoc lip trinh sit dung ng6n ngit Python. Sach duce ign soan theo cach dn dat kién thifc cing vdi cic vi du minh hoa phi hop cho viéc giing day cing nhu ne hoc déi véi hoe sinh lop 11 theo chyong trinh hién hinh. Dic biét, 4@ hoc sinh rén Inyén ie ning va ty duy Lip trinh nén sdch cung cp hé théng bai tap phong phu, voi méi bai co cac bé dif liéu dé hoc sinh tht nghiém, kiém tra sau khi vit xong chuong trinh, Cac tac gid mong rang, quyén sach nay sé hitu ich cho cdc thay gido, cd gido, cac em hoe sinh trong ang day, hoc lap tinh. Céc tic gia cing mong muén nhin duoc déng gép, phé binh cia cac thay gido, c6 gido, cdc em hoc sinh va ban doc. Tap the tac gia MUC LUC LOINOIDAU... Chi a1 CHUONG TRINH DON GLIAN 2. Neéa nett lap trinh bic cao 3. Churong trinh dich . Bai tap = Bai. NGON NGO LAP TRINH PYTHON @ ti) 1. Ngdn ngit lap trinh Python. 2: Cai dic Python wéathé diéu hin Windows: 3, Chumong trinh dim tién Bai tap ee Bai3. BIEN, PHEP GAN, PAP TOAN VA BE THICSO HOC wy, 1. Bign, each tho bién, phép gan trong Python... ai Phe tod va bigs thie 36 hoe trong Python Bai 4. 2 Np o ign tr ban phim. Bai tip tye hinh 1. VIET CHUONG TRIN BON GLANError! Bookmark not defined. Bais. TU BAITOAN DEN CHUONG TRINH (2 tiét). 2. Giai bai toan trén may tinh 3. toan va mé ta 4. ‘Mat sé vi du ve thuat toan. BATDOC THEM VE CONG CU LAP TRINH THONNY .. 1. Gidi thigu vé Thonny 23 28 28 29 29 33 8 Bai. . CHUONG TRINH CON (Tiép — 1 tiét). 2. Cai dat Thonny trén hé diéu bank Windows 2.0. 3B Cha dé 2 TO CHUC RE NHANH VA LAP (CAU LENH RE NHANH (2 tiét), 1. Biéu thie quan hé, biéu thite logic. 2. Cau 1énh sé nbanh dang if. Bai tp CAULENH RE NHANH (Iiép— 28 1. Cau 1énh 18 nhénh if-else. Bai tip thre hanh 2: CAU LENH' RE NHANE.. (CAU LENH LAP (2 tiét) . Pes 1. Cau tric lap trong mo ta thnat toan... 2. Cau 1énh lap trong chwong trinh Python ... Bai tip... ‘BH tip the hanh 3: CAULENALAP.... URIs cae cache gpa ee cia ham rater) Bai tap Bai tip tne hanh 4: CAU LENHLAP (Tiép CHUONG TRINH CON (2 1&1 1. Khai nigm chuong trink con. 2. Tim hidu cach xy dimg chuong trinh con trong Python. 3. Phan loai churong trinh con... Bai tip . 1. Tham sé hinh thir va tham s6 thee su. a Bien cnc bi va bign toan cv. . Bik tap tae: hinh 5 CHUONG TRINH CON... Error! Bookmark not defined. Chi dé 3 KIEU DU LIEU XAU, KIEUDU LIEU DANH SACH DU LIEU KIEU XAU (2 tiét).... 1D ligukién sau. 2: Cac tno te sai xi ong Python... Error! Bookmark not defined. Bai tap thuc hanh 6: DU LIEU KIEU XAU_ Bail2, KIEU DU LIEU DANH SACH (2 wét).. 1. Kiéu di lién danh sach 2. Cie thao tée trén danh sich trong Python 1. Vai tré cia kiéu tép 2. Ma tép dé doc ghi dif liga 3. Doc va ghi tép 4. Dong tp. 5. Vids... Bai tap tha hann 10: KIEU DU LIEU TEP......Frvor! Bookmark not defined. Bail, KIEU DU LIEU DICTIONARY 114 1. Kiéu dit ligu dictionary. 114 2. Cae thao tée trén dictionary. 115 Bai tap 117 Bai tp va thye hah 11: KIEU DU LIEU DICTIONARY 118 Error! Bookmark not defined. Error! Bookmark not defined. 124 Error! Bookmark 1 not defined. 130 ‘Error! Bookmark n not defined. 136 MOT SO.CHUYEN DE NANG CAO CHUGNG TRINH CON ... : DU LIEU KIFU xXAU DU LIEU KIEU DANH SACH (Tip) Bai tip thuc hank 9: BANG VUONG TRONG PYTHON. Bai tap thre hanb 10: KIEU DU LIEU TEP... Bai 14: KIEU DU LIEU DICTIONARY. Che def CHUONG TRINH DON GIAN Bail CAC KHAI NIEM VE CHU’O'NG TRINH MAY TINH (1 tiét) 4. Cac khai niém Chong trinh miy tink 14 mot tip hgp cdc cau én, chi din cho may tinh the hign mot nhiém vu nio dé. Lap trinh diéu khién - thé 3 phat . Cho banh ra dia ‘Ngén ngit 1p trinh duoc con ngwti tao ra dé viet cae churong tinh may tinh. ‘Neon ngit may 14 mot trong cac ng6n ngit lap trink. Neon ngit may co mm diém 1a kkhai thac triét dé tinh nang phan eting. Tuy nhién, ngén ngit may kho nhd, phitc tap, céng kénh va khé chinh sta Dé khic phuc nhimg han ché cia ng6n ngit may, cic ngén ngtt Kip trinh bac cao Ng6n ngtt lap trinh bac cao Li ngén ngit gan voi ngén ngit ty nhién, dé nho, dé chinh stra. Dé thyc hién duge chong trinh trén ng6n ngit lap trinh bie cao can chuyén thanh chuong trinh trén ngén ngit may. 2. Ngén ng@ lap trinh bac cao ‘Su phat trién cia ngén ngif lap trinh gan lien voi sv phat trién cua tin hoc. Da co hang nghin ng6n ngé 1ap trinh duoc thiét ké, mdi loai ngén ngit phit hgp véi mot lop cic bai toan nhat dinh. Nhing ng6n ngff lp tinh bic cao hién nay thuimg cung cap ahiéu thy vién giup cho viéc lap trinh dé dang va hiéu qua hon. Mot s6 ngén ngit lap trinh bac cao thong dung hién nay: Python, C, C++, C#, Java, Java Script, PHP, ... Python la m6t ngén agit lap trinh bc cao do Guido van Rossum tao ra nam 1991. Python c6 cu trie 16 rang. ngan gon, dé hiéu, dé hoc. Hién nay, Python dugc sit dung nhiéu trong cic yéu cau phin tich att liéu hay trong linh vite hoc may [a linh vue quan trong va nhieu trién vong trong thé gidi hién dai. C la ng6n ngit duoc xay dung boi Dennis Ritchie nam 1972 va due sit dung trong hé diéu hanh UNIX. Tir d6 C con duoc ding trong nhiéu hé dieu hanh khac va 1rd thanh mot trong nhiing ngén ngit phé dung nhat. C rat hiéu qua va dugc wa chudng dé viét phan mém hé thong, mac dui n6 cing duoc dimg cho viée viét cc img dung. Ngoai ra, C cing thudng dude ding lam ng6n ngtt giang day lap trinh. C++ 1a ng6n ngif lap trinh duge tao ra boi Bjame Stroustrup nh mét phan mo rng cia ngén ngit lap trinh C voi cac tinh nang hién dai. C++ co thé chay trén nhiéu nén ting khac nhau nhe Windows, Mac OS, Linux. Ubuntu va cae phién bin Unix. 3. Chuong trinh dich Chuong tinh viét én ngén ngit bic cao phai duge chuyén ddi thanh chong trinh trén ng6u ngit may mdi co thé thue hién duge. Chuong trinh cé chite nang chuyén chirong trinh duoc viét bang ngén ngit lap trinh bac cao thanh chong trinh ttén ng6n ngit may dirgc goi la chyong trinh dich. Chuong trinh dich abiin au vio 1a chong trinh viét bing ngén ngit [ap trinh bac cao (chwong trinh ngudn), thc hién chuyén d6i sang ngén ngit may (chvtong trinh dich). Chwong érinh nguon —> Chuong trinh dich —> Churong trinh dich. Bai tap Bai 1. Ng6n ngtt lip trinh 1a gi? Chuong trinh 1a Bai 2. Tim hiéu va so sinh sy phd dung cia cdc ngén ngtt lip trinh hién nay. Bai2 NGON NGU’ LAP TRINH PYTHON (2 tiét) 1. Ng6n ng@t lap trinh Python Python 1a mét ngén ngi lip trinh bac cao do Guido van Rossum tgo ra nam 1991. Hién nay, Python 14 mét ng6n ngit 1p trinh phé bién, c6 nhiéu wu diém, hé tro thee vvign phong phi va chay duoc trén nhieu hé diéu hanh. Python di dugc ding dé phat tiién cac ting dung Web, phan mém ting dung, lap trinh game, diéu khién robot, xi 1¥ inh, tne quan dif ligu, phn tich dif liéu, ... Tink dén thei diém hién tai, Python co ba giai doan phat trién chinh la Python 1, Python 2, Python 3. Cac phién ban cia Python 3 khong hoan toan twtong thich vei Python 2, tuy nhién, co cong cu de chuyen i fir phién ban Python 2 sang Python 3. ‘Dé bat dau voi Python, ching ta tim hiéu cau lénh print () 14 mot ciu lénh co bin va hitu dung trong Python. Cau lénh print () sé dura mét théng diép ra man hinh trén mét dong. Cau lénh 6 ci phap nut sau: print (théng diép can dua ra) Chi ¥, théng diép duoc dt nim trong hai diu nhay don hodc hay nhay kép. ‘Vi du, chwong trinh gom hai lénh sau: print ("Python 1a m6t ngén ng® 1ap trinh bac cao") print ('print() 14 1énh in za man hinh’) sé dua ra man hinh hai dong nu sau: Python 14 mét ngén ng lap trinh bac cao print() 18 1émh in ra man hinh 2. Cal dat Python trén hé diéu hanh Windows Dé cdi Git Python lén may tinh, em cn chon ding phién phi hop voi hé dieu hinh ma miy tinh di cli djt. Néu miy tinh cia em dang sit dung hé diéu hanh Windows, em kiém tra xem hé diéu hanh Windows cia em la 32-bit hay 64-bit? Start > Computer —> Properties —> System ‘Wao trang https://www python org/downloads/windows/, la chon phién ban mdi hat (phién bin hién nay sé bat dau bang s6 3, thé hién la Python 3) va cai dat. Kbhi cai Gat, chii ¥ tich chon “Add Python 3.9 to PATH™ Install Python 3.9.5 (64-bit) Select install Now to install Python with default settings, or choose Customize to enable or disable Oost ures, af neat LocaisPregrammPythonPytnenia sd fie aelations => Customize instaftgtion Chemzelocaten and terre: EF install launcher tor all users (recommended) Chui y: tich vio “Add Python 3.9 to PATH™ Sau khi cai dat Python 3, may tinh cling sé duge eai dt mot chuong trinh 6 tén 14 IDLE (Integrated Development Environment). Chay IDLE dé cé giao dién nhu ‘hinh dui day, cita sO may goi 1 cita so len Hinh anh giao dign IDLE ‘Dé thir nghiém lénh print, em g6 print ("Hello World!") roi nhan Enter ‘Ket qua nhu hinh dudi diy W [ib Python 3.1 Shell - a * File Edit Shell Debug Options Window Help Py 6, Dec 18 2018, 224) (MSC ¥.1916 32 Scredite* or “License()" for mire infor 3. Chudng trinh dau tién Cac em cé thé g6 va chay timg lénh trong ciza sé lénh nlur trong mmc 2 theo nguyén tac thong dich. Tuy nhién, chong trinh IDLE cho phep viet, chinh stra, vu Jai chong trinh thanh mét file va chay theo nguyén tic bién dich. Ngoai IDLE, hién nay c6 rit nhiéu phdin mém tién dung hd tra soan thao cho Python niut Notepad++, Sublime Text, Thonny, Pycharm, Trong IDLE, vao File va chon New File, mét cita sO mdi xuat hién (cita so nay duoc goi 14 cita sé soan thao). IDLE Shon a5 - @ x Fla| Et Shell Debug Options Wir Open ‘Calo Open Madu. AIM Recent Flas Module tiowsar AREC ex “Liconse ()" for more information. Path Braweor save ors Seve Ae Cale Shites Sew Copy As. ARSHITLAS Frint Window Cisi+P ose AREA Ea aa Em hay soan chitong trinh c6 n6i dung abit hinh dudi day. Sau d6, lun lai voi tén “Hello”, clni ¥ ring phan tén méréng mac dinh la py, nur vay ten day di la “Hello.py” File Edit Format Run Options Window Help print ("Python xin chao ban") 7 la mgt ngén ng& 1ép trinh bac cao rét d& hoc")] ‘Khi chong trinh da dugc lu tri, em.cé the tién hanh chay chwong trinh do bang céch vao Run, chon Run Module. Két qua sé duroc dura ra 0 ctfa sé lénh, em hay cho bidt két qua niin duge File Edit Format Run Options Window Help i j ustomized Shift+?5 fo PAe cao ee ae CheckModule — AlteX | Python Shell Sau khi soan thao va lvu tif lai clnrong trinh Python trén IDLE, cac em co the chay truc tiép chwong trinh do bang cach str dung phim tat F5 (hoc vao Run r6i chon Run Module). Ngoai ra, cic em ciing cé thé chay true tiép chuong trinh Python nh chay cae chiong trinh thuc thi khac. Cu thé, néu trong cia so Windows cac em kich dip vao tén file chuong trinh, hodc trong ctra sé lénh (Command Prompt) em danh tén file chong trinh roi nhan Enter. ‘Neu muon mé file 14p trinh da ltu bang IDLE de xem ho3c chinh sifa thi co. thé kich chuét phai chon Edit with IDLE. '& Move to OneDrive [af Edit with Notepad++ Bai tap Bail. Ma bai PAOO1 Soan thao mét chuong trinh céitén “IntroPython. py” cé.ndi dung dudi day va chay chufong trinh. Python is a programming language that lets you work more quickly and integrate your systems more effectively. Bai 2. Mot ban soan thao mét chuong trinh Python va khi chay chuong trinh thi bi bao 161 nhu hinh dudi day. Em hay giap ban tim wa sta 181. Window Help agit lénh trén mot ng6n ngd lap t d@ aga va cid ac thao Bac efaithugt cos | [& Syntaxérror x ED a wre scannng sng mart Bai3. Ma bai PAOO2 Soan thao mét chuong trinh cé tén “Rec.py” dé vé mét hinh chit nhat bang aoe * * * * dete Bai4. Ma bai PA003 Soan thao mét chuong trinh cé tén “Goodbye.py” dua ra man hinh: dong ahi nhit 1a ding chit Goodbye, sau dé bd qua mét dong, ding tint ba 1a mot dong See you again. _ _ See you again 14 Bai3 BIEN, PHEP GAN, PHEP TOAN VA BIEU THU SO HOC (2 tiét) L. Bién, c4ch tao bién, phép gan trong Python Cé hai h6p dimg dé dumg cic vién bi. Hp thit nh’t durge dan nhan bén ngoai la A, trong hép cé 20 vién bi. Hép thit hai dutgc dan nhan bén ngoai 1a B, trong h6p co 100 vién bi. Tintc hién thao tic sau: BO 5 vién bi ra khdi hop A sau dé b6 khoi hép B sO bi bang s6 bi co trong hop A: 1) Hay cho biét 6 bi trong hop B sau khi thutc thao tac tren? 2) Hay cho biét sé bi trong hép B sau khi tiép tuc thie hién lién tiép thém hai lan thao tac trén? Bien giéng nhu cai h6p duoc din nin, em co thé chia dit liéu vao trong hép va sit dung dif liéu khi cin théng qua tén nh’in. Dé tgo va dit gid tri cho bién sit dung inh gin theo dang: = Dé tra loi cau hoi 1, c6 thé thie hién day lénh duéi day, cdc 1enh m6 ta Lin hot cc thao tac cla cau hoi 1: ‘Cac enh mé ta | Lénh ga tir IDLE va | Tao mét file, soan thao lénh va hn trit thanh, thaotac | két qua min duoc chong trink, chay 4é xem két qua A= 20 >>> A= 20 BoD apmeBs TOO File Eat Format | Run_Options Window Help __ A=A-5 >>> A= A- 5 5 a loon = Oe Run. Castornied Shifts Cheek Module Altri print (B) >>> print (B) Python Shel 85 >> Ghi civi: Caw 1@nh print () khdng chi ding dé ghi mot thong diép ra min hin ma con cé thé ghi ra mot gia tri cia mot bien. aly Trong cac ngén ngif lap trinh, bién 14 mot ving bo ahd duoc dat tén, ding dé lu twit gid tri va c6 thé duoc thay d6i gid tri trong qua trinh thuc hién chuong trinh. Khi sit dung cau lénh gan, néu bién nim a bén trai cia 1énh gin chura timg dutge tao thi chifong trinh sé tao ra bién do va bién nhan gia ini bang gid tri biéu thitc o ve bén phai, trudng hop bien 4 dugc tao thi gia tri cia bien sé duoc thay doi bang gia ti biéu thitc @ vé bén phai aia lénh gan. Méi bién cén c6 tén va c6 ¥ nghia riéng. Quy tac dat tén bién: * Bao gom cae ky tr thing (a-z), ky nrhoa (A-zZ), chit sé (0-9), dau gach chan (_). Cé phn biét chit hoa va chit thuémg. * = Khdng bat dau bing chit s6. * Khong duoc dat tén trimg voi “ti khoa” aia Python (em cé the nbn ra tir ‘khéa nay vi tit khda cé mau cam khi viét lénh, vi du: not, and. or. for. if, .). Vi du vé cach dit tén: Cach dit tén sai >>> lyear = 2021 SyntaxError: invalid syntax >>> number@ = 2.4 SyntaxError: invalid syntax >>> and = ‘hello' SyntaxError: invalid syntax >>> yearl Cach dit én ding 2021 >>> _number = 2.4 >>> And = ‘hello! >pppra=2 p> AS >>> print (a) 2 >>> print (A) £ 2. Phép toan va biéu thuc s6 hoc trong Python 2.1. Phép toan s6 hoc trong Python Trong céc ngén ngif lap trinh déu cung cap cdc phép toan s6 hoc nhy cong. tnt, nbn, chia, ... trén cdc dai hrong. Bang duéi day mé ta cic phép toan ma Python hé tro. 16 en tod Ki higu trong ; Lénh gi tir DLE va Phép toan haa Vidy het qua nhan dug a4 12 Phép céng + aes | ° 15 >>> 15-3 Phep tri - 15 — 3=12 ee 12 >>> 3 * 5 Phép ahén * 3*5=15 15 Phép chia / 16/5 = 3.2 a. Tey I; >>> 16 // 5 ey a 16 5=3 Phi chia léy thong “ i“ : [a i685 Phép chia léy dur % 1685=1 — Liy thie * 2**3=8 - 2.2. Biéu thirc sé hoc trong Python Biéu thite s6 hoc trong Python 14 két hop cdc s6, cac bién, cac phép toan va dau ngolc tron trong fr ahw biéu thite trong toan hoc. Thi tir thuc hién cing trong ne ahi trong toan hoc, cu thé: Thue hién cdc phép toan trong du ngo‘c tron; © Thue hién cdc phép toan Wy thita; * Trong diy cac php toan khong chita ngodc thi thuc hién tif trai sang phii theo thit tu cac phép toan nhan (*) , chia (/), chia lay thong (//). chia lay dur (%) tintc hién tric va cdc phep toin céng (+), trit (-) thutc hién sau Vidu: Biéu thirc trong toan hoc Biéu thi trong Python 2a+3b 2ta + 3% ay/e xty/z Vb? — dae (b*b-44akc) ## (1/2) [a/b] xc (aff) *e 2.3. Dir liéu kiéu sé ‘Trong bai hoc nay, cc em sir dung bién nan gia i la s6 va chara phan biet do 14 sOnguyén hay sé thyc. Tuy nhién, trong Python e6 phan biét bién chita kiéu sé nguyén (int) hay bién cinta kiéu s6 thuc (float) . Khi mét bién duoc gan bang mot biéu thie, tiry thude biéu thie dé 14 sé nguyén hay sé thre thi bién sé 14 bién Inu wit 56 aguyén hoic sé thie. Cac em hay soan thao chuong trinh dudi day dé tim hiéu kiéu dit liu sé nguyén ‘va so thu. Trong chyong trinh co sif dung ham type (a) . bam nay cho bict kiéu dit ‘én ciia bien, ‘Lénh thir nghiém Két qua chay ja=3.2 _ | print (type (a)} aes >>> print (type (a) ) Cac em ciing c6 thé chuyén d6i kiéu dit liéu tr sé nguyén sang s6 thc wa nguoc Jai bing cach sit dung ham int () va float () . Khi mdt bién dang hau tri kiéu sd thutc ma bi ép vé lu trit kiéu s6 nguyén thi phan thuc sau dau cham thap phan sé bi bd di. Soan thao chung trinh dudi day dé tim hiéu. ‘Lénh thir nghiém ‘Két qua chay x=3.7 x = int (x) 3 print (type (x) )} print (x) 3.0 x = float (x) coed print (type (x) ) print (x) Bién trong Python cén cé thé hrutrit nhién kigu dit igu kha, cdc em sé duge hoc cac bai hoc sau. Bail. Bai 3. Bai 4. Bai tap a) Em hay soan thao chwong trinh gom cc lénh dudi day, chay va cho biét ket qua hién thi tén man hinh. b) Em hy thay phép toin niin (*) & dang lénh thit ba bing cdc phép ton cong (+), tnit(-). chia (/), chia lay thifong (//), chia lay dy (%), ly thita (**) va cho biét cic két qua trong img nbn duoc. . a) Em hay viet tiép lénh dé aban duoc chwong trinh giai phtong trinh bac hai Ax? + Bx +C = 0, biét ring phuong trinh co hai nghiém phan biét. BeB — 4x x1 = (-B + delta**(1/2)) /(2**A) print (x1) b) Em hay thay d0i gid tri duoc gan cho A, B, C-va chay dé tnt nghiém chuong trinh_ Em hay hoan thién chuong trinh dudi day bang cach viét biéu thitc gan cho bién p dé nhan duoc chuong trinh tinh a”. p ae. print (p) Em hiy thay déi gid ti gan cho bién a van dé thit nghiém chuong trinh, ‘Viet chutong trinh tinh dién tich hinh tron khi biét ban kinh, chwong trinh co sir dung bién r duge gan gid tri ban dau la ban kinh cia hinh tron 18 Bai 5, Viét chyong trink tink canb huyen cia tam giac vuéng khi biét d6 dai hai canh géc vuéng. Churong trinh c6 sir dung bién a va b, duge gin gid tri ban dau tong ting 1a 46 dai hai canh géc vudng. | | ; Habook Bai4 VAO RA DON GIAN (2 tiét) 1. Ghi da liéu ra man hinh ‘Nhu cdc em da duge hoc, cau lénh print () c@ thé ding dé ghi ra man hink trén mét dong mot thang diép (thong diép can duoc dat trong cap dau nhay don hoic nhay kép) hod gia ti cia mét bien hodc mét biéu thic. Tuy ahién, cau lénh print () con cé thé ding dé ghi ra man hinh dif liéu @ nhiéu dang khac. Em hay tim hiéu va cho biét chuong trinh dudi day thu hién céng viée gi? Chwong trink Két qua ra man hinh A=4 B=12 32 Dign tich 48 print((A +B) * 2) @n tich', A * B) >>> print('D. Cau Iénh print () ding dé ghi di liéu ra man binb, di ligu c6 thé la gia tri cha hoic la mét théng diép hodc 14 mét bién thic (abu cau lénb thir ba trong chuong trinh ¢ hoat déng 1) hoc 14 hén hop (abu trong eau lénh the te). Trong trrimg hop di liéu 14 dang hén hop thi can str dung dau phay dé ngiin cach. Khi 46, cau lénh print () sé lan luot ghi di liéu ra man hinh tir trai sang phai, cir mai lan gap dau phay cau lénh print.() sé ghi thém mét dau cach mét Nhu vay, cu phap cfu lénh print () 4é dua gia tri cdc biéu thifc ra man hinh 1a: print (danh sach dau ra) Trong 46 danh sich dau ra c6 thé 14 bién hodc 14 mot théng diép hoac 14 mat bidu thie. Néu cé nbiéu dana, cde dau ra cach nhau bai dim phiy. Vidu, chong trinh duci diy. sir dung bién A duge gan bing 4 va B duoc gin bang 12 dé hu tré d6 dai bai canh cia mot hinh chiF nhat. Chong trinh tinh ri dura ra man hinh chu vi va dién tich cia hinh chit abat do. A=4 Chuong trinh |B = 12 tinh chu vivi | print((A + B) * 2) dign tich print('Hinh chit nhat kich thuéc ', A, ‘gH "co chu vi', (A+B) * 2, 'va dién tich', A * B) Hinh chi nat kich thuéc 4 x 12 co chu vi 32 Két qua va dién tich 48 >> 2. Nhdp dir ligu tir ban phim Trong chvong trinh tinh chu vi va dién tich 6 phan trén, m6i khi ching ta muén tinh véi kich thuée hinh chit nhat khie nhau, ching ta phai thay d4i gid ti gin cho bién A va bién B trong chyong trinh. Tuy nhbién, trong cdc ngOu.ngiF lap trinh déu cho phép nap gia tri cho bién tir ban phim. Dwoi day 1a hai cau lénb nhap dit ligu tir ban phim trong Python. Ynghia Eee Nap af gn vao ti ban phim va chuyén vé dang sé nguyén on Wey, ec ee Kihi thu hign chwong trinh, mdi lan gap lénh nhap dé liéu, chong trinh sé doi ngwoi ding nhap gia tri vao ti ban phim sau d6 gan gia tei via nhap cho bién nam bén trai phép gain. Xem vi du dudi day Chuong trinh Chay chwong trinh va nhap so 10 rio a = int(input(}) . | cpp dK print ("Ban via nhap vao sé", a) [>> via nhap vao so 10 Trong léah nhap dif lign tir ban phim, Python con cho phép dua ra thong diép dé chi dan nguéi ding nhap di liéu bing cach dé thang diép vao hai dau nhay don nhay kép bén trong ngoic ciia input. Hay soan thao réi chay chuong trink dudi day 8 tim hiéu thém tinh ning nay cia cu lénh ohap dé liéu. | om float (input (' chiéu cao cia tam giac: ')) b = fleat(input(' 46 dai canh day cia tam gidc: ')) print ('Dién ti a (a * b) / 2) tich tam giac 1. Trong Pythom, 1nh input () sé doc moi dif ligu vio didi dang ki tu, nén kchi nguii sit dung mudn diing dt ligu dudi dang sé nguyén hay sé thyc thrimg phai c Joh int hodc float phia tredc, ame dich la ép lagu ki tu vé kiu sé mong mun. Vi vay khi ngudi ding cé tinh nhap vao dif ligu khéng phai s6 thi sé bao 161. int(*123") > 123 float ('1.23") > 1.23 int(‘12a’) > 16i_ int(‘12 34") > loi ‘Nhu 6 dong ép kidu that tr int (*12 34°). khong thé ép kiéu? sé trén cing mot déng hv nay. Vay muén doc dit liéu hai sé wén cing mét dong thi ta c6 thé lam nhir sau: numl, num? = map(int, input().split()) ‘hhoac x, y = [int(x) for x in input().split()] 3. Chi thich Trong chuong trinh, ngoai cdc cau lénh, chirong trinh cé thé cé cdc dong chi thich. Cac ding ché thich may 1a mé ta ciia ngwdi [ap trinh gidp cho ngudi doc chong trinh nan biét duge muc dich cia cde lénh, ¥ nghia cia chuong tinh. Cae ding chi thich khéng anh hwéng dén néi dung churong trinh va duoc chong trinh dich b6 qua. ‘Trong Python, mét dong chi thich duge bit dau bing ki ty #. Vidu: # Tha phép toan chia lay dw (%) wa chia lay thuong (//) | A= int(anputQ)) # B4y 14 1énh ohdp vdeo mét 9d nguyén Poiremess Chuon; £ © |g Dhép chia 1dy ar print({A, ‘chia 3 dw:", A & B) | # Phép chia lay thuong | print(A, ‘chia 3 cé thwong 1a-', A // B) Is | 5 chia 3 du: 2 nhap | 5 chia 3 cé thuong 1a: 1 yao so 5 | 53> Bai3. Bai 4. 24 Bai tap Ma i PAQOS Em hay sir dung cau lénh nhap dit ligu tir bin phim dé nhap gid ti cho A va B la 46 dai hai canh cia mét hinh chit nhat. Chong trinh tinh rdi da ra man hinh chu vi va dién tich cia hinh chi nbat 46. 4 18 Ma bai PAOOS ‘Viet chuong trinh nhap ti ban phim mét sé nguyén x, hay tinh va dua ra man hinh gid tri cia ham f(x) = x7 + x5 + 1. Vidu: I Két qua ra man hinh 1 & 1057 o 1 Mi bai PAOO6 ‘Viét chuong trinh nbip tir ban phim mét sé thuc a, b. bay tinh va dua ra man hinh gid tri tong a* + b* + ab. Vidu: nhap vio : 3 E a il E 125 ‘Mi bai PAQO7 ‘Viét chong trinh tinh va dua ra man hinh van téc v khi cham mat dat cia miét vat roi tir d6 cao h, biét ring » = ,/2gh, trong dé g a gia tic roi tu do ‘va g =9.8mis* Dé cao h theo don vi m duce nhap tir ban phim. Vidu: Di ligu nhjp vio Két qua ra min hinh x, 4,.427188724235731 10 14. |. Ma bai PAOOS ‘Viét chiong trink nbap tir ban phim hai s6 nguyén x, y ld toa d6 diém A. tinh ‘va diva ra khoang cach tir goc toa dé dén diém A. Vidu: [ aK, ‘Kétqua ra man hinh | is 2.23606797749979 2 | J 5.0 3 2B 30 .083217912982647 i= ‘Mi bai PA009 ‘Viet chuong trinh ohap ti ban phim ba sé thuc a, b,c la dé dai ba canh cia mét tam gidc. Hay tinh va dua ra man hinh dién tich cia tam gidc d6. Vidu: Di ligu nhip vao ] ‘Két qua ra man hinh oe we 17..41228014936585 eau Bai tap thyc hanh 1 VIET CHUONG TRINH BON GIAN Bail. Ma bai PAO10 Hoan thién chong trinh duci day dé nbn duoc chuong trinh giai phuong trinh bac nhét, chong trinh nbép ti ban phim hai sé thyc @, b (a # 0). gidi va dua sa nghiém phuong tinh ax + b = 0. Chay chwong trinh véia bing 1, Chuwong trink toa = float (input ('a be... print('Nghiém cia phuong | Nghiém cia phuong trinh trinh 1a:", ...) Ja: -2.0 >>> A Chwong trinh s8 dva ra man hinh théng tin gi néu em gid tia = Bai2. Ma bai PAO ‘Viét chong trinh nbdp tir ban phim hai sé thuc a,b (a # O va a,b trai dau), giai va da ra nghiém phirong trinh ax? + b = Vidu: Dif ligu nbap vio Két qui ra man binh 1.1547005383792515 Bai3. I i PAOI2 Hodn thién chuong trinh dudi day dé nhin duoc chwong trinh ahip ti ban phim mét sé nguyén khéng ém.n khéng vuot qua 99, hay tinh va dura ra man hinh téng céc chi 56 cia s6 46. Goi j- St dung phép todn chia lay thuong (Ud) va chia lay du (6) Chuong trinh Chay chuong trinh véin = 18 _ 18 a=n// 10 Bai 4. Bais. b Téng_cac chi so cua sé print('Téng céc chit sé cia |18 bang 9 86", n, 'bang', a+b) >>> ‘Ma bai PAOI3 Viet chuong trink abip tir bin phim mét s6 nguyén khong am khéng vuct qua 999, hay tinh va dua ra man hinh ting cdc chit s6 cia sé 6. Fi'du: Di liu nhap vao Két qua ra man hinh 5 5 6B 14 987 24 ‘Ma bai PAOL4 ‘Viet chwong trink hap ti ban phim sé ty ohién n tinh va dua ra man hinh tong 1 + 24... 4n. Kétquira min hinh 1 1 5 15 999 499500 Mi bai PAQIS Theo truyén thuyét, vua Séram rat khim phuc va di ting thuéng cho nha thang thai Séta vi da sang tao ra cé vwa. Phan thudng ma Séta mong muén la tat cd cdc hat hia mi dit trén ban cé vua kich thude 8 x 8 theo quy tic sau: © thir ohat Gat mt hat, 6 thi hai dat 2 hat, 6 thir ba dat 4 hat, ..., tiép tuc theo quy luat 6 sau co sé hat gap déi 6 hat cia 6 trade, cho tdi khi dat dén 6 thi 64 trén ban co vua. Em hay lap trinh nhap vao tir ban phim hai sé nguyé: dong m,n va tinh tng 6 hat lia mi tén ban of vua kich thede m x 1 néu at cdc hat hia mi theo quy Iuat giéng mhur Séta. Vi du: Dirligu nbip vio Két qui ra min hinh | é Habook Bai5 TU BAI TOAN DEN CHU'ONG TRINH (2 tiét) 1. Bai toan va xac dinh bai toan Bai toda 14 khdi niém quen thude trong cdc mén hoc abu Toan, Vit ly, ... Ching han tinh téng eae s6 te nhién ti 1 dén 100, tinh quing duong 6 16 di duce trong 2 gid vi vin téc 60 kawh 1a nhiing vi du vé bai todn. ‘Nhu vay, ta c6 thé hiéu Bai todn la mét cdng viée hay mét nhiém vu cin phai gidi quyét. Dé giai quyét mét bai todn cu thé, ta cn xde dinh 16 cdc didu kién cho tude va két qua can thu duoc. Bai toan trong Tin hoc la mét viée nao dé ma con agwéi omén may tinh thye hién. Khi ding may tinh dé gidi bai todn, ta cdn xde dinh 16 hai yéu 16: dua vao may tinh théng tin gi (Input), va can lay ra théng tin gi (Ouput). Qué trinh nay nguai ta g9i la xac dinh bai toan_ Fi du; Bai toan tim wéc chung lon nat cia 2 56 nguyén duong, khi do: # Input: hai sé ngnyén duong A, B. © Output: wc chung Ion nhat cia A va B. 2. Giai bai toan trén may tinh ‘Vige ding may tinh giai mét bai todn chinh 1a dua cho may tinh day biu han cac thao tac don gidn ma né cé thé thue hién duge dé tir cdc diéu kién cho tnrdc ta nhan duoc két qua cin tim. Day hiiiu han céc thao tac cn tharc hién dé giai m6t bai toan duge goi la thuat toan. Qua trinh gidi mét bai ton trén may tinh bao gém cac bwdc chinh sau: «© Xac dinh bai toan: ti phat biéu cila bai toan, xac dinh dau 1a thang tin d3 cho (Input) va dau 1a théng tin cn tim (Output). © La chon, mé ta thudt toan: Ina chon thudt ton phis hop gidi quyét bi digo ta cach gidi bai todm bing diy cdc thao tac cm phai thure hiéa. © Vidt chuong trinh: dua vao m6 ta thudt todn @ trén, sit dung ag6n agt lip trinh cu thé dé viét clnrong trinh gidi bai toan da cho. 3. Thuat toan va mé ta thuat toan 3.1. Khai nigm ‘Thuit todn 1a mt day hhiru han cdc thao tic duce sip xép theo mét trinh tr xéc inh sao cho sau Kihi thyc hién day thao tic dy, tir Input cia bai ton, ta nha duge 3.2. Biéu dién thuat toan © Sir dung cach ligt ké: nu ra tun ty cde thao tic can tién anh. © Sir dung so-d6 kchdi dé mé td thuit ton. ¥ nghia The hién thao tac so san ‘Thé hién thao tac ohap, xuat di Liéu O00: Quy dinh trink tu thuc hién cac thao tac 4, Mot sé vi du vé thuat toan ‘Vi du 1: Cho s6 nguyén duong N. Kiém tra tinh nguyén t6 cia mét s6 nguyén duong N. 1 Xa dinh bai todn — Input: N la mit sé nguyén dong: — Output: "N la sé nguyén t6" hoac "N khong 1a sé nguyén to" « F heong — Dinh nghia: "Mét sé nguyén duong N 1a s6 nguyén té néu né Ién hon 1 va chi 6 ding hai uéc 14 1 va chinh no! —Néu N =1 thi N khong la sé nguyén t8_ —Néu 1 4: Tim wic i dau tién limon 1 cia N. +Néni= 4 va khong co wéc trong pham vi tir 2 dén phan nguyén can bac 2 cia N thi la sé nguyén td Ady dung thudt toan — Cach lidt ke +Budc 1: Nhap sé nguyén duong N: + Bude 2: Néu N= | thi théng bao "N khéng 1a + Bude 3: Néu N <4 thi théng bao "N la 96 nguyén t8" r6i két thie; + Buse 4:1 2; nguyén 08" ri két thie: + Bude 5: Néui> [VN] thi thong bao "N 1a s6-nguyén t6" rdi két thnk + Bude 6: Néu N chia hét cho i thi thing bdo "N ichéng la 26 nguyén 16" r6i ket thie: + Bude 7: :i— i+] 10i quay lai bude 5. Vidu 2: Cho diy A g6m N sé nguyén a1, 2...., av. Yéu cdu hay sip xep day A thinh diy khéng gidm. « Xac dinh bai toan — Input: Day A gém N sé nguyén ngnyén ay, a... ay — Output: Day A duge sip xép thinh day khéng gidm. © ¥ peong — Véi méi clip sé hang dimg lién ké trong day, néu s6 tnedc 1én hon sé sau.ta dai ché ching cho nhau. (Cac sé lon sé duoc day dan ve vi tri xac dinh cvdi day). — Vie nay lip lai nhiéu hot, mdi Inot tién hanh nbiéu ln so sinh cho dén khi khéng cé su dé: nao xay ra nia. # Xdy dung thudt toan = Cach hét ke + Bude 1: Nhap N, cde 96 hang ar. a2, +Buée 2: MN; + Bude 3: Néu M <2 thi dua ra diy A di duge sip xép, r6i két thie; +Budée 4: Me M-L ia 0; +Bude 5: i i+ 1: + Bude 6: Néui> M thi quay lai bude 3; + Bude 7: Néu aj > ait] thi trdo 8i ai va ait] cho nhau: + Bude 8: Quay lai bude 5: —So d6 khoi n BAI DOC THEM VE CONG CU LAP TRINH THONNY 1. Gidi thigu vé Thonny Thonny 14 mét méi tarong phat trién tich hep cho Python va duge phat tién boi Dai hoc Tartu ¢ Estonia. Phin mém nay dugc thiét ké chi yéu dé giup ngwéi mai bat dau si dung Python dé ding hon bing cach cung cap cho ho mét IDE don gian. Cach don gian nbat dé chay mét chuong trinh Python 1a str dung Thonny IDE. Cac phién ban cia Thonny IDE thang dugc cung cap di kém véi phién ban Python mi ahat. Do 46, chi can cai duy nhat Thonny IDE la du, khong can cai Gat riéng Python. 2. Cal dat Thonny trén hé diéu hanh Windows Bé cai dit Thonny trén may tinh, vao trang https://thonny.org/ lua chon phién ban mdi nat cho hé diéu han Windows rai tai vé va cai dit. Sau khi cai dat Thonny, giao dién cia Thonny nw hinh dusi day: Wey - sunt ie Kh View nok p suas e Cac bude viet mot chirong trinh trén Thonny aby sau: Vio muc: File > New hodc nhan t6 hop phim ctrl + N dé tac mot tép ma nguon Python véi phan mé song la py ching han vidu py, hello.py, 4 Fim theary Fle Edit View Run Tooke Hols # Viét mét doan code Python vo tép vira tao va lin lai. Vi du, lénh print () 4@ ina dong chit Hello World! Nhu sauprint ("Hello World! "). File felt Vitw Bur Tooke Hele uwaoe voy 1 print ("xin chao") 2 *Sau dé vio mucRun>Run current seripthoie don gidn 1 abin phim FS trén ban phim hode click vio biéu trong mii tén mau xanh trén giao dién dé chay chuong trinh. Phin két qua duoc hién thi 6 cita sé Shell nb bén dui Fie Eat View Wis) Tools Help se pee] L prin Debug aarent scr intend CulsFS. Debug cunent script aster) ShiftoF5 1S Debug curent script bdseye) Cals Shited Sp oem f Step inte A Sep Rew a Ads to curse Ship bac, (un current script in teria Cha de 2 TO CHUC RE NHANH VA LAP Bai 6 CAU LENH RE NHANH (2 tiét) 1. Bidu thie quan hé, biéu thac logic 1,1. Phép to4n quan hé va biéu thirc quan hé (Gidng nur trong toam hoc, ngoai céc phép toan s6 hoc, Python cing cé cdc phép toan quan hé. Phép toan quan hé Mota Lén hon > Dau lin hon | Taam bose Baage > Dau Jén hon, tiép theo la dau bang Nhé hon Dau abd hon | Nhs hon hofe bing ‘Diu nbd hon, tiép theo la du bing Bing = Hai dau bing Khic Is Dau chim than, tiép theo la déu bing ‘Hai biéu thie sé hoc lién két voi nhan bai phép toan quan hé cho ta mét biéu thie quan hé. Biéu tinic quan hé cé dang Vidu: Delta > 0 A+B <= 28C Biéu thirc quan hé nhan gia tri ding hoic sai, ngwai ta goi la i logic. Trong Python, gid tri dimg Succ ki hiéu la True, gi tri sai duoc ki hiéu Ja False. Biéu thire quan hé duge xéc dinh theo trinh tu sau: © Tinh gia tri cia biéu thie thé nbdt va gid tn biéu thie thr: Thuc hién phép toan quan hé. Vidu,néuA = 10, B = 5, C = 8 thi biéu thie quanhéA + B <= 2 * Cohan gia ti True. ConnéuA = 10, B = 5, C = 6 thi biéu thitc quanhé A+B <= 2 * CohingidtiFalse. Xem chirong trinh dudi day: Chwong trinh Két qui ra man hinh ‘a= 10 ‘True |B=5 False c=8 ‘True print(A >= B) #10 >= 5 —> két qua ra True |False print(B > C) #5 > 8 -> két quad ra False [>>> print(A+B<24¢) #10+5< 248 c=6 print(a+B<=2*C) #10+5<2246 1.2. Phép todn logic va biéu thirc logic Biéu thire logic duoc dink nghia la: ‘« Biéu thite quan hé Cac biéu thic quan hé lién két voi nhau boi cdc phép toan logic: not, and hoac or. — Phép toan not ki higu la ~ 1a phép toan plui dink, vi du: not (A=B). Cu thé not (5>4) ket qua s@ ra False. — Phép todn and ki higu la &. phép toan or ki hién 1a | ding dé kit hop abiéu biéu thie quan hé thanh mét biéu tine logic, duoc ding trong trrémg hop dién ta cae diéu kign plnie tap.

You might also like