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

SKKN MÔN TIN HỌC CỰC HÓT 2017

15 258 0

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

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

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 15
Dung lượng 160 KB

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

Nội dung

Trong thời đại thông tin bùng nổ ngày nay, việc lập được các chương trình tự hoạt động cho máy tính, máy gia dụng là cần thiết. Và để làm được việc đó cần có một quá trình nghiên cứu, học tập về ngôn ngữ lập trình lâu dài, qua đó nhà lập trình có thể chọn một ngôn ngữ lập trình thích hợp. Tuy nhiên mọi thứ đều có điểm khởi đầu của nó, với học sinh việc học Pascal là khởi đầu cho việc tiếp cận ngôn ngữ lập trình bậc cao, qua đó giúp các em hình dung được sự ra đời, cấu tạo, hoạt động cũng như ích lợi của các chương trình hoạt động trong máy tính, các máy tự động... Qua đó giúp các em có thêm một định hướng, một niềm đam mê về tin học, về nghề nghiệp mà các em chọn sau này. Đồng thời Pascal là một ngôn ngữ có cấu trúc thể hiện trên 3 yếu tố: Cấu trúc về mặt dữ liệu, cấu trúc về mặt câu lệnh, cấu trúc về mặt chương trình.

Trang 1

PHẦN 1 ĐẶT VẤN ĐỀ:

1 Lý do chọn đề tài:

Hiện nay nước ta cũng như các nước trên thế giới đang cạnh tranh về ngành công nghệ chế tạo máy cũng như các sản phẩm phần mềm giúp ích cho con người trên mọi lĩnh vực Vậy làm thế nào để làm được điều đó? - Chính là nhờ vào ngành công nghệ thông tin Ngày xa xưa con người không biết đọc, không biết viết đó là một nỗi khổ vô cùng, còn ngày nay con người không biết sử dụng máy vi tính thì coi như là không biết đọc, không biết viết Vậy khi biết sử dụng máy vi tính rồi chúng ta sẽ làm gì hay chỉ ngồi chơi điện tử, các trò giải trí, soạn thảo các bài văn bản mà thôi?

Là một giáo viên Tin học một trong các mục tiêu khi đưa tin học vào trường học là nhằm giúp học sinh không chỉ biết soạn thảo mà còn phải có khả năng phân tích, tổng hợp, trừu tượng hoá, khái quát hoá vấn đề và đặc biệt là phát triển tư duy, sáng tạo Những năm qua môn Tin học ở THCS chưa có sách giáo khoa cụ thể hướng dẫn cho học sinh về cách phân tích lập trình Vì vậy học sinh chưa có tính độc lập sáng tạo mà phải nhờ vào giáo viên rất nhiều Những năm nay đã có sách giáo khoa hướng dẫn cho học sinh cụ thể quy trình lập trình như thế nào Vì thế mà tôi sẽ hướng cho học sinh lớp 8 cách để trở thành một nhà lập trình thì cần phải nắm các bước cơ bản nào?

Trong thời đại thông tin bùng nổ ngày nay, việc lập được các chương trình tự hoạt động cho máy tính, máy gia dụng là cần thiết Và để làm được việc đó cần có một quá trình nghiên cứu, học tập về ngôn ngữ lập trình lâu dài, qua đó nhà lập trình có thể chọn một ngôn ngữ lập trình thích hợp Tuy nhiên mọi thứ đều có điểm khởi đầu của nó, với học sinh việc học Pascal là khởi đầu cho việc tiếp cận ngôn ngữ lập trình bậc cao, qua đó giúp các em hình dung được sự ra đời, cấu tạo, hoạt động cũng như ích lợi của các chương trình hoạt động trong máy tính, các máy tự động Qua đó giúp các em có thêm một định hướng, một niềm đam mê về tin học,

về nghề nghiệp mà các em chọn sau này Đồng thời Pascal là một ngôn ngữ có cấu trúc thể hiện trên 3 yếu tố: Cấu trúc về mặt dữ liệu, cấu trúc về mặt câu lệnh, cấu trúc về mặt chương trình

Xuất phát từ cơ sở trên, tôi đã chọn đề tài “Các bước giải một bài toán trên máy vi tính” sử dụng ngôn ngữ lập trình Pascal, giúp các em nắm được cấu trúc

của chương trình và ngôn ngữ lập trình (Lập trình đơn giản của phần I - SGK tin học 8)

