1. Trang chủ
  2. » Trung học cơ sở - phổ thông

Ôn thi tin học trẻ năm học 2010-2011 - Đinh Hải Đường

20 8 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 20
Dung lượng 234,8 KB

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

Nội dung

Để nhập dữ liệu từ bàn phím vào các biến có kiểu dữ liệu chuẩn trừ các biến kiểu BOOLEAN, ta sử dụng cú pháp sau đây: READLN [,,...,]; Chú ý: Khi gặp câu lệnh READLN; không có tham số, c[r]

Trang 1

LỜI MỞ ĐẦU

Theo khung   trình   Giáo   và " #$ Ngôn ' ()* trình Pascal

là  * / quan 1 trong 1 * / Tin 1 #     các  2 ngành Khoa 1

4 nhiên, 67 89 là ngành Công  9 Thông tin

% < 6* = yêu / 1 )*  1 sinh, sinh viên 8 ? 6/ làm quen !? công

!9 -)* trình, chúng tôi 6A biên ,# 8 Giáo Trình Bài )* Pascal  < giúp cho sinh viên

có  tài -9 1 )*$ rèn ->9 2  D -)* trình, # E   !'  F cho các môn

1 G* theo trong   trình 6" # :H nhân Công  9 Thông tin

Giáo trình bai J K  E bài )* L 6   6G * = #*; Các bài )* này 6 M

biên ,# N4 trên khung   trình   N#> môn Tin 1 #  ; Bên # 6B$

chúng tôi O 8P sung  ,2 bài )* N4 trên  ,Q  ,2  ) toán  R !? các K

trúc N' -9 6 M Q   < nâng cao S D$ *  pháp -)* trình cho sinh viên

% dung  giáo trình 6 M chia thành 10  ; Trong U   6E có * /

tóm F lý  >G$ * / bài )* W và 2 cùng là * / bài )* 4   6Y 8# 61 4 mình

Y tra  ' G  = và kinh  9 6A 1; Trong * / bài )* W$ 62 !?  ' bài

!G   trình cài 67;

Xin chân thành

Chúng tôi hy !1 ,?  ) 6 M  ' ý G 6B góp, phê bình  8# 61 !E

 dung,  K - M và hình  = trình bày 6Y giáo trình này ngày  hoàn  9 ;

Trang 2

Chương 1 CÁC THÀNH PHẦN CƠ BẢN CỦA NGÔN NGỮ LẬP TRÌNH PASCAL

Pascal là

# 1 S  ) Zurich ` > abc 6E dK D 1970 Ông -K> tên Pascal 6Y h 9 nhà

toán

1 Các )* tin /  G khi -)* trình !? Turbo Pascal

Y -)* trình 6 M !? Turbo Pascal, 2  Y / 2 file sau:

 TURBO.EXE: Dùng 6Y ,#   và Nn   trình

 TURBO.TPL:  !9  = các 6 !n  R 6Y  #> !? TURBO.EXE

Ngoài ra, 2 -)* trình 6J # thì *  / thêm các )* tin:

 GRAPH.TPU:  !9 6J #;

 *.BGI: Các file 6E  Y các -# màn hình   = khi dùng 6J #;

 *.CHR: Các file  = các font  ' 6J 1;

2 Các 8 ?  8  khi -)*    trình Pascal

 1: a#     trình.

 2: n   trình ` K phím F9), G có -U thì *  ,H -U;

 3: : #>   trình ` K phím Ctrl-F9).

3 :K trúc chung     trình Pascal

{   tiêu "# }

PROGRAM 5x x y {   khai báo }

USES ;

CONST .;

TYPE ;

VAR .;

PROCEDURE .;

FUNCTION ;

{   thân ) trình } BEGIN

END

Ví N 1: :  trình Pascal 6    K

BEGIN

Write(‘Hello World!’);

END

Trang 3

Ví N 2:

Program Vidu2;

Const PI=3.14;

Var R,S:Real;

Begin

S:=R*R*PI; u9 tích hình tròn}

Writeln(‘Dien tich hinh tron = ‘, S:0:2); { In ra màn hình } Readln;

End

