30/09/2018, 17:01
[Java] Chương trình trả về kết quả khác
Đây là một phương thức trong chương trình của mình khi lấy ra 2 hạt đậu và xđ màu của hạt đậu cuối cùng. nếu hai hạt cùng màu thì để vào hạt blue, ngược lại để vào hạt green. kết quả mong đợi là -,-,-,-,G kết quả chương trình hiện tại trả về là G,G,B,B,G. mong mọi người có thể giúp mình tìm ra lỗi ạ
private static char[] updateTin(char[] tin){
int b1, b2;
int bi1, bi2;
int count = tin.length;
bi1 = 0;
// remove the beans b1, b2 from tin
b1 = tin[bi1];
tin[bi1] = '-';
bi2 = bi1 + 1;
b2 = tin[bi2];
tin[bi2] = '-';
/**
* check condition: if two beans are the same color
* throw both away
* put Blue bean back
* otherwise
* put Green bean back
*/
for (bi1 = 0; bi1 < count; bi1++){
if (b1 == BLUE && b2 == BLUE || b1 == GREEN && b2 == GREEN){
// put blue in tin
tin[bi1] = BLUE;
} else {
// put green in tin
tin[bi1] = GREEN;
}
// reduce the lengrh of tin
count = count - 1;
bi1++;
}
// return the bean in the tin
return tin;
}
Bài liên quan
Thực sự là mình còn không hiểu nổi đề bài của bạn thế nào
cảm ơn bạn đã quan tâm. mình tìm ra lỗi r