1. Trang chủ
  2. » Giáo án - Bài giảng

Chọn bộ giáo án tin 11 - Bộ 2

83 225 0
Tài liệu đã được kiểm tra trùng lặp

Đ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

Tiêu đề Khái niệm lập trình và ngôn ngữ lập trình
Trường học Trường Đại Học Khoa Học Tự Nhiên
Chuyên ngành Tin học lớp 11
Thể loại Giáo án dạy học
Năm xuất bản 2009
Thành phố Hà Nội
Định dạng
Số trang 83
Dung lượng 1,11 MB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

Chuẩn bị của giáo viên - Sách giáo khoa, tranh chứa các biểu thức trong toán học, máy chiếu Projector, máy vi tính, một số chơng trình viết sẵn.. Nội dung chủ yếu của chơng Chơng này t

Trang 1

Tuaàn 1: Ngaứy soaùn: 12/08/2009

Ngaứy giaỷng: 17 – 22/08/2009

Tieỏt 1: KHAÙI NIEÄM LAÄP TRèNH VAỉ NGOÂN NGệế LAÄP TRèNH

I Mục tiêu:

1 Kiến thức:

- Biết đợc khái niệm về chơng trình dịch

- Phân biệt đợc hai loại chơng trình dịch là biên dịch và thông dịch

2 Kỹ năng

- Biết vai trò của chơng trình dịch

- Hiểu ý nghĩa nhiệm vụ của chơng trình dịch

3 Thái độ:

- ý thức đợc tầm quan trọng của môn học và có thái độ học tập nghiêm túc, luôn từ tìmhiểu học tập

4 Troùng taõm:

-Phaõn bieọt ủửụùc khaựi nieọm thoõng dũch vaứ bieõn dũch

II ẹoà duứng daùy hoùc

1 Chuẩn bị của giáo viên:

- Giáo án, SGK, sách giáo viên, sách bài tập,

2 Chuẩn bị của học sinh:

- Vở ghi, sách giáo khoa, sách bài tập, đồ dùng học tập

III HOAẽT ẹOÄNG DAẽY-HOẽC

1 OÅn ủũnh lụựp-kieồm tra sú soỏ.(1phuựt).

Ngày gi ng ảng L p d y ớp dạy ạy Ti t ết T ng s ổng số ố HS V ng m t ắng mặt ặt

3.Baứi mụựi

Trong chơng trình lớp 10 các em đã đợc biết đến một số khái niệm: ngôn ngữ lập trình, chơng trình dịch Trong bài học hôm nay chúng ta đi tìm hiểu thêm một số khái niệm mới

BAỉI1: KHAÙI NIEÄM LAÄP TRèNH VAỉ

NGOÂN NGệế LAÄP TRèNH

1.Caực khaựi nieọm.(19phuựt)

*Laọp trỡnh: Laứ vieọc sửỷ duùng caỏu

truực dửừ lieọu vaứ caực leọnh cuỷa

ngoõn ngửừ laọp trỡnh cuù theồ, ủeồ

moõ taỷ dửừ lieọu vaứ dieón ủaùt caực

thao taực cuỷa thuaọt toaựn

Hoaùt ủoọng1 : Giaựo vieõn ủửa ra baứi toaựn tỡm nghieọm cuỷa phửụng trỡnh baọc nhaỏt: ax+b =0

*Quan sát nội dung bài toán và theo dõi yêu cầu của giáo viên

Trang 2

*Ngoõn ngửừ maựy: Caực leọnh ủửụùc

maừ hoaự baống ngoõn ngửừ maựy coự

theồ ủửụùc naùp vaứo boọ nhụự

*Ngoõn ngửừ baọc cao: Caực leọnh

ủửụùc maừ hoaự baống moọt ngoõn

ngửừ gaàn vụựi ngoõn ngửừ Tieỏng

Anh Chửụng trỡnh vieỏt treõn ngoõn

ngửừ baọc cao phaỷi ủửụùc chuyeồn

ủoồi thaứnh chửụng trỡnh treõn ngoõn

ngửừ maựy mụựi coự theồ thửùc hieọn

ủửụùc:

2.Khaựi nieọm bieõn dũch vaứ thoõng

dũch (20phuựt)

* Khaựi nieọm bieõn dũch

-Duyeọt, phaựt hieọn loói, kieồm tra

tớnh ủuựng ủaộn cuỷa leọnh trong

chửụng trỡnh nguoàn

-Dũch toaứn boọ chửụng trỡnh nguoàn

thaứnh moọt chửụng trỡnh ủớch coự

theồ thửùc hieọn treõn maựy vaứ coự

theồ sửỷ duùng khi caàn thieỏt

*Khaựi nieọm thoõng dũch

-Kieồm tra tớnh ủuựng ủaộn cuỷa caõu

leọnh tieỏp theo trong chửụng trỡnh

nguoàn

-Chuyeồn ủoồi caõu leọnh ủoự thaứnh

moọt hay nhieàu caõu leọnh tửụng ửựng

trong ngoõn ngửừ maựy

-Thửùc hieọn caực caõu leọnh vửứa

chuyeồn ủoồi ủửụùc

Heọ thoỏng caực bửụực naứy goùi laứ thuaọt toaựn

-Neỏu trỡnh baứy thuaọt toaựn naứy cho maựy hieồu, em seừ duứng ngoõn ngửừ naứo?

Hs: Em seừ duứng ngoõn ngửừ laọp trỡnh

Gv: Keỏt quaỷ cuỷa hoaùt ủoọng laọp trỡnh seừ ủửụùc caựi gỡ?

Hs: Ta seừ ủửụùc chửụng trỡnh

*Giaựo vieõn dieón giaỷi cho hoùc sinh hieồu ủửụùc khaựi nieọm ngoõn ngửừ maựy vaứ ngoõn ngửừ baọc cao

Hoỷi: Laứm theỏ naứo ủeồ chuyeồn moọt chửụng trỡnh vieỏt tửứ ngoõn ngửừ baọc cao sang ngoõn ngửừ maựy?

Traỷ lụứi: Ta phaỷi sửỷ duùng chửụng trỡnh dũch ủeồ chuyeồn ủoồi

Hoỷi: Vỡ sao khoõng laọp trỡnh treõn ngoõn ngửừmaựy ủeồ khoỷi maỏt coõng chuyeồn ủoồi maứ ngửụứi ta thửụứng laọp trỡnh baống ngoõn ngửừ baọc cao?

TLụứi: - Lập trình bằng ngôn ngữ bậc cao dễ viết hơn vì các lệnh đợc mã hóa gần với ngôn ngữ tự nhiên Lập trình trên ngôn ngữ máy rất khó, thờng các chuyên gia lập trình mới lập trình đợc

Hoaùt ủoọng2: Em muoỏn giụựi thieọu veà trửụứng mỡnh cho moọt ngửụứi khaựch du lũch quoỏc teỏ bieỏt tieỏng anh, coự 2 caựch ủeồ em thửùc hieọn:

Caựch1: Caàn moọt ngửụứi bieỏt tieỏng Anh dũchtửứng caõu noựi cuỷa em sang tieỏng Anh cho ngửụứi khaựch

Caựch2: Em soaùn noọi dung caàn giụựi thieọu ragiaỏy vaứ ngửụứi phieõn dũch dũch toaứn boọ noọi dung ủoự sang tieỏng Anh roài ủoùc cho ngửụứi khaựch

HS :Chú ý lắng nghe ví dụ của giáo viên và thảo luận để tìm ví dụ tơng tự

- Khi thủ trởng một chính phủ trả lời phỏng vấn

tr-ớc một nhà báo quốc tế, họ thờng cần một ngời thông dịch để dịch từng câu tiếng Việt sang tiếng Anh

- Khi thủ tớng đọc một bài diễn văn tiếngAnh trớc Hội nghị, họ cần một ngời phiên dịch để chuyển văn bản tiếng Việt thành tiếng Anh

IV Đánh giá cuối bài.(5phuựt)

1 Những nội dung đã học

- Khái niệm lập trình và ngôn ngữ lập trình

- Có ba loại ngôn ngữ lập trình : Ngôn ngữ máy, hợp ngữ và ngôn ngữ bậc cao

- Khái niệm chơng trình dịch

- Có hai loại chơng trình dịch là biên dịch và thông dịch

2 Câu hỏi và bài tập về nhà: Traỷ lụứi taỏt caỷ caõu hoỷi trong SGK

V.Ruựt kinh nghieọm:

Trang 3

Tuaàn II: Ngaứy soaùn: 18/08/2009

Ngaứy giaỷng:24 - 29/08/2009

Tieỏt 2: CAÙC THAỉNH PHAÀN CUÛA NGOÂN NGệế LAÄP TRèNH

I Mục tiêu:

1 Kiến thức:

- Nắm đợc các thành phần của một ngôn ngữ lập trình nói chung

- Biết đợc một số khái niệm nh: tên, tên chuẩn, tên dành riêng

II ẹoà duứng daùy hoùc:

1 Chuẩn bị của giáo viên:

- Giáo án, SGK, sách giáo viên, sách bài tập,

2 Chuẩn bị của học sinh:

- Vở ghi, sách giáo khoa, sách bài tập , đồ dùng học tập

III HOAẽT ẹOÄNG DAẽY HOẽC

1 OÅn ủũnh lụựp-kieồm tra baứi cuừ:(6phuựt)

Ngày gi ng ảng L p d y ớp dạy ạy Ti t ết T ng s ổng số ố HS V ng m t ắng mặt ặt

2 Kiểm tra bài cũ :

Caõu1: Chửụng trỡnh dũch laứ gỡ?

Caõu2: Bieõn dũch vaứ thoõng dũch khaực nhau theỏ naứo?

Trang 4

Caõu2: Sửù khaực nhau giửừa bieõn dũch vaứ thoõng dũch.

*Bieõn dũch laứ kieồm, phaựt hieọn loói xaực ủũnh chửụng trỡnh nguoàn coự dũch ủửụùc hay khoõng vaứ dũch toaứn boọ thaứnh moọt chửụng trỡnh ủớch ủeồ coự theồ thửùc hieọn treõn maựy vaứ coự theồ lửu trửừ ủửụùc

* Thoõng dũch laàn lửụùt dũch tửứng caõu ra ngoõn ngửừ maựy roài thửùc hieọn.3.Baứi mụựi: Baứi hoùc hoõm nay caực em seừ naộm baột ủửụùc caực thaứnh phaàncuỷa ngoõn ngửừ laọp trỡnh vaứ moọt soỏ khaựi nieọm lieõn quan

Baứi 2: CAÙC THAỉNH PHAÀN CUÛA

NGOÂN NGệế LAÄP TRèNH

1 Caực thaứnh phaàn cụ baỷn: (7phuựt)

a, Baỷng chửừ caựi: Laứ taọp caực kớ tửù

ủửụùc duứng ủeồ vieỏt chửụng trỡnh

Khoõng ủửụùc pheựp duứng baỏt cửự kớ tửù

naứo ngoaứi caực kớ tửù quy ủũnh trong

baỷng chửừ caựi

b, Cuự phaựp: Laứ boọ quy taộc ủeồ vieỏt

chửụng trỡnh

c, Ngửừ nghúa: Xaực ủũnh yự nghúa thao

taực caàn phaỷi thửùc hieọn, ửựng vụựi moói

toồ hụùp kớ tửù dửùa vaứo ngửừ caỷnh cuỷa

noự

2.Moọt soỏ khaựi nieọm.(20phuựt)

a, Teõn:Laứ moọt daừy lieõn tieỏp khoõng

quaự 127 kớ tửù bao goàm chửừ soỏ, chửừ

caựi hoaởc daỏu gaùch dửụựi vaứ teõn phaỷi

baột ủaàu baống chửừ caựi hoaởc daỏu

Bai tap; Sai

*Teõn daứnh rieõng(Tửứ khoaự): ẹửụùc

duứng vụựi yự nghúa rieõng xaực ủũnh,

ngửụứi laọp trỡnh khoõng ủửụùc sửỷ duùng

vụựi yự nghúa khaực

Program, begin, end, procedur,

function,const, var, Laber, Type, Record, set,