4

 F2: (    trình 6 ,#   vào 6b;

 F3: wQ file ? 7 file 6A J # trên 6b 6Y ,#  ;

 Alt-F3: B file 6 ,#  ;

 Alt-F5: Xem G 0  #>   trình

 F8: : #> L câu -9  trong   trình

 Alt-X: Thoát  ƒ Turbo Pascal

 -s„a2  = 4  file 6 Q… n  >Y qua -# ' các file 6 Q;

 F10: Vào 9  2 Menu  Pascal

5 Các thao tác  8  khi ,#     trình

5.1 Các phím thông 01

 Insert: : >Y qua -# '  G 6 6C và  G 6 chèn

 Home:   con ƒ !E 6/ dòng

 End:   con ƒ !E 2 dòng

 Page Up:   con ƒ lên  trang màn hình

 Page Down:   con ƒ d2  trang màn hình

 Del: Xoá ký 4 ngay # !n trí con ƒ;

 Back Space (): Xóa ký 4 bên trái con ƒ;

 Ctrl-PgUp:   con ƒ !E 6/ !D 8 ;

 Ctrl-PgDn:   con ƒ !E 2 !D 8 ;

 Ctrl-Y: Xóa dòng # !n trí con ƒ;

5.2 Các thao tác trên $2 3 %4

 : 1  2 !D 8  Shift + <Các phím >

 Ctrl-KY: Xoá  2 !D 8  6  1

 Ctrl-Insert:    2 !D 8  6  1 vào Clipboard

 Shift-Insert: Dán  2 !D L Clipboard d2 !n trí con ƒ;

6 Các thành * /  8   ngôn ' Pascal

Trang 4

6.1 6 khóa

L khoá là các L mà Pascal dành riêng 6Y *  ! cho  6q  nó `: ‰ #

  BEGIN, END, IF, WHILE, )

Chú ý: : Turbo Pascal 7.0 > lên, các 6 khoá trong ) trình ;@ "A B C

khác màu 3 các 6 khác.

6.2 Tên E"C danh)

n danh là  dãy ký 4 dùng 6Y 67 tên cho các <$ 8G$ Y$ tên   trình

con Khi 67 tên, ta *  chú ý  ,2 6Y sau:

 Không 6 M 67 trùng tên !? L khoá

 Ký 4 6/ tiên  tên không 6 M 8F 6/ 8Q các ký 4 67 89 7  ' ,2;

 Không 6 M 67 tên !? ký 4 space,các phép toán

Ví N : Các tên !G  sau là sai

1XYZ Sai vì 8F 6/ 8<  ' ,2;

#LONG Sai vì 8F 6/ 8< ký 4 67 89;

KY TU Sai vì có    F (space)

LAP-TRINH Sai vì NK L (-) là phép toán

6.3 GH H -IJ (;)

K  K * R> 6 M dùng 6Y D cách ' các câu -9 ; Không nên Y NK  K

* R> là NK G thúc câu -9 ;

Ví N :

FOR i:=1 TO 10 DO Write(i);

Trong câu -9 trên, -9 Write(i) 6 M  4 9 10 -/; %G Y NK  K * R> là

G thúc câu -9 thì -9 Write(i)  \  4 9 1 -/;

6.4 L 4 thích

Các

cho

  thích 6 M 67 ' hai NK # { và } 7 '  NK (* và *)

Ví N :

Var a,b,c:Real; {Khai báo %N}

Delta := b*b – 4*a*c; (* Tính delta "B 4 -) trình %P 2 *)

1 3 Q 6 Turbo Pascal

Trang 5

2 % )* vào 6#   trình sau:

Uses Crt;

Begin

Writeln(‘***********************************************************’);

Writeln(‘* CHUONG TRINH PASCAL DAU TIEN CUA TOI *’);

Writeln(‘* Oi! Tuyet voi! *);

Writeln(‘***********************************************************’); Readln; End 3 n và  #>   trình trên 4 (    trình vào 6b !? tên BAI1.PAS 5 Thoát  ƒ Pascal 6 3 Q 6 -# Turbo Pascal 7 wQ file BAI1.PAS 8 Chèn thêm vào dòng: CLRSCR; vào sau dòng BEGIN 9 n và  #>  H   trình 10 (    trình vào 6b; 11 Thoát  ƒ Pascal 12 G   trình in ra màn hình các hình sau: * ******** *******

*** ** ** ** **

** ** ** ** **

** ** ******** * *

********* ** ** **

** ** ** ** ** **

** ** ******** ********

Trang 6

:  2

CÁC KIỂU DỮ LIỆU CƠ BẢN KHAI BÁO HẰNG, BIẾN, KIỂU, BIỂU THỨC VÀ CÂU LỆNH

I CÁC 3pj  (p‘j :’ “%

1 3Y logic

- L khóa: BOOLEAN

- E giá n (TRUE, FALSE)

- Các phép toán: phép so sánh (=, <, >) và các phép toán logic: AND, OR, XOR,

NOT

Trong Pascal, khi so sánh các giá n boolean ta tuân theo qui F FALSE < TRUE

 ,H A và B là hai giá n Y Boolean 3G 0  các phép toán 6 M  Y 9

qua 8  N ? 6I>

2 3Y ,2 nguyên

2.1 Các $B ;2 nguyên

LongInt -2147483648  2147483647 4 byte

2.2 Các phép toán trên $B ;2 nguyên

2.2.1 Các phép toán ;2 R

+, -, *, / (phép chia cho ra G 0 là ,2  4c;

Phép chia -K> * / nguyên: DIV (Ví N : 34 DIV 5 = 6)

Phép chia -K> ,2 N  MOD (Ví N  34 MOD 5 = 4)

2.2.2 Các phép toán ST lý bit:

Trang 7

Trên các Y ShortInt, Integer, Byte, Word có các phép toán:

 NOT, AND, OR, XOR

 SHL (phép Nn trái): a SHL n  a  2n

 SHR (phép Nn * c a SHR n  a DIV 2n

3 3Y ,2  4

3.1 Các $B ;2 U

:

Single 1.510-45  3.410+38 4 byte Real 2.910-39  1.710+38 6 byte Double 5.010-324  1.710+308 8 byte Extended 3.410-4932  1.110+4932 10 byte

Chú ý: Các Y ,2  4 Single, Double và Extended yêu / *  ,H N  chung !? 8

6J dH lý ,2 7 *  biên dich   trình !?  \  n {$N+} 6Y liên G 8  -)* ,2;

3.2 Các phép toán trên $B ;2 UR +, -, *, /

Chú ý: Trên $B ;2 U không V W các phép toán DIV và MOD.

3.3 Các hàm ;2  ;T 01 cho $B ;2 nguyên và ;2 UR

SQRT(x):  !E D 8) hai  x (x0)

ARCTAN(x):  !E arctang(x) theo radian

TRUNC(x):  !E ,2 nguyên / !? x  K   bé  x

FRAC(x):  !E * /  )* phân  x

ROUND(x): Làm tròn ,2 nguyên x

PRED(n):  !E giá n 6=  ? n

SUCC(n):  !E giá n 6= sau n

Trang 8

ODD(n): Cho giá n TRUE G n là ,2 -˜;

INC(n): D n thêm 1 6 !n (n:=n+1)

DEC(n):  n 6 1 6 !n (n:=n-1)

4 3Y ký 4

- L khoá: CHAR

- Kích  ? 1 byte

- Y 8Y N™  ký 4$ ta có  Y ,H N   trong ,2 các cách sau 6I>

 7 ký 4 trong 7* NK nháy 6; Ví N 'A', '0'

 Dùng hàm CHR(n) (trong 6B n là mã ASCII  ký 4 / 8Y N™c; Ví N CHR(65)

8™ N™ ký 4 'A'

 Dùng ký 9 #n (trong 6B n là mã ASCII  ký 4 / 8Y N™c; Ví N #65

- Các phép toán: =, >, >=, <, <=,<>

* Các hàm trên Y ký 4

- UPCASE(ch):  !E ký 4 in hoa   = !? ký 4 ch Ví N  UPCASE('a') = 'A'

- ORD(ch):  !E ,2  = 4 trong 8  mã ASCII  ký 4 ch Ví N ORD('A')=65

- CHR(n):  !E ký 4   = trong 8  mã ASCII có ,2  = 4 là n Ví N 

CHR(65)='A'

- PRED(ch): cho ký 4 6=  ? ký 4 ch Ví N  PRED('B')='A'

- SUCC(ch): cho ký 4 6= sau ký 4 ch Ví N  SUCC('A')='B'

II KHAI BÁO

-

- Cú pháp:

CONST <Tên <… = <Giá n…y

7

CONST <Tên <… = „Y  = <…y

Ví N :

Name = 'Tran Van Hung';

Continue = FALSE;

Logic = ODD(5); {Logic =TRUE}

Chú ý:

ORD

III KHAI BÁO pœ%

- G là  6# - M mà giá n  nó có  Y thay 6P trong quá trình  4 9  

trình

Trang 9

- Cú pháp:

VAR <Tên 8G…$„5 8G 2>, ] : „3Y N' -9…y

Ví N :

VAR x, y: Real; {Khai báo hai 8G x, y có Y là Real}

a, b: Integer; {Khai báo hai 8G a, b có Y integer}

Chú ý: Ta có B 36 khai báo %N? 36 gán giá C $> "  cho %N %^ cách ;T 01 cú

pháp  sau:

CONST <Tên 8G… „3Y… = <Giá n…y

Ví N :

CONST x:integer = 5;

? khai báo 8G x  trên, trong   trình giá n  8G x có  Y thay 6P; `E này

không 6@ G chúng ta khai báo x là <c;

IV

- Ngoài các Y N' -9 do Turbo Pascal cung K*$ ta có  Y 6n  b các Y N' -9 ?

N4 trên các Y N' -9 6A có

- Cú pháp:

TYPE <Tên Y… = <Mô  Y…y

VAR <Tên 8G…„5 Y…y

Ví N :

TYPE Sothuc = Real;

Tuoi = 1 100;

ThuNgay = (Hai,Ba,Tu, Nam, Sau, Bay, CN)

tt : Tuoi;

Day: ThuNgay;

V

Y  = (expression) là công  = tính toán mà trong 6B bao J các phép toán, các

<$ các 8G$ các hàm và các NK 7 6;

Ví N : (x +sin(y))/(5-2*x) 8Y  = ,2 1

Trong  8Y  =$  = 4  tiên  các phép toán 6 M -9 kê theo  = 4 sau:

 K 7 ()

 Phép toán  ngôi (NOT, -)

 Phép toán *, /, DIV, MOD, AND

 Phép toán +, -, OR, XOR

 Phép toán so sánh =, <, >, <=, >=, <>, IN

VI CÂU

Trang 10

6.1 Câu -9 6  

- Câu <_ gán (:=): <Tên 8G…~„Y  =…y

- Các -9 dK  )* N' -9 READ/READLN, WRITE/WRITELN

