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

SKKN một số ví dụ khơi gợi lòng đam mê, tích cực chủ động học lập trình bằng ngôn ngữ PASCAL đối với học sinh khối

39 42 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 39
Dung lượng 735,5 KB

Nội dung

MỤC LỤC 1 PHẦN MỞ ĐẦU 1.1 LÝ DO CHỌN ĐỀ TÀI 1.2 MỤC ĐÍCH NGHIÊN CỨU 1.3 ĐỐI TƯỢNG VÀ PHẠM VI NGHIÊN CỨU 1.4 PHƯƠNG PHÁP NGHIÊN CỨU PHẦN NỘI DUNG .4 2.1 CƠ SỞ LÝ LUẬN 2.2 THỰC TRẠNG VẤN ĐỀ .4 2.3 MỘT SỐ VÍ DỤ ỨNG DỤNG ĐƯỢC VIẾT BẰNG NGƠN NGỮ LẬP TRÌNH PASCAL .5 2.3.1 Một nhạc ngắn đồng hồ, tất nốt nhạc quảng trung [1] .6 2.3.3 Cho biết số ngày tháng năm [1] .10 11 2.3.5 Tạo nhà, tô màu ngơi nhà [2] .11 Khi nhấn phím ‘+’ đèn sáng Cửa sổ có màu vàng 12 2.3.6 Kiểm soát đường hậu bàn cờ vua [2] 13 Một bàn cờ vua hiển thị hình Nếu đặt hậu (hình tròn màu đỏ) vào ô cách nhập tên ô, chẳng hạn a5 ô bị hậu khống chế tô màu tím 13 Giáo viên đặt câu hỏi để gợi mở tương lai: ‘ Đây chương trình viết riêng dành cho hậu bàn cờ vua Liệu em lập trình bổ xung cho chương trình viết bị khống chế cờ lại bàn cờ?’ 14 2.3.7 Đồng hồ điện tử hoạt động hình [2] 15 15 2.3.9 Trò trơi caro [4] 19 2.4 HIỆU QUẢ ĐẠT ĐƯỢC 20 2.4.1 Kết sau áp dụng vào thực tế .20 2.4.2 Điều kiện để áp dụng sáng kiến .22 TÀI LIỆU THAM KHẢO 24 1 PHẦN MỞ ĐẦU 1.1 LÝ DO CHỌN ĐỀ TÀI Đổi phương pháp dạy học (PPDH) yêu cầu tất yếu nghiệp đổi giáo dục – đào tạo nước ta Đây vấn đề cấp bách khơng tồn ngành giáo dục quan tâm mà quan tâm đường lối lãnh đạo công tác giáo dục Đảng, ghi Nghị Trung ương (khoá VII) Nghị Trung ương (khoá VIII), Luật giáo dục Trong chương trình dạy Tin học bậc THPT, đặc biệt chương trình Tin học khối 11 khó cho Thầy Cơ giáo học sinh, phải làm để học sinh hiểu ngơn ngữ lập trình, để từ lựa chọn thiết kế thuật tốn Đối với học sinh phải làm quen với lối suy nghĩ logic với hoạt động máy tính, mà lại lối suy nghĩ hồn tồn khác với mơn học khác Bộ mơn Tin học THPT thường học sinh Lê Lai quan tâm, u thích khơng thuộc tổ hợp môn thi ĐH Nhất Tin học lớp 11, nội dung kiến thức cần nhiều tư sâu khả sáng tạo Mặt khác tin học 11 không tin học 10, 12 chương trình ứng dụng, dễ hiểu, dễ vận dụng, dễ hình dung Tin học 11 thường ứng dụng dễ thấy khó tiếp cận, khó gần gũi em học sinh Trong nhiều năm giảng dạy, thấy việc tạo hứng thú cho học sinh u thích mơn tin học việc làm cần thiết cần đầu tư Từng giáo viên trường miền xuôi điều động nhận công tác trường miền núi, cảm thấy khó khăn bất lực trước đối tượng học sinh Học sinh trường có khả tiếp thu kiến thức chậm, khả tư duy, tự nghiên cứu, tự học Đại đa số học sinh học mang tính chất phổ cập theo yêu cầu xã hội, không coi việc học tập quan trọng sống tương lai Từ thực tế thấy học sinh hào hứng với tiết học phương pháp dạy học mà tơi đưa vào Nhưng dừng lại đó, kiến thức trả lại cho cô sách sau ln Điều khiến tơi phiền lòng, trăn trở Do tơi hình thành ý nghĩ có cách khơi dậy lòng đam mê lập trình để em học sinh tự chủ động tìm đến với Tin học 11 Và tơi tìm giải pháp áp dụng vào thu kết khả quan Với sáng kiến kinh nghiệm “MỘT SỐ VÍ DỤ KHƠI GỢI LỊNG ĐAM MÊ, TÍCH CỰC CHỦ ĐỘNG HỌC LẬP TRÌNH BẰNG NGƠN NGỮ PASCAL ĐỐI VỚI HỌC SINH KHỐI 11” muốn gửi tới bạn đồng nghiệp chút kinh nghiệm thân để học sinh thực u thích mơn Tin học, tin học 11 1.2 MỤC ĐÍCH NGHIÊN CỨU - Nâng cao chất lượng dạy học môn Tin học trường phổ thông, đặc biệt dạy học lập trình Tin học lớp 11 - Góp phần đổi phương pháp dạy học trường phổ thơng nói chung mơn Tin học nói riêng - Góp phần khơi dậy lòng đam mê, u thích hứng thú học môn Tin học học sinh Đặc biệt giúp em nhìn thấy ứng dụng đơn giản, cụ thể, gần gũi, thiết thực lập trình mơi trường học tập thân 1.3 ĐỐI TƯỢNG VÀ PHẠM VI NGHIÊN CỨU - Học sinh khối 11 trường THPT Lê Lai học kì I năm học 2017-2018 - Học sinh khối 11 trường THPT Lê Lai học kì II năm học 2017-2018 1.4 PHƯƠNG PHÁP NGHIÊN CỨU - Dựa ứng dụng thực tiễn ngơn ngữ lập trình Pascal Nhất chương trình đồ họa, game viết ngơn ngữ lập trình Pascal Dựa sở lý thuyết Ngơn ngữ lập trình Pascal Sự hoạt động bước máy tính thực chương trình - Thu thập liệu thông qua việc hỏi học sinh mức độ biết, hiểu vận dụng ngôn ngữ lập trình Pascal vào giải tốn mơn học khác - Phân tích đánh giá mức độ học sinh hứng thú với môn học - Tổng kết rút kinh nghiệm PHẦN NỘI DUNG 2.1 CƠ SỞ LÝ LUẬN Tạo hứng thú cho người học vấn đề quan trọng hoạt động dạy - học Bởi vì, biết, dạy - học hoạt động phức tạp, chất lượng, hiệu phụ thuộc vào người học Và điều lại phụ thuộc vào nhiều yếu tố, như: lực nhận thức, động học tập, tâm ; phụ thuộc vào: mơi trường học tập, người tổ chức trình dạy học, hứng thú học tập Các nhà nghiên cứu tâm lý học cho rằng, hứng thú thái độ đặc biệt cá nhân đối tượng đó, có ý nghĩa sống có khả mang lại khoái cảm cá nhân trình hoạt động Sự hứng thú biểu trước hết tập trung ý cao độ, say mê chủ thể hoạt động Sự hứng thú gắn liền với tình cảm người Trong cơng việc gì, có hứng thú làm việc, người có cảm giác dễ chịu với hoạt động, làm nẩy sinh khát vọng hành động cách có sáng tạo Ngược lại, khơng có hứng thú, dù hoạt động khơng đem lại hiệu cao Đối với hoạt động nhận thức, sáng tạo, hoạt động học tập, khơng có hứng thú, kết khơng hết, chí xuất cảm xúc tiêu cực [4] Việc học có tính chất đối phó, miễn cưỡng, người học may tiếp thu lượng kiến thức ít, khơng sâu, khơng chất Vì dễ qn Khi có hứng thú, say mê nghiên cứu, học tập thì việc lĩnh hội tri thức trở nên dễ dàng hơn; ngược lại, nắm bắt vấn đề, tức hiểu người học lại có thêm hứng thú Trên thực tế, người khơng thích, khơng hứng thú học mơn học thường người khơng học tốt mơn học Chính vậy, việc tạo hứng thú cho người học xem yêu cầu bắt buộc làm công tác giảng dạy, môn khoa học 2.2 THỰC TRẠNG VẤN ĐỀ Đặc điểm mơn Mơn Tin học đến khơng mơn học mẻ học sinh phổ thông, học sinh làm quen cấp học Đây thuận lợi cho học sinh, học sinh học từ đầu để làm quen với môn học Sự liên quan môn Tin học với mơn học khác nhiều, học sinh phải vất vả để xem lại, tìm kiếm lại tri thức môn học khác Đặc biệt nội dung lập trình mơn học Tin học lại có liên quan nhiều đến kiến thức môn khoa học tự nhiên, liên quan nhiều đến tư Toán học Trong mục 2.1: Đoạn “các nhà nghiên cứu… cảm xúc tiêu cực” trích dẫn TLTK số 4 Nếu học sinh yếu tư Tốn học khó khăn lập trình Nếu học sinh có tư Tốn học không hứng thú với môn Tin học, học cho biết, học để đối phó, thường em khơng nghiên cứu kĩ học dẫn đến gặp phải số khó khăn lập trình Nếu học sinh yếu tư không hứng thú với môn học khó cho thầy Muốn giải việc giáo viên cần phải dẫn dắt học sinh tiếp cận với môn học cách tự nhiên, hào hứng thơng qua ví dụ thực tiễn liên quan đến vấn đề mà em u thích Giáo viên Nhiều giáo viên hạn chế trình độ, khả cập nhật thơng tin Khơng vậy, số giáo viên chưa hiểu rõ thuật tốn để diễn đạt việc dạy lập trình Đơi giáo viên thờ ơ, ln cảm thấy chán nản học sinh khơng có hứng thú học tập Chính điều làm cho giáo viên không trọng việc đổi phương pháp Dẫn đến học sinh khả tìm hiểu tư giải toán, hứng thú việc học lập trình Học sinh Khi bước vào học phổ thơng học sinh bắt đầu định hình học theo khối để thi đại học Thời gian học chủ yếu dành cho mơn học Tốn, Lý, Hóa, Văn, Anh Tin học môn phụ nên thời gian để học tiết học lớp Đối với Tin học 10, 12 tính ứng dụng môn học thực tế em dễ dàng nhìn thấy thực ln Còn với Tin học 11 thuộc lĩnh vực lập trình, khó có sản phẩm để em nhìn thấy Hơn việc tư thuật toán nội dung khó em Điều dẫn đến nhiều học sinh khơng thích học mơn học Từ thực tế muốn minh chứng thật rõ nét cho em thấy giải toán máy tính khơng khó, có đam mê, tích cực chủ động em mà thơi Từ em nhận việc học Tin học lập trình khơng q khó u thích mơn học 2.3 MỘT SỐ VÍ DỤ ỨNG DỤNG ĐƯỢC VIẾT BẰNG NGƠN NGỮ LẬP TRÌNH PASCAL Khi dạy tin 11 đầu giới thiệu tổng quan ngơn ngữ lập trình, giới thiệu số khái niệm lập trình Ở đầu học sinh cảm thấy đơn điệu nhàm chán Ở dạy luôn nhấn mạnh với em phải hiểu, nhớ thuộc lí thuyết vận dụng lập trình nội dung sau Cũng giống mơn Tốn, Lí, Hóa để làm tập em phải nhớ, hiểu cơng thức vận dụng để làm Quá trình dạy giáo viên cần truyền đạt tới em kiến thức ngôn ngữ lập trình Cách thức dẫn dắt vấn đề thật đơn giản gần gũi để em khơng có cảm giác sợ hãi, lo lắng Bước khởi đầu tiếp cận quan trọng Trong lúc học giáo viên nên lồng ghép câu “Tin học Toán, Lý Để viết chương trình em cần nhớ cú pháp, câu lệnh giống việc em làm tập cần nhớ công thức để vận dụng” Giáo viên lồng ghép ví dụ ứng dụng tiết dạy lí thuyết, tiết tập, hay tiết tập thực hành Từ em dễ thấy ứng dụng lập trình trình học hình thành đam mê, u thích mơn học Và để khẳng định với học sinh Tin học không môn học bắt buộc phải học mà bạn học tốt môn học lập trình chương trình ứng dụng vào thực tế số câu lệnh đơn giản Pascal 2.3.1 Một nhạc ngắn đồng hồ, tất nốt nhạc quảng trung [1] Khi giáo viên chạy chương trình Tất học sinh ngạc nhiên tỏ thích thú Học sinh u cầu chạy chương trình nhiều lần cho học sinh nghe Sau nhiều lần nghe, học sinh có yêu cầu cho xem phần code chương trình Học sinh thấy chương trình thật đơn giản Bắt đầu ý đến môn học Mục 2.3.1: trích dẫn TLTK số 2.3.2 Vẽ đường gấp khúc [1] Đây chương trình vẽ đường gấp khúc ngẫu nhiên nhờ thủ tục “ Lineto” đoạn có màu ngẫu nhiên.Vị trí bắt đầu vẽ tâm hình Kết thúc việc vẽ nhấn phím Khi chạy chương trình ta thu kết đường gấp khúc dài với hàng nghìn đoạn thẳng đủ màu nối đuôi làm cho học sinh chăm nhìn theo Thật thú vị Mục 2.3.2: trích dẫn TLTK số Mục 2.3.2: trích dẫn TLTK số 2.3.3 Cho biết số ngày tháng năm [1] Khi giáo viên đặt câu hỏi: “ em có biết tháng năm 1998 có ngày? “ Đại đa số học sinh lúng túng, số học sinh dơ tay lên đếm Và lúc học sinh tìm câu trả lời giáo viên đọc kết từ hình Học sinh thấy tò mò biết nhường Giáo viên chiếu chương trình ngơn ngữ Pascal cho học sinh thấy dễ dàng để có kết 2.3.4 Cho biết số ngày năm [1] Tương tự ví dụ 2.3.3 học sinh tò mò số ngày năm + Mục 2.3.3: trích dẫn TLTK số 10 PHỤ LỤC 1.Code chương trình trò chơi rắn săn mồi uses crt; const width = 80; //Console Screen: TurboPascal 80x25, FreePascal 120x30 height = 25; KeyList = ['a', 's', 'd', 'w', 'K', 'M', 'P', 'H']; // Cac phim bam hop le path = 'RANK-SNAKE-GAME.DAT'; type point = record // Toa diem tren man hinh (x, y) x, y: byte; end; player = record // Thong tin nguoi choi gom: ten va diem name: string[50]; score: word; end; var body: array[0 10000] of point; // Snake la mang point free: array[1 width,1 height] of boolean; // Diem (x, y) ma snake khong duoc di chuyen vao free[x,y]=false rank: array[1 11] of player; // Bang xep hang food: point; // Thuc an you: player; level, i, j, n: word; hasFence: boolean; newKey, key, move: char; fi, fo: text; f: file; procedure swap(var a, b: player); // Hoan vi player var t: player; begin t := a; a := b; b := t; end; procedure readData; // Doc du lieu tu file begin // Kiem tra neu file chua duoc tao thi tao file moi (Tranh bi loi doc du lieu) assign(f, path); {$I-} reset(f); if ioresult then rewrite(f); close(f); // Doc du lieu luu vao mang Rank assign(fi, path); reset(fi); for i:=1 to 10 begin 25 readln(fi, rank[i].name); readln(fi, rank[i].score); end; close(fi); end; procedure writeData; // Luu du lieu file su dung cho lan choi sau begin assign(fo, path); rewrite(fo); for i:=1 to 10 begin writeln(fo, rank[i].name); writeln(fo, rank[i].score); end; close(fo); end; procedure delayTime; // delay(x) la tam dung chuong trinh x mili giay begin case level of 1: delay(200); 2: delay(100); 3: delay(50); else delay(200); end; end; procedure writeMenuText; // In Menu man hinh begin clrscr; writeln; writeln('Xin chao ban den voi game Ran san moi !'); writeln; writeln(' [1] Choi ngay'); writeln(' [2] Cai dat'); writeln(' [3] Huong dan'); writeln(' [4] Gioi thieu'); writeln(' [5] Diem cao'); writeln(' [6] Thoat'); writeln; write('Chon: '); readln(key); end; procedure writeChooseLevel; // Chon muc begin clrscr; 26 writeln; writeln('Chon muc do: '); writeln; writeln(' [1] De'); writeln(' [2] Trung binh'); writeln(' [3] Kho'); writeln; writeln('An Enter neu muon quay lai Menu.'); writeln; write('Ban chon muc nao: '); readln(key); if key '' then level := ord(key) - 48 else level := 1; end; procedure writeInit; // Khoi tao truoc bat dau play begin clrscr; fillchar(free, sizeof(free), true); // Toan bo mang free dc khoi tao la true if hasFence then // Tao hang rao begin // Canh ben trai man hinh for i:=1 to height-1 begin writeln('#'); free[1,i]:=false; end; // Canh ben tren man hinh gotoxy(2,1); for i:=1 to width-1 begin write('#'); free[i, 1]:=false; end; // Canh ben duoi man hinh gotoxy(2,height-1); for i:=1 to width-1 begin write('#'); free[i, height-1]:=false; end; // Canh ben phai man hinh for i:=1 to height-1 begin gotoxy(width, i); write('#'); free[width, i]:=false; end; end else begin // Neu khong bat che hang rao thi chi tao canh ben duoi gotoxy(1,height-1); for i:=1 to width write('#'); end; 27 you.score:=0; // Khoi tao Snake body[1].x:=39; body[1].y:=11; body[2].x:=40; body[2].y:=11; body[3].x:=41; body[3].y:=11; free[39,11]:=false; free[40,11]:=false; n:=3; // Ve Snake man hinh gotoxy(body[1].x,body[1].y); write(char(9)); gotoxy(body[2].x,body[2].y); write(char(9)); gotoxy(body[3].x,body[3].y); write('+'); gotoxy(1,height); write('Di chuyen: A S D W An phim bat ky de Tam dung "E" Ket thuc!'); gotoxy(width-10,height); write('Diem:',0:5); move:='d'; // Tao thuc an food.x:=60; food.y:=11; gotoxy(60,11); write('*'); end; procedure writeRank(startLine : integer); // In bang xep hang man hinh begin writeln; writeln(' NAME SCORE'); writeln; for i:=1 to 10 begin write(i:2,' '); writeln(rank[i].name); gotoxy(41, i+startLine); writeln(rank[i].score); end; writeln; end; procedure writeInputName; // Nhap ten nguoi choi begin clrscr; writeln; repeat write('Nhap ten nguoi choi: '); readln(you.name); if length(you.name)=0 then writeln('Vui long nhap lai!'); writeln; until length(you.name) 0; writeln('An ENTER de Bat dau >>>'); 28 readln; end; // Lay point moi dua vao point truoc do, player an phim tren ban phim // K M P H lan luot la cac phim Left, Right, Down, Up procedure getNextPoint(currentPoint: point; move: char; var nextPoint: point); begin nextPoint := currentPoint; case move of 'a', 'K': begin dec(nextPoint.x); end; 'd', 'M': begin inc(nextPoint.x); end; 's', 'P': begin inc(nextPoint.y); end; 'w', 'H': begin dec(nextPoint.y); end; end; end; procedure updateSnake(move: char); // Cap nhat Snake begin // Cap nhat lai mang toa cua Snack getNextPoint(body[n], move, body[n+1]); for i:=0 to n body[i] := body[i+1]; // Keo snake vao man hinh di chuyen ngoai if not hasFence then begin if body[n].x = then body[n].x := width; if body[n].x = width+1 then body[n].x := 1; if body[n].y = then body[n].y := height-2; if body[n].y = height-1 then body[n].y := 1; end; // Sau ve lai Snake man hinh gotoxy(body[0].x, body[0].y); write(' '); free[body[0].x, body[0].y]:=true; gotoxy(body[n-1].x, body[n-1].y); write(char(9)); free[body[n1].x,body[n-1].y]:=false; gotoxy(body[n].x, body[n].y); write('+'); // Khi Snake an Thuc an if (body[n].x=food.x) and (body[n].y=food.y) then begin // Tang dai cua Snake inc(n); getNextPoint(body[n-1], move, body[n]); gotoxy(body[n-1].x, body[n-1].y); write(char(9)); free[body[n1].x, body[n-1].y]:=false; gotoxy(body[n].x, body[n].y); write('+'); inc(you.score); 29 gotoxy(width-5,height); write(you.score:5); // Tao Food moi repeat food.x:=random(width-1-2)+2; food.y:=random(height-3-2)+2; until free[food.x,food.y]; gotoxy(food.x,food.y); write('*'); end; gotoxy(1, height-1); // Dua tro xuong duoi man hinh de nhin dep hon end; procedure menu; begin writeMenuText; // In Menu man hinh case key of '1': begin writeChooseLevel; // Chon muc if key='' then menu; writeInputName; // Nhap ten writeInit; // Khoi tao repeat delayTime; // Tam dung chuong trinh if keypressed then move:=readkey; // Neu an phim hop le thi cap nhat lai if move in KeyList then updateSnake(move); until (not free[body[n].x,body[n].y]) or (move='e'); // Game over head cham vao body // Sap xep lai bang xep hang va luu vao file rank[11].score:=you.score; rank[11].name:= you.name; for i:=1 to 10 for j:=i+1 to 11 if rank[i].score < rank[j].score then swap(rank[i], rank[j]); writeData; // In bang xep hang man hinh delay(1000); clrscr; writeln; writeln('Chuc mung ', you.name, ' Ban nhan duoc ', you.score, ' diem !'); writeRank(5); writeln('An ENTER de quay lai Menu'); 30 readln; menu; end; '2': begin // Cai dat clrscr; writeln; writeln('Che Hang rao:'); writeln; writeln(' [1] Bat'); writeln(' [2] Tat'); writeln; write('Chon: '); readln(key); writeln; if key='1' then begin writeln('Ban da Bat che hang rao!'); hasFence:=true; end else begin writeln('Ban da Tat che hang rao!'); hasFence:=false; end; writeln; writeln('An Enter de quay lai Menu'); readln; menu; end; '3': begin // Huong dan clrscr; writeln; writeln(' Dung cac phim: A (trai), D (phai), W (len), S (xuong) de dieu khien'); writeln('chu ran di chuyen Hay co gang an that nhieu thuc an de dat diem cao nhat.'); writeln('Chuc ban may man!!!'); writeln; writeln('An Enter de quay lai Menu.'); readln; menu; end; '4': begin // Thong tin tac gia clrscr; writeln; writeln('Written by: Tran Huu Nhiem !!!'); writeln; writeln('An Enter de quay lai Menu !'); readln; menu; end; 31 '5': begin // In bang xep hang clrscr; readData; writeRank(3); writeln; writeln('An ENTER de quay lai Menu'); readln; menu; end; '6': halt; // Thoat chuong trinh end; end; BEGIN randomize; hasFence:=false; readData; {This is comment} menu; readln; END 2.Mã code trò chơi Caro uses crt; const edge=0; us=1; them=2; none=3; gridsize=15; maxmoves=200; alphabet=96; null=' '; type squares=edge none; smallint=0 gridsize; bytr=0 255; cardinal=0 65535; line=array[0 99] of squares; var grid:array[1 gridsize,1 gridsize] of squares; name:array[squares] of char; icol,irow:array[1 4] of -1 1; play:packed array[1 maxmoves] of record rowfield,colfield:smallint; end; v,vals:array[1 4] of integer; i,j,r,c:smallint; move:cardinal; endgame:squares; onboard:set of smallint; yourturn:boolean; topvalue:integer; 32 response:char; PROCEDURE construction; begin writeln('Day la tro choi caro'); writeln; writeln('Luat choi cung don gian: '); writeln('Ban se thi dau voi may May la o Ban la x'); writeln('Hay co gang danh thang duoc may bang cach danh duong chu x lien nhau'); writeln('Va nguoc lai neu ban de may danh chu o lien nhau, ban se thua'); writeln('Hay co gang danh thang may nhanh nhat co the Chuc ban may man'); writeln; end; PROCEDURE tell; var y:char; begin write('Ban co muon huong dan: (c/k): '); readln(y); if y='c' then construction else begin writeln('Khong co huong dan nao!'); end; end; PROCEDURE init; var m:real; begin textcolor(lightred); textbackground(black); name[none]:='.'; textcolor(lightblue); textbackground(black); name[us]:='o'; textcolor(yellow); textbackground(black); name[them]:='x'; textcolor(white); textbackground(black); name[edge]:='-'; irow[1]:=0; icol[1]:=-1; irow[2]:=-1; icol[2]:=-1; irow[3]:=-1; icol[3]:=0; irow[4]:=-1; icol[4]:=1; onboard:=[1 gridsize]; end; PROCEDURE whofirst(var youfirst:boolean); 33 var no:char; begin writeln; write('Ban co muon di chuyen dau tien (c/k): '); readln(no); youfirst:=no='c'; end; PROCEDURE slab(r,c,compass:smallint; var l:line); var i,j:integer; k:smallint; begin i:=r; j:=c; for k:=4 downto begin i:=i+irow[compass]; j:=j+icol[compass]; if (i in onboard) and (j in onboard) then l[k]:=grid[i,j] else l[k]:=edge; end; i:=r; j:=c; for k:=5 to begin i:=i-irow[compass]; j:=j-icol[compass]; if (i in onboard) and (j in onboard) then l[k]:=grid[i,j] else l[k]:=edge; end; end; PROCEDURE remember(i,j:smallint); begin play[move].rowfield:=i; play[move].colfield:=j; end; PROCEDURE dumpgame(m:cardinal); var n:cardinal; begin for n:=1 to m with play[n] begin write(chr(colfield+alphabet),rowfield:2); if odd(n) then write(' ') else writeln; end; end; 34 FUNCTION foursome(var span:line; self:squares):integer; var best:integer; nearhere:boolean; i,s,firstone,last,gaps:cardinal; friendly:set of squares; begin best:=0; friendly:=[none,self]; for i:=1 to begin firstone:=0; last:=0; gaps:=0; nearhere:=false; s:=i; while (gapsmaxmoves); massage(endgame); textcolor(blue); write('Ban muon xem cac luot di chuyen: (c/k): '); readln(response); if response='c' then dumpgame(move); writeln; write('Ban co muon choi lai (c/k): '); readln(response); until (response='k') or (response='K'); END HẾT 39 ... cách khơi dậy lòng đam mê lập trình để em học sinh tự chủ động tìm đến với Tin học 11 Và tơi tìm giải pháp áp dụng vào thu kết khả quan Với sáng kiến kinh nghiệm “MỘT SỐ VÍ DỤ KHƠI GỢI LỊNG ĐAM MÊ,... thích mơn học 2.3 MỘT SỐ VÍ DỤ ỨNG DỤNG ĐƯỢC VIẾT BẰNG NGƠN NGỮ LẬP TRÌNH PASCAL Khi dạy tin 11 đầu giới thiệu tổng quan ngôn ngữ lập trình, giới thiệu số khái niệm lập trình Ở đầu học sinh cảm... thấy ứng dụng lập trình trình học hình thành đam mê, u thích mơn học Và để khẳng định với học sinh Tin học không môn học bắt buộc phải học mà bạn học tốt mơn học lập trình chương trình ứng dụng vào

Ngày đăng: 21/11/2019, 08:52

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

TÀI LIỆU LIÊN QUAN

w