Вычислите Среднее из файла и покажите записи студентов, чье среднее значение превышает 90 - PullRequest
0 голосов
/ 21 февраля 2019

У меня есть файл с именем input.txt, который содержит данные о студентах в формате StudentName # ClassName #SchoolName # Subject1Marks # Subject2Marks.

Shriii#First#ADCET#95#90
Chaitraliii#Second#ADCET#80#75
Shubhangi#First#ADCET#75#70
Tushar#Second#RIT#80#79
Prathamesh#First#RIT#88#63
Sukrut#Second#KIT#91#90

В выходных данных должна содержаться запись о студентах со средним значением более 90. Я должен показать среднее значениев новом столбце.

Ожидаемый результат - Shriii|First|ADCET|95|90|92.5 Я пробовал разные способы, но не смог получить ожидаемый результат.Я пытался Link1 Link2

1 Ответ

0 голосов
/ 21 февраля 2019

awk на помощь!

$ awk -F# -v OFS='|' '{$(NF+1)=($(NF-1)+$NF)/2}1' file

Shriii|First|ADCET|95|90|92.5
Chaitraliii|Second|ADCET|80|75|77.5
Shubhangi|First|ADCET|75|70|72.5
Tushar|Second|RIT|80|79|79.5
Prathamesh|First|RIT|88|63|75.5
Sukrut|Second|KIT|91|90|90.5

или труба к column, чтобы получить симпатичный вывод

... | column -ts'|'

Shriii       First   ADCET  95  90  92.5
Chaitraliii  Second  ADCET  80  75  77.5
Shubhangi    First   ADCET  75  70  72.5
Tushar       Second  RIT    80  79  79.5
Prathamesh   First   RIT    88  63  75.5
Sukrut       Second  KIT    91  90  90.5
...