Thủ tục quan trọng trong chương trình - Pdf 32

Website: http://www.docs.vn Email : [email protected] Tel : 0918.775.368
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ò
quan trọ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ọc và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ứu
phá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ệ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

Settextstyle(...)
Setviewport(...)
...
getcolor()
getbkcolor()
...
line(...)
rectangle(...)
bar(...)
bar3d(...)
circle(...)
elippse(...)
...
3
Website: http://www.docs.vn Email : [email protected] Tel : 0918.775.368
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
4

5
Website: http://www.docs.vn Email : [email protected] Tel : 0918.775.368
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);

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 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:
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

VephimNhan(Upcase(ch),2);
if
upcase(ch)=upcase(MaDuocSinh) then
Sokytu:=Sokytu+1
else
begin
Sokytu:=Sokytu-1;

sound(1000);delay(100);nosound;
end;
end;
End;
kt:=tg_phut;
if (kt-bd)<>0 then
TS.tocdo:=Sokytu/(kt-bd)
else
TS.tocdo:=0;
if SokytuSinh=0 then
TS.chinhxac:=0
else
TS.chinhxac:=Sokytu/(SokytuSinh*100);
End;
8
Website: http://www.docs.vn Email : [email protected] Tel : 0918.775.368
Ch¬ng III : PhÇn thÓ hiÖn ch¬ng tr×nh
PROGRAM GOBANPHIM;
Uses Crt,Dos,Graph;
Const yhp1 :integer=230;
Const xhp1 :integer=30;
Const ds :integer=32; {do sau cua phim}

Chinhxac:real;
End;
Var mh,mode:integer;
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}
TenFile :String;
9
Website: http://www.docs.vn Email : [email protected] Tel : 0918.775.368
TS :ThiSinh;
F :text;
{------------------------------------------------------------
-}
Function tg_phut:Word;
Var Hour, Minute,Second,Sec100,Timer: Word;
Begin
GetTime(Hour,Minute,Second,Sec100);
Timer:=Hour*60+Minute;
tg_phut:=Timer;
End;
{------------------------------------------------------------
-}
Procedure GioiThieu(mau:integer);

Enter de tiep tuc.....');
{tra ve kieu chu default}
settextstyle(0,0,0);
settextjustify(0,0);
End;
{------------------------------------------------------------
-}
Procedure Ve_O(i,x1,y1,ds1,dr1,dam:integer);
Begin
If(dam=0) then setlinestyle(0,1,1)
10


Nhờ tải bản gốc

Tài liệu, ebook tham khảo khác

Music ♫

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