1. Trang chủ
  2. » Ngoại Ngữ

Giáo án giảng dạy môn Tin học 11 - Bài tập và thực hành 06

10 38 0

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

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 10
Dung lượng 226,62 KB

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

Nội dung

TRƯỜNG PTTH ĐẠI AN CHƯƠNG6:CHƯƠNGTRÌNHCONVÀLẬPTRÌNHCÓCẤUTRÚC Mở rộng cho học sinh về nhà chuẩn hoá chương trình với nội dung như sau: Cho tệp dữ liệu TAMGIAC.DAT có cấu trúc như sau: -Dò[r]

Trang 1

TRƯỜNG PTTH ĐẠI AN CHƯƠNG6:CHƯƠNGTRÌNHCONVÀLẬPTRÌNHCÓCẤUTRÚC

BÀI TẬP VÀ THỰC HÀNH 06 I.Mục đích yêu cầu

-Về kiến thức:

-Nhằm giúp cho học sinh củng cố lại kiến thức của bài xâu

-Tìm hiểu các thao tác xử lí xâu, cách tạo hiệu ứng chạy chữ trên màn hình

-Về kỹ năng:

-Nâng cao kỹ năng viết và sử dụng chương trình con

-Về thái độ:

-Rèn luyện cho học sinh phẩm chất của người lập trình như tinh thần hợp tác, làm việc theo nhóm, tuân thủ các yêu cầu của một công việc chung

-Tiếp tục xây dựng lòng ham muốn trong lập trình để giải quyết các bài toán bằng máy tính

-Tự giác, chủ động, tích cực trong giải quyết các bài tập và xây dựng phẩm chất cần thiết của người lập trình

II.Chuẩn bị của GV và HS:

+ Giáo viên:

-Giáo án, SGK

-Phòng máy có cài sẵn chương trình Pascal để dạy

-Máy chiếu (Projector) để chiếu một số chương trình đã cài đặt

+ Học sinh:

-Xem bài trước khi thực hành

-SGK, các dụng cụ học tập

III Phương pháp:

-Diễn giảng

-Phát vấn

-Giải quyết vấn đề

-Trực quan

IV Tiến trình lên lớp:

1 Ổn định lớp: Kiểm tra sỉ số, ghi sổ đầu bài

2 Kiểm tra bài cũ:

-HS1: VCT nhập vào hai số nguyên Hoán vị hai số? Yêu cầu sử dụng thủ tục để hoán vị hai số -HS2: VCT tìm số nhỏ nhất của 4 số nguyên được nhập từ bàn phím? Sử dụng hàm VCT

Hướng dẫn(trả lời):

HS1:

Program VIDU2;

Uses crt;

Var a,b:integer;

Procedure HD(var x,y:integer);

Var TG: Integer;

Begin

TG:=a;a:=b;b:=TG;

End;

Begin

Clrscr;

Write(‘A=’);Readln(A);

Write(‘B=’);Readln(B);

HD(a,b);

Writeln(a:6,b:6);

End.

HS2:

Program Minbaso;

Uses crt;

Var a,b,c,d:real;

Function Min(a,b:Real):Real;

Begin

If a<b then min:=a

End;

Begin

Clrscr;

Write(‘ Nhap A,B,C,D=‘);

readln(a,b,c,d);

Writeln(‘Min la’,Min(Min(Min(a,b),c),d));

Readln;

Trang 2

TRƯỜNG PTTH ĐẠI AN CHƯƠNG6:CHƯƠNGTRÌNHCONVÀLẬPTRÌNHCÓCẤUTRÚC

3 Bài mới:

Hoạt động 1: Tìm hiểu hai thủ thục cắt dán Catdan(s1,s2) và thủ tục căn giữa

Cangiua(s):

1 Tìm hiểu hai thủ thục cắt dán

Catdan(s1,s2) và thủ tục căn giữa Cangiua(s):

