Đề cương bài giảng JAVA - Pdf 14

Trang 1
Tr-ờng đại học s- phạm kỹ thuật h-ng yên
khoa công nghệ thông tin
---------------ooo------------------
Đề c-ơng bài giảng Java
Nhúm biờn son: 1. Hong Trng Th
2. Nguyn Duy Tõn
Trang 2
C LC
Chng 1: CÁC KHÁI NIM C BN.................................................................. 5
BÀI 1. LÀM QUEN VI JAVA................................................................................... 5
I. Lch s java ........................................................................................................... 5
II. Java em là ai .........................................................................................................5
II. Mt sc trng ca java ..................................................................................... 5
III. Các kiu ng dng Java........................................................................................7
IV. Máy o Java (JVM-Java Virtual Machine) ..........................................................7
BÀI 2 NN TNG CA JAVA ................................................................................9
I. Tp ký t dùng trong java ...................................................................................... 9
II. T khoá ca Java ..................................................................................................9
III. nh danh (tên) ................................................................................................. 10
IV. Cu trúc mt chng trình java .........................................................................10
V. Chng trình JAVA u tiên .............................................................................. 12
VI. Chú thích trong chng trình ............................................................................ 14
VII. Kiu d liu ..................................................................................................... 15
VII. Mt s phép toán trên kiu d liu nguyên thu ............................................... 17
IX. Toán t chuyn kiu ..........................................................................................23
X. Các hàm toán hc ............................................................................................... 24
XI. Các phép toán trên kiu kí t .............................................................................26
BÀI 3. IU KHIN LUNG CHNG TRÌNH .................................................... 27
I. Cu trúc r nhánh ................................................................................................. 27
II. Cu trúc lp while và do-while ........................................................................... 30

BÀI 6. LP C S TRU TNG .........................................................................61
BÀI 7. A HÌNH THÁI ............................................................................................ 62
BÀI 8. GIAO DIN, LP TRONG, GÓI ................................................................... 63
I. Giao din ............................................................................................................. 63
II. Lp trong ............................................................................................................ 65
Bài 9. MNG, XÂU KÝ T, TP HP ................................................................... 67
I. Mng ...................................................................................................................67
II. Xâu ký t ............................................................................................................ 70
III. Lp StringTokenizer .........................................................................................75
IV. Mt s lp c bn ca Java ............................................................................... 77
V. Các lp tp hp .................................................................................................. 83
Chng 3: X LÝ NGOI L ............................................................................ 92
I. Mc ích ca vic x lý ngoi l ..........................................................................92
II. Mô hình s lý ngoi l ca java .......................................................................... 92
III. c t ngoi l ................................................................................................... 93
III. Ném ra ngoi l ................................................................................................. 93
IV. Bt ngoi l ....................................................................................................... 93
V. Khi ‘finally’ ...................................................................................................... 95
VI. Mt s lp ngoi l chun ca Java ................................................................... 96
Chng 4: LP TRÌNH A TUYN ........................................................................ 97
I. Các kin thc liên quan ........................................................................................ 97
II. Lp trình a tuyn trong Java .............................................................................. 98
Chng 5: NHP XUT (Input/Output) ............................................................... 104
I. Lp lung .......................................................................................................... 105
II. Lp File ............................................................................................................ 113
Chng 6: LP TRÌNH  HO AWT ................................................................ 120
I. Gii thiu v h thng  ho ca Java .............................................................. 120
II. Trình qun lý hin th trong Java ...................................................................... 124
III. X lý s kin trong Java .................................................................................. 125
Chng 7 LP TRÌNH C S D LIU .............................................................. 143

