Tải bản đầy đủ - 0 (trang)
+ Tính chu vi hình tam giác: SABC = cạnh a + cạnh b + cạnh c. Khi đó ta chuyển sang biểu thức Pascal sẽ là: CV:=a+b+c; nên lưu ý học sinh khi viết xong cuối dòng công thức phải có dấu chấm phẩy;

+ Tính chu vi hình tam giác: SABC = cạnh a + cạnh b + cạnh c. Khi đó ta chuyển sang biểu thức Pascal sẽ là: CV:=a+b+c; nên lưu ý học sinh khi viết xong cuối dòng công thức phải có dấu chấm phẩy;

Tải bản đầy đủ - 0trang

Trường THCS Nguyễn Văn Xơ

Sáng kiến kinh nghiệm Tin học 8





Bên cạnh đó, cũng cần lưu ý học sinh cách đặt tên chương trình đúng quy

tắc, đảm bảo khơng sai cú pháp khi đặt tên chương trình, tên chương trình khơng

được trùng với các từ khóa: PROGRAM, BEGIN, USES, VAR, END,..., dùng

dấu gạch nối xen giữa nếu tên dài quá 8 ký tự và phải đảm bảo tên không dài quá

127 ký tự, tên chương trình phải được đặt bằng tiếng việt không dấu, không sử

dụng dấu cách;

Các biến ở phần khai báo phải đảm bảo phù hợp với bài toán và phù hợp với

kiểu dữ liệu cần nhập.

+ Cú pháp khai báo tên thư viện: ; Ví dụ

khai báo thư viện Crt, Graph... là: USES CRT,GRAPH;

+ Cú pháp khai báo tên hằng: ; Ví dụ khai

báo tên biến Pi khi tính diện tích hình tròn là: Const Pi=3.14;

+ Cú pháp khai báo biến: ; Ví dụ

khai báo các biến a, b khi thực hiện bài tốn tính tổng hai số tự nhiên a và b biết

rằng a, b là 2 ký tự được nhập vào từ bàn phím là các số nguyên: Var a,b:Integer;

+ Câu lệnh nhập dữ liệu vào từ bàn phím: Read();

hoặc Readln(); Ví dụ: Readln(CD,CR);

+ Câu lệnh cho phép xuất dữ liệu hoặc kết quả ra màn hình, câu lệnh này

thường sử dụng khá nhiều trong thực tế: Write(); hoặc

Writeln(); Ví dụ xuất ra màn hình kết quả dòng chữ

WELCOME TO NGUYEN VAN XO SECONDARY SCHOOL ta có thể viết

như sau: Writeln(‘Welcome to Nguyen Van Xo Secondary School’);

+ Câu lệnh gán được dùng để tính tốn giá trị của biểu thức bên phải được

kết quả cuối cùng thì gán cho tên biến phía bên trái là: :=;

Ví dụ: S:=a+b; hoặc CV:=(a+b)*2; ,…

Các phép tốn số học, các hàm tính tốn cơ bản trong Pascal: Phép cộng (+),

phép trừ (-), phép nhân (*), phép chia (/), chia lấy phần nguyên (DIV), chia lấy





GV: Phan Nghĩa Bình Nam

12



Trường THCS Nguyễn Văn Xơ

Sáng kiến kinh nghiệm Tin học 8





phần dư (MOD), hàm tính giá trị tuyệt đối cho số thực hoặc số ngun ABS(x),

hàm tính bình phương cho số thực hoặc số nguyên SQR(x), hàm tính căn bậc hai

cho số thực hoặc số ngun SQRT(x), hàm tính lơgarít tự nhiên của x với x là số

thực LN(x), EXP(x), SIN(x), COS(x).

2. Cấu trúc câu lệnh điều kiện IF...THEN:

Trong Pascal để mô tả cấu trúc rẻ nhánh ta thường dùng câu lệnh IF...THEN

với hai trường hợp thiếu và đủ:

+ Trường hợp 1 câu lệnh cấu trúc rẻ nhánh dạng thiếu có cú pháp đầy đủ như

sau: IF <Điều kiện> THEN ; Nếu điều kiện có giá trị đúng thì câu

lệnh sau từ khóa then được thực hiện, nếu điều kiện có giá trị sai thì câu lệnh sau từ

khóa then sẽ không được thực hiện và bị bỏ qua. Ví dụ: IF A=10 THEN