2 Mục đích:

Sử dụng các ví dụ cụ thể để học sinh nắm được các bước giải bài toán Và thông qua các ví dụ đó hướng dẫn học sinh chuyển đổi qua lại giữa cách giải bài toán trên giấy và trên máy vi tính

Trang 2

3 Nhiệm vụ:

Đưa ra vấn đề: Lập trình đơn giản của phần I SGK tin học 8, để học sinh thảo luận qua đó nắm vững cấu trúc chung của chương trình Và hình thành ở học sinh kỷ năng phân tích, xử lý các vấn đề liên quan đến các bài toán trong quá trình lập trình các chương trình đơn giản sau này

4 Đối tượng nghiên cứu:

- Học sinh khối 8 trường THCS Mã Thành

- Học sinh khối 8 trường THCS Lăng Thành

5 Phương pháp nghiên cứu:

- Kết hợp thực tiễn giáo dục ở trường THCS Mã Thành và THCS Lăng Thành

- Có tham khảo các tài liệu về ngôn ngữ lập trình Pascal và tài liệu về sáng kiến kinh nghiệm

Trang 3

PHẦN II NỘI DUNG:

1 Cơ sở lý luận và thực tiễn:

1.1 Đổi mới phương pháp dạy học Tin Học 8 có hiệu quả:

- Vận dụng linh hoạt, sáng tạo các phương pháp dạy học theo cách phát huy yếu

tố tích cực và những ưu điểm của phương pháp dạy học truyền thống và phương pháp dạy học hiện đại nhằm tăng cường tính tích cực của học sinh trong tiếp nhận kiến thức, hình thành kĩ năng sử dụng máy tính, phần mềm máy tính và mạng máy tính phục vụ học tập và bước đầu vận dụng vào cuộc sống Từ đó, giáo viên tạo điều kiện tối ưu để học sinh bồi dưỡng kĩ năng tự học

- Vận dụng linh hoạt, sáng tạo các hình thức tổ chức học tập kết hợp giữa học tập cá thể với học tập hợp tác; giữa hình thức học cá nhân với hình thức học theo nhóm

- Giáo viên có thể chủ động sáng tạo thiết kế giờ học căn cứ vào mục tiêu cụ thể của bài học, không gò bó theo một qui trình cứng nhắc những bước đi bắt buộc

- Tăng cường kiểm tra đánh giá bằng nhiều hình thức khác nhau theo chuẩn kiến thức kĩ năng, coi kiểm tra đánh gái như là một biện pháp kích thích hứng thú học tập

1.2 Một số phương pháp đặc thù trong dạy học môn Tin học 8:

- Phương pháp dạy và học hiện nay đang có xu hướng thay đổi một cách tích cực Phương pháp mới hướng tới lấy học sinh làm trung tâm, học sinh không còn đóng vai trò tiếp thu một cách thụ động những kiến thức do giáo viên truyền đạt Giáo viên trở thành người hướng dẫn, giúp đỡ học sinh Học sinh hướng tới việc học tập chủ động, biết tự thích nghi Kiến thức được cá nhân học sinh tự tìm tòi, phát hiện một cách tích cực dưới sự hướng dẫn của giáo viên Ngoài ra, cách tổ chức học theo nhóm làm tăng thêm khả năng cộng tác, khả năng làm việc tập thể Tin học là môn học có nhiều điều kiện thuận lợi để thực hiện các phương pháp dạy

và học mới này

- Cũng như những môn học khác, việc dạy học Tin học cần được thực hiện trong hoạt động và bằng hoạt động tự giác, tích cực, chủ động và sáng tạo của học sinh Khi cần dạy một nội dung Tin học cho học sinh, người giáo viên phải biết phân tích nội dung đó liên quan đến những hoạt động nào Và một số hoạt động trong đó lại được phân tích thành những hoạt động thành phần Rồi căn cứ vào mục tiêu tiết học, trình độ học sinh, trang thiết bị hiện có mà lựa chọn cho học sinh tập luyện và thực hiện một số những hoạt động tiềm tàng trong nội dung cần dạy

- Để học sinh có ý thức về ý nghĩa của những hoạt động, cần tạo động cơ học tập cho học sinh, để học sinh học bằng sự hứng thú thực sự, nó được nảy sinh từ việc ý thức sâu sắc ý nghĩa nội dung bài học, học bằng tất cả tính tích cực, độc lập

và trách nhiệm cao nhất của học sinh