Chng 12: EJB (ENTERPRISE JAVA BEANS) ........................................................ 234
I. Tng quan v JavaBean ..................................................................................... 234
II. Xây dng thành phn JavaBean ........................................................................ 234
III. Tìm hiu Instrospector ..................................................................................... 247
IV. óng gói JavaBean ......................................................................................... 249
Trang 5
Chng 1: CÁC KHÁI NIM C BN
BÀI 1. LÀM QUEN VI JAVA
I. Lch s java
Java là mt ngôn ng lp trình c Sun Microsystems gii thiu vào tháng 6 nm
1995. Tó, nó ã tr thành mt công c lp trình ca các lp trình viên chuyên nghip.
Java c xây dng trên nn tng ca C và C++. Do vy nó s dng các cú pháp ca C và
các c trng hng i tng ca C++.
Ban u Java c thit k làm ngôn ng vit chng trình cho các sn phm
in t dân dng nhu video, tivi, n thoi, máy nhn tin.. . Tuy nhiên vi s mãnh
m ca Java ã khin nó ni ting n mc vt ra ngoài s tng tng ca các nhà thit
k ra nó.
Java khi thu tên là Oak- là cây si mc  phía sau vn phòng ca nhà thit k
chính ông Jame Gosling, sau này ông thy rng ã có ngôn ng lp trình tên Oak ri, do
vy nhóm thit k quyt nh i tên, “Java” là cái tên c chn, Java là tên ca mt
quán cafe mà nhóm thit k java hay n ó ung.
II. Java em là ai
Java là ngôn ng lp trình hng i tng, do vy không th dùng Java  vit
mt chng trình hng chc nng. Java có th gii quyt hu ht các công vic mà các
ngôn ng khác có th làm c.
Java là ngôn ng va biên dch va thông dch. u tiên mã ngun c biên dch
bng công c JAVAC  chuyn thành dng ByteCode. Sau ó c thc thi trên tng
loi máy c th nh chng trình thông dch JAVA. Mc tiêu ca các nhà thit k Java là
cho phép ngi lp trình vit chng trình mt ln nhng có th chy trên bt c phn
cng c th, th nên khu hiu ca các nhà thit k Java là “Write One, Run Any Where”.

i vi các chng trình vit bng C, C++ hoc mt ngôn ng nào khác, trình biên
dch s chuyn tp lnh thành mã máy (machine code), hay lnh ca b vi x lý. Nhng
lnh này ph thuc vào CPU hin ti trên máy bn. Nên khi mun chy trên loi CPU
khác, chúng ta phi biên dch li chng trình.
4. Mnh m
Java là ngôn ng yêu cu cht ch v kiu d liu, vic ép kiu tng ba bãi ca
C, C++ nay c hn ch trong Java, u này làm chng trình rõ ràng, sáng sa, ít li
n.Java kim tra lúc biên dch và c trong thi gian thông dch vì vy Java loi b mt
mt s loi li lp trình nht nh.Java không s dng con tr và các phép toán con tr.
Java kim tra tt c các truy nhp n mng, chui khi thc thi m bo rng các truy
nhp ó không ra ngoài gii hn kích thc.
Trong các môi trng lp trình truyn thng, lp trình viên phi t mình cp phát
b nh. Trc khi chng trình kt thúc thì phi t gii phóng b nhã cp. Vn  ny
sinh khi lp trình viên quên gii phóng b nhã xin cp trc ó. Trong chng trình
Java, lp trình viên không phi bn tâm n vic cp phát b nh. Qúa trình cp phát, gii
phóng c thc hin tng, nh dch v thu nht nhng i tng không còn s dng
na (garbage collection).
 ch by li ca Java giúp n gin hóa qúa trình x lý li và hi phc sau li.
5. H tr lp trình a tuyn
ây là tính nng cho phép vit mt chng trình có nhiu n mã lnh c chy
song song vi nhau. Vi java ta có th vit các chng trình có kh nng chy song song
mt cách d dàng, hn th na vic ng b tài nguyên dùng chung trong Java cng rt
ng gin. u này là không th có i vi mt s ngôn ng lp trình khác nh C/C++,
pascal …
6. Phân tán
Java h try  các mô hình tính toán phân tán: mô hình client/server, gi th
tc t xa…
7. H tr internet
Mc tiêu quan trng ca các nhà thit k java là to u kin cho các nhà phát trin
ng dng có th vit các chng trình ng dng internet và web mt cách d dàng, vi