Giúp cho HS hiểu được hai

thủ tục sẽ được dùng trong

chương trình

Gọi HS đọc câu a thủ tục

catdan() trong sách giáo

khoa trang 103

Thủ tục trên nhận vào là gì

và kết quả là gì?

Chiếu thủ thục cho HS xem

Type ST=string[79];

Procedure catdan(s1:ST;

var s2:ST);

Begin

S2:=copy(s1,2,length(s1)-1)+s1[1];

End;

Vào xâu S1 là một xâu không quá 79 kí tự

Ra xâu S2 thu được từ xâu S1 bằng việc chuyển kí tự đầu tiên của nó xuống vị trí cuối của xâu

VD: s1=’abcd’ thì s2=’bcda’;

Procedure catdan(s1:ST; var s2:ST);

Begin S2:=copy(s1,2,length(s1)-1)+s1[1];

End;

Gọi HS đọc câu a thủ tục

cangiua() trong sách giáo

khoa

Thủ tục căn giữa đầu vào là

gì? Đầu ra là gì?

Trên màn hình người ta

chia ra 25x80 (25 dòng, 80

cột)

Chiếu thủ tục cho HS xem

Vào là xâu s gồm không quá 79

kí tự

Ra xâu kí tự s ban đầu được căn giữa dòng(80 kí tự) với 1 kí tự trống ‘ ’

Var i,n: integer;

Begin n:=length(s);

n:=(80-n) div 2; {80 chia 2}

for i:=1 to n do s:=’ ‘+s;

End;

Hoạt động 2: Theo dõi cách viết và sử dụng các thủ tục trên:

Trang 3

TRƯỜNG PTTH ĐẠI AN CHƯƠNG6:CHƯƠNGTRÌNHCONVÀLẬPTRÌNHCÓCẤUTRÚC

2.Sử dụng 2 thủ tục trên ta viết chương trình nhâp vào một xâu

từ bàn phím và đưa ra màn hình

có dạng dòng chữ chạy giữa màn hình văn bản 25x80

Chiếu chương trình lên cho

học sinh xem

Yêu cầu HS giải thích từng

câu lệnh trong chương

trình

Giải thích cho học sinh các

thủ tục:

Gotoxy(x,y): chuyển con

trỏ màn hình đến vị trí cột

x, dòng y trên màn hình

delay(n) dừng trạng thái

của màn hình trong n

miligiây

Keypressed: chờ nhận một

phím bất kì từ bàn phím

Chạy chương trình trên với

dòng chữ:

‘ Mung nghin nam Thang Long

– Ha Noi !

Quan sát chương trình

Program Caub;

Uses crt;

Type ST=string[79];

Var s1,s2:ST;

Stop:boolean;

Type ST=string[79];

Procedure catdan(s1:ST; var s2:ST);

Begin S2:=copy(s1,2,length(s1)-1)+s1[1];

End;

Procedure cangiua(var s:ST);

Var I,n: Integer;

Begin n:=length(s);

n:=(80-n) div 2;

for i:=1 to n do s:=’ ‘+s;

End;

Begin Clrscr;

Write(‘ nhap s1’);

Readln(s1);

Cangiua(s1);

Clrscr;

Stop:=false;

While not(stop) do Begin

Gotoxy(1,12);write(s1);

Delay(500);

Catdan(s1,s2);

S1:=s2;

Stop:=keypressed;

End;

Readln;

End

4 Củng cố:

Trang 4

TRƯỜNG PTTH ĐẠI AN CHƯƠNG6:CHƯƠNGTRÌNHCONVÀLẬPTRÌNHCÓCẤUTRÚC

vào xâu S2 tại vị trí cuối cùng

-Căn giữa: đưa con trỏ về tại vị trí giữa màn

hình 20 dòng 80 cột (25x80)

Cách viết và sử dụng chương trình:

-Nhập chương trình

-Hai thủ tục Gotoxy(x,y); delay(n);

