1. Trang chủ
  2. » Thể loại khác

Python SGK tin hoc 11 v202009

96 25 0

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 96
Dung lượng 905,92 KB

Nội dung

Python BIÊN SOẠN THEO SÁCH GIÁO KHOA TIN HỌC 11 – NXB GIÁO DỤC Python TIN HỌC dainganxanh, MA 2020 BẢN THẢO – THÁNG 9, 2020 Mọi ý kiến trao đổi, đóng góp xin gửi về dainganxanhmsn com Đăng ký nhận bản hoàn chỉnh tại www dainganxanh com CLICK ĐỂ ĐĂNG KÝ SÁCH https forms glesPnHBTdemCESpFgt5 Python là gì ? Python là một ngôn ngữ lập trình bậc cao do Guido van Rossum tạo ra và lần đầu ra mắt vào năm 1991 Python vừa hướng thủ tục (procedural oriented), vừa hướng đối tượng (object oriented) đồng.

BIÊN SO N THEO SÁCH GIÁO KHOA TIN H C 11 ậ NXB GIÁO D C Python TIN H C @dainganxanh, MA - 2020 B N TH O ậ THÁNG 9, 2020 M i ý ki n trao đ i, đóng góp xin g i v : dainganxanh@msn.com ng ký nh n b n hoàn ch nh t i: www.dainganxanh.com CLICK ĐỂ ĐĂNG KÝ SÁCH Python ? Python lƠ m vƠ l n đ u m oriented), v a h vƠo ng d ng nh t ngơn ng l p trình b c cao Guido van Rossum t o t vƠo n m 1991 Python v a h ng th t c (proceduralng đ i t ng (object-oriented) đ ng th i có th nhúng m t giao ti p k ch b n (scripting interface) Th m nh c a Python lƠ r t g n g i v i ngôn ng t nhiên (ti ng Anh), c u trúc rõ rƠng, d đ c, d h c Python hi n lƠ ngôn ng l p trình ph bi n r ng rưi chơu Ểu, chơu M đ c coi nh ngôn ng l p trình tr ng h c Python đ c dùng đ phát tri n ng d ng web, game, khoa h c d li u (tính tốn, phơn tích, khai thác d li u), máy h c vƠ trí tu nhơn t o, ầ Tài li u dùng kèm Sách giáo khoa Tin h c 11 c a B Giáo d c t o (NXB Giáo D c - Tái b n l n th 4, n m 2009) Tài li u đ c trình bày theo c u trúc Sách giáo khoa Tin h c 11 Các ví d t p, th c hành sách giáo khoa đ c trình bày l i b ng ngơn ng l p trình Python m t cách chi ti t, đ y đ B sung m t s ki n th c, k thu t l p trình c n thi t đ s d ng ngơn ng l p trình Python d y h c ch ng trình Tin h c 11 M CL C TR Ch C KHI B T U 1 H ng d n đ c Cài Python CƠi ch ng trình so n th o ng M T S KHÁI NI M §1 KHÁI NI M V L P TRÌNH VÀ NGƠN NG L P TRÌNH L u Ủ §2 CÁC THÀNH PH N C A NGÔN NG L P TRÌNH Các thành ph n c b n M t s khái ni m Ch ng CH NG TRỊNH §3 C U TRỎC CH N GI N NG TRỊNH Câu trúc chung Các thành ph n c a ch Ví d ch ng trình ng tình đ n gi n §4 M T S KI U D LI U CHU N Ki u nguyên Ki u th c Ki u kí t Ki u logic §5 KHAI BÁO BI N 10 §6 PHÉP TỐN, BI U TH C, CÂU L NH GÁN 11 Phép toán 11 Bi u th c s h c 12 Hàm s h c chu n 12 Bi u th c quan h 12 Bi u th c logic 12 Câu l nh gán 12 §7 CÁC TH T C CHU N VẨO RA N GI N 14 Nh p d li u vào t bàn phím 14 a d li u hình 14 §8 SO N TH O, D CH, TH C HI N VÀ HI U CH NH CH NG TRÌNH 16 BÀI T P VÀ TH C HÀNH 18 M c đích, yêu c u 18 N i dung 18 CH NG III C U TRÚC R NHÁNH VÀ L P 20 §9 C U TRÚC R NHANH 20 R nhánh 20 Câu l nh if 20 Câu l nh ghép 21 M t s ví d 22 §10 C U TRÚC L P 24 L p 24 L p v i s l n bi t tr c 24 L p v i s l n ch a bi t tr c 25 BÀI T P VÀ TH C HÀNH 27 CH NG IV KI U D LI U CÓ C U TRÚC 31 §11 KI U M NG 31 Ki u m ng m t chi u 31 Ki u m ng hai chi u 37 Các thao tác x lý list 39 BÀI T P VÀ TH C HÀNH 42 BÀI T P VÀ TH C HÀNH 44 §12 KI U XÂU 46 Khai báo 46 Các thao tác x lý xâu 46 M t s ví d 52 BÀI T P VÀ TH C HÀNH 54 §13 KI U B N GHI 55 Khai báo 55 Gán giá tr 55 Các thao tác c b n v i ki u dict 57 CÂU H I VÀ BÀI T P 59 CH NG V T P VÀ THAO TÁC V I T P 64 §14 KI U D LI U T P 64 Vai trò c a ki u t p 64 Phân lo i t p thao tác v i t p 64 §15 THAO TÁC V I T P 65 Khai báo 65 Thao tác v i t p 65 §16 VÍ D LÀM VI C V I T P 68 CH NG VI CH §17 CH NG TRỊNH CON 70 NG TRỊNH CON VẨ PHỂN LO I 70 Khái ni m ch ng trình 70 Phân lo i c u trúc c a ch §18 VÍ D CÁCH VI T VÀ S ng trình 71 D NG CH NG TRỊNH CON 75 BÀI T P VÀ TH C HÀNH 77 M c đích, yêu c u 77 N i dung 77 BÀI T P VÀ TH C HÀNH 78 M c đích, yêu c u 78 N i dung 78 §19 TH VI N CH NG TRỊNH CON CHU N 82 Module 82 Package 83 Th vi n đ h a Turtle 83 BÀI T P VÀ TH C HÀNH 85 M c đích, yêu c u 85 N i dung 85 Tìm hi u thêm v Python 89 TR H C KHI B T U ng d n đ c Sách nƠy dùng kèm v i sách giáo khoa Tin h c 11 c a B Giáo d c vƠ Ơo t o, NhƠ xu t b n Giáo d c Vi t N m tái b n l n th 2, n m 2009 (SGK) Nh ng ph n ch có tiêu đ , khơng có n i dung ngh a lƠ s d ng nguyên v n n i dung đ c trình bƠy SGK (các n i dung đ c trình bày SGK lƠ phù h p v i Python) N i dung sách nƠy bám sát theo c u trúc c a SGK Vì v y sách ch trình bƠy vƠ gi i quy t v n đ đ c SGK nêu - ch lƠ m t ph n r t c b n c a l p trình vƠ ngơn ng l p trình có th l p trình vƠ lƠm ch ngơn ng l p trình Python c n nghiên c u thêm tài li u khác (có gi i thi u cu i sách) Cài Python T i v t https://www.python.org/downloads/ vƠ ti n hƠnh cƠi đ t (ch n phiên b n 3.8 tr lên) Sau hoƠn t t cƠi đ t có th ki m tra: - Nh n phím Windows gõ cmd → Enter Gõ: python version → Enter Lúc nƠy s hi n th phiên b n Python đư cƠi đ t máy tính CƠi ch ng trình so n th o l p trình theo m t ngơn ng nƠo ta đ u c n có ch ng trình cho phép gõ cơu l nh vƠ l nh th c thi cơu l nh Trong tr ng h c, đ l p trình v i Pascal ta th ng s d ng FreePascal, v i C ta th ng dùng CodeBlock, ầ V i Python, ta có nhi u l a ch n D i đơy lƠ m t s g i Ủ: 1) Notepad++ T i v t i đơy: https://notepad-plus-plus.org/downloads/ c m: Nh n gi n, d s d ng c m: Ph i cƠi thêm plugin đ debug 2) Thonny T i v t i đơy: https://thonny.org/ Thonny có giao di n đ n gi n, c u hình nh (trên m t máy kh i đ ng nhanh h n nhi u so v i Pycham hay Spyder) H tr debug tr c quan giúp ta d theo dõi vƠ hình dung trình th c thi ch ng trình S d ng th vi n / module chu n c a Python phát hƠnh (không b sung hay import s n module) 3) PyCharm Educational Edition T i v t i đơy: https://www.jetbrains.com/pycharm-edu/ PyCharm lƠ mơi tr ng phát tri n tích h p đa n n t ng (IDE) đ c phát tri n b i Jet Brains vƠ đ c thi t k đ c bi t cho Python Tuy nhiên PyCharm kh i đ ng n ng n vƠ yêu c u lƠm vi c v i project Nh v y, tùy nhu c u s d ng vƠ k n ng l p trình mƠ l a ch n trình so n th o cho phù h p i v i ng i m i b t đ u h c Python nên dùng Thonny đ th c hƠnh Ch ng M T S KHÁI NI M V L P TRỊNH & NGỌN NG L P TRỊNH §1 KHÁI NI M V L P TRỊNH VẨ NGỌN NG L P TRỊNH L uỦ Python lƠ m t ngơn ng l p trình phiên d ch (Interpreter Language), t c lƠ không c n build thƠnh file th c thi mƠ ch y tr c ti p (Pascal C+ + ph i build tr c th c thi) Các n i dung l i đ 11 lƠ phù h p v i Python c trình bƠy c a ph n nƠy SGK Tin h c §2 CÁC THẨNH PH N C A NGỌN NG TRÌNH L P Các thƠnh ph n c b n N i dung trình bƠy c a ph n nƠy SGK Tin h c 11 lƠ phù h p v i Python L u Ủ thêm: Python s d ng m c đ nh m ng mư Unicode thay ASCII nh Pascal Nh v y, khái ni m ắb ng ch cái” Python lƠ ký t b ng mư Unicode Tên bi n vƠ đ i t ng ch ng trình Python có đ đ t b ng ti ng Vi t có d u M t s khái ni m a) Tên Trong Python, Tên đ i t ng đ c đ t b ng kỦ t th z), kỦ t in hoa (A-Z), ch s (0-9) vƠ d u g ch d i _ ng (a3 §18 Vệ D CÁCH VI T VẨ S D NG CH TRÌNH CON Ch NG ng trình v hình ch nh t (SGK,Tr.96) def vehcn(): print('*'*50) for i in range(10): print('*'+' '*48+'*') print('*'*50) # g i hàm vehcn() Ch ng trình v hình ch nh t có tham s (SGK.Tr.98) def vehcn(a,b): print('*'*a) for i in range(b): print('*' + ' '*(a-2) + '*') print('*'*a) a = int input Nh p chi u dài: ')) b = int input Nh p chi u r ng ')) vehcn(a,b) Ch ng trình hốn đ i bi n (SGK Tr.100) a = int input Nh p a: ')) b = int input Nh p b: ')) print Tr c đ i a, b) 75 a,b = b,a print('Sau đ i :', a, b) Ví d (SGK, Tr.101) a = int input Nh p t b = int input Nh p m u : ')) ')) def ucln(a,b): while b != 0: t = a % b a = b b = t return a x = ucln(a,b) if x >1: a = a // x b = b // x print(f'Phân s rút g n {a}/{b}') Ví d (SGK, Tr.102) # Python cung c p s n hàm min() a = int input Nh p a: ')) b = int input Nh p b: ')) c = int input Nh p c: ')) m = min(a,b,c) print(f'Giá tr nh nh t c a {a}, {b}, {c} {m}') 76 BẨI T P VẨ TH C HẨNH M c đích, yêu c u B yêu c u ch ch y mƠn hình N i dung Python cung c p s n ph a = n th c đ o ng c xơu, list Ví d : H C L P TRÌNH PYTHON" b = a[::-1] print(a) print(b) K t qu : H C L P TRÌNH PYTHON NOHTYP HNÌRT P L C H Vi t vƠ ch y th ví d thao tác x lỦ xơu ph n §12.2 77 BẨI T P VẨ TH C HẨNH M c đích, yêu c u N i dung Ch ng trình SGK, Tr.106 from math import sqrt def nhapdiem(): ma = [] for i in range(3): ma.append([]) x = int input Nh p x: ')) y = int input Nh p y: ')) ma[i].append(x) ma[i].append(y) return ma def kh_cach(a,b): return sqrt((a[0]-b[0])**2 + (a[1]-b[1])**2) def daicanh(x): a = kh_cach(x[0],x[1]) b = kh_cach(x[1],x[2]) c = kh_cach(x[0],x[2]) return a, b, c def chuvi(x): cv = for i in daicanh(x): cv += i 78 return cv def dientich(x): p = chuvi(x)/2 dc = daicanh(x) s = sqrt(p*(p-dc[0])*(p-dc[1])*(p-dc[2])) return s def tinhchat(x): tc = '' d = daicanh(x) if (d[0] == d[1]) and (d[1] == d[2]): tc = 'Tam giác đ u elif (d[0] == d[1]) or (d[1] == d[2]): tc = 'cân' elif (d[0]**2+ d[1]**2 == d[2]**2) or (d[0]**2+ d[2]**2 == d[1]**2) or (d[1]**2+ d[2]**2 == d[0]**2): tc = 'Tam giác vuông' else: tc = 'Tam giác th ng return tc tg = nhapdiem() print T a đ đ nh c a tam giác là: ', tg) print('Tính ch t tinhchat(tg)) print('Chu vi tam giác = ', round(chuvi(tg),3)) print( Di n tích c a tam giác =', round(dientich(tg),3)) input() Câu c, SGK, Tr.108 79 from math import sqrt with open('TAMGIAC.DAT') as f: n = int(f.readline()) a = f.read() a = a.split('\n') for i in range(n): a[i] = a[i].split(' ') for j in range(6): a[i][j] = int(a[i][j]) def kh_cach(xa,ya,xb,yb): return sqrt((xa-xb)**2 + (ya-yb)**2) def daicanh(x): a = kh_cach(x[0],x[2],x[1],x[3]) b = kh_cach(x[2],x[4],x[3],x[5]) c = kh_cach(x[0],x[2],x[3],x[5]) return a, b, c def chuvi(x): cv = for i in daicanh(x): cv += i return cv def dientich(x): p = chuvi(x)/2 dc = daicanh(x) s = sqrt(p*(p-dc[0])*(p-dc[1])*(p-dc[2])) return s def tinhchat(x): tc = '' 80 d = daicanh(x) if (d[0] == d[1]) and (d[1] == d[2]): tc = đ u elif (d[0] == d[1]) or (d[1] == d[2]): tc = 'cân' elif (d[0]**2+ d[1]**2 == d[2]**2) or (d[0]**2+ d[2]**2 == d[1]**2) or (d[1]**2+ d[2]**2 == d[0]**2): tc = 'vuông' else: tc = th ng return tc deu = can = vuong = thuong = for i in range(n): tg = a[i] t = tinhchat(tg) if t == đ u deu += elif t == 'cân': can += elif t == 'vuông': vuong += else: thuong += with open('TAMGIAC.OUT','w') as fo: fo.writelines(str(deu)) fo.write('\n') fo.write(str(can)) fo.write('\n') fo.write(str(vuong)) fo.write('\n') fo.write(str(thuong)) 81 §19 TH VI N CH NG TRỊNH CON CHU N Module NgoƠi vi c xơy d ng ch ng trình (hƠm) tr c ti p ch ng trình Python cung c p h th ng ch ng trình d i d ng module M i Module lƠ m t file, l p, hƠm vƠ bi n đ c đ nh ngh a T t nhiên, m t Module c ng có th bao g m code có th ch y Ch ng trình chu n có th hi u lƠ Module đư đ c xơy d ng s n Python ó lƠ math, random, threading, collections, os, mailbox, string, time, ầ M i Module nƠy đư đ nh ngh a s n r t nhi u hƠm đ b n có th s d ng đ th c hi n tính n ng khác Ví d s d ng math Module: import math a=4.6 print math.ceil(a) print math.floor(a) b=9 print math.sqrt(b) print math.exp(3.0) print math.log(2.0) print math.pow(2.0,3.0) print math.sin(0) print math.cos(0) print math.tan(45) Ví d s d ng random Module: import random print random.random() print random.randint(2,8) 82 Package M t Package lƠ m t t p h p Module, sub-package, ầ t ó lƠ m t c u trúc có th b c c a th m c vƠ file ng t Th vi n đ h a Turtle Turtle Graphics lƠ m t ch ng trình có s n Python h tr hi n th giao di n đ h a Cùng kh o sát m t s ví d sau đơy v hình vng import turtle t = turtle.Pen() for x in range(100) : t.forward(x) t.left(90) # v hình xo n c cu n import turtle t = turtle.Pen() for x in range(100) : t.forward(x) t.left(91) # hình xo n c cu n tròn import turtle t = turtle.Pen() for x in range(100) : 83 t.circle(x) t.left(91) v xo n c tròn màu n n đen import turtle t = turtle.Pen() turtle.bgcolor("black") colors = ["red", "yellow", "blue", "green"] for x in range(100): t.pencolor(colors[x%4]) t.circle(x) t.left(91) import turtle t = turtle.Pen() t.speed(0) turtle.bgcolor("black") colors = ["red", "yellow", "blue", "green"] for x in range(100): t.pencolor(colors[x%4]) t.circle(x) t.left(45) 84 BẨI T P VẨ TH C HẨNH M c đích, yêu c u Nh SGK N i dung 2.1 Câu a # đ ng g p khúc ng u nhiên import random as rd import turtle as t t.bgcolor('black') color = ['red','white','yellow','blue'] for i in range(100): t.speed(0) t.fd(50) n = rd.randint(i,360) if n%2 == 0: t.left(n) else: t.right(n) t.pencolor(color[i%4]) 2.2 Câu b import turtle as t t.bgcolor('black') def vuong(d): t.pencolor('white') t.pendown() 85 for i in range(4): t.fd(d) t.left(90) t.penup() def chunhat(d,r): t.pendown() t.pencolor('yellow') for i in range(2): t.fd(d) t.left(90) t.fd(r) t.left(90) t.penup() def tron(r): t.pendown() t.pencolor('green') t.circle(r) t.penup() def elip(r): t.pendown() t.pencolor('red') for i in range(2): t.circle(r,90) t.circle(r//2,90) t.seth(-45) t.penup() t.penup() 86 t.goto(250,200) tron(100) t.goto(-250,200) vuong(200) t.goto(150,-150) chunhat(200,150) t.goto(-200,-150) elip(120) 87 CỂU H I VẨ BẨI T P Cơu Python không phơn bi t Cơu HƠm in mƠn hình m t xơu Cơu HƠm tr v nhi u giá tr Câu from math import sqrt def ucln(a,b): while b > 0: t = a % b a = b b = t return a def bcnn(a,b): t = a*b // ucln(a,b) return t a = int input Nh p a: ')) b = int input Nh p b: ')) print f c chung l n nh t c a {a} {b} {ucln(a,b)}') print f B i chung nh nh t c a {a} {b} {bcnn(a,b)}') 88 Tìm hi u thêm v Python N i dung trình bƠy tƠi li u nƠy ch lƠ ph n bám sát Sách giáo khoa Tin h c 11 nh m ph c v th y cô giáo vƠ b n h c sinh l p 11 chuy n đ i ngôn ng l p trình, ti p c n ch ng trình Giáo d c ph thơng 2018 Vì v y, đ có hi u th u đáo vƠ s d ng Python l p trình c n ti p t c tìm hi u tƠi li u khác TƠi li u ti ng Anh https://www.python.org/ https://www.w3schools.com/python/default.asp https://www.programiz.com/python-programming Các tƠi li u tác gi có website: www.dainganxanh.com Liên h tác gi : dainganxanh Email: dainganxanh@msn.com 89 ... trình bƠy c a ph n nƠy SGK Tin h c 11 lƠ phù h p v i Python Bi u th c logic N i dung trình bƠy c a ph n nƠy SGK Tin h c 11 lƠ phù h p v i Python Cơu l nh gán 12 Cơu l nh gán Python dùng d u = đ... i Python c trình bƠy c a ph n nƠy SGK Tin h c §2 CÁC THẨNH PH N C A NGỌN NG TRÌNH L P Các thƠnh ph n c b n N i dung trình bƠy c a ph n nƠy SGK Tin h c 11 lƠ phù h p v i Python L u Ủ thêm: Python. .. x 11 Bi u th c s h c N i dung trình bƠy c a ph n nƠy SGK Tin h c 11 lƠ phù h p v i Python Riêng phép toán div, mod đ c thay th b ng // vƠ % HƠm s h c chu n Các hƠm s h c chu n đ c trình bƠy SGK

Ngày đăng: 17/04/2022, 20:31

HÌNH ẢNH LIÊN QUAN

nh d ng dl iu inra mƠn hình - Python SGK tin hoc 11 v202009
nh d ng dl iu inra mƠn hình (Trang 22)
- Thonny có giao din đn gi n, cu hình nh (trên cùng mt máy kh iđ ng nhanh h n nhi u so v i Pycham hay Spyder). - Python SGK tin hoc 11 v202009
honny có giao din đn gi n, cu hình nh (trên cùng mt máy kh iđ ng nhanh h n nhi u so v i Pycham hay Spyder) (Trang 23)
K t qu inra mƠn hình lƠ: mùa thu HƠ Ni - Python SGK tin hoc 11 v202009
t qu inra mƠn hình lƠ: mùa thu HƠ Ni (Trang 55)
v hình vuông import turtle  t = turtle.Pen()  for x in range(100) :      t.forward(x)      t.left(90)  - Python SGK tin hoc 11 v202009
v hình vuông import turtle t = turtle.Pen() for x in range(100) : t.forward(x) t.left(90) (Trang 90)

TỪ KHÓA LIÊN QUAN