5. ng dng c s d liu
Các ng dng này s dng JDBC API  kt ni ti c s d liu. Chúng có th là
Applet hay ng dng, nhng Applet b gii hn bi tính bo mt.
6. ng dng mng
Java là mt ngôn ng rt thích hp cho vic xây dng các ng dng mng. Vi th
vin Socket bn có th lp trình vi hai giao thc: UDP và TCP.
7. ng dng nhiu tng
Vi Java bn có th xây dng phân tán nhiu tng vi nhiu h tr khác nhau nh:
RMI, CORBA, EJB, Web Service
8. ng dng cho các thit b di ng
Hin nay phn ln các thit b di ng nh: in thoi di ng, máy tr giúp cá
nhân… u h tr Java. Th nên bn có th xây dng các ng dng chy trên các thit b
di ng này. ây là mt kiu ng dng khá hp dãn, bi vì các thit b di ng này ngày
càng ph bin và nhu cu có các ng dng chy trên ó, c bit là các ng dng mang
tính cht gii trí nh game
IV. Máy o Java (JVM-Java Virtual Machine)
Máy o là mt phn mm mô phng mt máy tính tht (máy tính o). Nó có tp
hp các lnh logic  xác nh các hot ng ca máy tính và có mt hu hành o.
Ngi ta có th xem nó nh mt máy tính tht (máy tính có phn cng o, hu hành
Trang 8
o). Nó thit lp các lp tru tng cho: Phn cng bên di, hu hành, mã ã biên
dch.
Trình biên dch chuyn mã ngun thành tp các lnh ca máy o mà không ph thuc
vào phn cng và hu hành c th. Trình thông dch trên mi máy s chuyn tp lnh
này thành chng trình thc thi. Máy o to ra mt môi trng bên trong  thc thi các
lnh bng cách:
Ø Np các file .class
Ø Qun lý b nh
Ø Dn “rác”
Vic không nht quán ca phn cng làm cho máy o phi s dng ngn xp  lu tr

S dng  khai báo lp, phng thc tru tng
boolean
Kiu d liu logic
break
c s dng  kt thúc vòng lp hoc cu trúc switch
byte
kiu d liu s nguyên
case
c s dng trong ln switch
cast
Cha c s dng ( dành cho tng lai)
catch
c s dng trong x lý ngoi l
char
kiu d liu ký t
class
Dùng  khai báo lp
const
Cha c dùng
continue
c dùng trong vòng lp  bt u mt vòng lp mi
default
c s dng trong lnh switch
do
c dùng trong vòng lp u kin sau
double
kiu d liu s thc
else
kh nng la chn th hai trong câu lnh if
extends

null mt i tng không tn ti
package
Dùng  khai báo mt gói
private
c t truy xut
protected
c t truy xut
public
c t truy xut
return
Quay t phng thc v ch gi nó
short
kiu s nguyên
static
Dùng  khai báo bin, thuc tính tnh
super
Truy xut n lp cha
switch
lnh la chn
synchronized
mt phng thc c quyn truy xut trên mt i tng
this
Ám ch chính lp ó
throw
Ném ra ngoi l
throws
Khai báo phng thc ném ra ngoi l
true
Giá tr logic
try