file of, if then, for to do, While do,

Repeat until,

*Teõn chuaồn: ẹửụùc duứng vụựi yự nghúa

nhaỏt ủũnh, tuy nhieõn ngửụứi duứng coự

theồ khai baựo vaứ duứng chuựng vụựi yự

nghúa vaứ muùc ủớch khaực

Integer, Word, byte, longint, real,extended,

char, boolean, read, readln, write,writeln, abs,

sqr,sqrt, true,false, cos, sin,

*Teõn do ngửụứi duứng tửù ủaởt: Do ngửụứi

duứng ủaởt sao cho deó nhụự vaứ phuứ

hụùp

Vd: delta, pi,

b, Haống vaứ bieỏn.(9phuựt)

-Haống laứ ủaùi lửụùng coự giaự trũ khoõng

thay ủoồi trong quaự trỡnh thửùc hieọn

chửụng trỡnh

Hoaùt ủoọng1:

Giaựo vieõn ủaởt vaỏn ủeà: Coự nhửừng yeỏu toỏ naứo duứng ủeồ xaõy dửùng

Hoùc sinh traỷ lụứi:

- Bảng chữ cái tiếng Việt, số, dấu

- Cách ghép các kí tự thành từ, phép từ thành câu

- Ngữ nghĩa của từ thành câu

*Dieón giaỷi: Trong ngoõn ngửừ laọp trỡnh cuừng tửụng tửù nhử vaọy, noự goàm coự caực thaứnh phaàn: Baỷng chửừ caựi, cuự phaựp vaứ ngửừ nghúa

-Bảng chữ cái : A B C D E F G H I J K L M N

O P Q R S T U V W X Y Z

a b c d e f h g i j k l m n o p q r s t u v w x y z

Hệ đếm : 0 1 2 3 4 5 6 7 8 9

Kí hiệu đặc biệt : + - * / = < > [ ] , _ ; # ^ $ & ( ) { }: “

-Cuự phaựp

-Ngửừ nghúa

Hoaùt ủoọng 2: Moùi ủoỏi tửụùng trong chửụng trỡnh ủeàu phaỷi ủửụùc ủaởt teõn.Trong ngoõn ngửừ laọp trỡnh cuừng vaọy chuựng ta ủaởt teõn cho chửụng trỡnh ủeồ deó phaõn bieọt Chuựng ta caàn phaõn bieọt roừ caực loaùi teõn ủeồ duứng ủuựng vaứ naộm roừ caựch ủaởt teõn

-Giaựo vieõn giaỷi thớch roừ yự nghúa cuỷa caực loaùi teõn vaứ cho hoùc sinh leõn baỷng laỏy vớ duù

-Teõn chửụng trỡnh: Caực em lửu yự khi ủaởt teõn khoõng ủửụùc sửỷ duùng daỏu caựch vaứ kớ tửù ủaởc bieọt vaứ baột ủaàu khoõng ủửụùc sửỷ duùng chửừ soỏ

-Teõn daứnh rieõng hay coứn goùi laứ tửứ khoaự caực em phaỷi naộm vửừng ủeồ sửỷ duùng laứm baứi taọp sau naứy

-Teõn chuaồn: Caực teõn chuaồn ủửụùc quy ủũnh trong caực thử vieọn cuỷa ngoõn ngửừ laọp trỡnh

-Teõn do ngửụứi duứng tửù ủaởt: Caực teõn naứy khoõng ủửụùc truứng vụựi teõn daứnh rieõng

Hs: Laộng nghe chuự yự vaứ ghi cheựp baứi

*Haống: Trong toaựn hoùc caực em ủaừ bieỏt haống laứ ủaùi lửụùng khoõng thay ủoồi Trong pascal coự theõm haống logic

Trang 5

+Haống soỏ hoùc: 5,-2, 1.3, -5.6, 1.0E-4,

+Haống xaõu: ‘chuongtrinh’ +Haống logic: true, fasle -Bieỏn: Laứ ủaùi lửụùng ủửụùc ủaởt teõn, duứng ủeồ lửu trửừ giaự trũ vaứ giaự trũ coự theồ ủửụùc thay ủoồi trong quaự trỡnh thửùc hieọn chửụng trỡnh -Chuự thớch: + { noọi dung caàn chuự thớch } + (* noọi dung caàn chuự thớch *) vaứ haống xaõu *Bieỏn: Laứ giaự trũ coự theồ thay ủoồi trong pascal taỏt caỷ caực bieỏn khi sửỷ duùng ủeàu phaỷi ủửụùc khai baựo Laỏy vớ duù ủeồ hoùc sinh phaõn bieọt ủửụùc caực loaùi bieỏn trong pascl * Chuự thớch: Giuựp cho ngửụứi ủoùc chửụng trỡnh nhaọn bieỏt yự nghúa cuỷa chửụng trỡnh deó daứng hụn Chuự thớch khoõng aỷnh hửụỷng ủeỏn chửụng trỡnh nguoàn vaứ ủửụùc chửụng trỡnh dũch boỷ qua III Đánh giá cuối bài (3phuựt) 1 Những nội dung đã học - Thành phần của ngôn ngữ lập trình : Bảng chữ, cú pháp và ngữ nghĩa - Khái niệm : Tên, tên chuẩn, tên dành riêng, tên do ngời lập trình đặt, hằng, biến và chú thích 2 Câu hỏi và bài tập về nhà - Làm bài tập 4, 5, 6, sách giáo khoa, trang 13 - Xem bài đọc thêm : Ngôn ngữ Pascal, sách giáo khoa, trang 14, 15, 16 - Xem trớc bài : Cấu trúc chơng trình, sách giáo khoa, trang 18 - Xem nội dung phụ lục B, sách giáo khoa trang 128 : Một số tên daứnh riêng V Ruựt kinh nghieọm:

Tuaàn II: Ngaứy soaùn: 18/08/2009

Ngaứy giaỷng: 24 - 29/08/2009

Tieỏt 3: BAỉI TAÄP

I.Muùc Tieõu:

1,Kieỏn thửực:

Cuỷng coỏ laùi kieỏn thửực cho hoùc sinh nhửừng kieỏn thửực ủaừ hoùc veà laọp trỡnh, ngoõn ngửừ laọp trỡnh baọc cao, ngoõn ngửừ maựy, chửụng trỡnh dũch, thoõng dũch, bieõn dũch qua caực baứi taọp

2, Kú naờng:

+ Xaực ủũnh ủửụùc teõn ủuựng, sai, teõn chuaồn, tửứ khoaự

+ Bieỏt vieỏt haống vaứ teõn ủuựng trong moọt ngoõn ngửừ laọp trỡnh cuù theồ

3, Thaựi ủoọ:

+ Nhaọn thửực ủửụùc quaự trỡnh phaựt trieồn cuỷa ngoõn ngửừ laọp trỡnh gaộn lieàn vụựi quaự trỡnh phaựt trieồn cuỷa tin hoùc

+ Ham muoỏn hoùc moọt ngoõn ngửừ laọp trỡnh cuù theồ ủeồ coự khaỷ naờng giaỷi caực baứi toaựn baống maựy tớnh ủieọn tửỷ

4.Troùng taõm:

II ẹoà duứng daùy hoùc:

1 Chuaồn bũ cuỷa giaựo vieõn:

Giaựo aựn, saựch baứi taọp, saựch giaựo khoa

2 Chuaồn bũ cuỷa hoùc sinh:

Saựch giaựo khoa, saựch baứi taọp, vụỷ ghi

Trang 6

III Hoaùt ủoọng daùy hoùc:

Haừy vieỏt caực teõn chuaồn vaứ teõn daứnh rieõng?

3.Noọi dung baứi mụựi

1.Khaựi nieọm laọp trỡnh vaứ ngoõn ngửừ

laọp trỡnh.(15phuựt)

-Taùi sao ngửụứi ta phaỷi xaõy dửùng ngoõn

ngửừ laọp trỡnh baọc cao?

-Chửụng trỡnh dũch laứ gỡ? Taùi sao caàn

phaỷi coự chửụng trỡnh dũch?

-Bieõn dũch vaứ thoõng dũch khaực nhau

nhử theỏ naứo?

2.Caực thaứnh phaàn cuỷa ngoõn ngửừ laọp

trỡnh(25phuựt)

-Haừy cho bieỏt ủieồm khaực nhau giửừa

teõn daứnh rieõng vaứ teõn chuaồn?

-Haừy tửù vieỏt ra ba teõn ủuựng theo quy

taộc cuỷa pascal?

-Haừy cho bieỏt nhửừng bieồu dieón naứo

dửụựi ủaõy khoõng phaỷi laứ bieồu dieón

haống trong pascal vaứ chổ roừ loói vỡ sao?

(sgk)

-Baứi taọp: 1.9, 1.10, 1.11

Gv: ẹaởt caõu hoỷi theo SGK

Hs: thaỷo luaọn traỷ lụứi giaựo vieõn boồ sung yự kieỏn khi hoùc sinh traỷ lụứi

Gv: Caàn phaõn tớch cuù theồ roừ raứng ủeồ hsinh naộm baột ủửụùc caực khaựi nieọm ban ủaàu

Hs: leõn baỷng laứ baứi taọp

-Ba hoùc sinh leõn baỷng laứ baứi taọp.-Caực nhoựm hoùc sinh dửụựi lụựp trao ủoồi,thaỷo luaọn ủeồ goựp yự kieỏn

-Giaựo vieõn goùi moọt hoùc sinh khaực ủửựng taùi choó nhaọn xeựt baứi laứm cuỷa baùn

-Giaựo vieõn ủaựnh giaự baứi laứm

IV Cuỷng coỏ baứi:(4phuựt)

-Caực em veà nhaứ laứm tieỏp caực baứi taọp trong saựch baứi taọp

-ẹoùc trửụực baứi mụựi “Caỏu truựcchửụng trỡnh”

V.Ruựt kinh nghieọm

- Biết khai báo biến

- Biết viết đúng các biểu thức đơn giản trong chơng trình

Trang 7

- Biết khởi động và thoát khỏi Turbo Pascal.

- Biết soạn thảo, dịch và thực hiện một số chơng trình Pascal đơn giản theo mẫu có sẵn

- Bớc đầu làm quen với lập trình giải một số bài toán đơn giản

3 Thái độ.

- Nghiêm túc trong học tập khi tiếp xúc với nhiều quy định nghiêm ngặt trong lập trình

- Có ý thức cố gắng trong học tập vợt qua những khó khăn ở giai đoạn đầu khi học lập trình

- Ham muốn giải các bài tập bằng lập trình, thấy đợc lợi ích của lập trình phục vụ tính toán.4.Troùng taõm:

II: Duùng cuù daùy hoùc:

-Saựch giaựo khoa, Saựch giaựo vieõn, giaựo aựn

III Hoaùt ủoọng daùy vaứ hoùc

1 OÅn ủũnh lụựp-kieồm sú soỏ:(1phuựt)

Ngày gi ng ảng L p d y ớp dạy ạy Ti t ết T ng s ổng số ố HS V ng m t ắng mặt ặt

2 Kieồm tra baứi cuừ:(6phuựt)

Caõu1: Em haừy phaõn bieọt 3 loaùi teõn trong Pascal?

Teõn chuaồn: ẹửụùc duứng vụựi yự

nghúa nhaỏt ủũnh Nguụứi duứng coự

theồ sửỷ duùng vụựi nghúa khaực nhửng

phaỷi khai baựo laùi

Teõn daứnh rieõng: Duứng vụựi yự

nghúa nhaỏt ủũnh, ngửụứi duứng khoõng

ủửụùc sửỷ duùng vụựi muùc ủớch

khaực(coứn goùi laứ tửứ khoaự)

Teõn do ngửụứi duứng tửù ủaởt: do

ngửụứi duứng ủaởt vụựi yự nghúa naứo

ủoự ủeồ sửỷ duùng hụùp lớ

1 Lụựp 2 Lụựp 3 Lụựp 4 Lụựp 5 Lụựp 6 Lụựp 7 Lụựp 8 Lụựp 9 Lụựp

3.Noọi dung baứi mụựi:

BAỉI3: CAÁU TRUÙC CHệễNG TRèNH