-Chạy chương trình

Gotoxy(x,y): chuyển con trỏ màn hình đến vị trí

cột x, dòng y trên màn hình

delay(n) dừng trạng thái của màn hình trong n

miligiây

5 Dặn dò:

Về nhà học bài và làm các bài tập sau:

1 Viết thủ tục tìm UCLN của hai số nguyên dương a,b

2 Viết thủ tục nhập của bảng số nguyên có 4 dòng 5 cột

3 Viết thủ tục In ra màn hình bảng số nguyên bài 2

Xem tiếp câu C Viết chương trình có sử dụng thủ tục chạy chữ.

Tiết sau thực hành trên máy

Trang 5

TRƯỜNG PTTH ĐẠI AN CHƯƠNG6:CHƯƠNGTRèNHCONVÀLẬPTRèNHCểCẤUTRÚC

===========================================================

10/12/2007

BÀI TẬP VÀ THỰC HÀNH 07 I.Mục đích yêu cầu:

A.Về kiến thức:

 Tiếp tục củng cố cho học sinh lại kiến thức đó học về chương trỡnh con như: khỏi niệm

chương trỡnh con và phõn loại chương trỡnh con là Hàm và thủ tục

 Cấu trỳc của chương trỡnh con, tham số hỡnh thức, tham số thực sự và cỏch gọi chương

trỡnh con, Biến toàn cục, biến cục bộ………

 Yờu cầu học sinh nhắc lại tham số thực sự, biến cục bộ, biến toàn cục, tham số giỏ trị,

tham số biến

 Cho học sinh làm một số bài tập đơn giản, trắc nghiệm khỏch quan

B.Về kỹ năng:

 Rốn luyện cho học sinh kĩ năng lập trỡnh, vận dụng cõu lệnh cú cấu trỳc để giải quyết bài

toỏn

 Học sinh cần ỏp dụng cỏc hàm và thủ tục đó học để giải một số bài toỏn đơn giản

C.Về thái độ:

 Tiếp tục rốn luyện cho học sinh phẩm chất của người lập trỡnh như tinh thần hợp tỏc, làm

việc theo nhúm, tuõn thủ cỏc yờu cầu của một cụng việc chung

 Tiếp tục xõy dựng lũng ham muốn trong lập trỡnh để giải quyết cỏc bài toỏn bằng mỏy

tớnh

 Học sinh tự giỏc, chủ động, tớch cực trong giải quyết cỏc bài tập và xõy dựng phẩm chất

cần thiết của người lập trỡnh

 Học sinh tự rốn luyện cỏc kĩ năng cơ bản trong việc tổ chức và sử dụng chương trỡnh con

trong lập trỡnh một cỏch cú hiệu quả

II.Chuẩn bị của thầy và trò:

1.Chuẩn bị của thầy:

 Giáo án, SGK

 Một số đồ dùng dạy học có liên quan đến bài dạy

 Sử dụng bảng, (nếu có máy chiếu thì tốt)

2.Chuẩn bị của trò:

 Xem bài trước khi đến lớp

 Một số dụng cụ học tập

3.Phương pháp

 Diễn giảng

 Thuyết trỡnh và phỏt vấn

 Giải quyết vấn đề

 Trực quan

III.Hoạt động:

1 Ổn định lớp: Kiểm tra sỉ số, ghi sổ đầu bài (1’)

2 Kiểm tra bài cũ:

 HS1: Viết thủ tục ở cõu 1 trong bài thực hành 06?

 HS2: Viết thủ tục ở cõu 2 trong bài thực hành 06?

Hướng dẫn(tró lời):

HS1:

Procedure cau1(a,b:integer;var I:integer);

Var du: Integer;

Begin Du:=a mod b;

A:=b; b:=du;

Trang 6

TRƯỜNG PTTH ĐẠI AN CHƯƠNG6:CHƯƠNGTRÌNHCONVÀLẬPTRÌNHCÓCẤUTRÚC