IV. Cu trúc mt chng trình java
- Mi ng dng Java bao gm mt hoc nhiu n v biên dch (mi n v biên dch
là mt tp tin có phn m rng Java)
- Mi n v biên dch bao gm mt hoc nhiu lp
Trang 11
- Mi ng dng c lp phi có duy nht mt phng thc main (m bt u ca ng
dng)
- Mi n v biên dch có nhiu nht mt lp c khai báo là public, nu nh trong
n v biên dch có lp public thì tên ca n v biên dch phi trùng vi tên ca lp
public (ging ht nhau c ký t hoa ln ký t thng)
- Bên trong thân ca mi lp ta khai báo các thuc tính, phng thc ca lp ó, Java
là ngôn ng hng i tng, do vy mã lnh phi nm trong lp nào ó. Mi lnh u
c kt thúc bng du chm phy “;”.
- Trong ngôn ng Java, lp là mt n v mu có cha d liu và mã lnh liên quan n
- mt thc th nào ó. Khi xây dng mt lp, thc cht bn ang to ra mt mt kiu d
liu. Kiu d liu mi này c s dng  xác nh các bin mà ta thng gi là “i
ng”. i tng là các th hin (instance) ca lp. Tt c các i tng u thuc v
mt lp có chung c tính và hành vi. Mi lp xác nh mt thc th, trong khi ó mi
i tng là mt th hin thc s.
- Khi ban khai báo mt lp, bn cn xác nh d liu và các phng thc ca lp ó.
V c bn mt lp c khai báo nh sau:
//Nhp khu các th vin
import th_vin;
//Xây dng các lp
public class clsMain{

public static void main(String args[])
{
//m bt u ca chng trình
}

Nó chi phi vic truy nhp n các thành phn ca lp bao ph chúng. Có hai loi lp
trong ó là lp trong tnh “static” và lp trong không tnh “non static”
+ Lp trong tnh (static)
Lp trong tnh c nh ngha vi t khoá “static”. Lp trong tnh có th truy nhp
vào các thành phn tnh ca lp ph nó.
+ Lp trong không tnh (non static)
Lp bên trong (không phi là lp trong tnh) có th truy nhp tt c các thành phn ca
lp bao nó, song không th ngc li.
V. Chng trình JAVA u tiên
 có th biên dch và chy các chng trình java ta phi cài
- JRE (Java Runtime Enviroment) môi trng thc thi ca java, nó bao gm: JVM (Java
Virtual Machine) máy o java vì các chng trình java c thông dch và chy trên
máy o java và tp các th vin cn thit  chy các ng dng java.
- B công c biên dch và thông dch JDK ca Sun Microsystem
Sau khi cài t JDK (gi s th mc cài t là C:\JDK1.4) ta s nhn c mt cu trúc
th mc nh sau:
- biên dch mt chng trình java sang mã byte code ta dùng lnh
C:\JDK1.4\BIN\javac TênTp.java
- thông dch và chy chng trình ta s dng lnh
Trang 13
C:\JDK1.4\BIN\java TênTp
 biên dch và chy chng trình Java n gin ta nên thit t hai bin môi trng
“paht” và “classpath” nh sau:
-i vi dòng WinNT:
+ R-Click vào My Computerà chn Propertiesà chn AdvancedàEnviroment
Variables
+ Trong phn System variables chn new  thêm bin môi trng mi, trong hp
thoi hin ra gõ “classpath” vào ô Variable Name và
“.;C:\jdk1.4\lib\tools.jar;C:\jdk1.4\lib\dt.jar;C:\jdk1.4\jre\lib\rt.jar” trong ô variable
value (chú ý không gõ du “ vào, mc ích  cho d nhìn mà thôi)

HelloWorld.
Sau khi thông dch và chy ta nhn c
VI. Chú thích trong chng trình
Trong java ta có 3 cách  ghi chú thích
Cách 1: s dng cp /* và */ ý ngha ca cp chú thích này ging nh ca C, C++
Cách 2: s dng cp // ý ngha ca cp chú thích này ging nh ca C, C++
Cách 3: s dng cp /** và */, ây là kiu chú thích tài liu (không có trong C/C++), nó
dùng  to ra tài liu chú thích cho chng trình.
Vi cách th nht và cách ba ta có th vit chú thích trên nhiu dòng, vi cách chú thích
hai ta ch có th chú thích trên mt dòng.
Chú ý: Trong java ta có tht chú thích âu?, câu tr li là: âu có tht c mt
du cách thì ó có tht chú thích.
Trang 15
VII. Kiu d liu
1. Các kiu d liu nguyên thu
T khoá Mô t Kích c Ti thiu Ti a
Lp bao
(kiu s nguyên)
byte s nguyên mt byte 8 bit -128 127 Byte
short s nguyên ngn 16 bit -2
15
2
15
-1 Short
int s nguyên 32 bit -2
31
2
31
-1 Integer
long s nguyên dài 64 bit -2

Giao din
(Interface)
Là mt lp thun tru tng c to ra cho phép cài t
a tha k trong Java.
c m ca các bin kiu tham chiu là nó cha a ch ca i tng mà nó tr
n.
u nguyên thu
kiu logic boolean
Kiu s
Kiu s thc
Kiu kí t
Kiu s
boolean
char
byte short
int
long
float
doubl
e
Trang 16
Vùng nh ca bin tham chiu c cp phát  vùng nh stack còn vùng nh ca
i tng c cp phát  vùng nh heap. Vic truy xt vào vùng nh heap chm hn truy
xt vào vùng nh stack tuy nhiên java có c ch cho phép truy cp vào vùng nh heap vi
tc  xp x bng tc  truy cp vào vùng nh stack.
VIII. Khai báo bin
1. Khai báo bin
ng t ngôn ng C/C++,  khai báo bin trong java ta s dng cú pháp sau:
type name [=InitValue];
trong ó:

int j=10; // c i và j u sn sàng
}
// ch có i sn sàng
// j không sn sàng vì nm ngoài phm vi
}
Chú ý: Ta không th làm iu sau cho dù nó có th trong C/C++
{
int i=1;
{ int i=10;// không c phép vì ã có mt bin cùng tên vi nó }
}
Nhng ngi thit k java cho rng u ó có th gây ln ln, do vy hã quyt
nh không cho phép che giu mt bin  phm vi ln hn.
Chú ý:
thi gian sng ca các i tng không tuân theo quy lut thi gian sng ca các
bin kiu nguyên thu.
VII. Mt s phép toán trên kiu d liu nguyên thu
1. Phép gán
Cú pháp Bin=BiuThc;
Phép gán c thc hin bng toán t ‘=’, nó có ngha là “ hãy tính toán giá tr biu
thc bên phi du gán, sau ó a giá tró vào ô nh có tên nm  bên trái du gán’
Chú ý:
+ Câu lnh gán gm mt du ‘=’
+ Kiu ca biu thc bên phi du gán phi tng thích vi kiu d liu ca bin
+ Trong java ta có th thc hin mt dy gán nh sau:
i = j = 10; // c i và j u có giá tr 10
Trang 18
2. Toán t toán hc
Ngôn ng java cng có các phép toán s hc nh các ngôn ng khác: + ( phép cng), - (
phép tr ), * ( phép nhân ),/ ( phép chia ), % ( phép toán chia ly phn nguyên)
Ta mô t tóm tt các phép toán s hc qua bng tng kt sau:

Ta tóm tt các phép toán qua bng sau:
Phép toán S dng Nhn v giá tr true khi
> op1 > op2 op1 ln hn op2
>= op1 >= op2 op1 ln hn hoc bng op2
< op1 < op2 op1 nh hn op2
<= op1 <= op2 op1 nh hn hoc bng op2
== op1 == op2 op1 bng op2
!= op1! = op2 op1 khác op2
Ví d: S dng các phép toán quan h
public class RelationalDemo {
public static void main(String[] args) {
// a few numbers
Trang 19
int i = 37;
int j = 42;
int k = 42;
System.out.println("Variable values...");
System.out.println(" i = " + i);
System.out.println(" j = " + j);
System.out.println(" k = " + k);
//greater than
System.out.println("Greater than...");
System.out.println(" i > j = " + (i > j)); // false
System.out.println(" j > i = " + (j > i));// true
System.out.println(" k > j = " + (k > j));// false, they are equal
//greater than or equal to
System.out.println("Greater than or equal to...");
System.out.println(" i >= j = " + (i >= j));// false
System.out.println(" j >= i = " + (j >= i));// true
System.out.println(" k >= j = " + (k >= j));// true

i >= j = false
j >= i = true
k >= j = true
Less than...
Trang 20
i < j = true
j < i = false
k < j = false
Less than or equal to...
i <= j = true
j <= i = false
k <= j = true
Equal to...
i == j = false
k == j = true
Not equal to...
i! = j = true
k! = j = false
5. Phép toán logic
Java h tr 6 phép toán logic c ch ra trong bng sau:
Phép toán S dng Nhn v giá tr true khi
&& op1 && op2
C op1 và op2 u là true, giá tr ca op2 chc tính
khi op1 là true
|| op1 || op2
Hoc op1 hoc op2 là true, giá tr ca op2 chc tính
khi op1 là false
! ! op op là false
& op1 & op2
C op1 và op2 u là true, giá tr ca op2 luôn c tính

thích hp, các phép toán thao tác bit thc hin i s boolean trên các bit tng ng ca 2
toán hng  to ra kt qu
Ta tóm tt các phép toán trong bng sau:
Phép toán S dng Thc hin
& op1 & op2 Thc hin phép and các bit tng ng ca op1 vi op2
| op1 | op2 Thc hin phép or các bit tng ng ca op1 vi op2
^ op1 ^ op2 Thc hin phép xor các bit tng ng ca op1 vi op2
~ ~op2 Thc hin phép lt not các bit ca op2
Bng giá tr chân lý ca các phép toán ái s boolean:
Trang 22
Phép AND
op1 op2 Result
0 0 0
0 1 0
1 0 0
1 1 1
Phép XOR
op1 op2 Result
0 0 0
0 1 1
1 0 1
1 1 0
op1 op2 Result
0 0 0
0 1 1
1 0 1
1 1 1
Ví d:
1101// 13
& 1100// 12

>>>= op1 >>>= op2 op1 = op1 >>> op2
8. Th t u tiên ca các phép toán
Th t u tiên ca các phép toán xác nh trình t tính toán giá tr ca mt biu thc, java
có nhng quy tc riêng  xác nh trình t tính toán ca biu thc, ta phi nh quy tc
sau:
Ø Các phép toán mt ngôi bao gi cng c thc hin trc tiên
Ø Trong mt biu thc có nhiu phép toán thì phép toán nào có  u tiên cao hn s
c thc hin trc phép toán có  u tiên thp
Ø Trong mt biu thc có nhiu phép toán có  u tiên ngang nhau thì chúng sc
tính theo trình t t trái qua phi
Ta có bng tóm tt th t u tiên ca các phép toán trong bng sau:
postfix operators []. (params) expr++ expr--
unary operators ++expr --expr +expr -expr ~!
creation or cast new (type)expr
multiplicative */ %
additive + -
shift << >> >>>
relational < > <= >= instanceof
equality ==! =
Bitwise AND &
Bitwise exclusive OR ^
Bitwise inclusive OR |
Logical AND &&
Logical OR ||
Conditional ?:
Assignment = += -= *=/ = %= &= ^= |= <<= >>= >>>=
Trong bng trên th t u tiên ca các phép toán c gim t trên xung di,
trên cùng mt hàng thì chúng có  u tiên ngang nhau.
• Toán t dy
Không ging nh C/C++, trong java ch duy nht mà ta có tht toán t dy là bên trong

(int) 2.5 * 2.5 = 5
(int)(2.5 * 2.5) = 6
1+(float)5/2=1+5/(float)2=1+(float)5/(float)2=3.5
Chú ý:
- Phép toán chuyn kiu là phép toán có  u tiên cao, nên (int)3.5*2≠(int)(3.4*2)
- Cn chú ý khi chuyn mt biu thc kiu d liu có min giá tr ln sang mt kiu
có min giá tr nh hn. Trong trng hp này có th bn s b mt thông tin.
X. Các hàm toán hc
Các hàm toán hc nh sin, cos, sqrt c java vit sn trong lp Math. Lp này nm trong
gói java.lang (gói mc nh) do vy bn không cn phi thêm câu lnh import u
chng trình  có th s dng lp này. Các hàm này c vit là các phng thc tnh do
vy ta không cn phi to ra th hin ca lp Math.
Bng sau lit kê mt s phng thc tnh trong lp Math:
Tên phng thc Mô t ý ngha Kiu tham s Kiu tr v
sin(arg)
tính sin ca arg arg là mt biu thc kiu
double th hin mt cung
theo radians
double
cos(arg) tính cos ca arg arg là mt biu thc kiu
double th hin mt cung
theo radians
double
tan(arg)
tính tang ca arg arg là mt biu thc kiu
double th hin mt cung
theo radians
double
asin(arg)
tính sin-1 (arcsin) arg là mt biu thc kiu double trong h

tính tr tuyt i
ca arg
arg là mt biu thc kiu
int, long, float, hoc double
The same type as
the argument
max (arg1,arg2)
Nhn v giá tr ln
trong hai tham s
arg1, arg2 là mt biu thc
kiu int, long, float, hoc
double
Nhn v kiu
cùng kiùu vi
tham s
min (arg1,arg2)
Nhn v giá tr
nh trong hai tham
s
arg1, arg2 lµ mét biùu thøc
kiùu int, long, float, hoÆc
double
Nhn v kiu
cùng kiùu vi
tham s
ceil(arg)
Nhn v giá tr
nguyên nh hn
hoc bng arg
arg là biu thc kiu float

arg là biu thc kiu double
double
pow (arg1,arg2)
tính arg1arg2 C arg1 và arg2 là các biu
thc kiu double
double
exp(arg)
tính earg arg là biu thc kiu double double
log(arg)
tính logarithm s
e ca arg
arg là biu thc kiu double double
random()
Nhn v mt s
gi ngu nhiên
nm trong khon
[0, 1)
Không có tham s double
Ví d v các hàm toán hc trong lp Math, bn hãy gõ on chng trình sau và cho chy
th thy c kt qu tính toán ca các hàm toán hc.


Nhờ tải bản gốc
Music ♫

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