1.Caỏu truực chung:(5phuựt)

Goàm 2 phaàn:

[<phần khaibáo>]

<Phần thân chơng trình>

2.Caực thaứnh phaàn cuỷa chửụng trỡnh

a, Phaàn khai baựo:(15phuựt)

-Khai baựo teõn chửụng trỡnh

Program <teõn chửụng trỡnh>;

-Khai baựo thử vieọn:

Uses <teõn thử vieọn>;

-Khai baựo haống:

Hoaùt ủoọng 1: Giaựo vieõn ủaởt caõu hoỷi gụùi mụỷ: Moọt baứi vaờn em thửụứng vieỏt coự maỏy phaàn? Vỡ sao phaỷi chia nhử vaõy?

*Lắng nghe và suy nghĩ trả lời :

- Có ba phần

- Có thứ tự : Mở bài, thân bài, kết luận

- Dễ viết, dễ đọc, dễ hiểu nội dung

Hoaùt ủoọng 2: Trong phaàn khai baựo coự nhửừng khai baựo naứo?

- Khai báo tên chơng trình, khai báo th viện chơng trình con, khai báo hằng, khai báo biến

và khai báo chơng trình con

* Yeõu caàu hoùc sinh laỏy vớ duù:

- Vd : Program tinh_tong ;

Trang 8

Const teõn_haống = giaự_trũ;

-Khai baựo bieỏn:

Var <danh saựch bieỏn>: kieồu dửừ lieọu;

b, Phaàn thaõn chửụng trỡnh (8phuựt)

- Vd: Var a, b, c : integer;

Gv: Neõu roừ phaàn caỏu truực cuỷa phaàn thaõn chửụng trỡnh Chuự yự giaỷi thớch caực tửứ khoaự cuỷa phaàn khai baựo vaứ keỏt thuực chửụng trỡnh

Hs: Laộng nghe vaứ ghi baứi

Hoaùt ủoọng 3: Tỡm hieồu chửụng trỡnh ủụn giaỷn:

-Theo vớ duù beõn phaõn bieọt phaàn khai baựo vaứ phaàn thaõn chửụng trỡnh:

Hsinh thaỷo luaọn traỷ lụứi:

+Phaàn khai baựo:

Writeln(t);

Readln;

End

IV Cuỷng coỏ baứi hoùc:(3phuựt)

-Naộm ủửụùc caỏu truực cuỷa moọt chửụng trỡnh

-Naộm ủửụùc caựch khai baựo: Khai baựo teõn chửụng trỡnh, thử vieõn, haống, bieỏn -Vieỏt ủửụùc moọt soỏ chửụng trỡnh ủụn giaỷn

V Ruựt kinh nghieọm:

- Biết đợc một số kiểu dữ liệu chuẩn: Nguyên, thực, kí tự, logic

- Bieỏt đợc giới hạn biểu diễn của mỗi loại kiểu dữ liệu đó

- Naộm vửừng caựch sửỷ duùng caực kieồu dửừ lieọu

-Bieỏt caựch khai baựo bieỏn phuứ hụùp vụựi yeõu caàu baứi toaựn

-Bieỏt ủửụùc moùi bieỏn duứng trong chửụng trỡnh ủeàu phaỷi ủửụùc khai baựo

Trang 9

-Có ý thứchọc tập tốt khi mới tiếp xúc với một số quy tắc nghiêm ngặt của các kiểu dữ liệu.

4 Vận dụng:

-Biết sử dụng khai báo hợp lí các kiểu dữ liêu và khai báo biến

II.DỤNG CỤ DẠY HỌC:

-Giáo án, sách giáo khoa, sách giáo viên

III.HOẠT ĐỘNG DẠY VÀ HỌC:

1.Ổn định lớp- kiểm tra sĩ số:(1phút)

Ngày gi ng ảng L p d y ớp dạy ạy Ti t ết T ng s ổng số ố HS V ng m t ắng mặt ặt

Câu1: Nêu các thành phần của một chương trình?

Câu2: Viết một ví dụ chương trình của Pascal?

3.Nội dung bài mới:

Bài 4.,5 : MỘT SỐ KIỂU DỮ LIỆU

CHUẨN-KHAI BÁO BIẾN

HS:L¾ng nghe vµ suy nghÜ tr¶ lêi:

-Sè tù nhiªn, sè nguyªn, sè h÷u tØ, sè thùc.-Gv: cũng tương tự như vậy, trong ngôn ngữ lập trình pascal, để lập trình giải quyết các bài toán, cần có các tập hợp, mỗi tập hợp có một giới hạn nhất định

GViên: Có bao nhiêu kiểu dữ liệu chuẩn trong pascal?

- Cã 4 kiĨu: KiĨu nguyªn, kiĨu thùc, kiĨu

+ Kiểu logic

Cã mét lo¹i: boolean, gåm 2 phÇn tư: True

vµ False

Chĩ ý l¾ng nghe vµ ghi bài

*Khai báo biến:

Trang 10

*Khai baựo bieỏn:(10phuựt).

-Duứng tửứ khoaự Var ủeồ khai baựo

Caỏu truực: Var <Danh saựch bieỏn>:<Kieồu

dửừ lieọu>;

Vd: Var x: integer;

-Sau tửứ khoaự var coự theồ khai baựo nhieàu

danh saựch bieỏn

Vd: var x,y: integer;

a,b: char;

n: Boolean;

Chuự yự: -Caàn ủaởt teõn bieỏn sao cho gụùi

nhụự ủeỏn yự nghúa cuỷa bieỏn ủoự

-Khoõng ủaởt teõn bieỏn quaự daứi hay quaự

ngaộn

-Caàn lửu yự tụựi phaùm vi giaự trũ cuỷa noự

TL:Danh saựch bieỏn laứ moọt hoaởc nhieàu teõn bieỏn, ủửụùc vieỏt caựch nhau bụỷi daỏu phaồy;

Hoùc sinh theo doừi vaứ cheựp baứi

Giaựo vieõn cho hoùc sinh leõn baỷng taọp khai baựo bieỏn

Hoùc sinh leõn baỷng laứm:

IV Cuỷng coỏ baứi hoùc:(5phuựt)

-Naộm ủửụùc 4 kieồu dửừ lieọu chuaồn vaứ phaùm vi sửỷ duùng

-Bieỏt caựch khai baựo phuứ hụùp vụựi ủoỏi tửụùng baứi toaựn

-Khi khai baựo bieỏn caàn chuự yự tụựi phaùm vi giaự trũ cuỷa noự

-Bieỏt xaực ủũnh boọ nhụự caỏp phaựt cuỷa caực bieỏn

V Ruựt kinh nghieọm

- Biết đợc các phép toán thông dụng trong ngôn ngữ lập trình

- Biểu diễn đạt một hình thức trong ngôn ngữ lập trình

-Vieỏt ủửụùc caực coõng thửực tửụng ửựng trong toaựn hoùc sang pascal

-Laứm ủửụùc moọt soỏ baứi toaựn treõn maựy tớnh

II.DUẽNG CUẽ DAẽY HOẽC

1 Chuẩn bị của giáo viên

- Sách giáo khoa, tranh chứa các biểu thức trong toán học

Trang 11

- Tranh chứa bảng các hàm số học chuẩn, tranh chứa bảng chân trị.

2 Chuẩn bị của học sinh

- Sách giáo khoa

III HOAẽT ẹOÄNG DAẽY- HOẽC

1.OÅn ủũnh lụựp-kieồm tra sú soỏ:(1phuựt)

Ngày gi ng ảng L p d y ớp dạy ạy Ti t ết T ng s ổng số ố HS V ng m t ắng mặt ặt

2.Kieồm tra 15 phuựt:(15phuựt)

Kieồm tra 15phuựt

Caõu1: Phaõn bieọt teõn daứnh rieõng, teõn chuaồn, teõn do ngửụứi duứng tửù ủaởt

Caõu 2: Neõu caỏu truực cuỷa phaàn khai baựo

Traỷ lụứi: Caõu 1: Teõn daứnh rieõng duứng vụựi yự nghúa xaực ủũnh.Ngửụứi laọp trỡnh khoõng ủửụùc sửỷ duùng vụựi yự nghúa khaực

Teõn chuaồn: Duứng vụựi yự nghúa nhaỏt ủũnh naứo ủoự Tuy nhieõn ngửụứi laọp trỡnh coựtheồ khai baựo vaứ duứng vụựi yự nghúa vaứ muùc ủớch khaực

Teõn do ngửụứi sửỷ duùng ủaởt: duứng vụựi yự nghúa rieõng , xaực ủũnh baống caựch khai baựo trửụực khi sửỷ duùng

Caõu2: Caỏu truực khai baựo:

- Program tenchuụngtrinh;

- Const tenhang;

- Var tenbien: tenkieu;

-3.Noọi dung baứi mụựi

BAỉI 6: PHEÙP TOAÙN, BIEÅU THệÙC,

CAÂU LEÄNH GAÙN

1 Pheựp toaựn (7phuựt)

-Caực pheựp toaựn logic: And, or, not

Chuự yự: -Keỏt quaỷ cuỷa pheựp toaựn quan

heọ cho giaự trũ logic

-Moọt trong nhửừng ửựng duùng cuỷa pheựp

toaựn logic laứ ủeồ taùo ra caực bieồu thửực

phửực taùp tửứ caực quan heọ ủụn giaỷn

2 Bieồu thửực soỏ hoùc(8phuựt)

ẹửụùc vieỏt theo quy taộc sau:

-Chổ duứng caởp ngoaởc troứn ủeồ xaực

ủũnh trỡnh tửù thửùc hieọn pheựp toaựn

trong trửụứng hụùp caàn thieỏt

-Vieỏt laàn lửụùt tửứ traựi qua phaỷi

-Khoõng ủửụùc boỷ qua daỏu (*) trong tớch

ẹửụùc thửùc hieọn theo thửự tửù sau:

-Thửùc hieọn caực pheựp toaựn trong

ẹaởt vaỏn ủeà: ẹeồ moõ taỷ caực thao taực trong thuaọt toaựn, moói ngoõn ngửừ laọp trỡnh ủeàu sửỷ duùng moọt soỏ khaựi nieọm

cụ baỷn: Pheựp toaựn, bieồu thửực, gaựn giaự trũ

Hoỷi: Haừy keồ caực pheựp toaựn maứ em ủaừ ủửụùc hoùc trong toaựn hoùc?

Hoỷi: Pheựp div, mod ủửụùc sửỷ duùng cho nhửừng kieồu dửừ lieọu naứo?

- Chỉ sử dụng đợc cho kiểu nguyên

Hoỷi: Keỏt quaỷ cuỷa pheựp toaựn quan heọ thuoọc kieồu dửừ lieọu naứo?

- Thuộc kiểu logic

*Bieồu thửực soỏ hoùc:

Giaựo vieõn hửụựng daón caựch vieỏt caực

Trang 12

ngoặc trước.

-Trong dãy các phép toán không

chứa ngoặc thì thực hiện từ trái qua

phải, theo thứ tự: *, /, div, mod, +, -

biểu thức từ toán học sang pascal sau đó gọi học sinh lên bảng làm

Sư dơng c¸c phÐp to¸n sè häc, h·y biĨu

diƠn biĨu thøc to¸n häc sau thµnh biĨu

3.Hàm số học chuẩn (7phút)

số Kiểu hàm sốSqr(x) I hoặc R Theo đối số

4.Biểu thức quan hệ, Logic (5phút)

Biểu thức quan hệ có dạng:

<bt1> <phép toán quan hệ> <bt2>

Biểu thức1 và biểu thức2 cùng là

xâu hoặc cùng là biểu thức số học

2*a+5*b+c x*y/(2*z) ((x+y)/(1 – (2 /z)))+(x*x/(2*z))

* Hàm số học chuẩn:

Trong toán học ta đã làm quen với một số hàm số học, hãy cho biết yếu tố cơ bản xây dựng nên biểu thức?

TL: Gồm 2 phần: Toán hạng và toán tử

Em hãy viết biểu thức tính nghiệm của phương trình bậc 2bằng Pascal

- Suy nghÜ, lªn b¶ng tr¶ lêi