-

6.2 Câu -9 có K trúc

- Câu -9 ghép: BEGIN END;

- Các K trúc 6E  Y IF , CASE , FOR , REPEAT , WHILE

6.3 Các -9 dK  )* N' -9

6.3.1 L_ SH 0a <_

Y dK N' -9 ra màn hình, ta ,H N  ba N# sau:

(1) WRITE(<tham ,2 1> [, <tham ,2 2>, ]);

(2) WRITELN(<tham ,2 1> [, <tham ,2 2>, ]);

(3) WRITELN;

Các     trên có  = D  sau:

(1) Sau khi dK giá n  các tham ,2 ra màn hình thì con ƒ không d2 dòng

(2) Sau khi dK giá n  các tham ,2 ra màn hình thì con ƒ d2 6/ dòng G* theo

(3)ZK ra màn hình  dòng 2;

Các tham ,2 có  Y là các <$ 8G$ 8Y  =; %G có  E tham ,2 trong câu -9

thì các tham ,2 *  6 M phân cách nhau 8Q NK * R>;

Khi ,H N  -9 WRITE/WRITELN, ta có hai cách !G không qui cách và có qui

cách:

- :N không qui cách: N' -9 dK ra ,£ 6 M canh -E Q phía bên trái %G N' -9 là ,2  4