WRITELN(‘BAI LAM CUA BAN RAT XUAT SAC’);

+ Trường hợp 2 câu lệnh cấu trúc rẻ nhánh dạng đầy đủ có cú pháp như sau:

IF <Điều kiện> THEN

ELSE ;

Nếu điều kiện cho giá trị đúng câu lệnh 1 sau từ khóa then được thực

hiện và bỏ qua câu lệnh 2, nếu điều kiện cho giá trị sai thì câu lệnh 2 sau từ khóa

Else được thực hiện và bỏ qua câu lệnh 1;

Ví dụ:

IF 9<3 THEN WRITELN(‘BAN NEN HOC BOI DUONG TOAN’)

ELSE WRITELN(‘BAN NEN HOC BOI DUONG TIN HOC’);

Giáo viên trong quá trình cho học sinh thực hành nên hết sức lưu ý học sinh

các quy tắc khi sử dụng các câu lệnh cấu trúc rẻ nhánh như dấu chấm phẩy được

đặt sau dòng lệnh của từ khóa Else, hoặc trong q trình sử dụng lệnh rẻ nhánh

cũng cần lưu ý có thể sử dụng câu lệnh ghép sau từ khóa Else thì phải đặt giữa hai

từ khóa BEGIN và END;

3. Cấu trúc câu lệnh lặp với số lần biết trước FOR...DO:





GV: Phan Nghĩa Bình Nam

13



Trường THCS Nguyễn Văn Xơ

Sáng kiến kinh nghiệm Tin học 8





Cũng cần lưu ý học sinh khi giảng dạy lý thuyết lẫn thực hành, câu lệnh lặp

với số lần biết trước lúc nào cũng có hai dạng là lệnh lặp dạng tiến và lệnh lặp

dạng lùi mà sách giáo khoa chưa đề cập đến;

Lặp dạng tiến:

FOR := TO DO ;

Ví dụ 1: Sắp xếp các lệnh sau đây thành một bài lập trình hồn chỉnh trong

Pascal để thực hiện hiển thị các số từ 1 2 3 4 5 mỗi số cách nhau 3 khoảng

trắng?

PROGRAM SAP_XEP;

USES CRT;

VAR i:INTEGER;

BEGIN

CLRSCR;

FOR i:=1 TO 5 DO WRITE(i:4);

READLN;

END.

Lặp dạng lùi (Dạng này dùng cho học sinh khá giỏi giới hạn SGK chưa đề

cập đến):

FOR := DOWNTO DO
lệnh>;

Đối với lệnh lặp dạng lùi áp dụng cho bài tập trên cần thực hiện cú pháp các

câu lệnh tương tự nhưng chỉ khác ở chỗ câu lệnh lùi có dạng cú pháp như sau:

FOR i:=5 DOWNTO 1 DO WRITE(i:4);

4. Cấu trúc câu lệnh lặp với số lần chưa biết trước:

Để thực hành tốt các dạng bài tập câu lệnh lặp với số lần chưa biết trước học

sinh cần thiết nắm vững kiến thức lý thuyết thông qua cú pháp:

While <Điều kiện> do ;





GV: Phan Nghĩa Bình Nam

14



Trường THCS Nguyễn Văn Xơ

Sáng kiến kinh nghiệm Tin học 8





Với cú pháp này câu lệnh có ý nghĩa nếu câu lệnh kiểm tra điều kiện đúng

thì sẽ thực hiện câu lệnh. Sau một vòng lặp chúng ta có thể thao tác tăng hoặc giảm

biến để cho điều kiện sẽ bị sai sau một số vòng lặp;

Ví dụ: Hãy lập vào chương trình nhập hai số nguyên dương n và x. Tính lũy

thừa Nx.







GV: Phan Nghĩa Bình Nam

15



Trường THCS Nguyễn Văn Xơ

Sáng kiến kinh nghiệm Tin học 8





Program Luy_thua;

Var x,n,Tich,Luythua:Integer;

Begin

Writeln(‘Nhap vao so nguyen duong N va X: ’); Readln(n,x);

Tich:=1;

Luythua:=1;

While Luythua<=n do

Begin

Tich:=Tich*x;

Luythua:=Luythua+1;

End;

Writeln(‘Ta co N luy thua x la: ’,Tich);