(-b+sqrt(b*b-4*a*c))/(2*a)

* Biểu thức quan hệ- logic:

Các phép toán thực hiện:

+ Tính giá trị biểu thức+ Thực hiện phép toán quan hệ

Kết quả của biểu thức quan hệ là giá trị logic: True or false

- VÝ dơ: (A>B) or ((X+1)<Y) vµ (5>2) and ((3+2)<7)

- BiĨu thøc trong ng«n ng÷ lËp tr×nh : (5<=x) and (x<=11)

+ Thùc hiƯn c¸c biĨu thøc quan hƯ

+ Thùc hiƯn phÐp to¸n logic

- KiĨu logic

5 câu lệnh gán(7phút)

Có dạng: <tên biến>: =<biểu thức>;

- Giíi thiƯu mét sè vÝ dơ vỊ lƯnh g¸n trong

Pascal nh sau:

x:=4+8;

 Câu lệnh gán:

Lệnh gán dùng để tính giá trị một biểu thức và chuyển giá trị đó vào một biến

Trang 13

- Giới thiệu ví dụ: Cho chơng trình.

- Các phép toán trong Turbo Pascal: Số học, quan hệ và logic

- Các biểu thức trong Turbo Pascal: Số học, quan hệ và logic

- Cấu trúc lệnh gán trong Turbo Pascal: tên_biến :=biểu_thức;

2 Câu hỏi và bài tập về nhà

- Làm bài tập 5, 6, 7, 8, sách giáo khoa, trang 35 – 36;

- Xem phụ lục A, sách giáo khoa trang 121: Một số phép toán thờng dùng và giá trị phép toán logic

V.Ruựt kinh nghieọm:

- Biết đợc ý nghĩa của các thủ tục và/ra chuẩn đối với lập trình.

- Biết đợc cấu trúc chung của thủ tục vào/ra trong ngôn ngữ lập trình Pascal

2 Kĩ năng

- Viết đúng lệnh vào/ra dữ liệu

- Biết nhập đúng dữ liệu khi thực hiện chơng trình

3 Thaựi ủoọ:

- YÙ thửực thaựi ủoọ hoùc taọp toỏt ủeồ sau naứy hoùc laọp trỡnh toỏt hụn

4.Troùng taõm: Phaàn caỏu truực caõu leọnh nhaọp/ xuaỏt

II ẹoà duứng daùy hoùc:

1 Chuẩn bị của giáo viên

- Sách giáo khoa, tranh chứa các biểu thức trong toán học, máy chiếu Projector, máy vi tính, một số chơng trình viết sẵn

2 Chuẩn bị của học sinh

- Sách giáo khoa

III Hoaùt ủoọng daùy – hoùc:

1 OÅn ủũnh lụựp- kieồm tra sú soỏ:(1phuựt)

Ngày gi ng ảng L p d y ớp dạy ạy Ti t ết T ng s ổng số ố HS V ng m t ắng mặt ặt

11A1

11 A2

Trang 14

11 A3

11 A4

11 A5

2.Kieồm tra baứi cuừ:

Haừy vieỏt caực bieồu thửực toaựn hoùc sang Pascal:

3.Noọi dung baứi mụựi

BAỉI7: CAÙC THUÛ TUẽC VAỉO-RA ẹễN

GIAÛN

1 Nhaọp dửừ lieọu tửứ baứn phớm

ẹửụùc thửùc hieọn baống thuỷ tuùc chuaồn:

Read(<danh saựch bieỏn vaứo>);

Hoaởc

Readln(<danh saựch bieỏn vaứo>);

Vd: Read(N);

Readln(<danh saựch bieỏn vaứo>);

2.ẹửa dửừ lieọu ra maứn hỡnh

Thuỷ tuùc xuaỏt ra maứn hỡnh chuaồn nhử

Vớ duù: Khi vieỏt chửụng trỡnh giaỷi phửụngtrỡnh ax+b=0, ta phaỷi nhaọp vaứo caực ủaùi lửụùng naứo? Vieỏt leọnh nhaọp?Hoùc sinh traỷ lụứi:

- Phải nhập giá trị cho hai biến: a, b

Vụựi vớ duù treõn ta bieỏt caực chửực naờng cuỷa leọnh trong chửụng trỡnh:Leọnh Writeln(); Vieỏt ra maứn hỡnh doứng chửừ vaứ ủửa con troỷ xuoỏng doứng.Leọnh Write(6); Daứnh 6 vũ trớ treõn maứn hỡnh ủeồ vieỏt soỏ x vaứ 6 vũ trớ tieỏp ủeồ vieỏt soỏ y vaứ 6 vũ trớ tieỏp ủeồ vieỏt soỏ

z

IV Đánh giá cuối bài

1 Những nội dung đã học

- Nhập dữ liệu : Read/Readln(<tên_biến_1>, ,<tên_biến_k>);

- Xuất dữ liệu : write/writeln(<tham_số_1>, ,<tham_số_k>);

2 Câu hỏi và bài tập về nhà

Trang 15

- bằng thực hành trên máy:

+ Hãy so sánh sự giống nhau và khác nhau giữa Write(); và writeln();

+ Hãy so sánh sự giống nhau và khác nhau giữa Read(); và Readln();

+ Tìm hiểu chức năng của lệnh Readln; Writeln;

V.Ruựt kinh nghieọm:

- Biết đợc một chơng trình Pascal hoàn chỉnh

- Làm quen với các dịch vụ chủ yếu của Turbo Pascal trong việc soạn thảo, lu chơng trình, dịch chơng trình và thực hiện chơng trình

1 Chuẩn bị của giáo viên

- Phòng máy vi tính đã đợc cài đầy đủ Turbo Pascal, máy chiếu projector để hớng dẫn

2 Chuẩn bị của học sinh

- Sách giáo khoa, sách bài tập và bài tập đã viết ở nhà

III HOAẽT ẹOÄNG DAẽY HOẽC:

1 OÅn ủũnh lụựp- kieồm tra sú soỏ:

Ngày gi ng ảng L p d y ớp dạy ạy Ti t ết T ng s ổng số ố HS V ng m t ắng mặt ặt

Trang 16

Goừ chửụng trỡnh sau vaứo maựy:

-Sửa lại chơng trình không dùng biến D

Baứi taọp: Vieỏt chửụng trỡnh tớnh toồng:

S= 1+2+3+ +n (n nhaọp tửứ baứn phớm)

HD: Khai baựo:- Bieỏn n kieồu soỏ nguyeõn

ủeồ chửa dửừ lieọu nhaọp vaứo

-Bieỏn S kieồu soỏ nguyeõn ủeồ lửu keỏt

quaỷ

-Nhaọp dửừ lieọu cho n

-Tớnh s theo coõng thửực s= n*(n+1) div 2;

-Ghi dửừ lieọu leõn maứn hỡnh

Hoaùt ủoọng 1:

Hửụựng daón hoùc sinh soaùn thaỷo chửụng trỡnh giaỷi phửụng trỡnh baọc 2 vaứo maựy.Sau khi soaùn xong tieỏn haứnh hửụựng daón hoùc sinh chaùy chửụng trỡnh:

-Lửu chửụng trỡnh: Baỏm F2-Dũch loói cuự phaựp: Alt +F9-Thửùc hieọn chửụng trỡnh ctrl +F9-Nhaọp dửừ lieọu 1 -3 2 Thoõng baựo keỏt quaỷ ra maứn hỡnh: x1=1.00 x2=2.00-Trụỷ veà maứn hỡnh soaùn thaỷo: Enter-Thửùc hieọn chửụng trỡnh: Ctrl+F9

-Nhaọp dửừ lieọu 1 0 2.Thoõng baựo keỏtquaỷ ra maứn hỡnh:

Thông báo lỗi: Do căn bậc hai cuỷa một số

Write(‘nhap so nguyen duong n:’);readln(n);

+ Phân tích bài toán để xác định dữ liệu và, dữ liệu ra

+ Xác đinh thuật toán

+ Soạn chơng tình vào máy

+ Lu giữ chơng trình

+ Biên dịch chơng trình

+ Thực hiện và hiệu chỉnh chơng trình

Trang 17

2 Câu hỏi và bài tập về nhà

- Viết chơng trình nhập vào độ dài ba cạnh của một tam giác và tính chu vi, diện tích của tam giác đó

V Ruựt kinh nghieọm:

-Bieỏt ủửụùc moọt chửụng trỡnh pascal hoaứn chổnh

-Laứm quen vụựi vieọc soaùn thaỷo, lửu chửụng trỡnh, dũch vaứ chaùy chửụng trỡnh

-Bieỏt thửùc hieọn chửụng trỡnh toaựn hoùc treõn maựy tớnh

II ẹoà duứng daùy hoùc:

1.Chuaồn bũ cuỷa giaựo vieõn:

-Phoứng maựy ủaừ caứi phaàm meàm Pascal, Maựy chieỏu ủeồ giaỷng khi caàn thieỏt.-Giaựo aựn, vớ duù ủaừ soaùn saỹn ủeồ chieỏu cho caực em hỡnh dung trửùc tieỏp

2.Chuaồn bũ cuỷa hoùc sinh

-Baứi taọp ủaừ soaùn ụỷ nhaứ ủeồ thửùc haứnh nhanh goùn

III Hoaùt ủoọng daùy vaứ hoùc

1 OÅn ủũnh lụựp- Kieồm tra sú soỏ:

11A1 11A2

11A3 11A4 11A5

2.Kieồm tra baứi cuừ(khoõng kieồm tra)

3 Noọi dung thửùc haứnh:

Baứi taọp 1:

Vieỏt chửụng trỡnh tớnh dieọn tớch,

tam giaực khi bieỏt 3 caùnh a,b,c

Writeln(‘cho biet canh thu hai=’);readln(b);

Writeln(‘cho biet canh thu ba=’);readln(c);

P:=0,5*(a+b+c);

S:=sqrt(p*(p-a)*(p-b)*(p-c));

Writeln(‘dien tich tam giac=’);

ReadlnEnd

Giaỷi baứi taọp 2:

Program hinh_vuong;

Trang 18

Học sinh làm các bài tập

Writeln(‘canh hinh vuong a=’);readln(a);

+ NhËp d÷ liƯu vµ kiĨm tra kÕt qu¶

- §äc tríc néi dung bµi: CÊu trĩc rÏ nh¸nh, s¸ch gi¸o khoa, trang 38

- Xem phơ lơc B, s¸ch gi¸o khoa, trang 122: M«i trêng Turbo Pascal

V Rút kinh nghiệm:

-Viết được các bài toán dưới dạng Pascal

- Biểu diễn được các công thức từ toán học sang Pascal

- Phân biệt được các kiểu dữ liệu, biết cách khai báo biến

2 Kĩ năng:

-Thao tác làm các bài tập nhanh gọn

3 Trọng tâm:

-Nắm chắc các kiến thức đã học ở bài trước để vận dụng làm bài tập

II Đồ dùng dạy học

1.Chuẩn bị của giáo viên: Giáo án, SGK, SBT

2.Học sinh: Sách bài tập

III Hoạt động dạy –học

1.Ổn định lớp- Kiểm tra sĩ số:

Ngày gi ng ảng L p d y ớp dạy ạy Ti t ết T ng s ổng số ố HS V ng m t ắng mặt ặt

11A1

Trang 19

11 A2

11 A3

11 A4

11 A52.Kiểm tra bài cũ (không kiểm tra)

3 Nội dung bài tập:

Bài tập 1: Trong Pascal nếu một

biến chỉ nhận giá trị 5, 10, 15, 20,

30, 60, 90 và biến x có thể nhận

giá trị 0,1; 0,2; 0,3; 0,4; 0,5 Khai báo

nào trongcác khai báo sau là

đúng?

a, Var X,P :byte; d, var X: real;

b, Var P,X: real; P: byte;

c, Var P: Real;

X: byte;

Bài 2: Hãy chuyển các biểu thức

trong Pascal dưới đây sang biểu

thức toán họctương ứng

a, a/b*2; c, 1/a*b/c;

b, a*b*c/2; d, b/sqrt(a*a+b);

