1. Trang chủ
  2. » Giáo Dục - Đào Tạo

Giáo án Tin học 11 - Trường THPT Quang Trung - Tiết 29 đến tiết 34

13 7 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

Về kỹ năng: - Giúp học sinh có được các kỹ năng cơ bản làm việc với xâu trong lập trình : Khai báo kiểu xâu, nhập dữ liệu cho xâu, đưa ra màn hình giá trị của xâu.. - Sử dụng các hàm và [r]

(1)Trường THPT Quang Trung Giaùo aùn Tin hoïc 11 Tuần:16 - Tiết PPCT:29 Ngày dạy: BÀI TẬP I MỤC TIÊU: Về kiến thức: Học sinh sau tiết học sẽ: - Củng cố cho học sinh hiểu biết xâu - Cung cấp vài thuật toán và đơn giản thường gặp xử lí xâu Về kỹ năng: - Giúp học sinh có các kỹ làm việc với xâu lập trình : Khai báo kiểu xâu, nhập liệu cho xâu, đưa màn hình giá trị xâu - Sử dụng các hàm và thủ tục chuẩn đã trình bày SGK Về thái độ:  Có tư đúng đắn việc áp dụng kiểu xâu để giải các bài toán đơn giản II CHUẨN BỊ: Giáo viên:  Sách giáo viên, bài tập Học sinh:  Xem lại bài KIỂU XÂU III PHƯƠNG PHÁP: Nêu và giải vấn đề IV TIẾN TRÌNH DẠY HỌC: Ổn định tổ chức: kiểm diện Kiểm tra bài cũ: Câu Khái niệm xâu? Cho ví dụ (2đ) Câu 2: Hàm Copy (st,vt,n) và Pos (s1,s2) thực công việc gì? Cho ví dụ minh hoạ.(6đ) Giảng bài mới: Hoạt động thầy, trò Nội dung Bài Nhập xâu từ Bài 1: Var bàn phím St : string; GV : Khuùc Thò My õ Trinh -1Lop11.com (2) Trường THPT Quang Trung Giaùo aùn Tin hoïc 11 a Đếm và in màn hình các kí tự là chữ số xâu Công việc phải làm là: - Nhập xâu - Khởi tạo biến đếm kí tự số và xâu rỗng để lưu các kí tự số - Duyệt qua kí tự xâu Kiểm tra là kí tự số thì đếm và cộng vào xâu rỗng - Xuất kết b Đếm và in màn hình các kí tự là chữ cái xâu Công việc phải làm là: - Nhập xâu - Khởi tạo biến đếm kí tự chữ cái và xâu rỗng để lưu các kí tự chữ - Duyệt qua kí tự xâu Kiểm tra là kí tự chữ cái thì đếm và cộng vào xâu rỗng Lưu yù: không phân biệt chữ i, L : integer; Begin St :='Hoc thay khong tay hoc ban’; L:=Length(St); For i := to L If (St[i] >= 'a') and (St[i] <= 'z') then St[i]:= Upcase (St[i]); Write (St); End Kết đoạn chương trình trên là gì? Bài 2: program xau; uses crt; var s,s1,s2:string[100]; demso,demchu,i:byte; begin clrscr; writeln('moi ban nhap vao mot xau:'); readln(s); {cau a: Dem va in cac chu so xau} demso:=0; s1:=''; for i:=1 to length(s) if ('0'<=s[i]) and (s[i] <= '9') then begin demso:=demso+1; s1:=s1+s[i]; end; writeln('xau s co ',demso ,' chu so'); write(s1); {cau b: Dem va in cac chu cai xau} demchu:=0; S2:=''; for i:=1 to length(s) GV : Khuùc Thò My õ Trinh -2Lop11.com (3) Trường THPT Quang Trung Giaùo aùn Tin hoïc 11 hoa, chữ thường - Xuất kết c Chuẩn hóa xâu (Xóa các kí tự trắng thừa xâu và in hoa chữ cái đầu xâu) Công việc cần phải làm là: - Xóa các kí tự cách thừa đầu và cuối xâu - Xóa các kí tự cách thừa các từ: s[i-1] là cách thì s[i] là dấu cách thừa Phải dùng vòng lặp for – downto vì quá trình xóa ta làm giảm chiều dài xâu, dùng for – to không dừng - Chuyển kí tự đầu xâu thành chữ hoa if ('A'<=s[i]) and (s[i] <= 'Z') or ('a'<=s[i]) and (s[i]<='z') then begin demchu:=demchu+1; S2:=s2+s[i]; end; writeln('xau s co ',demchu ,' chu cai'); write(s2); readln end {cau c: chuan hoa xau} program xoadaucach; uses crt; var s:string; i:byte; begin clrscr; writeln('nhap xau s='); readln(s); while s[1]=' ' delete(s,1,1); while s[length(s)]=' ' delete(s,length(s),1); for i:=2 to length(s) if (s[i-1]=' ') and (s[i]=' ') then delete(s,i,1); s[1]:=upcase(s[1]); write(s); readln end Củng cố và luyện tập : - Nhắc lại kiến thức cần lưu ý bài tập Hướng dẫn học sinh chuẩn bị bài nhà:  Ôn lại các nội dung đã học : Kiểu mảng chiều, chiều, kiểu xâu GV : Khuùc Thò My õ Trinh -3Lop11.com (4) Trường THPT Quang Trung Giaùo aùn Tin hoïc 11 V RÚT KINH NGHIỆM: + Chương trình SGK: + Học sinh: + Giáo viên: Nội dung: Phương pháp: Tổ chức: Tuần: 16 - Tiết PPCT: 30 Ngày dạy: Bài ÔN TẬP I MỤC TIÊU: Về kiến thức: Học sinh sau tiết học sẽ:  Củng cố lại các kiến thức đã học kiểu liệu có cấu trúc Về kỹ năng: Có thể viết chương trình hoàn chỉnh Về thái độ:  Tiếp tục xây dựng lòng ham thích lập trình, nhằm giải các bài tóan máy tính  Tiếp tục hình thành và xây dựng phẩm chất cần thiết người lập trình II CHUẨN BỊ: Giáo viên:  Sách giáo viên, bài tập Học sinh:  Ôn lại các nội dung: vòng lặp (for do, While do), kiểu liệu có cấu trúc (mảng chiều, mảng chiều, kiểu xâu) III PHƯƠNG PHÁP: Sử dụng phương pháp nêu và giải vấn đề, vấn đáp GV : Khuùc Thò My õ Trinh -4Lop11.com (5) Trường THPT Quang Trung Giaùo aùn Tin hoïc 11 IV TIẾN TRÌNH DẠY HỌC: Ổn định tổ chức: kiểm diện Kiểm tra bài cũ: Câu hỏi: Cú pháp khai báo biến mảng chiều? cho VD Câu hỏi: Cú pháp khai báo biến mảng chiều? cho VD? Giảng bài mới: Hoạt động thầy, trò Bài viết CT nhập vào mảng chiều có n phần tử nguyên (n  10): a Đếm và tính tổng các phần tử chẵn b Đếm và tính tổng các phần tử dương c In màn hình số dương đầu tiên và số nó Công việc phải làm là: - Nhập mảng - Duyệt qua các phần tử mảng Nếu là số dương thì dừng và in màn hình HS :Nhắc lại các dạng liệu mảng GV: Nêu bài tập và yêu cầu bài toán HS: Đưa giải thuật để giải bài toán GV: Gọi học sinh lên bảng làm bài => nhận xét và sửa chữa sai sót bài làm học sinh Nêu điểm cần chú ý làm bài Nội dung Bài 1: program vd; uses crt; var a:array[1 10] of integer; i,n,duong,csduong:integer; begin clrscr; write('n='); readln(n); for i:=1 to n begin write('a[',i,']='); readln(a[i]); end; i:=1; while a[i]<=0 i:=i+1; begin duong:=a[i]; csduong:=i; end; writeln('so duong dau tien mang la ',duong,' co chi so la ',csduong); readln end {cau d: Them phan tu mang} program chen_so_vao_mang; uses crt; var a:array[1 100] of integer; i,n,k,x:integer; begin GV : Khuùc Thò My õ Trinh -5Lop11.com (6) Trường THPT Quang Trung Giaùo aùn Tin hoïc 11 clrscr; d Thêm phần tử vào write('n=');readln(n); mảng for i:=1 to n Công việc phải làm là: begin - Nhập mảng write('a[',i,']='); - Nhập vị trí k và giá trị x readln(a[i]); cần thêm end; - Các phần tử từ thứ đến write('nhap vi tri can chen thứ k-1 là không đổi '); readln(k); - Dùng lệnh for gán giá trị write('nhap gia tri can chen từ a[n+1] đến a[k+1]: '); readln(x); for i:=n+1 downto k+1 a[i]:=a[i-1]; a[i]:=a[i-1]; - Gán a[k]:=x; a[k]:=x; - Thông báo kết for i:=1 to n+1 write(a[i]); readln end Củng cố và luyện tập :  Nhắc lại các kiến thức quan trọng cần nắm Hướng dẫn học sinh chuẩn bị bài nhà:  BTVN : tự làm lại bài và thực hành trên máy  Học bài, chuẩn bị thi HKI V RÚT KINH NGHIỆM: + Chương trình SGK: + Học sinh: + Giáo viên: Nội dung: Phương pháp: Tổ chức: Tuần:17 - Tiết PPCT:31, 32 Ngày dạy: THI HKI GV : Khuùc Thò My õ Trinh -6Lop11.com (7) Trường THPT Quang Trung Giaùo aùn Tin hoïc 11 Tuần:19 - Tiết PPCT:33 Ngày dạy: BÀI TẬP (tt) I MỤC TIÊU: Về kiến thức: Học sinh sau tiết học sẽ: - Củng cố cho học sinh hiểu biết xâu - Cung cấp vài thuật toán và đơn giản thường gặp xử lí xâu Về kỹ năng: - Giúp học sinh có các kỹ làm việc với xâu lập trình : Khai báo kiểu xâu, nhập liệu cho xâu, đưa màn hình giá trị xâu - Sử dụng các hàm và thủ tục chuẩn đã trình bày SGK Về thái độ:  Có tư đúng đắn việc áp dụng kiểu xâu để giải các bài toán đơn giản II CHUẨN BỊ: Giáo viên:  Sách giáo viên, bài tập Học sinh:  Xem lại bài KIỂU XÂU III PHƯƠNG PHÁP: Nêu và giải vấn đề IV TIẾN TRÌNH DẠY HỌC: Ổn định tổ chức: kiểm diện Kiểm tra bài cũ: Câu Khái niệm xâu? Cho ví dụ (2đ) Câu 2: Hàm Copy (st,vt,n) và Pos (s1,s2) thực công việc gì? Cho ví dụ minh hoạ.(6đ) Giảng bài mới: Hoạt động thầy, trò Nội dung GV: Nêu bài tập và yêu Bài Viết CT nhập vào mảng chiều gồm n GV : Khuùc Thò My õ Trinh -7Lop11.com (8) Trường THPT Quang Trung Giaùo aùn Tin hoïc 11 cầu bài toán HS: Đưa giải thuật để giải bài toán GV hướng dẫn các bước làm: - Nhập mảng chiều: nhập số phần tử mảng, nhập giá trị các phần tử mảng - Khởi tạo giá trị ban đầu cho biến đếm, và tổng S - Duyệt qua phần tử mảng: + Nếu nó dương thì đếm tăng và đưa phần tử đó màn hình GV: Nêu bài tập và yêu cầu bài toán HS: Đưa giải thuật để giải bài toán Cách làm: - Nhập vào xâu st số nguyên (n  50) Cho biết mảng có bao nhiêu số dương và Tính trung bình cộng các số dương mảng Program BT_Mang; Uses CRT; Var A : array[1 50] of integer; S, dem, i, n:integer; Begin Clrscr; Write(‘nhap so phan tu cua mang: ‘); readln(n); For i:=1 to n Begin Write(‘A[‘, i, ‘]=’); Readln(A[i]); End; Dem:=0; S:=0; For i:=1 to n If A[i]> then Begin Dem:=dem+1; S:=S+A[i]; End; Writeln(‘TBC cac so duong la: ‘, S/dem); Readln End Bài 3: Viết chương trình nhập vào chuỗi kí tự, sau đó nhập vào kí tự và đếm số lần xuất nó xâu đã nhập Program DEMSOKYTU; Uses Crt; - Khởi tạo giá trị ban Var st:string[30]; x:char;i,dem:integer; đầu cho biến đếm Begin Clrscr; Writeln('DEM SO LAN XUAT HIEN - Duyệt qua ký tự CUA KY TU'); xâu st: Writeln(' '); - Nhập ký tự x; GV : Khuùc Thò My õ Trinh -8Lop11.com (9) Trường THPT Quang Trung Giaùo aùn Tin hoïc 11 Write('Nhap chuoi ky tu la:'); readln(st); Write('Nhap ky tu =');readln(x); dem:=0; For i:=1 to length(st) If x= st[i] then dem:=dem+1; - Đưa giá trị biến đếm Writeln('so lan xuat hien cua màn hình ',x,' chuoi ‘, st,' la: ',dem); Readln; End Củng cố và luyện tập : - Nhắc lại kiến thức trọng tâm cần nắm Hướng dẫn học sinh chuẩn bị bài nhà:  Chuẩn bị bài 13 : KIỂU BẢN GHI + Kiểm tra xem kí tự nào trùng với ký tự x thì tăng biến đếm V RÚT KINH NGHIỆM: + Chương trình SGK: + Học sinh: + Giáo viên: Nội dung: Phương pháp: Tổ chức: Tuần:19 - Tiết PPCT:34 Ngày dạy: Bài 13 KIỂU BẢN GHI I MỤC TIÊU: Về kiến thức: Học sinh sau tiết học sẽ:  Giúp học sinh biết nào là liệu kiểu ghi  Hiểu và biết cách khai báo ghi, biết cách thao tác với ghi Về kỹ năng:  Bước đầu biết mô tả đối tượng số thuộc tính cần quản lí  Khai báo kiểu ghi  Nhận biết thành phần biến ghi và bước đầu viết vài thao tác xử lí trên thành phần ghi GV : Khuùc Thò My õ Trinh -9Lop11.com (10) Trường THPT Quang Trung Giaùo aùn Tin hoïc 11 Về thái độ:  Học sinh phải có thái độ nghiêm túc học tập, hiểu đúng, đủ các nội dung bài  Rèn luyện cho học sinh phong cách suy nghĩ, lập trình hợp lí, rõ ràng, mạch lạc II CHUẨN BỊ: Giáo viên:  Sách giáo viên Học sinh:  Xem trước KIỂU BẢN GHI III PHƯƠNG PHÁP: Phương pháp vấn đáp, kết hợp tạo tình có vấn đề IV TIẾN TRÌNH DẠY HỌC: Ổn định tổ chức: kiểm diện Kiểm tra bài cũ: Giảng bài mới: Hoạt động thầy, trò Hoạt động 1: GV: Em nào có thể cho cô biết nội dung bảng kết thi học kì gồm gì? HS: Lắng nghe câu hỏi và trả lời GV: Nêu kiểu liệu kiện? HS: Suy nghĩ, trả lời câu hỏi GV: Có kiểu liệu nào dùng để mô tả toàn thông tin kết điểm học sinh này không? GV: Để có thể mô chúng Nội dung 1.Khái niệm: Dữ liệu kiểu ghi ( record ) dùng để mô tả các đối tượng có cùng số thuộc tính mà các thuộc tính có thể có các kiểu liệu khác Ví dụ: Thông tin kết điểm học sinh HoTen: String;;;;;; NgaySinh: String DToan: Real DLi: Real DHoa: Real Khai báo: Để khai báo biến ghi , thường khai báo kiểu ghi sau đó khai báo biến ghi Khai báo kiểu ghi: Type<tên kiểu ghi> = record <tên trường 1> : <kiểu trường 1>; ……… GV : Khuùc Thò My õ Trinh - 10 Lop11.com (11) Trường THPT Quang Trung Giaùo aùn Tin hoïc 11 ta dùng kiểu liệu Đó chính là kiểu ghi HS: Ghi nhận phần khái niệm vào GV: Vậy cách khai báo kiểu ghi nào? Có gì khác so với kiểu liệu mà em đã học? Chúng ta hãy cùng tìm hiểu cách khai báo kiểu ghi HS: Lắng nghe, ghi nhận GV: Giải thích khái niệm trường cho học sinh hiểu rõ thông qua bảng kết sách giáo khoa.Mỗi cột là trường (thuộc tính) đối tượng HocSinh GV: Với các kiện đã cho trên, em nào có thể giúp cô khai báo kiểu ghi kết thi học kì không? HS: Quan sát, trả lời GV: Vậy còn khai báo biến ghi thì sao? Khai báo hai biến A, B sau HS:Nếu cô muốn khai báo biến mảng kiểu ghi có tối đa 45 phần tử?cô phải khai báo nào? HS: Suy nghĩ, trả lời câu hỏi <tên trường k> : <kiểu trường k>; End; Ví dụ: Type HocSinh = record HoTen: String[30];;;;;;;; NgaySinh: String[15]; DToan: Real; DLi: Real; DHoa: Real; end; Khai báo biến ghi: Var <Tên biến ghi> : <Tên kiểu ghi>; Ví dụ: Var A,B: HocSinh; Var LOP: Array[1 45] of HocSinh Tham chiếu đến trường ghi: <tên biến ghi>.<tên trường> Ví dụ: HSA.HoTen LOP[3].DToan 3.Gán gia trị: Có hai cách để gán giá trị cho ghi: Dùng lệnh gán trực tiếp: Nếu A, B là hai biến ghi cùng kiểu ta có thể gán giá trị B cho A câu lệnh gán: Ví dụ: A:=B; Gán giá trị cho trường:Có thể thực lệnh gán nhập vào từ bàn phím: A.HoTen:=’Nguyen Van Tuan’; (gán giá trị Nguyen Van Tuan cho trường HoTen biến ghi A) GV: Khi có nhu cầu Readln(HSA.HoTen); thông tin (Nhập từ bàn phím giá trị HoTen cho biến A) GV : Khuùc Thò My õ Trinh - 11 Lop11.com (12) Trường THPT Quang Trung Giaùo aùn Tin hoïc 11 trường, làm nào để truy cập vào trường ghi? Muốn biết điểm toán phần tử thứ mảng LOP ta phải thự lệnh nào? HS: Lắng nghe câu hỏi, trả lời GV: Vì ghi có nhiều trường nên việc gán giá trị cho ghi phức tạp các biến khác Chúng ta cùng tìm hiểu cách gán giá trị ghi GV: Giải thích đề bài ví dụ, không viết hết chương trình chú trọng phần nhập, xử lí liệu và phần xuất.(với phần viết vài dòng để học sinh nắm rõ) 4.Ví dụ: Lớp 11A5 có tối đa 45 học sinh Cần quản lí học sinh với các thuộc tính như: HoTen, DToan, DLi, DTB.Trong đó DTB là tổng điểm bình quân hai môn Toán, Lí mà học sinh đạt Chương trình mẫu: Type HocSinh = record HoTen: String[30];;;;;;; DToan: Real; {Khai báo} DLi: Real; end; Var LOP:Array[1 45] of HocSinh; n,i: Byte; begin write (‘So luong hoc sinh n= ’); readln(n); for i:= to n begin writeln(‘Nhap so lieu ve hoc sinh thu ’,i,’:’); write(‘Ho va ten: ’); readln(LOP[i].HoTen); write(‘Diem toan: ’); readln(LOP[i].DToan); write(‘Diem li: ’); readln(LOP[i].DLi); LOP[i].DTB:=(LOP[i].DToan + LOP[i].Dli )/2; end; for i:=1 to n writeln(LOP[i].HoTen, ‘- Diem TB: ’, LOP[i].DTB); {Xuất} readln; end GV : Khuùc Thò My õ Trinh - 12 Lop11.com (13) Trường THPT Quang Trung Giaùo aùn Tin hoïc 11 Củng cố và luyện tập :  Cách khai báo kiểu ghi: Type <tên kiểu ghi> = record < tên trường 1>: < kiểu trường 1>; ………………………………… < tên trường k>: < kiểu trường k>; end;  Khai báo biến ghi: Var < tên biến ghi> : <tên kiểu ghi>;  Tham chiếu đến trường ghi: < tên biến ghi> < tên trường > vd: A.X Hướng dẫn học sinh chuẩn bị bài nhà:  BTVN : 11/ 80 SGK  Học bài, chuẩn bị cho tiết bài tập và thực hành V RÚT KINH NGHIỆM: + Chương trình SGK: + Học sinh: + Giáo viên: Nội dung: Phương pháp: Tổ chức: GV : Khuùc Thò My õ Trinh - 13 Lop11.com (14)

Ngày đăng: 01/04/2021, 05:18

Xem thêm:

TỪ KHÓA LIÊN QUAN

w