HS2:

Type AA=array[1 4,1 5] of Integer;

Procedure cau2(Var a:AA);

Var I,j : byte;

Begin

For I:=1 to 4 do

For j:=1 to 5 do

Begin

Write(‘ Nhap’);readln(A[I,j]);

End;

End;

Trang 7

TRƯỜNG PTTH ĐẠI AN CHƯƠNG6:CHƯƠNGTRÌNHCONVÀLẬPTRÌNHCÓCẤUTRÚC

Đặt vấn đề:

Củng cố lại kiến thức đã học ở phần hàm và thủ tục học sinh nắm được chức năng của

hai thủ tục catdan() và canhgiua() Biết được ý nghĩa của các tham số trong từng chương trình

con

 Giúp cho HS hiểu được

các hàm và thủ tục sẽ được

dùng trong chương trình

 Gọi HS đọc câu a và

viết các hàm và thủ tục

trong sách giáo khoa trang

105

 Ta xây dựng các hàm

và thủ tục sau:

HS: Theo dõi sự hướng dẫn của

GV về nhà viết các hàm và thủ tục trong SGK

HS: Tìm hiểu các hàm và thủ tục thực hiện tính độ dài các cạnh, chu vi, diện tích, kiểm tra các tính chất đều, cân, vuông của tam giác được trình bày dưới đây

Câu a:

Type diem=record X,y:real;

End;

Tamgiac=record A,B,C:diem;

End;

 Thủ tục nhận dữ liệu

vào là biến mô tả tam giác

R và dữ liệu ra là độ dài

của 3 cạnh a,b,c

Procedure daicanh(var r:

Tamgiac; var a,b,c: real);

Procedure daicanh ( Var r:Tamgiac; var a,b,c: real);

Begin A:=kh_canh(R.B,R.C);

B:=kh_canh(R.A,R.C);

C:=kh_canh(R.B,R.A);

End;

Procedure daicanh ( Var r:Tamgiac; var a,b,c: real);

Begin A:=kh_canh(R.B,R.C);

B:=kh_canh(R.A,R.C);

C:=kh_canh(R.B,R.A);

End;

 Hàm tính chu vi của

tam giác R

Function Chuvi ( Var R:

tamgiac) : Real;

Function Chuvi( Var R:

tamgiac):Real;

Var a,b,c: real;

Begin Daicanh(R,a,b,c);

Chuvi:=a+b+c;

End;

Function Chuvi( Var R:

tamgiac):Real;

Var a,b,c: real;

Begin Daicanh(R,a,b,c);

Chuvi:=a+b+c;

End;

 Hàm tính diện tích của

tam giác R

Function dientich ( Var R:

tamgiac) : Real;

Function dientich ( Var R : tamgiac) : Real;

Var a,b,c,p: real;

Begin Daicanh(R,a,b,c);

P:=(a+b+c)/2;

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

End;

Function dientich ( Var R : tamgiac) : Real;

Var a,b,c,p: real;

Begin Daicanh(R,a,b,c);

P:=(a+b+c)/2;

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

End;

 Thủ tục nhận đầu vào

là biến mô tả tam giác R và

đầu ra tính chất của tam

giác (deu hay can hay

vuong);

Procedure tinhchat( var R:

deu,can,vuong:boolean);

Procedure tinhchat( var R:

deu,can,vuong:boolean);

Var a,b,c:real;

Begin Deu:=false;can:=false;

Vuong:=false;

Daicanh(R,a,b,c);

If (abs(a-b)<eps) and (abs(a-c)

<eps) then deu:=true Else

If (abs(a-b)<eps) or (abs(a-c)

<eps) or (abs(b-c)<eps) then can:=true;

Procedure tinhchat( var R:

deu,can,vuong:boolean);

Var a,b,c:real;

Begin Deu:=false;can:=false;

