-Nhằm cung cấp cho học sinh thuật toán săp xếp , học sinh đã biết thuật toán tìm phần tử lớn nhất của một mảng và có kĩ năng diễn đạt thuật toán đó bằng chương trình Rèn luyện cho học [r]
Trang 1Ngày soạn: 2/9 Ngày giảng:5/9
CHƯƠNG I:
NGÔN NGỮ LẬP TRÌNH PASCAL CƠ SỞ
Tiết 1,2 &1 MỞ ĐẦU
*
A CHUẨN BỊ
I Yêu cầu: Giúp Học sinh:
- Làm quen với một ngôn ngữ lập trình cơ sở cơ bản giúp học sinh giải toán bằng ngôn ngữ máy Lập chương trình tình toán một số bài toán theo khuôn mẫu
- Từ những hiểu biết cơ bản học sinh có cái nhìn khái quát về một ngôn ngữ lập trình
cơ sở nói riêng và về tin học nói chung
- Cung cấp những thông tin cần thiết để làm việc với môi trường này
II Chuẩn bị.
- Thầy: SGK, Giáo án, sách tham khảo
- Trò: Vở ghi, vở bài tập
B NỘI DUNG
I Kiểm tra bài cũ
Không Kiểm tra
II Bài mới.
Chúng ta đã được nghe nhắc đến ngôn ngữ lập trình Pascal Vậy theo em ngôn ngữ này là do Pascal đã xây dựng nên?
10
- Là ngôn ngữ lập trình cấp cao do giáo sư
Niklaus Wirth – Thuỵ Sĩ sáng tạo năm
1970 Để tưởng nhớ tới nhà bác học nổi
tiếng Pascal,
Hiện nay ta thường hay được nghe 2 thuật
ngữ là Pascal và Turbo Pascal vậy Turbo
Pascal dùng để làm gì?
Turbo Pascal của hãng Borland (Mỹ) có
- Là ngôn ngữ lập trình cấp cao có ngữ pháp ngữ nghĩa đơn giản và có tính Logic, có cấu trúc
Trang 2nhiều ưu điểm nhất và trở thành ngôn ngữ
cấp cao phổ biến nhất trên thế giới và được
xây dựng trên cơ sở của Pascal
Trong môi trường Windows ta học năm
trước để khởi động được cần có những tệp
1 Chương trình Pascal đơn giản
* Chương trình là sự diễn đạt quá trình giải toán bằng một ngôn ngữ để máy thực hiện một cách tự động quá trình này
- Chương trình luôn có 2 yếu tố là các đối tượng mang giá trị và quá trình thựchiện các thao tác trên đối tượng đó
VD: Viết chương trình in ra màn hình dòng thông báo
“Đây là chương trình Pascal”
- Trong đó Program, begin, End là các
từ khoá trong TPWriteln: là tên chuẩnVidu1: Tên chương trìnhVD2 : Tính lập phương của một số bất
kỳ nhập vào từ bàn phím
Trang 3X: Tên biến; tinhlapphuong là tên chương
trình (Làm việc trên đại lượng số nên phải
khai báo tên và kiểu đại lượng đó)
Vd: Program; begin; end
? Những tên gọi sau tên nào sai? Vì sao ?
5 Hanoi ; Việt_Nam ; begin ; HảiPhong
Program tenchuongtrinh;
- Phần khai báo: (có thể có hoặc không)Trong đó Var dành khai báo tên biến và kiểu( Var y: integer)
- Phần thân chương trình: bắt đầu bằng
từ khoá Begin và kết thúc bằng từ khoá End
2 Một số khái niệm
* từ khoá: trong Pascal có một số từ
dành riêng mà nghĩa được quy định sẵn gọi là từ khoá
*Tên gọi: Có thể được đặt bằng một
dãy ký tự chỉ gồm các chữ cái chữ số, dấu $, dấu _ nhưng ký tự đầu tiên phải
là chữ số và không được trùng với từ khoá
*Các phép tính: + (Cộng); - (Trừ);
*(Nhân); / (Chia)
Trang 4C CỦNG CỐ, HƯỚNG DẪN LÀM BÀI TẬP 5p’
Kiến thức cần nhớ:
- Các tệp tin để chạy chương trình Turbo Pascal và tính chất cửa nó
- Chương trình Pascal đơn giản
Trang 5NGÔN NGỮ LẬP TRÌNH PASCAL CƠ SỞ
Tiết 3 &2 LÀM VIỆC VỚI MÔI TRƯỜNG CỦA TURBO
PASCAL
*
A CHUẨN BỊ
I Yêu cầu: Giúp Học sinh:
- Hình thành kỹ năng cơ bản để sử dụng trong môi trường Turbo Pascal Giới thiệu với học sinh một số kỹ năng, ứng dụng của TP
- Cho học sinh làm quen với môi trường hoàn toàn mới
- Tạo sự hứng thú cho học sinh say mê tìm tòi khám phá thế giới khoa học
II Chuẩn bị.
- Thầy: SGK, Giáo án, sách tham khảo
- Trò: Vở ghi, vở bài tập
B NỘI DUNG
I Kiểm tra bài cũ 5p’
? Chương trình Pascal đơn giản gồm mấy phần là những phần nào?
- 3 phần: Phần mở đầu, phần khai báo, phần thân chương trình
II Bài mới.
3
15
? Để chạy được TP cần những tệp nào?
Sau khi gõ lệnh màn hình làm việc của TP
hiện lên như sau:
File Edit Run Compile Option
Line 1 Col 1 Insert Indent
- Con chạy
Các dòng từ 3 đến 24
F1-Help F5 –Zoom F6-Switch F7-Trace
1 Khởi động Turbo Pascal
Để khởi động TP ta gõ câu lệnhTurbo
2 Môi trường của Turbo Pascal
- Dòng1: Gồm 7 tên nhóm chức năng chính của TP là dải Menu
- Dòng 2: Dòng trạng thái, trình bày trạngthái hiện tại của màn hình soạn thảo
- Dòng cuối là dòng hướng dẫn gồm 1 số phím chức năng
- Từ dòng 3 đến dòng 24 là phần màn hình soạn thảo
Trang 6Cho học sinh thực hành luôn trên máy
Cho học sinh thực hành luôn trên máy
VD: ấn Alt + F O hoặc F3 để mở tệp
Alt + F S hặc F2 để ghi tệp lên đĩa
Ctrl +F9 thực hiện chương trình
Alt + X kết thúc làm việc với TP
Vd: trang 122 sách giáo khoa tin 10 Sách
chuyên ban
* Làm việc với môi trường của TP thực chất là làm việc với một hệ thống bảng chọn (Menu) nhiều tầng
3 Làm việc với bảng chọn
Ta có thể dùng 1 trong 2 cách sau
Cách 1: ấn F10 (Menu) con chạy biến
mất hộp sáng định vị tại nhóm chức năng dùng di chuyển
Cách 2: ấn tổ hợp phím Alt + Chữ cái
khác màu ở tên của nhóm chức năng (Thường là chữ đầu)
Để quay về soạn thảo ấn phím ESC
C HƯỚNG DẪN HỌC SINH LÀM BÀI 15p’
Kiểm tra bài tập về nhà của tiết trước
Hướng dẫn học sinh nội dung thực hành của tiết sau
BTVN:
Hãy viết chương trình CHUCMUNG in ra màn hình các dòng:
- Dòng1: Họ tên (Của người viết chương trình)
- Dòng2: Ngày thánh năm sinh
Trang 7Tiết 4 &3 THỰC HÀNH
*
A CHUẨN BỊ
I Yêu cầu: Giúp Học sinh:
- Củng cố kiến thức đã học, có thể thao tác được trong môi trường TP
- Cho học sinh làm quen với môi trường hoàn toàn mới
- Tạo sự hứng thú cho học sinh say mê tìm tòi khám phá thế giới khoa học
Kiểm tra cách thao tác máy
II Bài mới.
G: Hướng dẫn học sinhkhởi động TP
? Cách khởi động TP?
Những bài đã chạy chép vào vở để
nghiên cứu
Kiểm tra việc chuẩn bị bài của học sinh
Soạn một đoạn văn bản sau:
“ Đưa người ta không đưa qua sông Sao nghe có sóng ở trong lòng Bóng chiều không thắm không vàng vọt Sao đầy hoàng hôn trong mắt trong”
Đánh bài tập ở tiết 2, các ví dụ và bài tập về nhà và cho chạy chương trình
C HƯỚNG DẪN HỌC SINH HỌC BÀI
Củng cố bài cũ
Trang 8Ngày soạn:17/9 Ngày giảng: 19 / 9
CHƯƠNG I:
NGÔN NGỮ LẬP TRÌNH PASCAL CƠ SỞ
Tiết 5 &4 LẬP TRÌNH TÍNH TOÁN
*
A CHUẨN BỊ
I Yêu cầu: Giúp Học sinh:
- Làm quen với một số khái niệm cơ bản,
- Làm quen với một số phép toán thông thường, cách vào ra dữ liệu, các lệnh gán
- Tạo sự hứng thú cho học sinh say mê tìm tòi khám phá thế giới khoa học
Trang 9? Sao lại gọi là biến số?
? Hằng và biến có cần phải cùng quy tắc
đặt tên hay không?
+ Viết trực tiếp giá trị của hằng+ Đặt cho hằng một tên gọi sau đó viết tên gọi đó thay cho việc viết trực tiếp giátrị của hằng
- Biến số có giá trị thay đổi trong quá trình thực hiện chương trình Các biến cótên gọi để phân biệt lẫn nhau
- Có thể được đặt tên theo quy tắc đặt tên
ở trên Những tên này không được trung với từ khoá
Khai báo hằng cần dùng hàm Const
2 Biểu diễn số thực và phép tính
a Biểu diễn số thực
Có 2 dạng:
+ Dạng dấu phẩy tĩnh + Dạng dấu phẩy động
Số thực được khai báo trong chương trình là Real
b Các phép tính
Cộng (+); Trừ(-); Nhân(*); Chia (/)
Trang 10Writeln(‘gia tri bieu thuc la:’, A:8: 2)
Biểu thức A khi in ra kết quả sẽ lấy tối đa
độ dài của biểu thức là 8 ký tự và lấy sau
dấu phẩy là 2 số thập phân
3 Câu lệnh gán và phép tính
Câu lệnh gán thực hiện việc tính toán biểu thức rôi gán giá trị vừa tính cho mộtbiến
<Tên biến>:= <Biểu thức>
Ký hiệu := gọi là phép gán
- Thực hiện câu lệnh gán gồm 2 bước:+ Tính giá trị biểu thức bên phải dấu gán+ Gán giá trị tính được cho biến bên trái
4 Vào/ra dữ liệu
- Để vào dữ liệu từ bàn phím và hiện kết quả ra màn hình sử dụng các thủ tục chuẩn READ; READLN; WRITE; WRITELN;
- Khi dùng Writeln thì sau lệnh sẽ xuống dòng
- Write(Biểu thức :d :d1) hoặc Writeln ingiá trị của biểu thức thực với độ dài d ký thực với d1 số thập phân
-Write(biểu thức thực: d) hoặc writeln(biểu thức thực: d) ở dạng dấu phẩy động bên phải vùng có ô d
C HƯỚNG DẪN HỌC SINH LÀM BÀI TẬP 7p’
Trang 11Bài cũ: Nắm những khái niệm cơ bản trong CT có thể chỉ ra những phần đã học
- Làm bài 1,2,3,5,6:- 135(sgk-cb)
Trang 12Ngày soạn:18/9 Ngày giảng: 19/9
CHƯƠNG I:
NGÔN NGỮ LẬP TRÌNH PASCAL CƠ SỞ
Tiết 6 & BÀI TẬP
*
A CHUẨN BỊ
I Yêu cầu: Giúp Học sinh:
- Củng cố lại kiến thức đã học ở các bài trước
- Vận dụng vào giải các bài tập đã cho về nhà và mở rộng
- Tạo sự hứng thú cho học sinh say mê tìm tòi khám phá thế giới khoa học
II Chuẩn bị.
- Thầy: SGK, Giáo án, sách tham khảo
- Trò: Vở ghi, vở bài tập
B NỘI DUNG
I Kiểm tra bài cũ
Kiểm tra trong giờ dạy
II Bài mới.
5
8
Gọi học sinh lên bảng
Kiểm tra sự chuẩn bị bài của học
Trang 13Gọi h/s lên bảng chữa bài tập
Giới thiệu cho học sinh hàm tính
a
Trang 14Ngày soạn: 24/9 Ngày giảng: 29/9
I Yêu cầu: Giúp Học sinh:
- Củng cố kiến thức đã học, có thể thao tác bài tập trên máy
- Có thể tự viết chương trình giải bài toán
- Có thể khắc phục được những lỗi cơ bản khi chạy chương trình
Kiểm tra cách thao tác máy
Chia nhóm học sinh
Hướng dẫn học sinh thực hành
Bài 1:
Lập chương trình tính trung bình cộng của 4 số bất kỳ
Program tbc;
Var tb, a, b, c, d :real;
Begin Write(‘ nhập vào 4 số’); readln (a, b,c,d);
Trang 15Đánh các bài tập của tiết thực hành và bài
tập về nhà vào máy và cho chạy chương
trình
Sửa lỗi cho học sinh
Kiểm tra lỗi các máy của học sinh và quản
lý trật tự phòng máy
Viết chương trình tính diện tích và chu vihình tròn với bán kính r nhập từ bàn phím Cho pi = 3.14
S:= pi*r*r;
P:=2*pi*r;
Writeln (‘dien tich hinh tron la:’,S);Writeln(‘chu vi hinh tron la:’, P) ;Readln ;
- Nhận xét giờ học và kiểm tra máy móc, thiết bị
- Những bài đã chạy yêu cầu chép lại vào vở, về nhà xem lại
Trang 16Ngày soạn:24/9 Ngày giảng: 29 / 9
CHƯƠNG I:
NGÔN NGỮ LẬP TRÌNH PASCAL CƠ SỞ
Tiết 8 &.4 HỆ THỐNG HOÁ PHẦN TỬ CƠ SỞ CỦA TURBO
PASCAL
*
A CHUẨN BỊ
I Yêu cầu: Giúp Học sinh:
- Hệ thống hoá được các phần tử cơ sở của Turbo pascal
- Kết hợp với những khái niệm đã học để giải các bài toán phức tạp hơn
- Cung cấp một số ký hiệu, từ khoá, tên
II Chuẩn bị.
- Thầy: SGK, Giáo án, sách tham khảo
- Trò: Vở ghi, vở bài tập
B NỘI DUNG
I Kiểm tra bài cũ
Không kiểm tra
II Bài mới.
Ta thấy những thành phần cấu tạo nên
một chương trình của Turbo Pascal là
các ký tự, ký hiệu, chữ và số
Vậy những thành phần đó người ta gọi
chúng là gì?
Ta gọi chúng là những phần tử cơ sở
của Turbo pascal I Bảng chữ cái (Character set)
- Bảng chữ gốc của TP là bảng ASCII bao gồm:
* Bộ chữ latinhGồm 26 chữ cái tiếng anh in hoa từ A-> Z
Và in thường từ a->z, không phân biệt chữ
Trang 1715
Chữ số 0 khác với chữ o
Vậy khi nói 2485 là số hàng nghìn vậy
nó được cấu tạo bởi những thành phần
* Các dấu
- Các phép toán số học: + - * /
- Các dấu so sánh bằng hơn kém: =, >, <
- Các ký hiệu khác: ; : ‘ “ ! @ #
II Các từ khoá và dấu nháy kép
- Một số từ của bảng chữ cái mang một ý nghĩa xác định trong chưnơg trình cũng được xem là phần tử của ngôn ngữ chúng gồm các
từ khoá và dấu képDanh sách các từ khoá
AND ARRAY BEGIN CASE CONST
DIV DO DOWNTO ELSE FILE
FOR FUNCTION IF END MOD
GOTO IN LABEL NIL NOT TO
THEN STRING REPEAT WHILE VAR UNTIL PROGRAM
WITH
- TP dùng một số dấu kép, đó là cặp 2 ký hiệu
Trang 18Trong khi lập trình nhiều khi phải đặt
tên: tê chương trình, tên hằng, tên biến,
tên hàm
Những tên được đặt sẵn trong TP,
chẳng hạn như Pi, integer, readln,
write được gọi là tên chuẩn
? Chúng khác với từ khoá ở điểm nào?
đi liền nhau, giữa chúng không có dấu cách.Các dấu ghép gồm:
:= :Dấu gán
>= :Dấu lớn hơn hoặc bằng
<= :Dấu nhỏ hơn hoặc bằng
<> :Dấu khác(* :Bắt đầu chú thích
- Dù vậy không nên dùng tên chuẩn để đặt cho các đối tượng của mình, vì chúng có ý nghĩa đặt trước
Trang 19B = 3x2 + 1/2y +8 x, y có thể là số nguyên nhưng B nên lấy số thực
Trang 20Ngày soạn:1/10 Ngày giảng: 3/10
CHƯƠNG I:
NGÔN NGỮ LẬP TRÌNH PASCAL CƠ SỞ
Tiết 9 & BÀI TẬP
*
A CHUẨN BỊ
I Yêu cầu: Giúp Học sinh:
- Thao tác được thành thạo , viết chương trình đơn giản
- Giáo dục thế giới quan khoa khoa học cho học sinh
- Sử dụng linh hoạt ngôn ngữ này để chuyển từ các bài toán sang tin học
II Chuẩn bị.
- Thầy: SGK, Giáo án, sách tham khảo
- Trò: Vở ghi, vở bài tập
B NỘI DUNG
I Kiểm tra bài cũ
Kiểm tra trong giờ học
II Bài mới.
Gọi học sinh lên bảng chữa bài
Program bài2;
Var a, b, c:integer;
S, P: Real;
Begin Write (‘ nhập vào 3 cạnh của tam giác’); Readln(a,b,c);
P:= (a + b + c )/2;
S:= sqrt (p*(p –a )*(p-b)(p-c));
Trang 21Gọi học sinh lên bảng, nhận xét
bài làm của học sinh
Writeln (‘ diện tích hình tam giác là:’,S); Readln;
End
*Một số hàm thông dụng Sqrt(x): Cho giá trị là x
Sqr(x): Cho giá trị là x 2 Abs(x): Cho giá trị tuyệt đối x
Bài 2:
Sử dụng các hàm đã học viết chương trình để tính các biểu thức sau:
Viết chương trình:
a Tính diện tích hình chữ nhật, hình thang, hình tròn
b Biểu thức B = x2 + 2xb3y x-2y 315x
c Tính tổng hiệu tích thương của 3 số m, n, k
Trang 22CHƯƠNG I:
NGÔN NGỮ LẬP TRÌNH PASCAL CƠ SỞ
Tiết 10 &5 KIỂU DỮ LIỆU ĐƠN GIẢN
*
A CHUẨN BỊ
I Yêu cầu: Giúp Học sinh:
- Giới thiệu khái niệm về kiểu dữ liệu chuẩn
- Nắm vững một số kiểu dữ liệu chuẩn trong TP : Kiểu nguyên, kiểu thực, kiểu logic,kiểu ký tự
- Củng cố kỹ năng trình bày bài toán dạng tin học
II Chuẩn bị.
- Thầy: SGK, Giáo án, sách tham khảo
- Trò: Vở ghi, vở bài tập
B NỘI DUNG
I Kiểm tra bài cũ
Không kiểm tra
II Bài mới.
Là khái niệm quan trọng của ngôn ngữ lập
trình Dữ liệu được lưu trữ trong bộ nhớ và
được xử lý bằng các câu lệnh của chương
trình Vì vậy hình thành một cách tự nhiên
các lớp dữ liệu có cùng cách lưu trữ và
phương pháp xử lý Trong ngôn ngữ lập trình
các lớp dữ liệu đó được xác định qua kiểu dữ
1 Kiểu nguyên(Integer)
- Chỉ sử dụng các số nguyên
Trang 23Phép tính này có đưa ra kết quả trong kiểu
nguyên hay không ?
* Phép tính này sẽ thông báo lỗi vì khi lấy
30000 + 8000 = 38000 vượt quá dụng lượng
miền nhớ của kiểu nguyên
Vậy phải làm cách nào ?
- Các kiểu nguyên được lưu trữ kết quả tính toán là đúng, là kiểu có thứ tự đếm được
- Với các phép toán + - *nếu có toán hạng là nguyên thì kết quả cũng nguyên
2 Kiểu thực(Real)
- Là tập hợp các số biểu diễn theo kiểu dấu phẩy động, gồm các số thực
- Phạm vi biểu diễn 2.9*10-39 đến 1.7*1038
- Các kiểu thực được lưu trữ kết quả tính toán là gần đúng với sai số rất nhỏ
3 Kiểu ký tự(Char)
Trang 249
Để biểu diễn hằng ký tự ta biểu diễn chúng
giữa 2 dấu nháy vd ‘a’; ‘A’
SIN(x): sinCOS (x): cosArctan(x): Artang
- Các kiểu dữ liệu, cách sử dụng, phạm vi
- Các hàm đã học
BTVN
Viết chương trình sau:
Cho ABC vuông ở A cho biết cạnh a và góc B viết giải thuật để tính góc C cạnh
b và cạnh c (Sử dụng hàm số Sin)
Trang 25CHƯƠNG I:
NGÔN NGỮ LẬP TRÌNH PASCAL CƠ SỞ
Tiết 11 & BÀI TẬP
*
A CHUẨN BỊ
I Yêu cầu: Giúp Học sinh:
- Thao tác được thành thạo , viết chương trình đơn giản
- Giáo dục thế giới quan khoa khoa học cho học sinh
- Sử dụng linh hoạt ngôn ngữ này để chuyển từ các bài toán sang tin học
II Chuẩn bị.
- Thầy: SGK, Giáo án, sách tham khảo
- Trò: Vở ghi, vở bài tập
B NỘI DUNG
I Kiểm tra bài cũ
Kiểm tra trong giờ học
Gọi học sinh lên bảng chữa bài tập
Kiểm tra sự chuẩn bị bài của học
sinh
Bài1:
Tính diện tích hình chữ nhật, hình thang, hình tròn
Trang 26Gọi học sinh lên bảng chữa bài tập
Kiểm tra bài làm của học sinh,
đánh giá bài làm của học sinh
Gọi học sinh khá lên bảng
Sửa lỗi, nhận xét bài làm của học
sinh đánh giá và cho điểm
B = x2 + 2xb3y x-2y 315x
HD:
Vì biểu thức có căn bậc 2 nên tốt nhất chọn kiểu
dữ liệu cho B là kiểu thựcB:= sqr(x)+abs(2*x*b+3*y-sqrt(x-2*y+3) + 15x)
Bài3 :
Viết chương trình sau:
Cho ABC vuông ở A cho biết cạnh a và góc
B viết giải thuật để tính góc C cạnh b và cạnh c (Sử dụng hàm số Sin)
Giải:
Program tamgiac;
Var a, gB, gC, c:real;
Begin Writeln (‘nhap vao a va gB’); readln(a,gB); gA:=90;
gC:=90 – gB;
b:=a*sin(gB) (*vì Sin 900 = 1*) c:= sqrt(sqr(a)+sqr(b));
Trang 27NGÔN NGỮ LẬP TRÌNH PASCAL CƠ SỞ
Tiết 12 &6 NHŨNG CÂU LỆNH RẼ NHÁNH VÀ GHÉP
*
A CHUẨN BỊ
I Yêu cầu: Giúp Học sinh:
- Lập được những chương trình nhằm giải quyết có hiệu quả những bài toán phức tạp
- Sử dụng cấu trúc điều khiển cơ bản
- Sử dụng cấu trúc điều khiển cơ bản để làm các bài toán có điều kiện chặt chẽ hơn
- Có khả năng phân tích bài toán đơn giản để chọn kiểu cấu trúc điều khiển phù hợp từng thao tác
- Cung cấp cho học sinh nhưngc câu lệnh ghép câu lệnh rẽ nhánh cách sử dụng và cúpháp
- Tiếp tục xây dựng lòng ham thích giải toán bằng lập trình trên MTĐT
II Chuẩn bị.
- Thầy: SGK, Giáo án, sách tham khảo
- Trò: Vở ghi, vở bài tập
B NỘI DUNG
I Kiểm tra bài cũ
Không kiểm tra
II Bài mới.
18
Cho máy nhập vào 3 số, kiểm tra xem 3 số
đó có là cạnh của tam giác hay không?
*
Nếu (a>0) và (b>0) và (c>0) và (a+b>0)
hoặc (b+c>0) hoặc (c+a>b) thì là 3 cạnh
của tam giác
Vậy khi tôi đổi các chữ cái T/A có dạng
B: là biểu thức logic gọi là điều khiện
Trang 28Nếu trời nắng tôi sẽ đi bơi:
Khi đó “Nếu” là đặt ra điều khiện là trời
nắng “thì” sẽ dẫn đến hành động tôi sẽ đi
bơi:
Ta có thể đưa ra sơ đồ như sau:
IF <điều khiện> Then <thực hiện công
- gán giá trị lớn nhất cho 1 số bất kỳ, rồi
so sánh nó với 1 trong 2 số còn lại nếu
số được so sánh lớn hơn
- số được gán ta gán lại giá trị lớn nhất
cho giá trị thứ 2, tiếp tục so sánh với
bỏ qua
II Câu lệnh rẽ nhánh dạng đủ
- Câu lệnh rẽ nhánh dạng đủ có dạng
If B Then C1 else C2Trong đó:
B: Biểu thức, C1, C2 công việc 1, 2Nếu biểu thức đúng thì thực hiện công việc1 nếu sai thực hiện công việc 2sau câu lệnh 1 không có dấu (;)
Vd: Kết luận ngiệm ptb2 Ax2 + Bx + C = 0
Ta có đoạn ct sau:
Thao tác
Điều khiện
Kết thúc
Trang 29if delta = o then Writeln(‘pt có nghiem kep’,-B/A);Else
Begin X:= (- B – sqr(delta))/(2*a);
Writeln(‘pt co 2 ngiêm’, x,’ va’, -B/2*A -x’);
Hướng dẫn giải bài 4
- Điều kiện để trở thành 3 cạnh của tam giác:
3 cạnh phải lớn hơn 0, và tổng 2 cạnh lớn hơn 1 cạnh
Xét xem nó là tam giác gì:
- Là tam giác cân khi có 2 cạnh bằng nhau
- Là tam giác đều nếu 3 cạnh bằng nhau
- Là tam giác vuông khi:
Trang 30NGÔN NGỮ LẬP TRÌNH PASCAL CƠ SỞ
Tiết 13 & BÀI TẬP
*
A CHUẨN BỊ
I Yêu cầu: Giúp Học sinh:
- Biết sử dụng các câu lệnh thực hiện rẽ nhánh và ghép của TP
- Bước đầu hình thành các kĩ năng lập trình có cấu trúc
- Có khả năng phân tích bài toán đơn giản để chọn kiểu cấu trúc điều khiển phù hợp từng thao tác
- Biết diễn đạt đúng các câu lệnh, soạn được chương trình giải các bài toán đơn giản
áp dụng các loại cấu trúc điều khiển nêu trên
- Tiếp tục xây dựng lòng ham thích giải toán bằng lập trình trên MTĐT
II Chuẩn bị.
- Thầy: SGK, Giáo án, sách tham khảo
- Trò: Vở ghi, vở bài tập
B NỘI DUNG
I Kiểm tra bài cũ
Kiểm tra trong giờ dạy
II Bài mới. 42’
Gọi học sinh lên bảng kiểm tra sự
chuẩn bị bài của học sinh
IF ((a>0) and (b>0) and (c>0) and
(a+b>c) or (b+c>a) or (a+c>b))
Bài 1:
Sắp xếp những từ khoá, những đoạn câu lệnh
và những đoạn khai báo sau đây để được 1 chương trình (Thêm dấu , ; vào chỗ cần thiết)
Giải
Program ptb1;
Var a, b: Real;
BeginWriteln(‘nhap vao a, b’); Readln(a,b);
If a<>0 Then writeln (‘nghiem la’,-b/a:8:1);
Else if b = 0
Trang 31Gọi học sinh lên bảng, kiểm tra sự
chuẩn bị bài của học sinh nhận xét và
đánh giá bài làm của học sinh
y
67
58
if max<b then max:= b;
write(max); readln; end; end
y
67
58
Giải:
Program bai3;
var x, y, A:integer;
beginwrite('nhap vao x, y'); readln(x,y);
if x = 0 thenA:= 8*y + 5;
else A:= 7*y - 6 +x;
writeln('nghiem cua bai toan la:', A);readln; End; End
- Ôn lại kiến thức đã học vận dụng vào giải toán
- Làm bài tập nhận biết tam giác
Nếu x = 0 Nếu x <>0
Nếu x = 0 Nếu x <>0
Trang 32Ngày soạn: 15/10 Ngày giảng:17/10
Tiết 14 THỰC HÀNH
*
A CHUẨN BỊ
I Yêu cầu:
- Vận dụng lý thuyết đã học để giải các bài toán
- Diễn đạt đúng câu lệnh, soạn được chương trình và cho chạy trên máy
- Tiếp tục xây dựng lòng ham thícg giải toán bằng lập trình trên máy tính
II Chuẩn bị.
- Thầy: SGK, Giáo án, sách bài tập, TLTK, PTH
- Trò: Vở ghi, vở bài tập, kiến thức đã học
B NỘI DUNG
I.Ổn định tổ chức và Kiểm tra bài cũ: 5p'
Kiểm tra trong giờ học
II B i m i à ớ
35
Sửa lỗi cho học sinh,
Cho chạy các bài tập đã chữa
y
67
58
Nếu x <>0 Nếu x = 0
Trang 33Ghi các bài đã chạy vào đĩa
if x = 0 thenA:= 8*y + 5;
else A:= 7*y - 6 +x;
writeln('nghiem cua bai toan la:', A);
Trang 34Ngày soạn: 22/10 Ngày giảng: 24/10
Tiết 15 &7 CÂU LỆNH LẶP WHILE
*
A CHUẨN BỊ
I Yêu cầu: Giúp học sinh:
- Nắm được tổ chức lặp
- Giới thiệu câu lệnh lặp để ứng dụng vào các bài toán phức tạp hơn
- Bước đầu hình thành kỹ năng lập trình có cấu trúc lặp
- Có khả năng phân tích bài toán đơn giản để chọn cấu trúc
- Tiếp tục xây dựng lòng ham thích giải toán bằng lập trình trên máy tính điện tử
II Chuẩn bị.
- Thầy: SGK, Giáo án, sách bài tập, TLTK, sơ đồ (nếu có)
- Trò: Vở ghi, vở bài tập, kiến thức đã học
B NỘI DUNG
I Kiểm tra bài cũ: 7p'
Chữa bài tập 2
II B i m i à ớ
Ta thấy bài tập trên sử dụng điều kiện
đúng thì thực hiện công việc nếu sai
thì thực hiện công việc khác
Tuy nhiên trong toán học hay
trong cuộc sống thì có những trường
hợp chỉ thực hiện công việc nếu điều
kiện đúng còn sai sẽ không thực hiện
VD: trong cuộc sống
VD: trong toán học
được lặp đi lặp lại nhiều lần I Câu lệnh lặp với điều kiện trước.
- Cú pháp:
While <biểu thức> Do <câu lệnh>
- Trong đó: While, Do là các từ khoá
<biểu thức> có kiểu bôlean
Trang 35- Câu lệnh While sẽ kiểm tra biểu thức đúng thìthực hiện công việc nếu sai không thực hiện lầnnào.
- Dãy câu lệnh Begin _ End được thực hiện lặp
đi lặp lại cho tới khi điều kiện trong câu lệnh while không còn đúng nữa
writeln ('cho 2 so nguyen duong');
Readln(m,n);
while m <> n do
If m>n then m:= m-n else n:= n-m;
Trang 36? Xét bài tập trên vậy ta phải hướng
dẫn máy thực hiện mấy công việc ?
- Nhập vào 1 số nguyên (sử dụng
vòng lặp)
- Đưa ra căn bậc 2 của số nguyên đó
writeln ('ƯCLN la', m);
writeln ('nhap vao so nguyen a');
Readln (a);
while a<> 0 do begin
writeln ('can bac 2 cua', a', la:', Sqrt(a)); write ('nhap vao so nguyen a');
Viết chương trình làm nhiều lần công việc sau:
1 Nhập từ bàn phím 1 số thực, xuất ra màn hình giá trị tuyệt đối của số đó chương trình kết thúc khi số nhập là số 0 Cho biết bao nhiêu số khác 0 đã nhập
Trang 372 Viết chương trình tính tổng S= 1+ 1/2 + 1/3 + 1/4 +… yêu cầu là quá trình tính sẽ dừng lại khi 2- S < 0,001.
(*) 3 Đọc từ bàn phím số tự nhiên N Xếp các dấu * thành tam giác cân N dòng.Hướng dẫn:
1 Tương tự ví dụ 2
While a <> 0 dobegin
Trang 38CHƯƠNG I:
NGÔN NGỮ LẬP TRÌNH PASCAL CƠ SỞ
Tiết 16 & BÀI TẬP
*
A CHUẨN BỊ
I Yêu cầu: Giúp Học sinh:
- Biết sử dụng các câu lệnh thực hiện rẽ nhánh và ghép của While
- Bước đầu hình thành các kĩ năng lập trình có cấu trúc
- Có khả năng phân tích bài toán đơn giản để chọn kiểu cấu trúc điều khiển phù hợp từng thao tác
- Biết diễn đạt đúng các câu lệnh, soạn được chương trình giải các bài toán đơn giản
áp dụng các loại cấu trúc điều khiển nêu trên
- Tiếp tục xây dựng lòng ham thích giải toán bằng lập trình trên MTĐT
II Chuẩn bị.
- Thầy: SGK, Giáo án, sách tham khảo
- Trò: Vở ghi, vở bài tập
B NỘI DUNG
I Kiểm tra bài cũ
Kiểm tra trong giờ dạy
II Bài mới. 43’
Gọi học sinh lên bảng kiểm tra sự
chuẩn bị bài của học sinh
Bài 1
Viết chương trình nhập vào 1 số thực xuất ra màn hình bình phương của số đó cho đến khi số nhập là số 0
Giải:
program binhphuong;
Var a : Integer;
Begin Writeln ('nhap a'); Readln (a);
While a <> 0 do Writeln ('binh phuong cua a la:'a*a);
Trang 39Đánh giá nhận xét bài của học sinh.
Gọi học sinh lên bảng
Đánh giá nhận xét bài của học sinh
Giao thêm bài tập mở rộng
bc ad
nb md
=
DD Dx
y =
bc ad
mc an
=
DD Dy
If (Dx = 0) And (Dy = 0) then writeln ('pt vo so nghiem hoac vo nghiem')
else writeln ('vo nghiem');
End;
Else Begin writeln ('x = ', Dx/DD);
Trang 40Bài 3.
Viết chương trình tính tổng, hiệu,
tích, thương của 2 số nguyên nhập từ
bàn phím cho đến khi gặp phải số 0
writeln ('tong 2 so la: ', S); Readln;
writeln ('hieu 2 so la :', H); Readln;
writeln ('tich 2 so la:', T); Readln;
writeln ('thuong 2 so la:', Thg);