1. Trang chủ
  2. » Kỹ Thuật - Công Nghệ

Thiết kế chương trình kiểm tra đánh máy mô phỏng các kỹ năng đánh máy của một người bình thường

26 396 0
Tài liệu đã được kiểm tra trùng lặp

Đ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

Tiêu đề Thiết kế chương trình kiểm tra đánh máy mô phỏng các kỹ năng đánh máy của một người bình thường
Tác giả Nguyễn Trần Tuấn Anh
Người hướng dẫn ThS. Thái Thanh Tùng
Chuyên ngành Công nghệ thông tin
Thể loại Bài tập thực hành tốt nghiệp
Định dạng
Số trang 26
Dung lượng 148 KB

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

Nội dung

Thiết kế chương trình kiểm tra đánh máy mô phỏng các kỹ năng đánh máy của một người bình thường

Trang 1

Lời nói đầu

Hiện nay cùng với sự phát triển của Công nghệ tin học trên thế giới nói chung

và Việt Nam nói riêng, những năm gần đây tin học đang chiếm một vai trò quantrọng không thể thiếu đợc trong tất cả các lĩnh vực, và luôn đợc làm mục tiêu hàng

đầu để con ngời nghiên cứu, tìm tòi và áp dụng những thành tựu to lớn của tin họcvào trong thực tế, trong những lĩnh vực nh Khoa học, Kinh tế, Kỹ thuật,…

Trong công cuộc đổi mới quản lý kinh tế xã hội hiện nay, việc nghiên cứuphát triển hệ thống thông tin về kinh tế xã hội và khoa học kỹ thuật có vị trí đặc biệtquan trọng bởi hệ thống thông tin kinh tế xã hội có chuẩn xác nhanh nhạy, đáp ứng

đợc mọi yêu cầu điều hành thì công tác quản lý mới đạt hiệu quả thiết thực Ngợclại, thông tin thiếu, thông tin chậm trễ và không chuẩn xác sẽ không chỉ làm ảnh h -ởng đến công cuộc phát triển kinh tế xã hội trớc mắt mà đôi khi còn gây tác hại chocả một thời kỳ rất dài

Vì vậy, nhu cầu cấp thiết đặt ra cho những ngời làm công tác về công nghệthông tin là phải tổ chức một hệ thống thông tin điều hành sắc bén, phục vụ kịp thờimọi yêu cầu của ngời sử dụng

Do nhu cầu thực tế đòi hỏi, việc nghiên cứu hệ thống thông tin kinh tế xã hộiphục vụ điều hành phải đợc sớm hoàn thành và đa vào thực tiễn áp dụng Nó sẽ khắcphục đợc nhiều khó khăn trong việc quản lý và xử lý thông tin

Với việc tin học hóa trong mọi hệ thống, các ngôn ngữ lập trình ra đời ngàycàng nhiều và hoàn thiện Ngôn ngữ Pascal là 1 ngôn ngữ thuật giải ,có tính cấu trúcchặt chẽ ,sáng sủa Hiện nay Pascal đã trở thành một trong các ngôn ngữ phổ biếnnhất ,thích hợp với nhiều ứng dụng khoa học, kỹ thuật, quản ký và đợc coi là ngônngữ thích hợp nhất cho tất cả mọi đối tợng…

Xây dựng một chơng trình kiểm tra đánh máy mô phỏng các kỹ năng đánhmáy của một ngời bình thờng cho phép thực hiện các chức năng về tốc độ đánh máycủa ngời đó với các mức độ khó khác nhau và máy tính sẽ đa ra các thông tin về số

ký tự đánh đợc trong một khoảng thời gian nhất định Đây là một bài tập về lập trìnhnhằm nâng cao kỹ năng về lập trình Turbo Pascal và kỹ năng đồ hoạ

Để hoàn thành bài tập này, tôi đã tham khảo rất nhiều các tài liệu, cũng nh

đ-ợc sự hớng dẫn tận tình của các thầy cô giáo trong khoa CNTH, đặc biệt là thầyThS.Thái Thanh Tùng là ngời chịu trách nhiệm hớng dẫn chính bài tập tực hành tốtnghiệp cho tôi.Tuy nhiên trong quá trình lập trình cũng nh thiết kế đồ hoạ còn cónhững sai sót nên tôi rất mong đợc sự góp ý của các thầy cô và các bạn

Em xin chân thành cảm ơn !

Trang 2

Chơng I : các khái niệm cơ bản đợc sử dụng trong chơng

trình Trong chơng trình này chỉ dùng các hàm và thủ tục về đồ hoạ nên tôi chỉ trình bày một số khái niệm liên quan.

