Итак, у меня есть 2 файла, которые имеют очень похожий формат:
файл average_grades
ID First_Name Last_Name(s) Average_Grade
323 Dospinescu Arianna 10.00
326 Balan Ionut 9.87
327 Balan Teodor-Raul 9.80
329 Popescu Iulian-Gabriel 9.56
317 Tabarcea Andreea 9.48
365 Negruzzi Marian 9.23
398 Acatrinei Andrei 9.00
365 Popescu Anca-Maria 8.76
и файл summer_marks
ID First_Name Last_Name(s) Summer_Grades
326 Balan Ionut 10 10 10 10 10
327 Balan Teodor-Raul 9 8 7 6 5
329 Popescu Iulian-Gabriel 4 5 6 7 8
365 Negruzzi Marian 4 5 6 7 8
398 Acatrinei Andrei 7 7 7 7 7
387 Popescu Anca-Maria 1 2 3 4 5
317 Tabarcea Andreea 9 8 7 6 5
323 Dospinescu Arianna 9 10 9 10 9
Я хочу написать оболочку, которая получает 2 файла в качестве параметров и обновляет оценки в average_grades следующим образом: вычислите среднее из 5 оценок, которые каждый студент получил летом, затем среднее между этим результатом и уже существующей средней оценкой (в последнем столбце в average_grades ); обновите last_colum и выполните повторную сортировку average_grades по новым значениям в последнем столбце. Как я могу это сделать? Примечание. Гарантируется, что идентификатор каждого учащегося является уникальным
. Я пытался использовать awk
, но не смог. Я хотел перебрать каждую строку в summer_marks , вычислить среднее значение для каждых 5 марок и сохранить эти значения в массиве, а затем снова перебрать каждую строку в average_grades , вычислить новое среднее и обновите последний столбец, затем выполните повторную сортировку.