Bài 3: Lập trình nhập từ bàn

phím hai số thực a và b, tính và

đưa ra màn hình:

a, Trung bình cộng các bình phương

của hai số đó?

b, Trung bình cộng các giá trị tuyệt

đối của a và b

Bài 4: Viết chương trình nhập vào

số nguyên dương có ba chữ số

rồi in lên màn hình số đảo ngược

của số đó

HD: -Khai báo biến n để chứa dữ

liệu nhập vào

-Nhập n nguyên dương có 3 chữ

số

-Dùng các phép toán Mod và Div

lần lượt tách các chữ số hàng

đơn vị, hàng chục, hàng trăm,

hàng nghìn và ghi lên bảng

Giáo viên gọi học sinh lên bảng làm bài tập

-Học sinh lên bảng làm bài tập

Câu d là đúng

Bài2: Học sinh lên bảng làm:

*Giáo viên nhận xét và cho điểm

HD:

-Khai báo biến

- Sử dụng công thức (Sqr(a) + Sqr(b))/2;Và (Abs(a) + Abs(b))/2;

* Gọi học sinh lên bảng làm bài.Program so_dao;

Var n: integer;

Begin Write(‘nhap so nguyen co ba chu so:’);readln(n);

Write(‘so dao nguoc cua so’,n,’ la:’);

Writeln(n mod 10, n mod 100 div 10, n div 100);

ReadlnEnd

Trang 20

1 Kiến thức.

- Học sinh biết đợc ý ngiã của cấu trúc rẽ nhánh

- Học sinh biết đợc cấu trúc chung của cấu trúc rẽ nhánh

- Biết cách sử dụng đúng hai dạng cấu trúc rẽ nhánh trong lập trình: dạng thiếu và dạng

-Tieỏp tuùc xaõy dửùng loứng yeõu thớch giaỷi toaựn baống laọp trỡnh treõn maựy

-Tieỏp tuùc reứn luyeọn caực phaồm chaỏt caàn thieỏt cuỷa ngửụứi laọp trỡnh nhử: xem xeựt giaỷi quyeỏt vaỏn ủeà moọt caựch caồn thaọn, saựng taùo

4 Troùng taõm:

Caõu leọnh if then

II Đồ dùng dạy học

1 Chuẩn bị của giáo viên

- Máy vi tính, máy chiếu Projector, chơng trình mẫu giải phơng trình bậc hai ax2 + bx + c =0

2 Chuẩn bị của học sinh

- Saựch giáo khoa

III Hoạt động dạy – học

1.OÅn ủũnh lụựp- kieồm tra sú soỏ:

Ngày gi ng ảng L p d y ớp dạy ạy Ti t ết T ng s ổng số ố HS V ng m t ắng mặt ặt

Caõu 1: Trong bieồu dieón dửụựi ủaõy, bieồu dieón naứo laứ tửứ khoaự trong Pascal?

a.Boolean b Interger c Const d sqrt

Caõu2:Neỏu bieỏn i thuoọc kieồu integer thỡ phaùm vi giaự trũ cuỷa i trong khoaỷng naứo ?

a 0 ủeỏn 255; b -215 ủeỏn 215 -1 ; c 0 ủeỏn 216 -1 ; d -231 ủeỏn 231 -1

Câu 3: Trờng hợp nào dới đây không phải là tên trong Pascal

a Giai_PT_Bac2; b Ngaysinh; c @baitap; d Dia3chi;

Caõu4: Tửứ khoựa ủeồ khai baựo thử vieọn chuaồn cuỷa Pascal laứ

a, program b, var c, uses d, Const

Caõu5: Trong Pascal phaàn khai baựo coự theồ boỷ qua

a, Khai baựo bieỏn b, Khai baựo teõn chửụng trỡnh

c, Khai baựo haống d, Coự theồ boỷ taỏt caỷ

Caõu6: Xeựt khai baựo sau ủaõy trong Pascal

Trang 21

Cõu 7: Ngoõn ngửừ laọp trỡnh laứ:

a, Phửụng tieọn ủeồ soaùn thaỷo vaờn baỷn trong ủoự coự chửụng trỡnh

b,Ngoõn ngửừ Pascal hoaởc C

c,Phửụng tieọn dieón ủaùt thuaọt toaựn ủeồ maựy tớnh thửùc hieọn coõng vieọc

d,Phửụng tieọn dieón ủaùt thuaọt toaựn

Caõu 8: Phaựt bieồu naứo dửụựi ủaõy laứ ủuựng:

a, Haống soỏ khoõng laứ bieồu thửực soỏ hoùc

b, Bieỏn soỏ khoõng laứ bieồu thửực soỏ hoùc

c, Chổ khi haống vaứ bieỏn soỏ lieõn keỏt vụựi nhau bụỷi caực pheựp toaựn soỏ hoùc mụựi taùo thaứnh bieồu thửực soỏ hoùc

d,Caỷ 3 meọnh ủeà treõn ủeàu sai

Câu 10: Trong các khai báo biến sau đây trờng hợp nào là khai báo đúng

A Var:q: integer; B Var q; integer; C Var q: integer; D.Var:q; integer;

Câu 11: biểu thức nghiệm của phơng trình bậc hai: viết trong TP sau đây, biểuthức nào là đúng

A (-b + sqrt (b*b-4*a*c)) / 2a B (-b + sqrt (b*b-4*a*c)) / 2*a

