BÀI TP MÔN LTHT VI JAVA
1. Lp chng trình tính các tng sau vi đ chính xác 0.001 theo công thc:
sin
S = 1/1
2
+ 1/2
2
+ 1/3
2
+ …+ 1/n
2
+…
()
)!12(
)1(
!5!3
1253
+
−+++−=
+
n
xxx
xx
n
n
+ . . .
T =1 –1/3 + 1/5 – 1/7 +
2. Trong các khai báo sau đây ca hàm main, hãy cho bit khai báo nào đúng?
khai báo nào sai?. Nu sai hãy ch ra li?
a. static void main(String arg) { /* Các câu lnh */}
b. Public static Void main(String arg[]){/* Các câu lnh */}
c. public static void main(String arg) { /* Các câu lnh */}
d. public static int main(string ar[]){/* Các câu lnh */}
e. public static void main(String [] a){/* Các câu lnh */}
3. Hãy cho bit trong các tên sau đây, nhng tên nào đc đt theo đúng quy cách,
nhng tên nào không đc đt đúng quy cách (tên sai)? Nu sai hãy sa li cho
đúng.
Max TongTien$ hoTen
Min Dia@Chi NmSinh
Tong am So_Pi Tong-Thu
Tng_Duong 2LanTich Tich2So
4. Vit chng trình thc hin các công vic sau:
- Nhp vào mt dãy gm n s nguyên t bàn phím (n-nguyên dng nhp t
bàn phím)
- Sp xp dãy va nhp theo th t gim dn ca các phn t
- Hin th ra màn hình danh sách tt c các s nguyên t ca dãy va nhp
5. Vit chng trình thc hin các công vic sau:
- Nhp vào mt dãy gm n s nguyên t bàn phím (n-nguyên dng nhp t
bàn phím)
1
- Sp xp dãy va nhp theo th t tng dn ca các phn t
- Hin th ra màn hình danh sách tt c các s nguyên t ca dãy va nhp
6. Vit chng trình thc hin các công vic sau:
- Nhp vào mt s nguyên dng n t bàn phím (2 ≤ n ≤ 100)
- Nhp vào mt dãy gm n s thc
- Hãy cho bit dãy s va nhp có phi là dãy đan du, dãy tng dn, gim
dn
- Hãy cho bit dãy va nhp có to thành cp s cng, cp s nhân
7. Vit chng trình thc hin các công vic sau:
- Nhp vào mt s nguyên dng n t bàn phím (2 ≤ n ≤ 100)
- Hin th ra màn hình danh sách tt c các s nguyên t ≤ n
- Hin th ra màn hình danh sách n s nguyên t đu tiên
- Hin th ra màn hình n s Fibonacci đu tiên (S Fibonacci là s tho mãn
điu kin: F
0
=F
1
=1; F
n
= F
n-2
+ F
n-1
,∀n≥2)
8. Vit chng trình Java xây dng lp XauKyTu vi các phng thc thc hin
các công vic sau:
-Các toán t to lp
- Nhp d liu cho xâu ký t
- m s t bt đu bi ch ‘H’
- m s t ca xâu
- m s ký t ‘a’ có mt trong xâu
- Chun hoá xâu theo các tiêu chí sau:
+ đu và cui xâu không còn các ký t trng vô ích
+ gia xâu, ti v trí bt k không có 2 ký t trng đng lin nhau
9. Gi s có lp Mang đc đnh ngha vi hai thuc tính sau:
- private int n; // S phn t ca mng
- private float A[100]; // Danh sách các phn t ca mng
Hãy vit chng trình đnh ngha lp Mang vi các thuc tính nh trên, có các
phng thc thc hin các công vic sau:
- Phng thc nhapDL() cho phép nhp giá tr cho các phn t ca mng
- Phng thc sapXep() cho phép sp xp các phn t ca mng theo th
t tng dn
2
- Phng thc kiemTraDanDau() cho phép kim tra mng trên có to
thành dãy s đan du hay không?
10. Vit chng trình đnh ngha lp MaTranVuong vi các thuc tính đc đnh
ngha nh sau:
private int n; //Cp ca ma trn
private float[][] A;
Hãy vit mã lnh trong Java đnh ngha lp MaTranVuong nói trên và xây dng
các phng thc sau:
- Phng thc nhapDL() đ nhp giá tr cho các phn t ca ma
trn
- Phng thc hienThi() đ hin th ni dung ca ma trn
- Phng thc congMT(MaTranVuong mt1, MaTranVuong mt2)
đ thc hin vic cng hai ma trn cùng cp
- Phng thc nhanMT(MaTranVuong mt1, MaTranVuong mt2)
đ thc hin vic nhân hai ma trn vuông
11. Gi s thông tin v mi khách hàng gm: Mã , h tên, tui, đa ch liên h, s
đin thoi, email.
a. Hãy xây dng lp KhachHang có:
- Các toán t to lp
- Phng thc đ nhp thông tin cho mt khách hàng
- Phng thc đ hin th thông tin ca khách hàng hin thi
b. Xây dng lp QLKhachHang có cài đt các phng thc thc hin các
công vic sau:
- Nhp vào thông tin cho mt danh sách gm n khách hàng (n -nhp t bàn
phím)
- Sp xp danh sách khách hàng theo th t gim dn ca tui
- Hin th ra màn hình thông tin ca tt c các khách hàng có tên là
“Nguyen Van Duc” (không phân bit ch hoa hay ch thng)
12. Gi s thông tin v mi hc sinh bao gm : H tên, lp, đim toán, đim lý,
đim hoá, đim trung bình. Hãy:
a. nh ngha lp HocSinh vi các phng thc sau:
- Toán t to lp
3
- Phng thc nhapDL() đ nhp các thông tin cho mt hc sinh (không
nhp đim trung bình)
- Phng thc tinhDTB() đ tính đim TB cho mi hc sinh theo công thc
sau: im TB = (đim toán + đim lý + đim hóa ) /3
b. Xây dng lp QLHocSinh có cài đt các phng thc thc hin các công vic
sau:
- Nhp vào mt danh sách gm n hc sinh
- Sp xp danh sách các hc sinh theo th t gim dn ca đim trung bình
- Nhp vào mt đim, hãy cho bit trong danh sách trên có bao nhiêu hc
sinh có đim TB ln hn hoc bng đim va nhp
13. Gi s thông tin v mi xe máy gm: S máy, s khung, hãng SX, mu xe, giá
thành. Hãy:
a. nh ngha lp XeMay vi các phng thc sau:
- Toán t to lp
- Phng thc nhapDL() đ nhp các thông tin cho mt XeMay
- Phng thc hienThi() đ hin th thông tin ca XeMay
b. Xây dng lp QLXeMay có cài đt các phng thc thc hin các công vic
sau:
- Nhp vào mt danh sách gm n xe máy (n – nguyên dng nhp t bàn
phím)
- Hin th thông tin v danh sách các xe máy va nhp trên
- Hin th thông tin v các xe máy có giá thành ln nht
14. Gi s thông tin v mi nhân viên gm: h và tên, gii tính, h s lng, chc
v, ph cp, tng lng. Hãy:
a. nh ngha lp NhanVien vi các phng thc sau:
- Toán t to lp
- Phng thc nhapDL() đ nhp các thông tin cho mt nhân viên (Không
nhp: tng lng, ph cp)
- Phng thc hienThi() đ hin th thông tin ca nhân viên
- Phng thc tinhPhuCap() đ tính ph cp cho mi nhân viên theo công
thc sau:
4
Chc v Ph cp
Giám đc 500000đ
Phó giám đc 300000đ
Trng phòng 200000đ
Phó phòng 100000đ
Nhân viên 50000đ
- Phng thc tinhTongLuong() đ tính tng lng cho mi nhân viên theo
công thc sau: Tng lng = 31000 * H s lng + ph cp
b. Xây dng lp QLNhanVien có cài đt các phng thc thc hin các công vic
sau:
- Nhp vào mt danh sách gm n nhân viên (n – nguyên dng nhp t bàn
phím)
- Hin th thông tin v danh sách các nhân viên va nhp trên
- Sp xp danh sách các nhân viên trên theo th t gim dn ca tng
lng
- Gi s trong thi gian ti, công ty phi cho ngh hu đi vi mt s ngi
quá tui lao đng (nam – trên 55, n - trên 50). Hãy cho bit thông tin v
nhng ngi s đc ngh hu trong thi gian ti.
5
CHNG TRÌNH NGUN MT S BÀI TP JAVA
Bài 4
/*
Viet chuong trinh thuc hien cac cong viec sau
a. Nhap vao mot day gom n so nguyen tu ban phim
b. Sap xep day vua nhap theo thu tu giam dan cua cac phan tu
c. Hien thi ra man hinh tat ca cac so nguyen to cua day vua nhap
*/
import java.io.*;
public class Bai4{
private int n; // So phan tu cua day
private int A[]; // Mang cac phan tu cua day
public String nhapXau(){ // Ham nhap vao mot xau ky tu tu ban
phim
DataInputStream st=new DataInputStream(System.in);
String s;
try{
s=st.readLine();
}catch(IOException e){s="0";}
return s;
}
public int doiInt(String s){ // Doi mot xau sang dang so
int so;
try{
so=Integer.valueOf(s).intValue();
}catch(NumberFormatException e){so=0;}
return so;
}
public boolean nguyenTo(int k){ // Ham kiem tra xem so k co phai
la so nguyen to hay khong
if (k<2) return false;
for(int i=2;i<=k/2; i++)
if (k%i==0) return false;
return true;
}
public void nhapDL(){ // Nhap du lieu cho mot mang gom n phan tu
System.out.print("Nhap vao so phan tu cua day :");
// Nhap so phan tu
n=doiInt(nhapXau());
A=new int[n]; // Khoi tao mang
System.out.println("Nhap vao gia tri cho cac phan tu ");
// Nhap gia tri cho cac phan tu cua mang
for(int i=0;i<n;i++)
{
System.out.print("A["+i+"] =");
A[i]=doiInt(nhapXau());
}
}
public void hienThi(){
for(int i=0;i<n;i++)
System.out.print(A[i] + " ");
6
}
public void sapXep(){ // Sap xep mang theo thu tu giam dan cua
cac phan tu
int tg;
for(int i=0;i<n-1;i++)
for(int j=i+1;j<n;j++)
if(A[i]<A[j])
{
tg=A[i];
A[i]=A[j];
A[j]=tg;
}
}
public void lietKeNgTo(){
for(int i=0;i<n;i++)
if(nguyenTo(A[i])) System.out.print(A[i] + " ");
}
public static void main(String arg[]){
Bai4 dayso=new Bai4();
dayso.nhapDL();
System.out.println("\n\n Day so vua nhap la \n");
dayso.hienThi();
dayso.sapXep();
System.out.println("\n\n Day so sau khi sap sep theo chieu
giam dan \n");
dayso.hienThi();
System.out.println("\n\n Danh sach cac so nguyen to trong
day la \n");
dayso.lietKeNgTo();
}
}
Bài 5
/*
Viet chuong trinh thuc hien cac cong viec sau
a. Nhap vao mot day gom n so nguyen tu ban phim
b. Sap xep day vua nhap theo thu tu giam dan cua cac phan tu
c. Hien thi ra man hinh tat ca cac so nguyen to cua day vua nhap
*/
import java.io.*;
public class Bai5{
private int n; // So phan tu cua day
private int A[]; // Mang cac phan tu cua day
public String nhapXau(){ // Ham nhap vao mot xau ky tu tu ban
phim
DataInputStream st=new DataInputStream(System.in);
String s;
try{
s=st.readLine();
}catch(IOException e){s="0";}
return s;
}
public int doiInt(String s){ // Doi mot xau sang dang so
int so;
try{
7
so=Integer.valueOf(s).intValue();
}catch(NumberFormatException e){so=0;}
return so;
}
public boolean nguyenTo(int k){ // Ham kiem tra xem so k co phai
la so nguyen to hay khong
if (k<2) return false;
for(int i=2;i<=k/2; i++)
if (k%i==0) return false;
return true;
}
public void nhapDL(){ // Nhap du lieu cho mot mang gom n phan tu
System.out.print("Nhap vao so phan tu cua day :");
// Nhap so phan tu
n=doiInt(nhapXau());
A=new int[n]; // Khoi tao mang
System.out.println("Nhap vao gia tri cho cac phan tu ");
// Nhap gia tri cho cac phan tu cua mang
for(int i=0;i<n;i++)
{
System.out.print("A["+i+"] =");
A[i]=doiInt(nhapXau());
}
}
public void hienThi(){
for(int i=0;i<n;i++)
System.out.print(A[i] + " ");
}
public void sapXep(){ // Sap xep mang theo thu tu giam dan cua
cac phan tu
int tg;
for(int i=0;i<n-1;i++)
for(int j=i+1;j<n;j++)
if(A[i]>A[j])
{
tg=A[i];
A[i]=A[j];
A[j]=tg;
}
}
public void lietKeNgTo(){
for(int i=0;i<n;i++)
if(nguyenTo(A[i])) System.out.print(A[i] + " ");
}
public static void main(String arg[]){
Bai5 dayso=new Bai5();
dayso.nhapDL();
System.out.println("\n\n Day so vua nhap la \n");
dayso.hienThi();
dayso.sapXep();
System.out.println("\n\n Day so sau khi sap sep la theo
chieu tang dan\n");
dayso.hienThi();
8
System.out.println("\n\n Danh sach cac so nguyen to trong
day la \n");
dayso.lietKeNgTo();
}
}
Bài 6
/*
Bai 6. Viet chuong trinh thuc hien cac cong viec sau
a. Nhap vao mot day gom n so nguyen tu ban phim
b. Sap xep day vua nhap theo thu tu giam dan cua cac phan tu
c. Hien thi ra man hinh tat ca cac so nguyen to cua day vua nhap
*/
import java.io.*;
public class Bai6{
private int n; // So phan tu cua day
private float A[]; // Mang cac phan tu cua day
public String nhapXau(){ // Ham nhap vao mot xau ky tu tu ban
phim
DataInputStream st=new DataInputStream(System.in);
String s;
try{
s=st.readLine();
}catch(IOException e){s="0";}
return s;
}
public int doiInt(String s){ // Doi mot xau sang dang so nguyen
int
int so;
try{
so=Integer.valueOf(s).intValue();
}catch(NumberFormatException e){so=0;}
return so;
}
public float doiFloat(String s){ // Doi mot xau sang dang so thuc
float
float so;
try{
so=Float.valueOf(s).floatValue();
}catch(NumberFormatException e){so=0;}
return so;
}
public int nhapSoThoaDK(){
int k;
do{
System.out.print("Nhap n thoa: 2<=n<=100 :" );
k=doiInt(nhapXau());
}while(k<2||k>100);
return k;
}
public boolean nguyenTo(int k){ // Ham kiem tra xem so k co phai
la so nguyen to hay khong
if (k<2) return false;
for(int i=2;i<=k/2; i++)
if (k%i==0) return false;
9
return true;
}
public void nhapDL(){ // Nhap du lieu cho mot mang gom n phan tu
System.out.print("Nhap vao so phan tu cua day :");
// Nhap so phan tu
n=nhapSoThoaDK();
A=new float[n]; // Khoi tao mang
System.out.println("Nhap vao gia tri cho cac phan tu ");
// Nhap gia tri cho cac phan tu cua mang
for(int i=0;i<n;i++)
{
System.out.print("A["+i+"] =");
A[i]=doiFloat(nhapXau());
}
}
public void hienThi(){
for(int i=0;i<n;i++)
System.out.print(A[i] + " ");
}
public boolean DanDau(){ // Kiem tra xem day co phai la day dan
dau hay khong
boolean kt=true;
for(int i=0;i<n-1;i++)
if(A[i]*A[i+1] >= 0) kt=false;
return kt;
}
public static void main(String arg[]){
Bai6 daySo=new Bai6();
daySo.nhapDL();
System.out.println("\n\n Day so vua nhap la \n");
daySo.hienThi();
if(daySo.DanDau())
System.out.println("\n\n Day so tren la day dan
dau");
else
System.out.println("\n\n Day so tren khong phai la
day dan dau");
}
}
Bài 7
import java.io.*;
public class Bai7{
private int n;
private double a[];
public String nhapXau(){
DataInputStream st=new DataInputStream(System.in);
String s;
//nhap vao so phan tu cua day
try{
s=st.readLine();
}catch(IOException e) {s="0";}
return s;
}
10
public int doiInt(String s){
int so;
try{
so=Integer.valueOf(s).intValue();
} catch(NumberFormatException e){so=0;}
return so;
}
// Nhap so nguyen n thoa: 2<=n<=100
public void nhapn(){
do{
System.out.print("Nhap so phan tu n cua day thoa
(2<=n<=100):");
n=doiInt(nhapXau());
}while(n<2||n>100);
}
// Lay gia tri cua bien n
public int getn(){return n;}
// Kiem tra so k co la so nguyen to hay khong?
public boolean nguyenTo(int k){
if(k<2) return false;
for(int i=2;i<=k/2;i++)
if(k%i==0) return false;
return true;
}
// Liet ke tat ca cac so nguyen to <=n
public void lietKe1(){
for(int i=2;i<=n;i++)
if(nguyenTo(i)) System.out.print(i+" ");
}
// Liet ke n so nguyen to dau tien
public void lietKe2(){
int dem=0,k=2;
while (dem<n){
if(nguyenTo(k))
{
System.out.print(k+" ");
dem++;
}
k++;
}
}
public static void main (String[] arg){
Bai7 b7=new Bai7();
b7.nhapn();
System.out.println("\n\n Danh sach tat ca cac so nguyen to <=" +
b7.getn() + "\n\n");
b7.lietKe1();
System.out.println("\n\n Danh sach " + b7.getn() + " so nguyen to
dau tien\n\n");
b7.lietKe2();
}
}
Bài 8
11
import java.io.*;
public class Bai8{
private String st;
Bai8(){} // Toan tu tao lap mac dinh
Bai8(String s){st=s;} // Toan tu tao lap khong mac dinh
// Phuong thuc nhap DL cho xau
public void nhapDL(){
DataInputStream stream=new DataInputStream(System.in);
System.out.print("Nhap vao mot xau ky tu :");
try{
st=stream.readLine();
}catch(IOException e) {st="0";}
}
// Hien thi xau hien tai
public void hienThi(){
System.out.print(st);
}
// Dem so tu bat dau boi ky tu 'H'
public int demTuH(){
int dem=0;
String s;
s=" " + st;
for(int i=0;i<s.length()-1;i++)
if((s.charAt(i)==' ') && (s.charAt(i+1)=='H')) dem++;
return dem;
}
// Dem so tu trong xau
public int demTu(){
int dem=0;
String s;
s=" " + st;
for(int i=0;i<s.length()-1;i++)
if((s.charAt(i)==' ') && (s.charAt(i+1)!=' ')) dem++;
return dem;
}
// Dem so ky tu 'a'
public int dema(){
int dem=0;
for(int i=0;i<st.length();i++)
if(st.charAt(i)=='a') dem++;
return dem;
}
public void chuanXau(){
StringBuffer s;
int i;
// Cat bo tat ca cac ky tu trong vo nghia o dau va cuoi xau
st=st.trim();
// Tao lap bien StringBuffer s co noi dung cua st
s=new StringBuffer(st);
// Cat bo tat ca cac ky tu trong vo nghia o giua xau
i=0;
while(i<s.length()-1){
while((s.charAt(i)==' ')&&(s.charAt(i+1)==' '))
s.delete(i,i+1);
i++;
}
st=new String(s);
12
}
public static void main (String[] arg){
Bai8 b8=new Bai8();
b8.nhapDL();
System.out.println("Xau vua nhap co " + b8.dema()+" ky tu a");
System.out.println("Xau vua nhap co " + b8.demTu()+" tu");
System.out.println("Xau vua nhap co " + b8.demTuH()+" tu bat dau
boi 'H'");
b8.chuanXau();
System.out.print("Xau sau khi chuan hoa la :");
b8.hienThi();
}
}
Bài 9
// Bai tap so 9 - Mang mot chieu
import java.io.*;
public class Mang{
private int n; // So phan tu cua mang
private float A[];
// Dinh nghia mot so toan tu tao lap
Mang(){};
Mang(int m){ n=m; A=new float[n];}
// Mot so phuong thuc phuc vu bai toan
//Nhap vao mot xau the hien so
public String nhapXau(){
DataInputStream st=new DataInputStream(System.in);
String s;
//nhap vao so phan tu cua day
try{
s=st.readLine();
}catch(IOException e) {s="";}
return s;
}
// Doi sang so nguyen
public int doiInt(String s){
int so;
try{
so=Integer.valueOf(s).intValue();
} catch(NumberFormatException e){so=0;}
return so;
}
// Doi sang so thuc dang float
public float doiFloat(String s){
float so;
try{
so=Float.valueOf(s).floatValue();
} catch(NumberFormatException e){so=0.0f;}
return so;
}
// Xay dung cac phuong thuc
public void nhapDL(){
// Nhap vao so phan tu cua mang 1 chieu
13
System.out.print("Nhap vao so phan tu mang :");
n=doiInt(nhapXau());
A=new float[n];
// Nhap vao gia tri cho cac phan tu mang
for(int i=0;i<n;i++)
{
System.out.print("A["+i+"] =");
A[i]=doiFloat(nhapXau());
}
}
// Phuong thuc hien thi du lieu cua mang
public void hienThi(){
for(int i=0;i<n;i++) System.out.print(A[i]+" ");
}
// Phuong thuc sap xep cac phan tu mang theo chieu tang dan cua
cac phan tu
public void sapXep(){
float tg;
for(int i=0;i<n-1;i++)
for(int j=i+1;j<n;j++)
if(A[i] > A[j])
{
tg=A[i];
A[i]=A[j];
A[j]=tg;
}
}
// Ham kiem tra xem mang co tao thanh day so dan dau
public boolean ktraDanDau(){
for(int i=0;i<n-1;i++)
if(A[i]*A[i+1]>=0) return false;
return true;
}
public static void main(String arg[]){
Mang m=new Mang();
m.nhapDL();
System.out.println("\nMang da nhap la\n");
m.hienThi();
if(m.ktraDanDau())
System.out.println("\nMang tren tao thanh day so dan
dau");
else
System.out.println("\nMang tren khong tao thanh day
so dan dau\n");
m.sapXep();
System.out.println("\n\n Mang sau khi sap xep theo thu tu
tang dan\n\n");
m.hienThi();
}
}
Bài 10
// Bai so 10 - Ma tran vuong
import java.io.*;
public class MaTranVuong{
14
private int n; // Cap cua ma tran
private float [][] A; // Ma 2 chieu luu tru cac phan tu cua ma
tran
public String nhapXau(){
DataInputStream st=new DataInputStream(System.in);
String s;
try{
s=st.readLine();
}catch(IOException e){ s="";}
return s;
}
public int doiInt(String s){
int so;
try{
so=Integer.valueOf(s).intValue();
}catch(NumberFormatException e){so=0;}
return so;
}
public float doiFloat(String s){
float so;
try{
so=Float.valueOf(s).floatValue();
}catch(NumberFormatException e){so=0.0f;}
return so;
}
public void nhapDL(){
System.out.print("Nhap cap cua ma tran:");
n=doiInt(nhapXau());
//Khoi tao mang cac phan tu cua ma tran
A=new float[n][n];
System.out.println("Nhap gia tri cho cac phan tu ma tran");
for(int i=0;i<n;i++)
for(int j=0;j<n;j++)
{
System.out.print("A["+i+"]["+j+"]=");
A[i][j]=doiFloat(nhapXau());
}
}
public void hienThi(){
for(int i=0;i<n;i++)
{
for(int j=0;j<n;j++)
System.out.print(A[i][j]+" ");
System.out.println();
}
}
public MaTranVuong congMT(MaTranVuong mt1, MaTranVuong mt2){
MaTranVuong kq=new MaTranVuong();
int m;
if(mt1.n !=mt2.n)
System.out.println("Hai ma tran do khong cung cap.
Khong cong duoc!");
else{ // Cong hai ma tran
m=mt1.n;
kq.n=m;
kq.A=new float[m][m];
for(int i=0;i<m;i++)
15
for(int j=0;j<m;j++)
kq.A[i][j]=mt1.A[i][j]+mt2.A[i][j];
}
return kq;
}
public MaTranVuong nhanMT(MaTranVuong mt1, MaTranVuong mt2){
MaTranVuong kq=new MaTranVuong();
int m;
if(mt1.n !=mt2.n)
System.out.println("Hai ma tran do khong cung cap.
Khong nhan duoc!");
else{ // nhan hai ma tran
m=mt1.n;
kq.n=m;
kq.A=new float[m][m];
for(int i=0;i<m;i++)
for(int j=0;j<m;j++)
{
kq.A[i][j]=0;
for(int k=0;k<m;k++)
kq.A[i][j]=kq.A[i][j]+mt1.A[i][k]*mt2.A[k][j];
}
}
return kq;
}
public static void main(String arg[]){
MaTranVuong mtv1,mtv2,mtTong, mtTich;
mtv1=new MaTranVuong();
mtv2=new MaTranVuong();
mtTong=new MaTranVuong();
mtTich=new MaTranVuong();
System.out.println("Nhap ma tran vuong thu nhat A");
mtv1.nhapDL();
System.out.println("Nhap ma tran vuong thu hai B");
mtv2.nhapDL();
System.out.println("Cac ma tra da nhap la\n");
System.out.println("Ma tran A\n");
mtv1.hienThi();
System.out.println("Ma tran B\n");
mtv2.hienThi();
// Tinh tong va tich cac ma tran
mtTong=mtTong.congMT(mtv1,mtv2);
mtTich=mtTich.nhanMT(mtv1,mtv2);
System.out.println("Ma tran tong C=A+B la \n");
mtTong.hienThi();
System.out.println("Ma tran tich D=A*B la \n");
mtTich.hienThi();
}
}
Bài 11
// Bai so 11 - Lop KhachHang, QLKhachHang
import java.io.*;
16
class KhachHang{
private String ma, hoTen,diaChi,soDienThoai,email;
private int tuoi;
// Xay dung mot so toan tu tao lap
KhachHang(){}
KhachHang(String m, String ht){
ma=m;
hoTen=ht;
diaChi="";
soDienThoai="";
email="";
tuoi=20;
}
KhachHang(String m, String ht, String dc, String sdt, String em,
int t){
ma=m;
hoTen=ht;
diaChi=dc;
soDienThoai=sdt;
email=em;
tuoi=t;
}
// Dinh nghia mot so phuong thuc
public int getTuoi(){return tuoi;}
public String getHoTen(){return hoTen;}
public String nhapXau(){
DataInputStream st=new DataInputStream(System.in);
String s;
//nhap vao so phan tu cua day
try{
s=st.readLine();
}catch(IOException e) {s="0";}
return s;
}
public int doiInt(String s){
int so;
try{
so=Integer.valueOf(s).intValue();
} catch(NumberFormatException e){so=0;}
return so;
}
public void nhapDL(){
System.out.print("Ma khach hang :"); ma=nhapXau();
System.out.print("Ho ten :"); hoTen=nhapXau();
System.out.print("Tuoi :");
tuoi=doiInt(nhapXau());
System.out.print("Dia chi :");
diaChi=nhapXau();
System.out.print("So dien thoai :");
soDienThoai=nhapXau();
System.out.print("Email :"); email=nhapXau();
}
public void hienThi(){
17
System.out.println("Ma khach hang =" + ma);
System.out.println("Ho ten =" + hoTen);
System.out.println("Tuoi =" + tuoi);
System.out.println("Dia chi =" + diaChi);
System.out.println("So dien thoai =" + soDienThoai);
System.out.println("Email =" + email);
}
}
public class QLKhachHang{
private int n; // So luong khach hang
private KhachHang kh[]; // Danh sach khach hang can quan ly
public void nhapDS(){
KhachHang tg=new KhachHang();
System.out.print("Nhap so luong khach hang :");
n=tg.doiInt(tg.nhapXau());
System.out.println("\nNhap thong tin cho danh sach khach
hang \n");
kh=new KhachHang[n];
for(int i=0;i<n;i++)
{
System.out.println("Nhap thong tin cho khach
hang thu " + (i+1)+"\n");
kh[i]=new KhachHang();
kh[i].nhapDL();
}
}
public void hienThiDS(){
System.out.println("Danh sach khach hang da nhap \n");
for(int i=0;i<n;i++) kh[i].hienThi();
}
public void sapXep(){
KhachHang tg=new KhachHang();
for(int i=0;i<n-1;i++)
for(int j=i+1;j<n;j++)
if(kh[i].getTuoi() < kh[j].getTuoi())
{
tg=kh[i];
kh[i]=kh[j];
kh[j]=tg;
}
System.out.println("Danh sach khach hang sau khi sap xep la
\n");
for(int i=0;i<n;i++) kh[i].hienThi();
}
public void timKiem(){
String st=new String("Nguyen Van Duc");
System.out.println("Danh sach khach hang co ten 'Nguyen Van
Duc' (khong pb chu hoa/thuong) \n");
for(int i=0;i<n;i++)
if(st.compareToIgnoreCase(kh[i].getHoTen())==0)// Neu
co ten la 'Nguyen Van Duc'
kh[i].hienThi();
}
public static void main(String arg[]){
QLKhachHang qlkh=new QLKhachHang();
qlkh.nhapDS();
18
qlkh.hienThiDS();
qlkh.sapXep();
qlkh.timKiem();
}
}
Bài 12
// Bai so 12 - Lop: HocSinh, QLHocSinh
import java.io.*;
class HocSinh{
private String hoTen,lop;
private double diemToan, diemLy, diemHoa, diemTB;
// Xay dung mot so toan tu tao lap
HocSinh(){}
HocSinh(String ht, String l){
hoTen=ht;
lop=l;
diemToan=0.0;
diemLy=0.0;
diemHoa=0.0;
diemTB=0.0;
}
HocSinh(String ht, String l, double dt, double dl, double dh,
double dtb){
hoTen=ht;
lop=l;
diemToan=dt;
diemLy=dl;
diemHoa=dh;
diemTB=dtb;
}
// Dinh nghia mot so phuong thuc
public double getDiemTB(){return diemTB;}
public String nhapXau(){
DataInputStream st=new DataInputStream(System.in);
String s;
//nhap vao so phan tu cua day
try{
s=st.readLine();
}catch(IOException e) {s="0";}
return s;
}
public int doiInt(String s){
int so;
try{
so=Integer.valueOf(s).intValue();
} catch(NumberFormatException e){so=0;}
return so;
}
public double doiDouble(String s){
double so;
19
try{
so=Double.valueOf(s).doubleValue();
} catch(NumberFormatException e){so=0.0;}
return so;
}
public void nhapDL(){
System.out.print("Ho va ten :"); hoTen=nhapXau();
System.out.print("Lop :"); lop=nhapXau();
System.out.print("Diem Toan :");
diemToan=doiDouble(nhapXau());
System.out.print("Diem Ly :");
diemLy=doiDouble(nhapXau());
System.out.print("Diem Hoa :");
diemHoa=doiDouble(nhapXau());
}
public void tinhDTB(){
diemTB=(diemToan + diemLy + diemHoa)/3;
}
public void hienThi(){
System.out.println("Ho va ten =" + hoTen);
System.out.println("Lop =" + lop);
System.out.println("Diem Toan =" + diemToan);
System.out.println("Diem Ly =" + diemLy);
System.out.println("Diem Hoa =" + diemHoa);
System.out.println("Diem TB =" + diemTB);
}
}
public class QLHocSinh{
private int n; // So luong hoc sinh
private HocSinh hs[]; // Danh sach hoc sinh can quan ly
public void nhapDS(){
HocSinh tg=new HocSinh();
System.out.print("Nhap so luong sinh vien :");
n=tg.doiInt(tg.nhapXau());
System.out.println("\nNhap thong tin cho danh sach sinh
vien \n");
hs=new HocSinh[n];
for(int i=0;i<n;i++)
{
System.out.println("Nhap thong tin cho sinh
vien thu " + (i+1)+"\n");
hs[i]=new HocSinh();
hs[i].nhapDL();
hs[i].tinhDTB();
}
}
public void hienThiDS(){
System.out.println("Danh sach sinh vien da nhap \n");
for(int i=0;i<n;i++) hs[i].hienThi();
}
public void sapXep(){
HocSinh tg=new HocSinh();
for(int i=0;i<n-1;i++)
for(int j=i+1;j<n;j++)
20
if(hs[i].getDiemTB() < hs[j].getDiemTB())
{
tg=hs[i];
hs[i]=hs[j];
hs[j]=tg;
}
System.out.println("Danh sach sinh vien sau khi sap xep la
\n");
for(int i=0;i<n;i++) hs[i].hienThi();
}
public void dem(){
int so;;
double dtb;
HocSinh tg=new HocSinh();
// Nhap vao mot so thuc the hien diemTB
System.out.print("Nhap vao mot DTB :");
dtb=tg.doiDouble(tg.nhapXau());
// Dem so luong hoc sinh co diemTB <= dtb vua nhap
so=0;
for(int i=0;i<n;i++)
if(hs[i].getDiemTB()>=dtb) so++;
System.out.println("Tong so SV co diemTB <=" + dtb +" la
:"+ so);
}
public static void main(String arg[]){
QLHocSinh qlhs=new QLHocSinh();
qlhs.nhapDS();
qlhs.hienThiDS();
qlhs.sapXep();
qlhs.dem();
}
}
Bài 13
// Bai so 13 - Lop: XeMay, QLXeMay
import java.io.*;
class XeMay{
private String soMay, soKhung, hangSX, mauXe;
private double giaThanh;
// Xay dung mot so toan tu tao lap
XeMay(){}
XeMay(String sm, String sk){
soMay=sm;
soKhung=sk;
hangSX="";
mauXe="";
giaThanh=0.0;
}
XeMay(String sm, String sk, String hsx, String mx, double gt){
soMay=sm;
soKhung=sk;
hangSX=hsx;
mauXe=mx;
giaThanh=gt;
21
}
// Dinh nghia mot so phuong thuc
public double getGiaThanh(){ return giaThanh;}
public String nhapXau(){
DataInputStream st=new DataInputStream(System.in);
String s;
//nhap vao so phan tu cua day
try{
s=st.readLine();
}catch(IOException e) {s="0";}
return s;
}
public int doiInt(String s){
int so;
try{
so=Integer.valueOf(s).intValue();
} catch(NumberFormatException e){so=0;}
return so;
}
public double doiDouble(String s){
double so;
try{
so=Double.valueOf(s).doubleValue();
} catch(NumberFormatException e){so=0.0;}
return so;
}
public void nhapDL(){
System.out.print("So may :"); soMay=nhapXau();
System.out.print("So khung :");
soKhung=nhapXau();
System.out.print("Hang san xuat :"); hangSX=nhapXau();
System.out.print("Mau xe :"); mauXe=nhapXau();
System.out.print("Gia Thanh :");
giaThanh=doiDouble(nhapXau());
}
public void hienThi(){
System.out.println("So may =" + soMay);
System.out.println("So khung =" + soKhung);
System.out.println("Hang san xuat =" + hangSX);
System.out.println("Mau xe =" + mauXe);
System.out.println("Gia thanh =" + giaThanh);
}
}
public class QLXeMay{
private int n; // So luong xe may
private XeMay xm[]; // Danh sach xe may can quan ly
public void nhapDS(){
XeMay tg=new XeMay();
System.out.print("Nhap so luong xe may :");
n=tg.doiInt(tg.nhapXau());
22
23
System.out.println("\nNhap thong tin cho danh sach xe may
\n");
xm=new XeMay[n];
for(int i=0;i<n;i++)
{
System.out.println("Nhap thong tin cho xe may
thu " + (i+1)+"\n");
xm[i]=new XeMay();
xm[i].nhapDL();
}
}
public void hienThiDS(){
System.out.println("Danh sach xe may da nhap \n");
for(int i=0;i<n;i++) xm[i].hienThi();
}
public void giaThanhMax(){
double max;
// Lay gia tri giaThanh lon nhat, roi gan cho bien max
max=xm[0].getGiaThanh();
for(int i=1;i<n;i++)
if(max<xm[i].getGiaThanh())
max=xm[i].getGiaThanh();
// Hien thi thong tin ve cac xe may co gia thanh lon nhat
System.out.println("Danh sach xe may co gia thanh lon nhat
la \n");
for(int i=0;i<n;i++)
if (xm[i].getGiaThanh()==max) xm[i].hienThi();
}
public static void main(String arg[]){
QLXeMay qlxm=new QLXeMay();
qlxm.nhapDS();
qlxm.hienThiDS();
qlxm.giaThanhMax();
}
}