Trang 4

- Cần phải đặt học sinh vào tình huống có vấn đề để hướng đích cho học sinh Phải tập luyện cho học sinh những hoạt động ăn khớp với tri thức phương pháp Phải phân bậc hoạt động để tuần tự nâng cao yêu cầu khi tình huống dạy học cho phép hoặc hạ thấp yêu cầu khi học sinh gặp khó khăn Hệ thống bài tập được phân bậc để học sinh luyện tập tại lớp hoặc làm ở nhà

2 Nội dung, biện pháp thực hiện các giải pháp của đề tài:

2.1 Thực trạng chất lượng học sinh ban đầu:

Trước khi thực hiện đề tài, tôi đã khảo sát khối lớp 8 trường THCS Mã Thành và trường THCS Lăng Thành thông qua giờ dạy lý thuyết, dạy thực hành, thông qua kiểm tra bài cũ Khi tổng hợp kết quả thu được:

a Trường THCS Mã Thành

b Trường THCS Lăng Thành

2.2 Biện pháp thực hiện:

Phương pháp cơ bản giải các bài toán trong tin học không chỉ dùng để giải một bài toán cụ thể mà còn giải nhiều các bài toán cụ thể thuộc cùng một loại Bài toán được cấu tạo từ hai yếu tố cơ bản: Thông tin vào (Input) và thông tin ra (Output) Phương pháp tổng quát để giải một bài toán bằng máy vi tính dựa trên ngôn ngữ pascal cần các bước :

1 Xác định bài toán

2 Tìm thuật toán

3 Viết chương trình

4 Chạy thử, sửa đổi chương trình

2.2.1 Xác định bài toán.

2.2.1.1 Khái niệm bài toán.

Trong quá trình học người học sinh hay bất kỳ một cá nhân nào luôn phải liên tục giải quyết các bài toán Trong cuộc sống là 1 chuỗi các bài toán mà ta phải đối đầu giải quyết không một chút đơn giản mà nhiều lúc phải bức mình Song đối với học sinh lớp 8 do chương trình học toán của các lớp chỉ mới đến giải phương trình bậc nhất là cao nhất Nên việc đưa các lớp bài toán vào giải cho các em đang còn một phần nào bị hạn chế Nhưng bất kỳ một bài toán nào thì chúng ta cũng đọc đề rồi xác định nó : A->B

Trang 5

Trong đó:

- A là giải thiết : điều kiện ban đầu hoặc cái đã cho khi bắt đầu giải bài toán

- B là kết luận: Mục tiêu cần đạt được hay cái phải tìm, phải làm ra khi kết thúc bài toán

- -> Là suy luận: Giải pháp cần xác định hay một chuổi thao tác thực hiện từ A đến B

2.2.1.2 Bài toán trên máy vi tính:

Bài toán trên máy cũng mang đầy đủ các tính chất của bài toán tổng quát trên,

như-ng nó lại được diễn đạt theo một cách khác

- A: là đưa thông tin vào (Input )

- B: là đưa thông tin ra( Output)

→ : là chương trình tạo từ các lệnh cơ bản của máy tính cho phép biến đổi từ A đến B

2.2.1.3 Một số ví dụ

Ví dụ 1: Tính diện tích hình chữ nhật.

Ta cần xác định cho bài toán:

+ Thông tin vào: Chiều dài là cạnh a, chiều rộng là cạnh b

+ Thông tin ra: Kết quả diện tích khi đưa a,b vào

+ Các thông tin cần chế biến như:

- Lần lượt đưa a,b vào ( cho a=3,b=4)

- Áp dụng công thức tính diện tích hình chữ nhật: a*b

- Kết quả in ra là 12

Ví dụ 2: Cho 2 số tự nhiên a, b Tìm ước số chung lớn nhất của chúng.

Các bước xác định bài toán:

+ Xác định thông tin vào: hai số tự nhiên a,b

+ Xác định thông tin ra: số tự nhiên d thoả mãn:

d là ước của a và d là ước của b

d là số lớn nhất trong tập các ước chung của a, b + Các thông tin cần chế biến như:

Xây dựng hữu hạn các thao tác cho phép tính được d từ a và b

Nhập a =16 b= 24 -> d =8

Ví dụ 3: Tìm tất cả các số nguyên tố trong các số nguyên N được nhập vào từ bàn phím:

Trang 6

+ Xác định thông tin vào:Nhập số nguyên N

