Xin chỉ hộ em chỗ sai code java
Em có code bên dưới em không hiểu sai ở đâu mà::
-
điểm Trung bình lại ra kết quả thế kia(2.6666667)?
package javaandrvn;
import java.util.*;
public class b15_1 {
static class SinhVien{
private String hoTen, lopHoc;
private float dToan, dLy, dHoa, dTB;
public Object getLopHoc;
public String getHoTen() {
return hoTen;
}
public void setHoTen(String hoTen) {
this.hoTen = hoTen;
}
public String getLopHoc() {
return lopHoc;
}
public void setLopHoc(String lopHoc) {
this.lopHoc = lopHoc;
}
public float getdToan() {
return dToan;
}
public void setdToan(float dToan) {
this.dToan = dToan;
}
public float getdLy() {
return dLy;
}
public void setdLy(float dLy) {
this.dLy = dLy;
}
public float getdHoa() {
return dHoa;
}
public void setdHoa(float dHoa) {
this.dHoa = dHoa;
}
public float dTB(){
dTB = ((getdToan() + getdLy() + getdHoa())/3);
return dTB;
}
public void xepLoai(){
if(0<dTB && dTB<5){
System.out.println(“Yeu”);}
else {if(5<= dTB && dTB<6.5){
System.out.println(“Trung Binh”);}
else{if(6.5<=dTB && dTB<8){
System.out.println(“Kha”);}
else{if(8<=dTB && dTB<=10){
System.out.println(“Gioi”);}
else{
System.out.println(“Ban nhap diem nham, diem phai trong khoang[0,10]”);}
}
}
}
}
public void nhapDuLieu(){
System.out.println("Moi nhap ten sinh vien: ");
Scanner nhap = new Scanner(System.in);
String hoTenSV = nhap.nextLine();
setHoTen(hoTenSV);
System.out.println("Moi nhap ten lop sinh vien: ");
String lopSV = nhap.nextLine();
setLopHoc(lopSV);
System.out.println("Moi nhap Toan sinh vien: ");
float diemToan = nhap.nextFloat();
setdToan(diemToan);
System.out.println("Moi nhap Ly sinh vien: ");
float diemLy = nhap.nextFloat();
setdLy(diemLy);
System.out.println("Moi nhap Hoa sinh vien: ");
float diemHoa = nhap.nextFloat();
setdLy(diemHoa);
}
public void showSV(){
System.out.println(“Ten sinh vien: “+ getHoTen()+” Lop sinh vien: “+ getLopHoc());
System.out.print(“Diem trung binh cua sinh vien =” + dTB()+” Xep loai: “);
xepLoai();
}
}
static class GiangVien{
private String hoTen, lopDay;
private int namSinh, luong;
public String getHoTen() {
return hoTen;
}
public void setHoTen(String hoTen) {
this.hoTen = hoTen;
}
public String getLopDay() {
return lopDay;
}
public void setLopDay(String lopDay) {
this.lopDay = lopDay;
}
public int getNamSinh() {
return namSinh;
}
public void setNamSinh(int namSinh) {
this.namSinh = namSinh;
}
public int getLuong() {
return luong;
}
public void setLuong(int luong) {
this.luong = luong;
}
public void nhapDuLieu(){
System.out.println(“Moi nhap ten Giang vien: “);
Scanner nhap = new Scanner(System.in);
String hoTenGV = nhap.nextLine();
setHoTen(hoTenGV);
System.out.println(“Moi nhap ten lop Giang vien day: “);
String lopDayGV = nhap.nextLine();
setLopDay(lopDayGV);
System.out.println(“Moi nhap nam sinh Giang vien:”);
int namSinhGV = nhap.nextInt();
setNamSinh(namSinhGV);
System.out.println(“Moi nhap luong Giang vien:”);
int luongGV = nhap.nextInt();
setLuong(luongGV);
}
public void showGV(){
System.out.println(“Ten giang vien:” + getHoTen()+” Lop day:”+getLopDay()+” Nam sinh:”+getNamSinh()+” Luong:”+getLuong());
}
}
/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
SinhVien a = new SinhVien();
a.nhapDuLieu();
a.showSV();
GiangVien b = new GiangVien();
b.nhapDuLieu();
b.showGV();
if(a.getLopHoc().equals(b.getLopDay())){
System.out.println("Giang vien "+b.getHoTen()+ " Co day sinh vien "+ a.getHoTen());
}
else{
System.out.println("Giang vien "+b.getHoTen()+ " Khong day sinh vien "+ a.getHoTen());
}
}
}
Kết quả:
Moi nhap ten sinh vien:
Nguyen Van A
Moi nhap ten lop sinh vien:
15A
Moi nhap Toan sinh vien:
4
Moi nhap Ly sinh vien:
4
Moi nhap Hoa sinh vien:
4
Ten sinh vien: Nguyen Van A Lop sinh vien: 15A
Diem trung binh cua sinh vien =2.6666667 Xep loai: Yeu
Moi nhap ten Giang vien:
Nguyen Van B
Moi nhap ten lop Giang vien day:
15A
Moi nhap nam sinh Giang vien:
1993
Moi nhap luong Giang vien:
140
Ten giang vien:Nguyen Van B Lop day:15A Nam sinh:1993 Luong:140
Giang vien Nguyen Van B Co day sinh vien Nguyen Van A
Xin mọi người chỉ dạy ạ, em xin cảm ơn!( ngồi 2 tiếng viết code lại thành ra thế này )
Em nói ý tưởng với yêu cầu của chương trình ra đi , anh đi về rồi code thử cho em một bài
Đây là đề bài ạ:smile
Mong anh chỉ ra chỗ sai của em để rút kinh nghiệm trước ạ
mới nhìn qua: chỗ này dùng equal.
sao setToan không vậy @@
Chỗ này em quên không sửa vì tội copy ở trên. vừa sửa lại rồi nhưng vẫn sai anh ạ.
em nghĩ if phải == chứ ạ? em viết code thế không được ạ?
Ref : Hỏi về 2 kiểu so sánh trong Java
Hai anh xem chỉ em nốt dTB với hai cái kia em xử lý được rồi ạ
như trên nhé, mà em tập debug đi.
oh thành công rồi em cảm ơn hai anh nhiều nha. Tiện thể Anh có link nào dạy debug chi tiết không ạ? em toàn tìm thấy mấy cách debug kiểu cách hàm thực hiện nhưng không biết giá trị của cái nào đó mình cần nó thay đổi thế nào, và nó bug nhảy không chi tiết ạ .
Dùng eclipse hả, tối về skype ta , ta chỉ cho 1 phát là biết,: v .
skype:nguyenhuuca
anh online chưa chỉ em với ạ?