Xây dựng một chương trình kiểm tra đánh máy - pdf 17

Download miễn phí Đề tài Xây dựng một chương trình kiểm tra đánh máy



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
 



Để tải bản Đầy Đủ của tài liệu, xin Trả lời bài viết này, Mods sẽ gửi Link download cho bạn sớm nhất qua hòm tin nhắn.
Ai cần download tài liệu gì mà không tìm thấy ở đây, thì đăng yêu cầu down tại đây nhé:
Nhận download tài liệu miễn phí

Tóm tắt nội dung tài liệu:

huËt cã vÞ trÝ ®Æc biÖt quan 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­îc l¹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 cho c¶ 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êi mä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éi phô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¾c phô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µy cµ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óc chÆt chÏ ,s¸ng sña. HiÖn nay Pascal ®· trë thµnh mét trong c¸c ng«n ng÷ phæ biÕn nhÊ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«n ng÷ 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 ®¸nh m¸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¸y cñ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×nh nh»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Çy ThS.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èt nghiÖ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 !
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.
I. Mµn h×nh ®å ho¹
Mµn h×nh v¨n b¶n (Text) ®­îc thiÕt lËp ®Ó hiÓn thÞ 25 dßng vµ mçi dßng cã thÓ chøa ®­îc 80 ký tù.
Mµn h×nh ®å ho¹ ®­îc cÊu thµnh tõ mét ma trËn c¸c chÊm ¶nh nhá (Pixel). Sù bè trÝ c¸c Pixel trªn mµn h×nh nh­ thÕ nµo vµ bao nhiªu ®­îc gäi lµ ®é 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.
II. C¸c hµm ®å ho¹
Trong ch­¬ng tr×nh sö dông rÊt nhiÒu hµm , c¸c hµm nµy ®­îc ®Þnh nghÜa trong “graphics.h” ë trong th­ môc ..\INCLUDE :
Setcolor(...)
Setbkcolor(...)
Setfillstyle(...)
Settextstyle(...)
Setviewport(...)
...
getcolor()
getbkcolor()
...
line(...)
rectangle(...)
bar(...)
bar3d(...)
circle(...)
elippse(...)
...
ch­¬ng II : ThiÕt kÕ ch­¬ng tr×nh
phÇn I : C¸c modul chÝnh trong ch­¬ng tr×nh.
Các module chính trong chương trình bao gồm:
+ Function tg_phut:Word;
+ Ve_Banphim : thủ tục vẽ bàn phím
+ VephimNhan(phim:char;kieuve:integer): thủ tục vè phím được nhấn
+ SinhMa(level:integer):Char: thủ tục sinh một mã phím tuỳ theo mức độ nhất chọn trong chương trình
+ GoPhim : thủ tục thực hiện thao tác gõ một phím và các tính toán bên trong
+ Ketqua : thủ tục hiện kết quả của ths sinh đăng nhập kiêm tra gõ bàn phím. Các kết quả tính toán như sau:
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
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 :
Procedure VephimNhan(phim:char;kieuve:integer);
Var
i,j,k,x,y:integer;
xhien,yhien:integer;
Begin
xhp2:=xhp1+3*dr div 2+kc;
yhp2:=yhp1+ds+kc;
xhp3:=xhp1+2*dr+kc;
yhp3:=yhp2+ds+kc;
xhp4:=xhp1+2*dr+2*kc;
yhp4:=yhp3+ds+kc;
xhp5:=xhp1+10*(dr+kc);
yhp5:=yhp1+4*(ds+kc);
xhien:=0;yhien:=0;
{Hang 1}
for k:=1 to 15 do
if (chr(hp1[k])=phim) then
begin
xhien:=xhp1+(k-1)*(dr+kc);
yhien:=yhp1;
end;
{Hang 2}
for k:=1 to 13 do
if(chr(hp2[k])=phim) then
begin
xhien:=xhp2+(k-1)*(dr+kc);
yhien:=yhp2;
end;
{Hang 3}
for k:=1 to 12 do
if(chr(hp3[k])=phim) then
begin
xhien:=xhp3+(k-1)*(dr+kc);
yhien:=yhp3;
end;
{Hang 4}
for k:=1 to 13 do
if(chr(hp4[k])=phim) then
begin
xhien:=xhp4+(k-1)*(dr+kc);
yhien:=yhp4;
end;
{Hang 5}
for k:=1 to 5 do
if(chr(hp5[k])=phim) then
begin
xhien:=xhp5+(k-1)*(dr+kc);
yhien:=yhp5;
end;
if ((phim=#60) or (phim=#62)
or (phim=#63) or (phim=#34) or (phim=#58)) then
if kieuve=1 then
ve_shift(kieuve+1)
else ve_shift(1);
if(phim=#32) then
if kieuve=1 then
ve_space(kieuve+1)
else ve_space(1)
else
if ((ord(phim) in [27,49,50,51,52,53,54,55,56,57,48,45,43,61,8])
or (ord(phim) in [81,87,69,82,84,89,85,73,79,80,91,93])
or (ord(phim) in [65,83,68,70,71,72,74,75,76,59,58])
or (ord(phim) in [90,88,67,86,66,78,77,44,46,39,92,42,47])
or (ord(phim) in [63,60,62,40,41])) then
ve_o(kieuve,xhien,yhien,ds,dr,1);
End;
II – Thñ tôc GoPhim :
§©y lµ thñ tôc chÝnh trong ch­¬ng tr×nh gâ bµn phÝm .Thñ tôc nµy sÏ thùc hiÖn chøc n¨ng gâ phÝm ,tÝnh to¸n sè ký tù mµ ch­¬ng tr×nh sinh ra,sè ký tù mµ ng­êi sö dông gâ chÝnh x¸c ®Ó tõ ®ã ®­a ra ®­îc tèc ®é gâ phÝm còng nh­ ®é chÝnh x¸c trong qu¸ tr×nh gâ phÝm cña ng­êi sö dông 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 ch­a . 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: Procedure GoPhim ; Var ch:char;
MaDuocSinh:char; bd,kt:Word;
Begin
Sokytu:=0;SoKyTuSinh:=0;
xchu:=30;ychu:=110;
bd:=tg_phut;
While true do
Begin
MaDuocSinh:=SinhMa(Muc);
VietChu(xchu,ychu,MaDuocSinh);
xchu:=xchu+textwidth('H')+1;
if xchu>=getmaxx-20 then
begin
xchu:=30;
ychu:=ychu+textheight('H')+10;
end;
if ychu>...
Music ♫

Copyright: Tài liệu đại học © DMCA.com Protection Status