Vuong:=false;

Daicanh(R,a,b,c);

If (abs(a-b)<eps) and (abs(a-c)

<eps) then deu:=true Else

If (abs(a-b)<eps) or (abs(a-c)

<eps) or (abs(b-c)<eps) then can:=true;

Trang 8

TRƯỜNG PTTH ĐẠI AN CHƯƠNG6:CHƯƠNGTRÌNHCONVÀLẬPTRÌNHCÓCẤUTRÚC

(abs(b*b+c*c-a*a)<eps) then vuong:=true;

End;

End;

(abs(b*b+c*c-a*a)<eps) then vuong:=true;

End;

End;

 Thủ tục hiện thị toạ độ

3 đỉnh tam giác lên màn

hình

Procedure hienthi ( var :

R:tamgiac);

Procedure hienthi(var:

R:tamgiac);

Begin Writeln(‘toa do 3 dinh’);

Writeln(‘A’,R.A.X,R.A.Y);

Writeln(‘B’,R.B.X,R.B.Y);

Writeln(‘C’,R.C.X,R.C.Y);

End;

Procedure hienthi(var:

R:tamgiac);

Begin Writeln(‘toa do 3 dinh’);

Writeln(‘A’,R.A.X,R.A.Y);

Writeln(‘B’,R.B.X,R.B.Y);

Writeln(‘C’,R.C.X,R.C.Y);

End;

 Hàm tích khoảng cách

giữa 2 điểm p,q

Function

Kh_cach(p,q:diem):real;

Function Kh_cach(p,q:diem):real;