độ phân giải của màn hình (Resolution)

Do mỗi kiểu màn hình có cách xử lý riêng nên ta thiết lập tập tin điều khiển đồ hoạ ( *.bgi ở trong th mục \BGI) và kiểu chữ (Font) ( *.chr ở trong

th mục \BGI ).

Đối với màn hình VGA (hiện nay phổ biến ) thì hệ toạ độ là 640 x 480

Có nghĩa là chiều ngang có 640 Pixel, chiều dọc có 480 Pixel.

Trang 4

Số ký tự /phút=Số ký tự đánh được trong một phút

Độ chính xác của việc gõ phím: Độ chính xác= Số ký tự chính xác/Số

ký tự sinh ra*100

Trang 5

Phần II : hai thủ tục quan trọng trong chơng trình

I-Thủ tục Vephimnhan(phim :char,kieuve:integer)

Thủ tục này dùng để thực hiện vẽ một phím trên bàn phím khi phím này đợc nhấn.Nêú các phím ký tự đặc biệt trên bàn phím đợc nhấn Ví dụ: < , > ,? , +, \ , ( , ) thì ngoài phím ký tự ,phím Shift cũng đợc nhấn theo.

Thủ tục này đợc thực hiện nh sau :

Khi ngời sử dụng nhấn một phím trên bàn phím sẽ sinh ra một ký tự của phím vừa nhấn Thủ tục Vephimnhan sẽ quét qua toàn bộ các ký tự trên bàn phím và kiểm tra xem đó có phải là các phím vừa đợc nhấn không Nừu không phải là phím đợc nhấn thì sẽ không vẽ lại phím đó.Nừu phím đợc kiểm tra là phím nhấn thì ta sẽ vẽ lại phím đó theo kiểu vẽ mà ta đa vào

Kiểu vẽ phím ở đây đợc sử dụng gồm có 2 chế độ:

- Chế độ phím đang đợc nhấn :phím đó sẽ bị lún xuống với màu khác tất cả các phím khác trên bàn phím

- Chế độ phím không đợc nhấn :phím đó sẽ đợc vẽ nổi và cùng màu với các phím còn lại trên bàn phím

*Ta có thể đa ra đoạn mã Code của chơng trình nh sau :

Trang 7

Thủ tục GoPhim đợc thực hiện nh sau :

Lấy mã phím đợc sinh ra thông qua thủ tục sinh mã phím “SinhMa(Muc)” Kiểm tra xem đó có phải là phím ESC không ,nếu đúng là phím ESC thì sẽ dừng việc gõ phím Ngợc lại thủ tục sẽ chờ ngời sử dụng gõ một phím trong một khoảng thời gian Nếu quá thời gian đó thì thủ tục sẽ bỏ qua và sinh một mã khác Nếu ngời sử dụng gõ phím thì thủ tục sẽ gọi lại thủ tục Vephimnhan

để vẽ lại phím vừa đợc nhấn và kiểm tra xem phím nhấn đã chính xác với phím vừa đợc sinh ra cha

Quá trình này sẽ tiếp tục cho đến khi ngời sử dụng nhấn ESC để kết thúc quá trình gõ phím.

*Ta có thể đa ra đoạn mã Code của chơng trình nh sau:

Trang 9

Const ds :integer=32; {do sau cua phim}

Const dr :integer=34; {do rong cua phim}

Const kc :integer=5; {khoang cach giu cac phim}

Const xmenu:integer=60; {toa do x cua menu}

Const ymenu:integer=10; {toa do y cua menu}

Const drm :integer=120; {do rong cua 1 o menu}

Const dsm :integer=40; {do sau cua 1 o menu}

Const h3:array[1 11]of string=('A','S','D','F','G','H','J','K','L',';',':');

