- Tham gia
- 14/6/06
- Bài viết
- 1,137
- Được thích
- 2,297
- Nghề nghiệp
- Tư vấn giải pháp bán lẻ
Mình có 1 bài nho nhỏ gửi tới mọi người:
Bài toán liên quan tới việc chấm công tự động bằng thẻ về việc đi muộn, về sớm đối với nhân viên trong công ty
Mục tiêu:
- Lựa chọn làm tròn lên theo Block: Giả sử nhân viên đi muộn là từ 1 đến 10 phút thì sẽ làm tròn lên thành 10 phút. Nếu đi muộn 11 đến 20 phút thì làm tròn là 20, v.v... Khi đó gọi số 10 là Block Number. (Cách này ko có lợi cho nhân viên)
- Lựa chọn làm tròn xuống theo Block: Giả sử nhân viên đi muộn là từ 1 đến 9 phút thì sẽ làm tròn xuống thành 0 phút. Nếu đi muộn 10 đến 19 phút thì làm tròn là 10 phút, v.v... Khi đó gọi số 10 là Block Number. Và trường hợp này gọi là làm tròn xuống (Cách này có lợi cho nhân viên)
Câu hỏi:
1. Hãy viết code để đáp ứng được việc trên
Ví dụ:
Private Function RoundUpByBlock(ByVal lngNumber&, ByVal lngBlockNumber&) As Long
Private Function RoundDownByBlock(ByVal lngNumber&, ByVal lngBlockNumber&) As Long
2. Tối ưu hóa những gì bạn viết, tốt nhất là chỉ cần 1 dòng thôi
Cheers,
Bài toán liên quan tới việc chấm công tự động bằng thẻ về việc đi muộn, về sớm đối với nhân viên trong công ty
Mục tiêu:
- Lựa chọn làm tròn lên theo Block: Giả sử nhân viên đi muộn là từ 1 đến 10 phút thì sẽ làm tròn lên thành 10 phút. Nếu đi muộn 11 đến 20 phút thì làm tròn là 20, v.v... Khi đó gọi số 10 là Block Number. (Cách này ko có lợi cho nhân viên)
- Lựa chọn làm tròn xuống theo Block: Giả sử nhân viên đi muộn là từ 1 đến 9 phút thì sẽ làm tròn xuống thành 0 phút. Nếu đi muộn 10 đến 19 phút thì làm tròn là 10 phút, v.v... Khi đó gọi số 10 là Block Number. Và trường hợp này gọi là làm tròn xuống (Cách này có lợi cho nhân viên)
Câu hỏi:
1. Hãy viết code để đáp ứng được việc trên
Ví dụ:
Private Function RoundUpByBlock(ByVal lngNumber&, ByVal lngBlockNumber&) As Long
Private Function RoundDownByBlock(ByVal lngNumber&, ByVal lngBlockNumber&) As Long
2. Tối ưu hóa những gì bạn viết, tốt nhất là chỉ cần 1 dòng thôi
Cheers,