Readln;

End.

5. Cấu trúc dữ liệu kiểu mảng:

Đối với nội dung này, giáo viên cần cho học sinh hiểu rõ khái niệm kiểu

mảng, hiểu được cách khai báo các phần tử và cách truy cập đến các phần tử của

mảng, học sinh cần hiểu được cách cài đặt thuật toán một số bài đơn giản với dữ

liệu kiểu mảng, thực hiện việc khai báo mảng, truy cập, tính toán các phần tử của

mảng, học sinh cần hiểu rõ các thành phần khai báo dữ liệu kiểu mảng;

Để học sinh nắm được nội dung này tương đối khó khăn đối với trình độ học

sinh lớp 8, chính vì vậy ta vừa dạy cho học sinh loại mảng một chiều, vừa nâng cao

cho học sinh loại mảng hai chiều:

+ Khai báo mảng một chiều theo hai cách khác nhau, cách thứ nhất là ta khai

báo trực tiếp theo cú pháp sau:

Var : Array[m1..m2] of ;





GV: Phan Nghĩa Bình Nam

16



Trường THCS Nguyễn Văn Xơ

Sáng kiến kinh nghiệm Tin học 8





Trong đó: m1, m2 có cùng kiểu dữ liệu xác định phạm vi của chỉ số

m1<=m2;

Ví dụ:



VAR M:ARRAY[1..5] OF INTEGER;



+ Đối với cách thứ hai ta thực hiện khai báo gián tiếp theo hai bước với cú

pháp như sau:

Bước 1: Type =Array[m1..m2] of ;

Bước 2: Var :;

Ví dụ: Type M=Array[1..5] of Integer;

Var a:M;

Tùy theo yêu cầu từng bài tốn mà ta có thể sử dụng cách trực tiếp hay gián

tiếp, học sinh cần hiểu và đọc kỹ đề từng bài tốn.

Chương trình có thể được viết theo cách 1 có nội dung code như sau:

Program Nhietdo_Tuan;

Uses Crt;

Var t1,t2,t3,t4,t5,t6,t7:Real;

Dem:Byte

Begin

Clrscr;

Write(‘Nhap vao nhiet do cua 7 ngay: ’);

Readln(t1,t2,t3,t4,t5,t6,t7);

tb:=(t1+t2+t3+t4+t5+t6+t7)/7;

Dem:=0;

If t1>tb then Dem:=Dem+1;

If t2>tb then Dem:=Dem+1;

If t3>tb then Dem:=Dem+1;

If t4>tb then Dem:=Dem+1;

If t5>tb then Dem:=Dem+1;





GV: Phan Nghĩa Bình Nam

17



Trường THCS Nguyễn Văn Xơ

Sáng kiến kinh nghiệm Tin học 8





If t6>tb then Dem:=Dem+1;

If t7>tb then Dem:=Dem+1;

Writeln(‘Nhiet do trung binh tuan la: ’,tb:8:1);

Writeln(‘So ngay co nhiet do cao hon trung binh la: ’,dem);

Readln;

End.

Nếu viết theo cách thứ hai ta sẽ có đoạn code được viết như sau:

Program Nhietdo_Tuan;

Uses Crt;

Var A:Array[1..7] of Real;

Tong,tb:Real;

i,dem:byte;

Begin

Clrscr;

Tong:=0; dem:=0;

For i:=1 to 7 do

Begin

Writeln(‘Nhap nhiet do ngay thu’,i,’’);

Readln(A[i]);

Tong:=Tong+A[i];

End;

tb:=Tong/7;

Writeln(‘Nhiet do trung binh cua ca tuan la: ’,tb:8:1);

For i:=1 to 7 do

If A[i]>tb then dem:=dem+1;

Writeln(‘So ngay co nhiet do cao hon trung binh la: ’,dem);

Readln;





GV: Phan Nghĩa Bình Nam

18



Trường THCS Nguyễn Văn Xơ

Sáng kiến kinh nghiệm Tin học 8





End.

Nếu so sánh 2 cách viết ta có nhận xét như sau: Đối với cách thứ nhất phải

khai báo 30 biến đơn, sử dụng 30 lệnh if...then. Còn đối với cách thứ hai chỉ cần

khai báo một mảng gồm 30 phần tử, ta sử dụng lệnh For i:=1 to 30 do...