+ Xácđịnh thông tin ra: Các số nguyên tố ( chia hết cho nó và số 1)

2.2.2 Tìm thuật toán.

Thuật toán là một quá trình gồm một dãy hữu hạn các thao tác đơn giản được sắp xếp theo một trình tự xác định sao cho theo đó từ Input của bài toán sẽ tìm ra được Output bài toán

Một bài toán ta có 4 cách thể hiện thuật toán: Các bước xác định bằng lời, lập sơ đồ khối, ngôn ngữ phỏng trình, dùng một ngôn ngữ lập trình (Pascal)

Ví dụ: Tìm ước số chung lớn nhất của 2 số nguyên dương a,b ta có thể giải bằng

các cách trên

a Cách 1: Các bước xác định bài toán bằng lời:

- Bước 1: Nhập 2 số nguyên dương là a,b

- Bước 2: So sánh giá trị a và b Nếu a bằng b thì sang bước 3, ngược lại a khác b thì sang bước 4

- Bước 3: Tìm được ước số chung là a và kết thúc chương trình

- Bước 4: Nếu a lớn hơn b thì ước số chung lớn nhất là a và quay trở lại bước 2 Ngược lại ước số chung là b và quay trở lại bước 2

b Cách 2: Dùng ngôn ngữ mô phỏng

Bắt đầu

Nhập a, b

While a khác b

IF a>b then thay a :=a -b Else thay b:=b-a;

Kết thúc in ra USCLN (a,b)

c Cách 3: Viết chương trình hoàn chỉnh (dùng ngôn ngữ pascal)

Program USCLN;

Var a,b: integer;

Begin

Write('nhap gia tri a =');Readln(a);

Write('nhap gia tri b =');Readln(b);

While a<>b Do

If a>b Then a:=a - b

else b:=b-a;

Trang 7

Writeln('uoc so chung lon nhat cua 2 so a va b la',a:);

Readln

END.

2.2.3 Viết chương trình.

Lập trình là dùng ngôn ngữ máy vi tính cụ thể (ngôn ngữ Pascal) để diễn tả thuật toán, cấu trúc dữ liệu thành câu lệnh để máy tính có thể thực hiện được và giải quyết đúng bài toán mà người lập trình mong muốn

2.2.3.1 Kỹ năng lập trình

- Rèn luyện được cho học sinh kỹ năng cài đặt thành công các thuật toán bằng một ngôn ngữ lập trình

- Đã gọi là kỹ năng thì chỉ có thể có được thông qua rèn luyện tích cực

- Kinh nghiệm cho thấy một thuật toán do cài đặt vụng về, lộn xộn thì khi chạy trên máy tính có thể cho kết quả tồi tệ hoặc là không thể chạy được

2.2.3.2 Phát triển chương trình bằng cách tinh chế từng bước

Một bài toán ta có thể đưa ra nhiều cách giải khác nhau, song là một giáo viên thì chúng ta cần giúp học sinh viết chương trình làm sao người xem nhìn vào

có thể dễ hiểu được bài toán đó là gì? Do đó việc tinh chỉnh các bước cho bài toán trong máy tính là phương pháp khoa học, có hệ thống giúp ta phân tích các thuật toán và cấu trúc dữ liệu từ đó thành một chương trình Muốn lập trình giỏi không phải chỉ cần nắm ngôn ngữ lập trình là đủ Mà vấn đề cốt yếu là biết phương pháp phát triển dần dần để chuyển các ý tưởng ra thành chương trình hoàn chỉnh

2.2.3.3 Phương pháp tinh chế từng bước

Một chương trình bắt đầu được viết bằng lời tự nhiên (tiếng việt) thể hiện sự phân tích tổng thể của người lập trình được thể hiện ở từng bước sau các câu lệnh được phân tích chi tiết hơn, bằng những lời khác nhau tương ứng với sự phân tích công việc thành các việc nhỏ chi tiết hơn dễ hiểu và chính xác hơn Song ngôn ngữ lập trình pascal người lập trình có thể đưa ra phương pháp tinh chỉnh từng bước là thể hiện tư duy giải quyết vấn đề bài toán từ trên xuống trong đó các bước là hướng về ngôn ngữ lập trình làm sao cho bài toán đưa ra được phương pháp lập trình tối ưu, sáng sửa

2.2.3.4 Ví dụ:

Tìm tất cả các số nguyên tố trong các số nguyên N được nhập vào từ bàn phím

a Tính lần 1

- Lấy 2 tập

NT= [ ] (để chứa các số nguyên tố tìm được)

S = [2, N] (tập các số cần xét )

Trang 8

- Tìm số đầu tiên trong S đưa vào NT

- Loại bỏ khỏi S các bội số của số nguyên tố vừa tìm được

- Số đầu tiên còn lại của S là số nguyên tố Tiếp tục quá trình cho đến khi S=[]

- Xuất NT

b Tính lần 2

Bắt đầu

NT: = [ ]

S = [2, N]

Repeat

Tìm số đầu tiên trong S

NT:= NT+ [S0]

Loại khỏi S các bội số của S0

Until S=[ ];

Xuất NT;

Kết thúc;

c Tính lấn 3 (chương trình hoàn chỉnh)

Program nguyen_to;

Var N,S: Integer;

Begin

Write(‘Nhap vao mot so nguyen to:’); Readln(N);

If N <= 1 then Writeln (N,’ khong la so nguyen to!’)

Else

Begin

S:=2;

While (N mod S <> 0 ) do S:= S +1;

If S = N then Writeln (N,’ la so nguyen to!’)

Else

Writeln (N,’ khong phai la so nguyen to!’)

End;

Readln

End

Trang 9

Vậy đó là kỹ năng lập trình người lập trình có thể tinh chỉnh chương trình từng bước làm sao đưa ra một phương án tối ưu cho người xem dễ tiếp thu cũng như chiếm bộ nhớ của máy tính càng ít các tốt

2.2.4 Chạy thử, thay đổi, kiểm tra chương trình.

2.2.4.1 Chạy thử

Một chương trình đã viết xong chưa chắc đã chạy được trên máy vi tính để cho kết quả mong muốn

Ví dụ: Tìm số lớn nhất trong 3 số a,b,c nguyên dương được nhập vào từ bàn phím.

Lần 1: Program tim_so;

var

a,b,c: integer;

begin

write('nhap 3 so a, b, c=');readln(a,b,c);

if a<b then a:=b

else if a<c then a:=c;

write('so lon nhat la ',a);

readln

End

Với chương trình này cũng chạy được song đáp số có lúc đúng, có lúc sai tuỳ thuộc vào lúc nhập giá trị a,b,c{ nếu ta nhập thứ tự a=5,b=7,c=9

Thì sẽ cho ta kết quả số lớn nhất là 7 Vậy thì sai hoàn toàn}

Do đó người lập trình cần phải biết cách tìm lỗi Sữa lỗi, điều chỉnh viết lại chương trình cũng là kỹ năng quan trọng của người lập trình Vậy với ví dụ trên để kết quả luôn đúng thì ta có thể viết lại chương trình

Lần 2: Program tim_so;

var

a,b,c,t:integer;

begin

write('nhap 3 so a, b, c=');readln(a,b,c);

t:=a;

if t<b then t:=b;

if t<c then t:=c;

Trang 10

write('so lon nhat la ',t);

readln

End

Nếu nhập:

2.2.4.2 Phân loại lỗi và cách sửa lỗi:

- Lỗi về thuật toán: Điều chỉnh lại thuật toán, thêm vị trí có thể, loại bỏ thuật toán

sai, tìm thuật toán khác nghĩa làm lại từ đầu

Ví dụ: viết chương trình tính tổng S=

n

1

3

1 2

1

1 + + + + (n được nhập vào từ bàn phím)

Học sinh viết chương trình khai báo biến S thuộc kiểu dữ liệu nguyên thì chương trình sẽ không thực hiện được phép toán tính tổng Do vậy để thực hiện được phép toán thì khai báo biến S là thuộc kiểu dữ liệu thực

- Lỗi về trình tự: Phải xem lại thuật toán, phân tích lại từ trên xuống dưới để đặt lại

cho đúng với thuật toán

Ví dụ:Viết chương trình giải phương trình bậc nhất ax+b=0 với a,b được

nhập vào từ bàn phím

program ptb1;

var

a,b:real;

begin

write('nhap cac he so=');readln(a,b);

if a<>0 then

writeln('moi so deu la nghiem');

else

if b=0 then writeln('phuong trinh co nghiem',-b/a)

else writeln('phuong trinh vo nghiem')

Ngày đăng: 11/11/2017, 06:11

TỪ KHÓA LIÊN QUAN

w