Xếp loại HS THPT, THCS cuối HK, cuối năm (1 người xem)

  • Thread starter Thread starter Ba Tê
  • Ngày gửi Ngày gửi
Liên hệ QC

Người dùng đang xem chủ đề này

Ba Tê

Cạo Rồi Khỏi Gội
Tham gia
5/5/09
Bài viết
12,124
Được thích
17,588
Giới tính
Nam
Học tập được rất nhiều điều từ GPE, nay lập được được Bảng Tổng hợp kết quả học tập rèn luyện HK - cả năm, xếp loại học lực, xếp hạng HS dành cho GVCN. Đặc điểm: các môn TD, Nhạc, Họa đánh giá bằng xếp loại theo hướng dẫn của Sở GD-ĐT tỉnh An Giang.
Mong các Bạn nhận xét, góp ý.
Pass: 20102009
 
Thầy xem lại phần xếp hạng THCS. Điểm xếp hạng=Điểm TBhk + Điểm Hạnh kiểm. Điểm xếp hạng bằng nhau thì phải đồng hạng nhưng khi Điểm xếp hạng bằng nhau máy lại dựa vào điểm TBhk khi chưa làm tròn để xếp hạng.
 
Học tập được rất nhiều điều từ GPE, nay lập được được Bảng Tổng hợp kết quả học tập rèn luyện HK - cả năm, xếp loại học lực, xếp hạng HS dành cho GVCN. Đặc điểm: các môn TD, Nhạc, Họa đánh giá bằng xếp loại theo hướng dẫn của Sở GD-ĐT tỉnh An Giang.
Mong các Bạn nhận xét, góp ý.
Pass: 20102009
Không phải là người trong ngành nên không hiểu lắm về cách tính. Góp ý một chút về thuật toán của UDF XLTD()
Code của bạn:
PHP:
Public Function XLTD(HK1, HK2) As Double
Dim maHK1 As Double, maHK2 As Double, lech As Double, maXL As Double
If HK1 = 9 Then '------------------------
maHK1 = 9
ElseIf HK1 = 8 Then
maHK1 = 5
ElseIf HK1 = 6.5 Then
maHK1 = 4
ElseIf HK1 = 5 Then
maHK1 = 3
ElseIf HK1 = 3.5 Then
maHK1 = 2
Else
maHK1 = 1
End If
If HK2 = 9 Then '-----------------------
maHK2 = 9
ElseIf HK2 = 8 Then
maHK2 = 5
ElseIf HK2 = 6.5 Then
maHK2 = 4
ElseIf HK2 = 5 Then
maHK2 = 3
ElseIf HK2 = 3.5 Then
maHK2 = 2
Else
maHK2 = 1
End If
lech = maHK1 - maHK2
If maHK1 = 9 And maHK2 < 9 Then  '------------------------------------
maXL = maHK2
ElseIf maHK1 < 9 And maHK2 = 9 Then
maXL = maHK1
ElseIf lech = 3 Then
maXL = Int((maHK1 + maHK2) / 2)

Else
maXL = Round((maHK1 + maHK2) / 2 + 0.1, 0)

End If
If maXL = 9 Then   '---------------------------------
XLTD = 9
ElseIf maXL = 5 Then
XLTD = 8
ElseIf maXL = 4 Then
XLTD = 6.5
ElseIf maXL = 3 Then
XLTD = 5
ElseIf maXL = 2 Then
XLTD = 3.5
Else
XLTD = 2
End If
End Function
Có thể rút gọn lại như thế này:
PHP:
Public Function XLTD1(HK1, HK2) As Double
Dim maHK1 As Double, maHK2 As Double, maXL As Double
maHK1 = IIf(HK1 = 9, 9, (HK1 - 0.5) / 1.5)
maHK2 = IIf(HK2 = 9, 9, (HK2 - 0.5) / 1.5)
If maHK1 = 9 Or maHK2 = 9 Then
    maXL = maHK1 + maHK2 - 9
Else
    maXL = Round((maHK1 + maHK2) / 2 + 0.1, 0) + ((maHK1 - maHK2) = 3)
End If
XLTD1 = IIf(maXL = 9, 9, maXL * 1.5 + 0.5)
End Function
 
Thầy xem lại phần xếp hạng THCS. Điểm xếp hạng=Điểm TBhk + Điểm Hạnh kiểm. Điểm xếp hạng bằng nhau thì phải đồng hạng nhưng khi Điểm xếp hạng bằng nhau máy lại dựa vào điểm TBhk khi chưa làm tròn để xếp hạng.
-----
Ở trường tôi nếu có 2 HS đồng hạng nhất hay nhì... thì so lại tổng điểm để xếp hạng.
Một HS có điểm TB=7.96 và một HS có điểm TB=8.04 đều được làm tròn thành 8.0. Thực tế 2 HS này học lực không hoàn toàn bằng nhau, nếu phát thưởng đồng hạng nhất thì nó "sao sao" ấy.
Nếu muốn như ý Bạn thì có thể chỉnh công thức lại trong cột AM là được.
 
Không phải là người trong ngành nên không hiểu lắm về cách tính. Góp ý một chút về thuật toán của UDF XLTD()
----------
Dù biết viết trả lời như thế này sẽ bị xóa bài, nhưng vẫn phải viết để bày tỏ sự cảm ơn Bạn huuthang_bd. Thật sự tôi chỉ mới tập viết code lần đầu, nhìn lại thấy "ngu" thật.
--Đi một ngày đàng, học một sàng khôn--
Rất mong Bạn theo dõi và hỗ trợ các bài viết của tôi sau này.
(Mình đã xin "Kết bạn" với Bạn rồi mà - Thật hân hạnh)
Đa tạ.
 
Các thầy cô tải về dùng luôn

TRƯỜNG MÌNH ĐANG DÙNG mình đưa lên nhung không được ai cần thì mail cho mình mình gửi cho
 

File đính kèm

xin phan mem

phiền bạn gửi mail cho mình chương trình Tính điểm và tổng kết lớp đó đi, cảm ơn nhiều.
mail:ngoccongit@gmail.com
 
Web KT

Bài viết mới nhất

Back
Top Bottom