Như vậy một cách nhìn rõ ràng giáo viên hướng dẫn cho học sinh phân tích

bài toán khi sử dụng biến đơn cùng kiểu dữ liệu, thì việc sử dụng biến mảng sẽ

thuận lợi hơn rất nhiều trong việc thực hiện lập trình các bài tốn xử lý dãy số, học

sinh sẽ rút ngắn thời gian và cơng việc lập trình đỡ vất vả hơn khi xử lý các bài tập

thực hành;

Đối với phần mảng hai chiều dù trong chương trình khơng có nhưng giáo

viên cũng cần bổ sung cho các em đặc biệt là những học sinh giỏi bộ mơn và có

tính tư duy cao. Các hình thức đơn giản nhất của mảng đa chiều là mảng hai

chiều. Một mảng hai chiều, trong bản chất, một danh sách các mảng một chiều. Để

khai báo một mảng số nguyên hai chiều kích thước x, y, bạn sẽ viết một cái gì đó

như sau: Var ArrayName:Array[1..x,1..y] of element-type;

Trường hợp loại yếu tố có thể là bất kỳ kiểu dữ liệu hợp lệ Pascal

và ArrayName sẽ là một định danh Pascal hợp lệ. Một mảng hai chiều có thể được

hình dung như một bảng, trong đó sẽ có x số hàng và số y của cột. Như vậy, mỗi

phần tử trong mảng a được xác định bởi một tên phần tử có dạng a [i] [j], trong đó

một là tên của mảng, và i và j là những kí hiệu mà duy nhất xác định mỗi yếu tố

trong một;

Mảng nhiều chiều, như mảng một chiều, được khởi tạo bằng cách chuyển

nhượng thông qua, hoặc bằng cách xác định một subscript cụ thể hoặc sử dụng một

cho vòng lặp;

Bài tập: Viết chương trình nhập vào mảng 2 chiều C có n hàng, m cột. Xuất

ra những phần tử của mảng 2 chiều C thỏa điều kiện là những số chẳn.

Program Mang_2C;





GV: Phan Nghĩa Bình Nam

19



Trường THCS Nguyễn Văn Xơ

Sáng kiến kinh nghiệm Tin học 8





Uses Crt;

Type mang=Array[1..15,1..15] of integer;

Var c:mang;

m,n:byte;

i,j,k: Integer;

Begin

Clrscr;

Write('Nhap so hang n = '); Readln(n);

Write('Nhap so cot m = ');



Readln(m);



{nhap mang}

For i:=1 to n do

For j:=1 to m do

Begin

Write('C[',i,',',j,']=');

Readln(c[i,j]);

End;

{in matran}

For i:=1 to n do

Begin

For j:=1 to m do

If c[i,j]mod 2= 0 then Write(c[i,j]:6);

End;

Readln;

End. 





GV: Phan Nghĩa Bình Nam

20



Trường THCS Nguyễn Văn Xơ

Sáng kiến kinh nghiệm Tin học 8





Trong nội dung này giáo viên vận dụng để bồi dưỡng cho các em học sinh

giỏi bộ mơn, có ham thích học tập và nghiên cứu bộ môn;

Bên cạnh các kinh nghiệm tích lũy được, bản thân tơi còn nhận thấy cần vận

dụng nhiều phương pháp giúp cho tôi tập trung vào nghiên cứu đó là: phương pháp

điều tra, phương pháp quan sát, phương pháp phân tích, tổng hợp, phương pháp

thống kê để từ đó có biện pháp điều chỉnh chuyên môn giảng dạy cho phù hợp với

các đối tượng học sinh;

Rèn luyện kỹ năng lập trình đặc biệt là lập trình Pascal là một việc khơng

phải một sớm một chiều có thể nhanh chóng giỏi và giải quyết mọi bài tốn. Qua

nhiều năm kinh nghiệm giảng dạy bộ mơn Tin học, bản thân tôi thấy nếu muốn các

em học sinh giỏi về kỹ năng thực hành lập trình cần trang bị cho các em theo các

cách sau: Xem các code ví dụ (Look at the Example Code), đừng chỉ đọc các code

ví dụ – hãy chạy thử nó (Don’t just Read exam code – Run It), hãy viết mã riêng

của bạn càng sớm càng tốt (Write your own code as soon as possible), tìm hiểu

