Tải bản đầy đủ (.doc) (6 trang)

Dap an de so 2.doc

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (46.27 KB, 6 trang )

package trungtamngoaingu;
import java.util.Iterator;
import java.util.Map;
import java.util.TreeMap;
public class TrungTam {
Map<String, LopHoc> mapLopHoc;
public TrungTam(Map<String, LopHoc> mapLopHoc) {
super();
this.mapLopHoc = mapLopHoc;
}
public Map<String, LopHoc> getMapLopHoc() {
return mapLopHoc;
}
public void setMapLopHoc(Map<String, LopHoc> mapLopHoc) {
this.mapLopHoc = mapLopHoc;
}
//cau 2:Tìm kiếm lớp của học viên bất kì khi biết mã số học viên
public LopHoc searchLopHoc(String maHocVien){
LopHoc lopHoc=null;
Iterator<LopHoc> iterator=mapLopHoc.values().iterator();
while(iterator.hasNext()){
LopHoc l=iterator.next();
if(l.getMapHocVien().containsKey(maHocVien))
lopHoc=l;
}
return lopHoc;
}
//cau 3:Tìm tổng số học viên còn thiếu trong toàn trung tâm.
// Biết rằng số học viên còn thiếu được tính bằng hiệu của tổng số học viên tối đa
// mà các lớp trong trung tâm chứa được so với số học viên đăng kí thực tế.
public int soHocVienThieu(){


int result=0;
Iterator<LopHoc> iterator=mapLopHoc.values().iterator();
while(iterator.hasNext()){
LopHoc lopHoc=iterator.next();
int i=lopHoc.getSoHocVienToiDa()-lopHoc.getMapHocVien().values().size();
result+=i;
}
return result;
}
//cau 4:Nhập điểm của tất cả các học viên khi biết bảng điểm.
// Bảng điểm là 1 danh sách chứa các cặp mã học viên và điểm tương ứng của
người đó.
public Map<String , Double> nhapDiem(){
Map<String, Double> mapDanhSachDiem=new TreeMap<String, Double>();
Iterator<LopHoc> iterator=mapLopHoc.values().iterator();
while(iterator.hasNext()){
LopHoc lopHoc=iterator.next();
Iterator<HocVien> iterator2=lopHoc.getMapHocVien().values().iterator ();
while(iterator2.hasNext()){
HocVien hocVien=iterator2.next();
mapDanhSachDiem.put(hocVien.getMaHocVien(), hocVien.getDiem());
}
}
return mapDanhSachDiem;
}
//cau 5:Tính tỉ lệ học viên hoàn thành khóa học.
// Biết học viên đạt từ 5 điểm trở lên mới được gọi là hoàn thành khóa học.
// ở dưới là lớp test đề số 2.
public double tiLeHocVienHoanThanhKhoaHoc(){
double result=0;

double a=tongSoHocVien();
double b=soHocVienHoanThanh();
result=b/a;
return result*100;
}
private int tongSoHocVien(){
int i=0;
Iterator<LopHoc> iterator=mapLopHoc.values().iterator();
while(iterator.hasNext()){
LopHoc lopHoc=iterator.next();
i+=lopHoc.getMapHocVien().values().size();
}
return i;
}
private int soHocVienHoanThanh(){
int i=0;
Iterator<LopHoc> iterator=mapLopHoc.values().iterator();
while(iterator.hasNext()){
LopHoc lopHoc=iterator.next();
Iterator<HocVien> iterator2=lopHoc.getMapHocVien().values().iterator ();
while(iterator2.hasNext()){
HocVien hocVien=iterator2.next();
if(hocVien.getDiem()>=5) i++;
}
}
return i;
}
}
///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
///////