thì ,£ 6 M in ra N ? N# 8Y N™ khoa 1;

Ví N :

WRITELN(x); WRITE(sin(3*x));

- :N có qui cách: N' -9 dK ra ,£ 6 M canh -E Q phía bên * ;

Ví N :

WRITELN(x:5); WRITE(sin(13*x):5:2);

Câu -9 3G 0 trên màn hình Writeln('Hello');

Writeln('Hello':10);

Writeln(500);

Writeln(500:5);

Writeln(123.457)

Writeln(123.45:8:2)

Hello Hello 500 500 1.2345700000E+02 123.46

6.3.2 cP- 0a <_

Trang 11

Y  )* N' -9 L bàn phím vào các 8G có Y N' -9  R `L các 8G Y

BOOLEAN), ta ,H N  cú pháp sau 6I>

km(%`„8G 1> $„8G ]…$;;;$„8G n>]);

Chú ý: Khi d- câu <_ READLN; (không có tham ;2F? ) trình ;@ 06 <W  

;T 01 H phím ENTER  WJ N-,

6.4 Các hàm và

 Hàm KEYPRESSED: Hàm  !E giá n TRUE G  có  phím 8K Œ 6 M

 K$ G không hàm cho giá n là FALSE

 Hàm READKEY: Hàm có  = D 61  ký 4 L 8 69 bàn phím

     GOTOXY(X,Y:Integer): Di  >Y con ƒ 6G  X dòng Y

     CLRSCR: Xoá màn hình và 6  con ƒ !E góc trên bên trái màn hình

     CLREOL: Xóa các ký 4 L !n trí con ƒ 6G G dòng

     DELLINE: Xoá dòng # !n trí con ƒ và NJ các dòng Q phía N ? lên

     TEXTCOLOR(color:Byte):  G -)* màu cho các ký 4; Trong 6B color 

