Menu
CoddyTech

Logic nhập dữ liệu

Thuộc phần Logic và luồng chương trình trong hành trình C# của Coddy. Bài học 41 trên 66.

challenge icon

Thử thách

Dễ

Bây giờ khi đã có cấu trúc dữ liệu, hãy triển khai logic nhập và cập nhật điểm của học sinh.

Tạo một lớp có tên DataEntry với các phương thức sau:

  1. SetStudentScore(int[][] scoreGrid, int studentIndex, int assignmentIndex, int score): Đặt điểm cho một học sinh và bài tập cụ thể nếu điểm hợp lệ. Trả về:
    • 0 nếu thành công
    • -1 nếu có chỉ số nào nằm ngoài giới hạn
    • -2 nếu điểm không hợp lệ
  2. UpdateAllScores(int[][] scoreGrid, int[] studentIndices, int assignmentIndex, int score): Cập nhật điểm cho nhiều học sinh trong cùng một bài tập. Trả về số điểm đã cập nhật thành công.

Lưu ý: Dùng phương thức ValidateScore của lớp DataCollector để kiểm tra tính hợp lệ của điểm.

Tự làm thử

using System; // Đừng xóa dòng này
public class DataEntry
{
    public static int SetStudentScore(int[][] scoreGrid, int studentIndex, int assignmentIndex, int score)
    {
        // Viết code ở đây
        
    }
    
    public static int UpdateAllScores(int[][] scoreGrid, int[] studentIndices, int assignmentIndex, int score)
    {
        // Viết code ở đây
        
    }
}

// Cần cho việc kiểm thử, đừng chỉnh sửa
public class DataCollector
{
    public static int[][] CreateScoreGrid(int students, int assignments)
    {
        int[][] scoreGrid = new int[students][];
        for (int i = 0; i < students; i++)
        {
            scoreGrid[i] = new int[assignments];
        }
        return scoreGrid;
    }
    
    public static bool ValidateScore(int score)
    {
        return score >= 0 && score <= 100;
    }
    
    public static int[][] PopulateWithDefaultValues(int[][] scoreGrid)
    {
        for (int i = 0; i < scoreGrid.Length; i++)
        {
            for (int j = 0; j < scoreGrid[i].Length; j++)
            {
                scoreGrid[i][j] = -1;
            }
        }
        return scoreGrid;
    }
}

Tất cả bài học trong Logic và luồng chương trình

Tự luyện tập: Trình biên dịch C# online