Const hp3:array[1 11]of integer=(65,83,68,70,71,72,74,75,76,59,58); Const h4:array[1 13] of string=('Z','X','C','V','B','N','M',',','.','`','\','*','/'); Const hp4:array[1 13] of

integer=(90,88,67,86,66,78,77,44,46,39,92,42,47);

Const h5:array[1 5]of string=('?','<','>','(',')');

Const hp5:array[1 5]of integer=(63,60,62,40,41);

Const mnu:array[1 4]of string=('CHU CAI','CHU CAI & SO','TOAN

tg_doi :integer; {thoi gian doi go mot phim}

chu :array[1 154] of string; {xau in ra de go phim}

machu :array[1 100] of integer;

xchu,ychu:integer; {xchu=30,ychu=160;//vi tri in ra hang chu ngau nhien}

xhp4,yhp4,xhp2,yhp2,xhp3,yhp3,xhp5,yhp5:integer;

Muc :integer;{Muc go phim}

SoKytu :integer;{So ky tu go duoc}

SoKyTuSinh :integer;{So ky tu sinh cua chuong trinh}

Trang 10

outtextxy(getmaxx div 2,25,'VIEN DAI HOC MO HA NOI');

outtextxy(getmaxx div 2,45,'KHOA CNTH');

setcolor(mau);

settextstyle(1,0,4);

outtextxy(getmaxx div 2,150,'BAI TAP TOT NGHIEP');

settextstyle(1,0,1);

outtextxy(getmaxx div 2 -165,190,'NOI DUNG:');

line(getmaxx div 2-210,202,getmaxx div 2-120,202);

outtextxy(getmaxx div 2-30,getmaxy-80,'Lop: 00B3');

if(mau=7) then setcolor(mau)

Trang 16

{****ve hang phim thu hai****}

Trang 21

Clrscr;

Writeln('Ket qua kiem tra');

Writeln('Thi sinh dang nhap: ',TS.Hoten);

Writeln('So ky tu/phut: ',TS.Tocdo:8:3);

Writeln('Do chinh xac: ',TS.Chinhxac:8:3);

Write('Ban co ghi ket qua khong(C/K)?');

Trang 22

Ve_O(1,10,80,100,getmaxx-20,1);

if(k=0) then

begin Muc:=1;

GoPhim;

end else if(k=1) then begin

Muc:=2;

GoPhim;

end else if(k=2) then

begin Muc:=3;

GoPhim;

end else if (k=3) then Break;

end;

if(c=#0) then begin

Trang 23

begin ve_o_menu(x+kt*(drm+kc),y,2);

Writeln('Dang nhap chuong trinh');

Write('Thi sinh dang nhap: ');Readln(TS.Hoten);

Trang 24

Kết luận

Sau một thời gian tập trung nghiên cứu, tham khảo các tài liệu về ngôn ngữlập trình Turbo Pascal, cùng với sự tận tình hớng dẫn của thầy ThS.Thái Thanh Tùngcũng nh các thầy cô giáo trong Khoa Công nghệ Tin học-Viện Đại học Mở Hà nội,tôi đã hoàn thành đợc bài tập thực hành tốt nghiệp của mình Trong quá trình làmbài tập, tôi cũng đã tìm hiều thêm đựoc nhiều vấn đề liên quan đến ngôn ngữ Pascal

và càng thấy đợc những tiện ích của ngôn ngữ bậc cao này trong việc viết các chơngtrình Tuy nhiên, trong một khoảng thời gian có hạn và trình độ còn nhiều hạn chế,bài tập thựcc hành tốt nghiệp này cũng không tránh khỏi những sai sót mắc phải nh-

ng nó cũng đã thể hiện đợc phần nào những cố gắng và tìm tòi của tôi

Tôi mong và hy vọng rằng, sau khi xem xong phần bài tập của tôi, các thầycô giáo sẽ có những ý kiến đóng góp để bài tập đợc hoàn thiện hơn

Xin chân thành cảm ơn các thầy cô !

Trang 25

Tài liệu tham khảo:

1 - Ngôn ngữ lập trình Pascal <Quách Tuấn Ngọc-Nhà xuất bản Giáo dục> 2- Cơ sở lý thuyết đồ hoạ <Nhà xuất bản TP Hồ Chí Minh biên soạn> 3- Lập trình hớng đối tợng với Turbo Pascal <Nhà xuất bản Đại học>

4- Object oriented Programming wich Turbo Pascal <Dintermann>

5- Turbo vision Guide <Robert ,Keller >

6- Object oriented Power for Think Pascal programmer <Chuck Sphare>

7- Đồ hoạ vi tính <Tuyển tập Nhà xuất bản Giáo dục>

Trang 26

Mục lục

Lời nói đầu 1

Chơng I : các khái niệm cơ bản đợc sử dụng trong chơng trình 2

I Màn hình đồ hoạ 2

II Các hàm đồ hoạ 2

Chơng II : Thiết kế chơng trình 4

Phần I : Các modul chính trong chơng trình 4

Phần II : hai thủ tục quan trọng trong chơng trình 5

I-Thủ tục Vephimnhan(phim :char,kieuve:integer) 5

II – Thủ tục GoPhim : 7

Chơng III : Phần thể hiện chơng trình 9

Kết luận 23

Tài liệu tham khảo: 24

Ngày đăng: 27/04/2013, 23:07

TỪ KHÓA LIÊN QUAN

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

w