cách sử dụng một cơng cụ Debug (Learn to use a Debugger), Tìm kiếm thêm

những nguồn tài tài liệu khác (Seek our more sources);

* Khả năng áp dụng.

- Đề tài này có thể vận dụng cho tất cả học sinh mới bắt đầu làm quen ngôn

ngữ lập trình Pascal và cho cả việc bồi dưỡng học sinh giỏi và phụ đạo học yếu

kém trong phạm vi nhà trường.

* Lợi ích kinh tế - xã hội.

- Trong q trình giảng dạy năm học 2016 – 2017 tơi đã áp dụng sáng kiến

nêu trên, qua khảo sát thực tế của học sinh, tôi đã thấy chất lượng bộ môn đạt kết

quả cao hơn so với ban đầu. Các em học sinh rất thích thú và một số em ham mê

nghiên cứu học môn Tin học nhất là các tiết vào giờ thực hành. Rèn luyện cho học

sinh tính tư duy, tính sáng tạo trong q trình lập trình, các em tự giải quyết vấn đề

mà lâu nay còn vướn mắc chưa giải quyết được.





GV: Phan Nghĩa Bình Nam

21



Trường THCS Nguyễn Văn Xơ

Sáng kiến kinh nghiệm Tin học 8







PHẦN C. KẾT LUẬN VÀ KIẾN NGHỊ.

Để giải một bài toán trên máy tính thật sự khơng hề đơn giản dù cho chúng

ta biết nếu vận dụng phương pháp toán học thì việc xử lý khơng hề khó nhưng khi

chúng ta thực hiện u cầu trên máy tính bằng ngơn ngữ lập trình thì vạn điều khó.

Song song đó bản thân giáo viên phải trăn trở làm thế nào để giúp học sinh giải

quyết vấn đề một cách nhanh chóng hiệu quả đòi hỏi các em thật sự tập trung và

khơi dậy trong tinh thần các em niềm đam mê học tập;

Muốn được vậy giáo viên bộ môn Tin học cần trang bị dần dần cho các em

các kỹ năng trong các tiết thực hành, giúp các em hiểu cách xây dựng bài toán, mọ

tả thuật toán, đến việc viết chương trình, nhận biết các lỗi và sửa lỗi chương trình

để ngày ngày nâng cao khả năng đồng thời để góp phần nâng dần chất lượng dạy

và học tin ở các trường Trung học cơ sở;

Là một giáo viên tin học tơi muốn nói rằng chúng ta khơng chỉ dạy lý

thuyết suông mà cần phải rèn luyện cho học sinh các kỹ năng thực hành, khơi gợi

cảm giác dễ chịu mà khơng phải bị gò bó. Để từ đó học sinh mới nhận thấy được

ưu điểm của việc học chương trình này có lợi hơn ở điểm nào.

Tóm lại để giúp các em viết được một chương trình hồn chỉnh thỏa mãn

u cầu của bài tốn đặt ra trên máy tính thì học sinh phải có tư duy lơgic về thuật

tốn, khả năng sử dụng máy tính thành thạo, sử dụng các câu lệnh và khai báo kiểu

dữ liệu một cách hợp lý. Với tham vọng nâng cao chất lượng giảng dạy bộ môn

đặc biệt là môn Tin học lớp 8, hy vọng thời gian tới bộ môn Tin học ở đơn vị

chúng tôi đạt nhiều kết quả đáng kể, cũng như chất lượng giáo dục đào tạo huyện

nhà ngày càng phát triển hơn so với các quận huyện trong toàn thành phố;

Trên đây là một số biện pháp mà tôi đã áp dụng vào dạy Tin học khối 8.

Tuy đã được đúc kết từ kinh nghiệm giảng dạy thực tế. Nhưng trong q trình thực

hiện đề tài này sẽ khơng tránh khỏi những thiếu sót. Rất mong nhận được sự góp ý





GV: Phan Nghĩa Bình Nam

22



Tài liệu bạn tìm kiếm đã sẵn sàng tải về

+ Tính chu vi hình tam giác: SABC = cạnh a + cạnh b + cạnh c. Khi đó ta chuyển sang biểu thức Pascal sẽ là: CV:=a+b+c; nên lưu ý học sinh khi viết xong cuối dòng công thức phải có dấu chấm phẩy;

Tải bản đầy đủ ngay(0 tr)

×
x