[0,15]

     TEXTBACKGROUND(color:Byte):  G -)* màu E cho màn hình

Bài )* 2.1: G   trình  )* vào 6 dài hai #  tam giác và góc ' hai #

6B$ sau 6B tính và in ra màn hình N9 tích  tam giác

Ý >:

Công  = tính N9 tích tam giác: S = sin( ) !? a,b là 6 dài 2 # và  là góc ¤*

2

1a b 

' 2 # a và b

Bài )* 2.2: G   trình tính n x, x>0

Ý >:

Ta có: n x = x n =

1

x n

e ln

1

Bài )* 2.3: G   trình  )* vào 2 ,2 a, b Sau 6B hoán 6P giá n  2 ,2 6B

a/ Cho phép dùng 8G trung gian

b/ Không 6 M phép dùng 8G trung gian

Bài )* 2.4: G   trình  )* vào các ,2 nguyên: a, b, x, y, sau 6B in ra màn hình

G 0  các 8Y  = sau:

Trang 12

a/ x y b/ c/ xy , x>0 d/ e

x

y

2

( )( )

( )

r

h a

  

 

4 2 3

2 9 1

|asin ( )2 xx|

Bài )* 2.5: G   trình tính ,9 tích tam giác theo công  = sau:

S = p p a p b p c(  )(  )(  ) !? p = (a+b+c)1

2

Trang 13

Chương 3 CÁC CÂU LỆNH CÓ CẤU TRÚC

I CÂU

1.1 (9 IF

Cú pháp:

(1) IF B THEN S;

(2) IF B THEN S1 ELSE S2;

a 6J  4 9

Chú ý: Khi ;T 01 câu <_ IF thì "]  6 khoá ELSE không "A có 0H H -IJ

(;).

1.2 (9 CASE

Cú pháp:

CASE B OF

Const 1: S1; Const 2: S2;

Const n: Sn; END;

CASE B OF

Const 1: S1; Const 2: S2;

Const n: Sn; ELSE Sn+1;

END;

Trong 6B

 B: Y  = Y vô ? 6G 6 M  Y nguyên, Y logic, Y ký 4$ Y

-9 kê

(2)

B

-S1

S2

(1)

B

-S

Trang 14

 Const i:

NK * R>c 7 các 6# < (dùng hai NK  K 6Y phân cách ' giá n 6/ và

giá n 2c;

 Giá n  8Y  = và giá n  )* < i (i=1¸n) *  có cùng Y;

Khi 7* -9 CASE,   trình ,£ Y tra:

- %G giá n  8Y  = B < trong )* < const i thì máy ,£  4 9 -9 Si 

=;

- % M -#

+ 2 !? N# 1: Không làm gì  ;

+ 2 !? N# 2:  4 9 -9 Sn+1

II CÂU

2.1 Vòng -7* xác 6n

Có hai N# sau:

GW N

FOR „8G 6G.…~„ n Min> TO <giá n Max> DO S;

GW lùi

FOR „8G 6G.…~„ n Max> DOWNTO <giá n Min> DO S;

a 6J  4 9 vòng -7* FOR:

Chú ý: Khi ,H N  câu -9 -7* FOR / chú ý các 6Y sau:

 Không nên k _ thay "l giá C m %N "N bên trong vòng <d- FOR vì làm 

3PJ có B ;@ không $B soát "A %N "N,

Dạng tiến

G 6G.~w

G 6G.„~wd

+

-Thoát

S;

p%:`G 6G.cy

Dạng lùi

G 6G.~wd

G 6G.…~wd

+

-Thoát

S;

m:`G 6G.cy

...

LAP-TRINH Sai NK L (-) phép tốn

6.3 GH H - IJ (;)

K  K * R> 6 M dùng 6Y D cách '' câu -9  ; Không nên Y NK  K

* R> NK G thúc câu -9  ;... TO 10 DO Write(i);

Trong câu -9  trên, -9  Write(i) 6 M  4 9 10 -/ ; %G Y NK  K * R>

G thúc câu -9  -9  Write(i)  \  4 9 -/ ;

6.4 L 4 thích...  ) Zurich ` > abc 6E dK D 1970 Ông -K> tên Pascal 6Y h 9 nhà

toán

1 Các )* tin /  G -) * trình !? Turbo Pascal

Y -) * trình 6 M !? Turbo Pascal, 2  Y

Ngày đăng: 29/03/2021, 17:18

TỪ KHÓA LIÊN QUAN

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

w