Begin Kh_cach:=sqrt((p.x+q.x)*((p.y+

q.y)*((p.c+q.c));

End;

Function Kh_cach(p,q:diem):real;

Begin Kh_cach:=sqrt((p.x+q.x)*((p.y+

q.y)*((p.c+q.c));

End;

Câu b

GV: Tìm hiểu chương trình

nhập vào độ dài 3 cạnh tam

giác và sử dụng các hàm và

thủ tục được xây dựng trên

để khảo sát tính chất của

tam giác

GV: Gọi HS giải thích

nhiệm vụ từng chương

trình con và cho biết chức

năng

HS: Theo dõi sự hướng dẫn của

GV

Uses crt;

Const eps=1.0E-6;

Type diem=record X,y:real;

End;

Tamgiac=record A,B,C:diem;

End;

Var T: tamgiac;

Cau,deu,vuong:boolean;

Function Kh_cach(p,q:diem):real;

Begin Kh_cach:=sqrt((p.x+q.x)*((p.y+

q.y)*((p.c+q.c));

End;

Procedure daicanh ( Var r:Tamgiac; var a,b,c: real);

Begin A:=kh_canh(R.B,R.C);

B:=kh_canh(R.A,R.C);

C:=kh_canh(R.B,R.A);

End;

Function Chuvi( Var R:

tamgiac):Real;

Var a,b,c: real;

Begin Daicanh(R,a,b,c);

Chuvi:=a+b+c;

End;

Function dientich ( Var R : tamgiac) : Real;

Var a,b,c,p: real;

Begin

Trang 9

TRƯỜNG PTTH ĐẠI AN CHƯƠNG6:CHƯƠNGTRÌNHCONVÀLẬPTRÌNHCÓCẤUTRÚC

Daicanh(R,a,b,c);

P:=(a+b+c)/2;

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

End;

Procedure hienthi(var:

R:tamgiac);

Begin Writeln(‘toa do 3 dinh’);

Writeln(‘A’,R.A.X,R.A.Y);

Writeln(‘B’,R.B.X,R.B.Y);

Writeln(‘C’,R.C.X,R.C.Y);

End;

Procedure tinhchat( var R:

deu,can,vuong:boolean);

Var a,b,c:real;

Begin Deu:=false;can:=false;

Vuong:=false;

Daicanh(R,a,b,c);

If (abs(a-b)<eps) and (abs(a-c)

<eps) then deu:=true Else

If (abs(a-b)<eps) or (abs(a-c)

<eps) or (abs(b-c)<eps) then can:=true;

If (abs(a*a+b*b-c*c)<eps) or (abs(a*a+c*c-b*b)<eps) or (abs(b*b+c*c-a*a)<eps) then vuong:=true;

End;

End;

BEGIN Writeln(‘ nhap tam giac’);

Writeln(‘A’);readln(T.A.X,T.A

Y);

Writeln(‘B’);readln(T.B.X,T.B

Y);

Writeln(‘C’);readln(T.C.X,T.C

Y);

Writeln(‘============’);

Hienthi(t);

Writeln(‘DienTich’,dientich(T);

Writeln(‘Chu vi’,chuvi(T);

Tinhchat(T,deu,cau,vuong);

Writeln(‘ Tam giac co tinh ’);

If deu then writeln(‘deu’) Else

If can then writeln(‘Can’);

If vuong then writeln(‘vuong’);

Trang 10

TRƯỜNG PTTH ĐẠI AN CHƯƠNG6:CHƯƠNGTRÌNHCONVÀLẬPTRÌNHCÓCẤUTRÚC

Mở rộng cho học sinh về

nhà chuẩn hoá chương

trình với nội dung như sau:

Cho tệp dữ liệu

TAMGIAC.DAT có cấu

trúc như sau:

-Dòng đầu tiên chứa số N

-N dòng tiếp theo mỗi dòng

chứa các số thực

Xa,Ya,Xb,Yb,Xc,Yc là độ

dài 3 đỉnh tam giác

A(Xa,Ya),B(Xb,Yb),

C(Xc,Yc) của tam giác

ABC

Hãy nhập dữ liệu từ tệp đã

cho và trong số N tam giác

đó, đưa ra tệp

TAMGIAC.OUT gồm 3

dòng

-Dòng đầu tiên là số lượng

tam giác đều

-Dòng thứ hai là số lượng

tam giác cân

-Dòng thứ ba là số lượng

tam giác Vuông

HS: Theo dõi sự hướng dẫn của

GV suy nghĩ về nhà làm bài tập

4 CỦNG CỐ

 Củng cố kiến thức đã học đối với chương trình con (hàm và thủ tục)

 Rèn luyện kĩ năng lập trình của học sinh

 Củng cố lại vai trò chức năng của hàm và thủ tục Cách gọi chương trình con

 Nâng cao kĩ năng viết và sử dụng chương trình con khi giải bài tập

5 DẶN DÒ:

 Về nhà học bài và làm các bài tập sau:

1 Cho tệp dữ liệu TAMGIAC.DAT có cấu trúc như sau:

-Dòng đầu tiên chứa số N

-N dòng tiếp theo mỗi dòng chứa các số thực Xa,Ya,Xb,Yb,Xc,Yc là độ dài 3 đỉnh tam

giác A(Xa,Ya),B(Xb,Yb), C(Xc,Yc) của tam giác ABC

Hãy nhập dữ liệu từ tệp đã cho và trong số N tam giác đó, đưa ra tệp TAMGIAC.OUT

gồm 3 dòng

-Dòng đầu tiên là số lượng tam giác đều

-Dòng thứ hai là số lượng tam giác cân

-Dòng thứ ba là số lượng tam giác Vuông

2 Viết hàm tính giá trị của đa thức f(x)=x10+x9+…….x2+x+1 Với x là số thực

3 Cho dãy 100 số thực Hãy viết hàm tìm số lớn nhất (số nhỏ nhất) của dãy

Xem trước bài THƯ VIỆN CHƯƠNG TRÌNH CON CHUẨN.

============================

Ngày đăng: 01/04/2021, 23:48

TỪ KHÓA LIÊN QUAN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

🧩 Sản phẩm bạn có thể quan tâm

w