C (-b + sqrt (b*b-4*a*c)) / (2*a) D -b + sqrt (b*b-4*a*c) / (2*a

II: Tệẽ LUAÄN Vieỏt caực bieồu thửực Pascal sang toaựn hoùc vaứ ngửụùc laùi

STT Bi u th c trong Pascal ểu thức trong Pascal ức trong Pascal Bi u th c trong toỏn h cểu thức trong Pascal ức trong Pascal ọc

3.Noọi dung baứi mụựi:

Baứi 9: CAÁU TRUÙC REế NHAÙNH

-Neỏu thỡ , neỏu khoõng thỡ

2 Caõu leọnh IF – THEN

Daùng thieỏu:

If<ủieàu kieọn> then<caõu leọnh>;

Hoaùt ủoọng 1: Neõu vớ duù thửùc tieón minh hoaù cho toồ chửực reừ nhaựnh

Chieàu mai neỏu trụứi khoõng mửa An seừ

ủi xem ủaự boựng, neỏu trụứi mửa thỡ An seừ xem ti vi ụỷ nhaứ

Hoùc sinh chú ý theo dõi các dẫn dắt và ví

dụ của giáo viên để suy nghĩ tìm ví dụ tơng tự

- Nếu đội tuyển bóng đá Việt Nam thắng

đội Indonesia thì sẽ đợc đá tiếp tranh huy chơng vàng với Thái Lan, nếu không thắng Indonesia thì Việt Nam sẽ tranh huy chơng

Trang 22

2 Một số ví dụ.

*Tìm nghiệm của phương trình bậc 2:

Input: Các hệ số a, b, c nhập từ bàn

phím

Output: Đưa ra màn hình các nghiệm thực

hoặc câu thông báo “phương trình vô

nghiệm”

*Tìm số ngày của năm N, biết rằng

năm nhuận là năm chia hết cho 400

hoặc chia hết cho 4 nhưng không chia hết

cho 100

Input: N nhập từ bàn phím

Output: Đưa số ngày của năm N ra màn

* Ví dụ về câu lệnh if then else:

if a mod 3 = then writeln(‘phuong trinh vo nghiem’)

Else write(‘a khong chia het cho 3’);

Ví dụ:

If D<0 then wtiteln(‘phuong trinh vo nghiem,’)

Else Begin x1:=(-b – sqrt(b*b-4*a*c))/(2*a);

x2:= -b/a-x1;

end,Một số ví dụ:

Ví dụ giải phương trình bậc2:

x2:= -b/a –x1;

writeln(‘x1=’, x1:8:3,’ x2 =’, x2:8:3); End;

ReadlnEnd

Write(‘Nam

Trang 23

IV Đánh giá cuối bài.(5phuựt).

1 Những nội dung đã học

- Cấu trúc chung của cấu trúc rẽ nhánh

- Sự thực hiện của máy khi gặp cấu trúc rẽ nhánh IF

- Sơ đồ thực hiện của cấu trúc rẽ nhánh IF

2 Câu hỏi và bài tập về nhà

- Trả lời câu hỏi 1, 2, 4, Sách giáo khoa, trang 50

- Viết chơng trình nhập vào hai số bất kì và in ra màn hình giá trị lớn nhất của hai số

- Viết chơng trình giải phơng trình ax4 + bx2 + c = o

V.Ruựt kinh nghieọm:

- Biết đợc ý nghĩa của cấu trúc lặp

- Biết đợc cấu trúc chung của lệnh lặp for trong ngôn ngữ lập trình Pascal

- Biết sử dụng đúng hai dạng lệnh lặp For trong ngôn ngữ lập trình Pascal

2 kĩ năng

- Bớc đầu sử dụng đợc lệnh lặp For để lập trình giải quyết đợc một số bài toán đơn giản

3 Thaựi ủoọ:

Tớch cửùc hoùc taọp, bửụực ủaàu laứm quen vụựi caực caõu leọnh trong laọp trỡnh

4 Troùng taõm: Laởp vụựi soỏ laàn bieỏt trửụực vaứ caõu leọnh For- do

II ẹoà duứng daùy hoùc:

1 Chuẩn bị của giáo viên

- Máy vi tính, máy chiếu Projector, sách giáo khoa, sách giáo viên

2 Chuẩn bị của học sinh

- Sách giáo khoa, duùng cuù hoùc taọp

III: Hoaùt ủoọng daùy – hoùc

1.OÅn ủũnh lụựp- kieồm tra sú soỏ:(1phuựt)

Ngày gi ng ảng L p d y ớp dạy ạy Ti t ết T ng s ổng số ố HS V ng m t ắng mặt ặt

2 Kieồm tra baứi cuừ:

Caõu 1: Haừy vieỏt caỏu truực caõu leọnh laởp daùng thieỏu vaứ daùng ủuỷ?

Caõu 2: Laỏy vớ duù veà caỏu truực laởp daùng thieỏu vaứ daùng ủuỷ

Traỷ lụứi:

Caõu1:

*Daùng thieỏu: If <ủieàu kieọn> Then <Caõu leọnh>;

*Daùng ủuỷ: If <ủieàu kieọn> then <caõu leọnh 1> else <caõu leọnh 2>;

Caõu 2:

*Daùng thieỏu: If D < 0 then writeln (‘phuong trinh vo nghiem,’);

*Daùng ủuỷ: If M mod 3=0 then write (‘M chia het cho 3’)

Trang 24

Else write (‘M khong chia het cho 3’);

3.Noọi dung baứi mụựi:

Baứi 10: CAÁU TRUÙC LAậP

1.LAậP(15phuựt)

Vụựi a laứ soỏ nguyeõn vaứ a>2, xeựt caực

baứi toaựn sau:

Baứi toaựn1: S=1/a + 1/a+1 + + 1/a+100

Baứi toaựn2: S= 1/a + 1/a+1+ +1/a+N

2.Laởp vụựi soỏ laàn bieỏt trửụực

vaứ caõu leọnh For- do.(19phuựt)

* Daùng laởp tieỏn:

For<bieỏn ủeỏm>:=<giaự trũ ủaàu> to <giaự

trũ cuoỏi> do <caõu leọnh>;

*Daùng laởp luứi:

For<bieỏn ủeỏm>:=<giaự trũ cuoỏi>

downto<giaự trũ ủaàu> do <caõu leọnh>

*Coự 2 thuaọt toaựn ủeồ tớnh toồng cho baứi

-Coự bao nhieõu laàn ủoồ nửụực vaứo thuứng?

-Moói laàn ủoồ lửụùng bao nhieõu? laàn thửự

i ủoồ bao nhieõu?

-Phaỷi vieỏt bao nhieõu leọnh?

Traỷ lụứi:

- Phải thực hiện 100 lần đổ nớc

- Mỗi lần đổ 1 a+i-Phải viết 100 lệnh

Cho hoùc sinh thảo luận theo nhóm để viết thuaọt toán:

*Thuaọt toaựn (Daùng laởp tieỏn)

Bớc 1: N <– 0; S <– 1/a;

Bớc 2: N <– N+1;

Bớc 3: nếu : N>100 thì chuyển đến bớc 5.Bớc 4 : S <– S + 1/(a+N),

Quay lại bớc 2

Bớc 5 : Đa S ra màn hình rồi kết thúc

- Thông báo kết quả viết đợc

- Nhận xét, đánh giá kết quả cuỷa nhoựm

*Thuaọt toaựn (Daùng laởp luứi)

Bửụực1: N <– 101 ; S <– 1/a;

Bớc 2: N <– N - 1;

Bớc 3: nếu : N < 1 thì chuyển đến bớc 5.Bớc 4 : S <– S + 1/(a+N),

Quay lại bớc 2

Bớc 5 : Đa S ra màn hình rồi kết thúc

IV Cuỷng coỏ baứi hoùc:(5phuựt)

-Naộm roừ caỏu truực laởp vụựi soỏ laàn bieỏt trửụực vaứ chửa bieỏt trửụực

-Giaỷi ủửụùc caực baứi toaựn tửụng tửù trong thửùc teỏ

V Ruựt kinh nghieọm:

Trang 25

I Mục tiêu

1 Kiến thức

- Biết đợc ý nghĩa của cấu trúc lặp có số lần lặp cha xác định

- Biết đợc cấu trúc chung của lệnh lặp While trong ngôn ngữ Pascal

- Biết đợc sự thực hiện của máy khi gặp lệnh lặp While

2 Kí năng

- Phân biệt đợc sự giống và khác nhau giữa cấu trúc lặp For và While

- Sử dụng đúng lệnh lặp While trong lập trình

- Bớc đầu biết lựa chọn đúng dạng lệnh lặp để lập trình giải quyết đợc một số bài toán đơn giản

II Đồ dùng dạy học

1 Chuẩn bị của giáo viên

- Máy vi tính, máy chiếu Overhead, Projector, sách giáo khoa, sách giáo viên

2 Chuẩn bị của học sinh

- Sách giáo khoa

III Hoạt động dạy - học

1 OÅn ủũnh lụựp- kieồm tra sú soỏ:(1phuựt)

2.Kieồm tra baứi cuừ:

Caõu1: Neõu caỏu truực daùng laởp tieỏn vaứ daùng laởp luứi?

3.Noọi dung baứi mụựi:

*Caứi ủaởt thuaọt toaựn tớnh toồng cuỷa

baứi toaựn 1 ụỷ 2 daùng laởp tieỏn vaứ

daùng luứi

*Daùng laởp tieỏn

Bài toán 1: Viết chơng trình tính tổng:

S = 1/a + 1/a+1 + 1/a+2 + + 1/a+N +

cho đến khi 1/a+N <0,0001

Chửụng trỡnh tớnh toồng daùng laởp tieỏn:Program tinh_tong;

Uses crt;

Var S: real;

a ,N: integer;

BeginClrscrWrite (‘hay nhap gia tri a vao’,); readln(a);S:= 1.0 /a;

For N:= 1 to 100 do S:= S+1.0/ (a+ N);

Writeln(‘tong S la:’, S);

ReadlnEnd

*Daùng laởp luứi:

For N:= 100 dowto 1 do S:= S+1.0/ (a+ N);

Writeln(‘tong S la:’, S);

ReadlnEnd

Trang 26

- Hỏi : Sự khác nhau của bài toán này với bài

toán đã viết ở tiết trớc?

- Hỏi : Lặp lại bao nhiêu lần?

- Hỏi : Lặp đến khi nào?

* Yêu cầu học sinh nghiên cứu sách giáo

khoa và cho biết cấu trúc chung của lệnh lặp

While

While <ủieàu kieọn> do <caõu leọnh>;

- Giải thích:

+ <Điều kiện>: Là biểu thửực quan hệ

hoặc biểu thức logic, là điều kiện để lặp lại

a Chú ý lắng nghe, quan sát và suy nghĩ để trả lời

- Bài trớc: Cho giới hạn N

-Bài này: Cho giới hạn S

điều kiện nào đó

2 Yêu cầu học sinh vẽ sơ đồ cấu trúc lên

bảng

-Gọi học sinh đánh giá nhận xét

Ví dụ 2: Viết chơng trình nhập vào hai số

nguyên dơng a và b Tìm ớc số chung lớn

nhất của hai số đó

- Hỏi: Một sự khác nhau trong lệnh cần lặp của For và While là gì?

- Dựa vào cấu trúc chung, hãy cho biết máy sẽ thực hiện tính <điều kiện> trớc hay thực hiện <lệnh cần lặp> trớc?

1 Tham khảo sách giáo khoa và trả lời

- Cấu trúc chung While <điều kiên> Do <lệnh cần lặp>;

- Điều kiện : m<> n -Leọnh cần lặp: m:=m-n; hoặc n:=n-m;

- Thuật toán:

B1: Nếu m=n thì UC=m, dừng

B2: Nếu m>n thì m:=m-n ngợc lại n:=n-m; Quay lại B1

IV Đánh giá cuối bài

1 Những nội dung đã học

- ý nghĩa của cấu trúc lặp có số lần cha xác định

- Cấu trúc chung của lệnh lặp While trong ngôn ngữ Pascal

- Sơ đồ thực hiện của lệnh lặp While

- Sự thực hiện của máy khi gặp lệnh lặp While

2 Câu hỏi và bài tập về nhà

- Giải bài tập 4, 5b, 7, 8, sách giáo khoa trang 51

- Viết chơng trình tính tổng:

S = 1/a + 1/a+1 + 1/a+2 + + 1/a+N + cho đến khi 1/a+N <0,0001

- Đọc lại lệnh rẽ nhánh IF và làm các bài tập liên quan, chuẩn bị cho tiết sau thực hành

V Ruựt kinh nghieọm:

Trang 27

- Biết đợc ý nghĩa của cấu trúc lặp có số lần lặp cha xác định

- Biết đợc cấu trúc chung của lệnh lặp While trong ngôn ngữ Pascal

- Biết đợc sự thực hiện của máy khi gặp lệnh lặp While

2 Kí năng

- Phân biệt đợc sự giống và khác nhau giữa cấu trúc lặp For và While

- Sử dụng đúng lệnh lặp While trong lập trình

- Bớc đầu biết lựa chọn đúng dạng lệnh lặp để lập trình giải quyết đợc một số bài toán đơn giản

II Đồ dùng dạy học

1 Chuẩn bị của giáo viên

- Máy vi tính, máy chiếu Overhead, Projector, sách giáo khoa, sách giáo viên

2 Chuẩn bị của học sinh

- Sách giáo khoa

III Hoạt động dạy - học

1 OÅn ủũnh lụựp- kieồm tra sú soỏ:(1phuựt)

2 Kieồm tra baứi cuừ(5phuựt)

3 Noọi dung baứi mụựi

1 Chuẩn bị của giáo viên

- Phòng máy vi tính, máy chiếu Projector để hớng dẫn

2 Chuẩn bị của học sinh

- Sách giáo khoa, sách bài tập và bài tập đã viết ở nhà

III Hoạt đông dạy - học

1 Hoạt động 1: Làm quen với một chơng trình và các công cụ hiệu chỉnh chơng trình

a Mục tiêu:

- Học sinh hiểu đợc nội dung chơng trình và kết quaỷ sau khi thực hiện chơng trình Biết các công cụ dùng để hiệu chỉnh chơng trình khi cần thiết nh : Thực hiện từng bớc và xem kết quả trung gian

Trang 28

1 Gụùi ý để học sinh nêu khái niệm về bộ

số Pitago

- Yêu cầu: lấy một ví dụ cụ thể

- Hỏi : Để kiểm tra bộ ba số a, b, c bất kì

có phải là bộ Pitago, ta phaỷi kiểm tra các

đẳng thức nào?

2 Chiếu chơng trình mẫu lên bảng

thực hiện mẫu các thao tác: lu, thực hiện

từng lệnh chơng trình, xem kết quả trung

gian, thực hiện chơng tình và nhập dữ liệu

- Yêu cầu học sinh gõ chơng trình mẫu vào

- bấm F7, nhập các giá trị a=3, b=4, c=5

- Chọn menu Debug để mở cửa sổ hiệu chỉnh

- Quan sát quá trình rẽ nhánh của từng bộ dữ liệu vào và trả lời

2 Hoạt động 2: Rèn luyện kĩ năng lập trình hoàn thiện một bài toán

1 Nêu nôi dung, mục đích, yêu cầu cảu bài

toán

- Hỏi : Bớc đầu tiên để giải bài toán ?

- Hỏi : Để xác định ta phải đặt các câu hỏi

nh thế nào? Gọi học sinh đặt câu hỏi và gọi

học sinh trả lời cho câu hỏi đó?

- Yêu cầu học sinh phác họa thuât toán

2 Yêu cầu học sinh gõ chơng trình vào

máy

- Giáo viên tiếp cận từng học sinh để hớng

dẫn và sửa sai

3 Yêu cầu học sinh nhập dữ liệu

- Nhập dữ liệu với test 1 2 -2

4 Yêu cầu học sinh xác định các testcase,

nhập dữ liệu, đối sánh kết quả

1 chú ý theo dõi vấn đề đặt ra của giáo viên

- Xác định input output và thuật giải

- Mục đích của giải phơng trình?

+ Kết luận số nghiệm và giá trị nghiệm x

- Để tính đợc nghiệm x cần các đại lợng nào?

Trang 29

2 3 -1.5 Nhập dữ liệu và thông báo kết quả.

IV Đánh giá cuối bài

1 Những nội dung đã học

Các bớc để hoàn thành một chơng trình

- Phân tích bài toán để xác định dữ liệu vào, dữ liệu ra, thuật toán

- Soan chơng trình vào máy

- Lu dữ chơng trình

- Biên dịch

- Thực hiện và hiệu chỉnh chơng trình

2 Câu hỏi và bài tập về nhà

- Viết chơng trình nhập vào độ dài ba cạnh cuat một tam giác và tính chu vi, diện tích của tam giaực đó

Hỏi: Chơng trình thực hiện chơng trình gì, kết quả in ra màn hình là bao nhiêu?

- Viết chơng tình nhập vào ba số bất kì và tìm giá trị bé nhất của ba số đó

- Xem trớc nội dung bài: kiểu mẳng, sách giáo khoa, trang 53

Tuaàn 9:

Ngaứy soaùn: 14/10/2009

Ngaứy giaỷng: 19-24/10/2009

PPCT Tieỏt 16 :

BAỉI TAÄP VAỉ THệẽC HAỉNH SOÁ 2 (Tieỏt 2)

PPCT Tieỏt 17 : BAỉI TAÄP

1 Chuẩn bị của giáo viên

- Máy chiếu Projector, máy vi tính để giới thiệu ví dụ minh họa, một số chơng trình mẫu

2 Chuẩn bị của học sinh

- Sách giáo khoa

III Hoạt động dạy – học

Trang 30

1 Hoạt động 1: Nhắc lại kiến thức đã học về tổ hcức rẽ nhánh và lặp

For <biến đếm>:=<giá trị đầu> To <giá trị cuối> Do <lệnh>;

For <biến đếm>:=<giá trị đầu> downto <giá trị cuối> Do <lệnh>;

- Lặp While

While <điều kiện> Do <lệnh>;

c Các bớc tiến hành:

1 Yêu cầu học sinh nhắc lại cấu trúc rẽ

nhánh

- Chiếu chơng trình tìm giá trị lớn nhất của

hai số, trong đó có sử dụng lệnh rẽ nhánh

- Hỏi: Chơng trình thực hiện công việc gì?

- Yêu cầu học sinh viết lại chơng trình

lặp For và một chơng trình sử dụng lặp while

- Yêu cầu: So sánh sự giống và khác nhau

Begin Readln(a, b); max:=b;

If a>b then max:=a;

While <điều kiện> Do <lệnh cần lặp>;

- Quan sát, suy nghĩ và trả lời

- Giống: đều là lệnh lặp

- Khác: For lặp với số lần đã xác định trớc trong khi While lạp với số lần cha xác định

2 Hoạt động 2: rèn luyện kĩ năng vận dụng tổ chức lặp

1 Tìm hiểu bài tập 1 và giải quyết 1 Quan sát và suy nghĩ để giải quyết bài

Trang 31

- Chiếu nội dung ví dụ 1 lên bảng.

- Hỏi: Có thể khai triển biểu thức Y thành

tổng của các số hạng nh thế nào?

- Nhìn vào công thức khai triển, cho biết N

lấy giá trị tỏng đoạn nào?

- Hỏi : Ta sử dụng cấu trúc điều khiển lặp

2 Tìm hiểu nội dung ví dụ 2 và định hớng

học sinh giải quyết ở nhà

- Chiếu nội dung ví dụ 2 lên bảng

- Hãy cho biết N nhận giá trị trong đoạn

nào? Xác định đợc cha?

- Hỏi : Dùng cấu trúc điều khiển nào là

thích hợp?

- Yêu cầu học sinh về nhà lập trình trên

máy, tiết sau nộp lạo cho giáo viên

toán

Y = 1/2 + 2/3 + 3/4 + + 50/51 1 50

- báo cáo kết quả của nhóm

- Nhận xét, đánh giá và bổ sung các thiếu sót của nhóm khác

2 Quan sát và theo dõi những định hớng của giáo viên

2 Câu hỏi và bài tập về nhà

- Cho chơng trình đợc viết bằng lệnh For

Var x, i:word; nt:boolean;

Begin

Readln(x);

nt :=true;

For i :=2 to x - 1 do

if x mod i = 0 then nt:=false;

If nt = true then write(x,’la so nguyen to’) else write(x, ‘khong phai snt’);

readln;

End

- Hãy viết lại chơng trình trên trong đó lệnh lặp For đợc thay bằng lệnh lặp Whlie Hãy cho biết, trong bài toán trên sử dụng lệnh lặp nào là tốt hơn

Chơng 4 Kiểu dữ liệu có cấu trúc

I Mục tiêu của chơng

1 Kiến thức: Học sinh cần:

- Hiểu đợc khái niệm kiểu dữ liệu có cấu trúc

- Biết đợc ngôn ngữ lập trình cho phép tạo ra các kiểu dữ liệu có cấu trúc trên cơ sở các kiểu dữ liệu chuẩn

- Một kiểu dữ liệu có cấu trúc đợc xây dựng từ những kiểu dữ liệu cơ sở theo một số kĩ thuật tạo kiểu do ngôn ngữ lập trình quy định

- Kiểu dữ liệu xác định bởi hai yếu tố: Phạm vi đối tợng và các thao tác trên những đối tợngnày

2 Kĩ năng

- Biết cách mô tả kiểu dữ liệu trong ngôn ngữ lập trình Pascal

Trang 32

- Biết cách sử dụng đúng các thao tác vao/ra dữ liệu cho biến thuộc kiểu dữ liệu có cấu trúc.

- Biết cách sử dụng đúng các phép toán trên các thành phẩmcơ sở tùy theo kiểu của các thành phần cơ sở

3 Thái độ

- tiếp tục xây dựng lòng yêu thích giải bài toán lập trình trên máy vi tính

- Tiếp tục rèn luyện các phẩm chất cần thiết của ngời lập trình nh: ý thức chon và xây dựng kiểu dữ liệu khi thể hiện những đối tợng trong thực tế, ý thức rèn luyện kĩ năng sử dụng các thao tác trên mỗi kiểu dữ liệu có cấu trúc, hứng thú tìm hiểu các thuật toán thờng gặp trên các mô hình dữ liệu Luôn muốn cải tiến chơng trình nhằm nâng cao hiệu quả chơng trình

II Nội dung chủ yếu của chơng

Chơng này trình bày ba kiểu dữ liệu có cấu trúc quan trọng:

- Kiểu mẳng một chiều và mảng hai chiều

- Biết đợc một kiểu dữ liệu mới là kiểu mảng một chiều Biết đợc một laọi biến có chỉ số

- Biết cáu trúc tạo kiểu mảng một chiều và cáhc khai báo biến kiểu mảng một chiều

2 Kĩ năng

- Tạo đợc kiểu mảng một chiều và sử dụng biến mảng một chiều trong ngônngữ lập trình Pascal để giải quyết một số bài toán cụ thể

II Đồ dùng dạy học

1 Chuản bị của giáo viên

- Máy chiếu Projector, máy vi tính để giới thiệu ví dụ và minh họa

2 Chuẩn bị của học sinh

Sách giáo khoa

III Hoạt động dạy – học

1 Hoạt động 1: Tìm hiểu ý nghĩa của mảng một chiều

- Chơng trình minh họa

Program nhiet do tuan;

Var t1, t2, t3, t4, t5, t6, tb:real; dem:integer;

Trang 33

if t7>tb then dem:=dem+1;

Write(‘nhiet do trung binh tuan:’,tb);

Writeln(‘So ngay nhiet do cao hon nhiet do trung binh tuan:’,dem):

readln;

End

- Mảng một chiều là dãy hữu hạn các phần tử co cùng kiểu dữ liệu Các phần tử trong mảng có cùng chung một tên và phân biệt nhau bởi chỉ số Để mô tả mảng một chiều cần xác định đợc kiểu của các phần tử và cách đánh số các phần t ử của nó

- Hầu hết các ngôn ngữ lập trình đều có quy tắc cho phép xác định: tên kiểu mảng, số lợngphần tử, kiểu dữ liệu của từng phần tử, cách khia báo một biến mảng và cách tham chiếu đếntừng phần tử của từng mảng

c Các bớc tiến hành:

1 Chiếu đề bài và chơng trình ví dụ lên

bảng

- Hỏi: Khi N lớn thì chơng trình trên có

những hạn chế nh thế nào?

- Dẫn dắt: Để khắc phục những hạn chế

trên, ngời ta thờng ghép chung 7 biến trên

thành một dãy và đặt cho nó chung một tên

và đánh cho mọt phần tử một chỉ số

2 Yêu cầu học sinh tham khảo sách giáo

khoa và hỏi: Em hiểu nh thế nào về mảng

một chiều?

- Hỏi: Để mô tả mảng một chiều, ta cần xác

định những yếu tố nào?

1 Quan sát trên màn hình, suy nghĩ và trả lời

- Phải khai báo quá nhiều biến Chơng trình phải viết rất dài

2 Nghiên cứu sách giáo khoa để trả lời

- Mảng một chiều là dãy hữu hạn các phần tử có cùng kiểu dữ liệu Các phần tử trong mảng có cùng chung một tên và phân biệt nhau bởi chỉ số

- Để mô tả mảng một chiều cần xác định

đợc kiểu của các phần tử và cách đánh số các phần tử của nó

2 Hoạt động 2: Tạo kiểu mảng một chiều và khai báo biến mảng

a Mục tiêu:

- Học sinh biết đợc cách tạo kiểu dữ liệu mảng một chiều trong ngôn ngữ lập trình Pascal, biết cách khai báo biến và tham chiếu đến từng phần tử của mảng

b Nội dung:

- tạo kiểu dữ liệu mảng một chiều:

TYPE tên_kiểu_mảng = Array[kiểu_chỉ_số] Of kiểu_thành_phần;

+ Kiểu_chỉ_số: Thờng là một đoạn số nguyên(hoặc là một đoạn kí tự) xác định chỉ số đầu

và chỉ số cuối của mảng

+ Kiểu_thành_phần: Là kiểu dữ liệu chung của mọi phần tử trong mảng

- Khai báo biến mảng một chiều: VAR tên_biến:tên_kiểu_mảng;

- Tham chiếu đến từng phần tử: Tên_biến [chỉ số]

c Các bớc tiến hành:

1 Yêu cầu học sinh nghiên cứu sách giáo

khoa và hco biết cách tạo kiểu dữ liệu mảng

một chiều trong ngôn ngữ lập trình Pascal

- Tìm một ví dụ để minh họa

- Gọi học sinh khác, Hỏi: ý nghĩa của lệnh

- Ví dụ: Type mmc=array[1 100] of integer;

- Tạo mọt kiểu dữ liệu mới có tên mmc, gồm 100 phần tử, có kiểu nguyên

- Quan sát bảng và hcọn khai báo đúng Arrayr=array[1 200] of real;

Arrayb=array[-100 0] of boolean;

Trang 34

Arrayr=array[1 200] of real;

Arrayr=array[byte] of real;

Arrayb=array[-100 0] of boolean;

- Hỏi: Những khai báo nào đúng?

2 Yêu cầu học sinh cho biết cách khai bóa

biến và một ví dụ khai báo một biến mảng

ứng với kiểu dữ liệu vừa tạo

- Gọi học sinh khác, hỏi: ý nghĩa của lệnh

3 Giới thiệu cách tham chiếu đến từng

phần tử của mảng một chiều Yêu cầu học

sinh lấy một ví dụ

2 Tham khảo sách giáo khoa và trả lời VAR tên_biến:tên_km;

- Ví dụ : Var a:mmc;

- Khai báo một biến mảng một chiều

- a đã chiếm 200 byte trong bộ nhớ

3 Theo dõi hớng dẫn của giáo viên và độc lập suy nghĩ để trả lời

1 Giới thiệu đề bài

- Chiếu đề bài lên bảng

- Yêu cầu học sinh xác định dữ liệu vào,

dữ liệu ra

- Hỏi: Nếu không sử dụng biến mảng một

chiều, ta có thể giải quyết đợc bài toán

không? Khó khăn gì không?

2 Định hớng: Sử dụng kiểu mảng một chiều

để giải quyết bài toán

- Yêu cầu học sinh khai báo kiểu mảng

- Yêu cầu học sinh khia báo biến mảng

- Yêu cầu học sinh tìm các nhiệm vụ

chính cần giải quyết

3 Chia lớp thành 3 nhóm Yêu cầu viết

chơng trình lên giấy bìa trong

- Thu phiếu trả lời, chiếu lên bảng Gọi

học sinh nhóm khác nhận xét đánh giá

4 Chuẩn hóa chơng trình cho học sinh

1 Quan sát đề bài, theo dõi những yêu cầu cần giải quyết của dề bài

- Vào: 7 số là giá trị nhiệt độ của 7 ngày trong tuần

- Ra: Số ntb là nhiệt độ trung bình trong tuần và số nch là số ngày có nhiệt độ cao hơn nhiệt độ trung bình

- Đợc

- Chơng tình dài dòng, khó sửa đổi

2 Theo dõi sự hớng dẫn của giáo viên Type tuan=array[1 7] of real;

Var ndtuan : tuan;

- Nhập giá trị cho mảng a

- Tính trung bình cộng giá trị của mảng

- Đếm số phần tử có giá trị lớn hơn trungbình cộng có đợc

3 Thảo luận theo nhóm để viết chơng trình

- Báo cáo kết quả viết đợc

- Nhận xét, đánh giá và bổ sung những thiếu sót của nhóm khác

4 Quan sát và ghi nhớ

IV Đánh giá cuối bài

1 Những nội dung đã học

- Cách tạo kiểu mảng một chiều và cách khia báo biến

TYPE tên_kiểu_mảng= Array[kiểu_chỉ_số] Of kiểu_thành_phần;

Trang 35

VAR tên_biến:tên_kiểu_mảng;

- Tham chiếu đến từng phần tử: Tên_biến[chỉ số]

2 Câu hỏi và bài tập về nhà

- Viết chơng trình nhập vào một mảng gồm n số nguyên( 1<=n<=100), mỗi số có giá trị tuyệt đối không uqá 300 Tính tổng giá trị các phần tử có giá trị chia hết cho k

- trả lời các câu hỏi 1_4, làm bài tập 5, 6, 7, sách giáo khoa, trang 79

- Đọc trớc nội dung về kiểu mảng hai chiều, sách giáo khoa trang 59

Kiểu mảng (tiết 2/2)

I mục tiêu

1 Kiến thức

- Biết đợc một kiểu dữ liệu mới là kiểu mảng hia chiều

- Biết đợc cách tạo kiểu mảng hai chiều, cách khai báo biến, tham chiếu đến từng phần tửcủa mảng

2 Kĩ năng

- Tạo đợc kiểu mảng hai chiều và khai báo biến mảng hai chiều trongngôn ngữ lập trình Pascal Sử dụng đúng biến mảng để giải quyết một số bài toán cụ thể

II Đồ dùng dạy học

1 Chuẩn bị của giáo viên

- Máy vi tính, máy chiếu Projector, sách giáo khoa, máy chiếu Overhead, phiếu học tập

2 Chuẩn bị của học sinh

- Sách giáo khoa

III Hoạt động dạy – học

1 Hoạt động : Tìm hiểu ý nghĩa của kiểu mảng hai chiều

- Khái niệm : Mảng hai chiều là một bảng các phần tử có cùng kiểu dữ liệu

- Hầu hết các ngôn ngữ lập trình đều có quy tắc cho phép xác định tên kiểu mảng hai chiều, số lợng phần tử của mỗi chiều, kiểu dữ liệu của từng phần tử, cách khai báo một biến mảng và cách tham gia chiếu đến từng phần tử của mảng

b Các bớc tiến hành:

1 Giới thiệu ví dụ trong sách giáo khoa

Tính và đa ra màn hình bảng cửu chơng

- Hỏi: Sử dụng kiến thức về mảng một

chiều, hãy đa ra cách sử dụng kiểu mảng đó

để lu trữ bảng cu chơng

- Với cách lu trữ nh vậy ta phải khai báo

bao nhiêu biến mảng?

1 Chú ý theo dõi yêu cầu và dẫn dắt của giáo viên

- Sử dụng 9 mảng một chiêu, một mảng lu một hàng của bảng

- Khai báo 9 mảng một chiều

Trang 36

- Có những khó khăn gì?

- Để khắc phục các khó khăn này, ta xem

một bảng một chiều là một phần tử, ta ghép 9

mảng một chiều thành một mảng hai chiều

- Yêu cầu học sinh nhận xét về mảng hai

chiều

2 Các yếu tố xác định mảng hai chiều

- Hỏi: Để mô tả kiểu mảng hai chiều, ta

2 Các yếu tố để xây dựng mảng hai chiều:

- Tên kiểu mảng

- Số phần tử trên một dòng, số phần tử trên một cột

- Kiểu dữ liệu chung của mọi phần tử

2 Hoạt động 2: Tìm hiểu về kiểu mảng hai chiều

a Mục tiêu:

- Học sinh biết cách tạo kiểu dữ liệu mảng hai chiều, biết khai bóa biến mảng trong ngôn ngữ lập trình Pascal, biết tham chiếu đến từng phần tử của mảng

b Nội dung:

- Tạo kiểu dữ liệu mảng hai chiều:

TYPE tên_kiểu_mảng=Array[chỉ_số_dòng,chỉ_số_cột] Of kiểu_thanh_phần;

- Khai báo biến mảng hai chiều: VAR tên_biên:tên_kiểu_mảng;

- Tham chiếu đến từng phần tử: Tên_biến[chỉ_số_dòng,chỉ_số_cột]

c Các bớc tiến hành:

1 Yêu cầu học sinh nghiên cứu sách giáo

khoa và cho biết cách tạo kiểu dữ liệu mảng

2 Yêu cầu học sinh cho biết cách khai báo

biến và một ví dụ khia bóa một biến mảng

hai chiều ứng với kiểu dữ liệu vừa tạo

3 giới thiệu cách tham chiếu đến từng

phần tử của mảng một hciều Yêu cầu học

sinh lấy một ví dụ

1 Tham khảo sách giáo khoa và trả lời

- TYPE tên_kmhc=Array[csd,csc] Of kiểu_thành_phần;

- Ví dụ: Type mhc=array[1 10,1 5] of integer;

- Lệnh trên dùng để tạo một kiểu mảng hai chiều có tên là mhc gồm 10 dòng và 5 cột, các phần tử có kiểu dữ liệu là integer

2 Tham khảo sách giáo khoa và trả lời

a[i,j] là phần tử ở dòng số i, cột số j của mảng a

3 Hoạt đông 3: Rèn luyện kĩ năng sử dụng kiểu mảng hai chiều

1 giới thiệu đề bài

- Chiếu đề bài lên bảng 1 Quan sát đề bài, theo dõi những yêu cầu cần giải quyết của đề bài

Trang 37

- Yêu cầu học sinh xác định cách thức tổ

chức dữ liệu

- Yêu cầu học sinh chỉ ra các nhiệm vụ

chính của bào toán cần giải quyết

2 Chia lớp thành 3 nhóm Yêu cầu viết

ch-ơng trình lên giấy bìa trong

- Thu phiếu trả lời, chiếu lên bảng Gọi học

sinh nhóm khác nhận xét đánh giá

3 Chuẩn hóa chơng trình cho học sinh

bằng cách chiếu chơng trình mẫu để học sinh

quan sát và thực hiện chơng trình để học

sinh thấy kết quả

4 Chiếu chơng trình ví dụ 2, sách giáo

khoa, trang 62 để học sinh quan sát

- Thực hiện chơng trình để học sinh thấy

đ-ợc kết quả của nó

- Giáo viên cần giải thích một số chỗ có

thể học sinh cha hiểu và yêu cầu học sinh về

nhà tìm hiểu thêm

- Dùng một mảng hai chiều

- Điền giá trị cho[i,j]=i*j

- Xuất giá trị a[i,j] theo từng dòng

2 Thảo luận theo nhóm để viết chơng trình

- Báo cáo kết quả khi hoàn thành

- Nhận xét, đánh giá và bổ sung những thiếu sót của các nhóm khác

3 ghi nhớ nội dung đã đợc chỉnh sửa

4 Quan sát chơng trình và chú ý giải thích của giáo viên

- Đặt ra một số câu hỏi thắc mắc

IV Đánh giá cuối bài

1 Những nội dung đã học

- Tạo kiểu dữ liệu mảng hai chiều:

TYPE tên_kiểu_mảng=Array[kiểu_chỉ_số_dòng, kiểu_chỉ_số_cột] Of kiểu_thành_phần;

- Khai báo kiểu mảng một chiều: VAR tên_biến:tên_kiểu_mảng;

- Tham chiếu đến từng phần tử: Tên_biến[chỉ_số_dòng, chỉ_số_cột]

2 Câu hỏi và bài tập về nhà

- Làm các bài tập số 8, 9, sách giáo khoa trang 79, 80

- Xem trớc nội dung của bài thực hành 3, sách giáo khoa, trang 63

+ Khai báo kiểu dữ liệu mảng một chiều

+ Nhập/xuất dữ liệu cho mảng

+ Duyệt qua tất cả các phần tử của mảng để xử lí từng phần tử

- Biết giải một số bài toán cơ bản thờng gặp:

+ Tính tổng các phần tử thỏa mãn điều kiện nào đó

+ Đếm số các phần tử thỏa mãn điều kiện nào đó

1 Chuẩn bị của giáo viên

- Phòng máy tính, máy chiếu Projector để minh họa

Trang 38

2 Chuẩn bị của học sinh.

- Sách giáo khoa

III hoạt động dạy - học

1 Hoạt động 1: Tìm hiểu cách sử dụng lệnh và kiểu dữ liệu mảng một chiều qua chơng trình

có sẵn

a Mục tiêu:

- Học sinh hiểu đợc chơng trình có sẵn ở câu a, biết đợc kết quả chạy chơng trình này, từ

đó tìm ra cách giải quyết câu b

For i:=1 to n do a[i]:=random(300) – random(300);

For i:=1 to n do Write(A[i]:5);

if a[i] mod k=0 then s:=s+a[i];

Write(‘tong can tinh la’,s);

If a[i] >0 then Posi:=posi+1

Else if a[i] <0 then neg:=neg+1;

Write(pói:4,neg:4);

c Các bớc tiến hành:

1 tìm hiẻu chơng tình ở câu a, sách giáo

khoa, trang 63 và chạy thử chơng trình

- Chiếu chơng trình lên bảng

- Hỏi: Khai báo Uses CRT; có ý nghĩa gì?

- Hỏi: Myarray là tên kiểu dữ liệu hay tên

- Lệnh khai báo kiểu và khai báo biến

- Quan sát chơng trình thực hiện và kết quả trên màn hình

Trang 39

a[i]:=random(300) – random(300) có ý nghĩa

- Thực hiện lại chơng trình lần cuối để học

sinh thấy kết quả

If a[i] >0 then posi:=posi+1

else if a[i] <0 then neg:=neg+1;

- Yêu cầu học sinh thêm vào vị trí cần thiết

để chơng trình đếm đợc số

- Yêu cầu học gõ nội dung và lu lại với tên

caub.pas thực hiện chơng trình và báo cáo

- Cộng các phần tử chia hết cho k

- Có số lần đúng bằng số phần tử a[i] chia hết k

- Quan sát giáo viên thực hiện chơng trình

và kết quả trên màn hình

2 Quan sát và chú ý theo dõi các câu hỏi của giáo viên:

- Quan sát các lệnh và suy nghĩ vị trí cần sửa trong chơng trình câu a

- Dùng để lu số lợng đếm đợc

- Đếm số dơng hoặc đếm số âm

- Chỉ ra vị trí cần thêm vào trong chơng trình

- Lu chơng trình Thực hiện chơng trình và thông báo kết quả

IV Đánh giá cuối bài

1 Những nội dung đã học

Một số thuật toán cơ bản:

+ Tìm tổng các phần tử thỏa mãn điều kiện nào đó

+ Đếm số các phần tử thỏa mãn điều kiện nào đó

+ Khai báo kiểu dữ liệu mảng một chiều

+ Nhập/xuất dữ liệu cho mảng

+ Duyệt qua tất cả các phần tử của mảng để xử lí từng phần tử

- Biết giải một số bài toán cơ bản thờng gặp:

+ Tính tổng các phần tử thỏa mãn điều kiện nào đó

+ Đếm số các phần tử thỏa mãn điều kiện nào đó

+ Tìm phần tử lớn nhất, nhỏ nhất

3 Thái độ

Trang 40

- Góp phần rèn luyện tác phong, t duy lập trình: Tự giác, tích cực, chủ độngvà sáng tạo trong tìm kiếm kiến thức.

II Đồ dùng dạy học

1 Chuẩn bị của giáo viên

- Phòng máy tính, máy chiếu Projector để minh họa

2 Chuẩn bị của học sinh

c Các bớc tiến hành:

1 láy một ví dụ thực tiễn: Ngời mù tìm viên

sỏi có kích thớc lớn nhất trong một dãy các

viên sỏi để gợi ý cho học sinh thuật toán tìm

- Hỏi: Nếu muốn tìm phần tử lớn nhất với

chỉ số lớn nhất ta sửa ở chỗ nào?

3 Đặt yêu cầu mới: Viết chơng trình đa ra

các chỉ số của các phần tử có giá trị lớn nhất

- Hỏi: Cần giữ lại đoạn chơng trình tìm giá

- Yêu cầu học sinh nhập dữ liệu vào của

giáo viên và báo kết quả

- Đánh giá kết quả của học sinh

1 Theo dõi vị trí của giáo viên

- So sánh lần lợt từ trái sang phải, giữ lại chỉ số của phần tử lớn nhất

2 Quan sát chơng trình, suy nghĩ và trả lời

- Giữ lại chỉ số của phần tử có giá trị lớn nhất

- Sau khi tìm đợc giá trị lớn nhất

- Soạn chơng trìnhvào máy Thực hiện

+ Tìm tổng các phần tử thỏa mãn điều kiện nào đó

+ Đếm số các phần tử thỏa mãn điều kiện nào đó

+ Tìm phần tử lớn nhất, nhỏ nhất

2 Câu hỏi và bìa tập về nhà

- Viết chơng trình nhập một mảng một chiều A[1 20] và nhập một số x Đếm số lợng số trong A có giá trị bằng x

Ngày đăng: 13/07/2014, 10:00

HÌNH ẢNH LIÊN QUAN

Bảng chữ cái. - Chọn bộ giáo án tin 11 - Bộ 2
Bảng ch ữ cái (Trang 4)

TỪ KHÓA LIÊN QUAN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

w