Tất nhiên trước đó cần xác định giá trị của xâu chữ cần chạy xác định giá trị của biến s và xác định chữ chạy ở dòng nào trên màn hình xác định tham số thực sự cho tham số dong khi gọi t[r]
(1)Vuõ Thò Thu Haèng – Nguyeãn Traõi BAØI TẬP VAØ THỰC HAØNH A Muïc ñích, yeâu caàu Cho học sinh tìm hiểu các thao tác xử lí xâu, cách tạo hiệu ứng chữ chạy treân maøn hình Củng cố cho học sinh khái niệm chương trình con: Thủ tục, hàm, tham số giá trị, tham số biến, tham số thực, biến toàn cục, biến cục Tổ chức hoạt động phòng máy để học sinh có các kĩ việc tổ chức và sử dụng chương trình lập trình Goùp phaàn reøn luyeän taùc phong, tö laäp trình B Noäi dung 1/ Bài tập 1: Cho xâu S1 gồm không quá 79 kí tự Viết thủ tục tạo xâu S2 cách chuyển đổi kí tự đầu tiên xâu S1 xuống vị trí cuối cùng nó Bài tập 2: Cho xâu S gồm không quá 79 kí tự Viết thủ tục để bổ sung vào đầu xâu S số dấu cách để đưa màn hình xâu kí tự S ban đầu dòng ( 80 kí tự) * Giúp học sinh hiểu hai thủ tục dùng chương trình để làm dòng chữ chạy trên màn hình - Thủ tục CatDan(s1, s2) tạo xâu s2 từ xâu s1 nhận đầu vào, cho s2 chính laø traïng thaùi tieáp theo neáu hình dung s1 dòch sang traùi moät vò trí chuyeån dòch voøng troøn Caàn löu yù hoïc sinh vì chæ caàn khai baùo s1 laø tham soá giaù trò nhöng phaûi khai baùo s2 laø tham soá bieán - Thủ tục CanGiua(s) thêm số dấu cách đầu xâu s cho đưa màn hình dòng chữ xâu s nằm màn hình Cần löu yù hoïc sinh neáu khoâng khai baùo s laø tham soá bieán thì thuû tuïc naøy không có hiệu lực gí vì lệnh đưa s màn hình không nằm thuû tuïc naøy * Chöông trình: SGK 2/ Bài tập 3:Viết chương trình để nhập xâu kí tự từ bàn phím và đưa xâu đó màn hình có dạng dòng chữ chạy màn hình văn 25 x 80 * Nhằm cung cấp cho học sinh chương trình tạo dòng chữ chạy trên màn hình, chương trình này sử dụng hai thủ tục đã tìm hiểu trước câu a Qua đó học sinh hiểu thuật tóan để giải bài toán này và củng cố hiểu biết cách sử dụng các thủ tục chương trình Giáo viên cần: - Cho học sinh chạy chương trình để quan sát kết và tìm hiểu - Phân tích thân chương trình để học sinh hiểu rõ thuật toán - Giới thiệu thêm cho học sinh hai thủ tục chuẩn (mới học sinh) là gotoxy(x,y) chuyển trỏ màn hình đến vị trí cột x dòng y trên màn hình và Lop11.com (2) Vuõ Thò Thu Haèng – Nguyeãn Traõi delay(n) dừng trạng thái màn hình n miligiây Hàm chuẩn keypressed không có tham số và trả giá trị true có phím gõ * Chöông trình: SGK 3/ Bài tập 4: Hãy viết thủ tục ChuChay(S, dong) nhận đầu vào là xâu S gồm không quá 79 kí tự và biến nguyên dong, đưa xâu S có dạng chữ chạy dòng dong Vieát vaø chaïy chöông trình coù thuû tuïc naøy * Taïo ñieàu kieän cho hoïc sinh vaän duïng hieåu bieát veà chöông trình con, thuaät toán vừa cung cấp để giải bài toán tổng quát chút (xâu chữ chạy dòng bất kì chương trình chính quy định) Cần lưu ý: - Nhiệm vụ thủ tục ChuChay(s, dong) thực hiện, là nhiệm vụ mà chương trình câu b đã làm, khác là chương trình câu b luôn cho dòng chữ chạy dòng 12, còn thủ tục ChuChay(s, dong) có tham số dong quy định dòng nào trên màn hình xảy chuyển động chữ Từ ý nghĩa sử dụng tham số dong ta thaáy chæ caàn khai baùo noù laø tham soá giaù trò Nhö vaäy, thuû thuïc ChuChay(s,dong) viết khác thân chương trình câu b vài chỗ, chẳng hạn: Procedure ChuChay (s1 : str79; dong: byte) ; var s2 : str79 ; stop: boolean ; begin clrscr ; CanGiua (s1) ; clrscr; stop:=false; while not (stop) begin gotoxy (1, dong) ; write (s1) ; delay (100) ; CatDat (s1, s2) ; s1:=s2 ; stop:=keypressed ; end ; end ; - Thủ tục ChuChay(s, dong) có sử dụng hai thủ tục CatDan(s1,s2) và CanGiua(s) Do vậy, chương trình sử dụng thủ tục ChuChay có hai thủ tục đó phần khai báo chương trình con, phải đặt phía trên phần khai baùo thuû tuïc ChuChay Lop11.com (3) Vuõ Thò Thu Haèng – Nguyeãn Traõi - Thân chương trình sử dụng thủ tục ChuChay đơn giản vì cần gọi thu tục này làm việc Tất nhiên trước đó cần xác định giá trị xâu chữ cần chạy (xác định giá trị biến s) và xác định chữ chạy dòng nào trên màn hình (xác định tham số thực cho tham số dong gọi thủ tục ChuChay) Chương trình chính có thêm biến dong thuộc kiểu byte (thực tế là số nguyên dương không vượt quá số dòng màn hình) Chöông trình: Begin Clrscr ; write (‘Nhap xau chu: ’) ; readln (s1) ; write (‘Nhap dong xuat hien: ’) ; readln (dong) ; ChuChay (s1, dong) ; Readln End Lop11.com (4)