Homework = good fun. It looks like they have used what you have learned in class. Break down each part into smaller pieces, then it should be easier to code.
I'll do one part for you:
The program should return a dictionary, where keys are the types of pieces captured ("pawn", "rook", "knight", "bishop", "queen", and "king") and the corresponding values are tuples of two elements: the count of that type of piece captured, and the average number of moves taken to capture each instance of that type of piece.
They describe it in json notation for you:
{
"pawn": (0, 0),
"rook": (0, 0),
"knight": (1, 7),
"bishop": (0, 0),
"queen": (0, 0),
"king": (0, 0)
}
Here they want a generic dictionary (in C# as no language was tagged):
Dictionary<string, (int count, int avgMoves)> CapturedPieces
= new Dictionary<string, (int count, int avgMoves)>();
Now, you need to apply what you have learned, break down the task into smaller tasks, and write the code.