package trungtamngoaingu;
import java.util.Map;
public class LopHoc {
String maLopHoc;
String tenLopHoc;
int soHocVienToiDa;
Map<String , HocVien> mapHocVien;
public LopHoc(String maLopHoc, String tenLopHoc, int
soHocVienToiDa,Map<String , HocVien> mapHocVien) {
super();
this.maLopHoc = maLopHoc;
this.tenLopHoc = tenLopHoc;
this.soHocVienToiDa = soHocVienToiDa;
this.mapHocVien=mapHocVien;
}
public String getMaLopHoc() {
return maLopHoc;
}
public void setMaLopHoc(String maLopHoc) {
this.maLopHoc = maLopHoc;
}
public String getTenLopHoc() {
return tenLopHoc;
}
public void setTenLopHoc(String tenLopHoc) {
this.tenLopHoc = tenLopHoc;
}
public int getSoHocVienToiDa() {
return soHocVienToiDa;
}

public void setSoHocVienToiDa(int soHocVienToiDa) {
this.soHocVienToiDa = soHocVienToiDa;
}
public Map<String, HocVien> getMapHocVien() {
return mapHocVien;
}
public void setMapHocVien(Map<String, HocVien> mapHocVien) {
this.mapHocVien = mapHocVien;
}
public String toString(){
return maLopHoc+"\t"+tenLopHoc;
}
}
////////////////////////////////////////////////////////////////////////////////////////////////////////
////////////////////////
package trungtamngoaingu;
public class HocVien {
String maHocVien;
String tenHocVien;
String diaChi;
double diem;
public HocVien(String maHocVien, String tenHocVien, String diaChi,
double diem) {
super();
this.maHocVien = maHocVien;
this.tenHocVien = tenHocVien;
this.diaChi = diaChi;
this.diem=diem;
}
public String getMaHocVien() {

return maHocVien;
}
public void setMaHocVien(String maHocVien) {
this.maHocVien = maHocVien;
}
public String getTenHocVien() {
return tenHocVien;
}
public void setTenHocVien(String tenHocVien) {
this.tenHocVien = tenHocVien;
}
public String getDiaChi() {
return diaChi;
}
public void setDiaChi(String diaChi) {
this.diaChi = diaChi;
}
public double getDiem() {
return diem;
}
public void setDiem(double diem) {
this.diem = diem;
}
public String toString(){
return maHocVien+"\t"+tenHocVien+"\t"+diem;
}
}
///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
///////////
package trungtamngoaingu;

import java.util.Map;
import java.util.TreeMap;
import junit.framework.TestCase;
public class Test extends TestCase {
public void test(){
HocVien h1=new HocVien("hv1","henxui1","hcm1",1.0);
HocVien h2=new HocVien("hv2","henxui2","hcm2",2.0);
HocVien h3=new HocVien("hv3","henxui3","hcm3",3.0);
HocVien h4=new HocVien("hv4","henxui4","hcm4",4.0);
HocVien h5=new HocVien("hv5","henxui5","hcm5",5.0);
HocVien h6=new HocVien("hv6","henxui6","hcm6",6.0);
HocVien h7=new HocVien("hv7","henxui7","hcm7",7.0);
HocVien h8=new HocVien("hv8","henxui8","hcm8",8.0);
HocVien h9=new HocVien("hv9","henxui9","hcm9",9.0);
Map<String , HocVien> map1=new TreeMap<String, HocVien>();
map1.put("hv1", h1);
map1.put("hv2", h2);
map1.put("hv3", h3);
LopHoc l1=new LopHoc("l1","lop1",10,map1);
Map<String , HocVien> map2=new TreeMap<String, HocVien>();
map2.put("hv4", h4);
map2.put("hv5", h5);
LopHoc l2=new LopHoc("l2","lop2",5,map2);
Map<String , HocVien> map3=new TreeMap<String, HocVien>();
map3.put("hv6", h6);
map3.put("hv7", h7);
map3.put("hv8", h8);
map3.put("hv9", h9);
LopHoc l3=new LopHoc("l2","lop2",15,map3);
Map<String, LopHoc> mapLopHoc=new TreeMap<String, LopHoc>();

mapLopHoc.put("l1", l1);
mapLopHoc.put("l2", l2);
mapLopHoc.put("l3", l3);
TrungTam trungTam=new TrungTam(mapLopHoc);
//cau 2
assertEquals(l1, trungTam.searchLopHoc("hv1"));
assertEquals(l2, trungTam.searchLopHoc("hv5"));
assertEquals(l3, trungTam.searchLopHoc("hv7"));
//cau 3
assertEquals(21, trungTam.soHocVienThieu());
//cau 4
Map<String , Double> map=new TreeMap<String, Double>();
map.put("hv1", 1.0);
map.put("hv2", 2.0);
map.put("hv3", 3.0);
map.put("hv4", 4.0);
map.put("hv5", 5.0);
map.put("hv6", 6.0);
map.put("hv7", 7.0);
map.put("hv8", 8.0);
map.put("hv9", 9.0);
assertEquals(map, trungTam.nhapDiem());
//cau 5
assertEquals(55.56, trungTam.tiLeHocVienHoanThanhKhoaHoc(),0.01);
}
}

Tài liệu bạn tìm kiếm đã sẵn sàng tải về

Tải bản đầy đủ ngay
×