‘Awk’ – 2 – HackerRank Solution

In this post, we will solve ‘Awk’ – 2 HackerRank Solution. This problem (‘Awk’ – 2) is a part of Linux Shell series.

Objective

In this challenge, we practice using theÂ awkÂ command for text-munging and data processing tasks.

You are given a file with four space separated columns containing the scores of students in three subjects. The first column contains a single character (AZ), the student identifier. The next three columns have three numbers each. The numbers are betweenÂ 0Â andÂ 100, both inclusive. These numbers denote the scores of the students in English, Mathematics, and Science, respectively.

Your task is to identify whether each of the students has passed or failed.
A student is considered to have passed if (s)he has a scoreÂ 50Â or more inÂ eachÂ of the three subjects.

Input Format

There will be no more thanÂ 10Â rows of data.
Each line will be in the following format:
[Identifier][English Score][Math Score][Science Score]

Output Format

Depending on the scores, display the following for each student:

``[Identifier] : [Pass] ``

or

``[Identifier] : [Fail]  ``

Sample Input

``````A 25 27 50
B 35 37 75
C 75 78 80
D 99 88 76``````

Sample Output

``````A : Fail
B : Fail
C : Pass
D : Pass``````

Explanation

Only studentÂ CÂ and studentÂ DÂ have scoredÂ >=Â 50Â in all three subjects.

Solution – ‘Awk’ – 2 – HackerRank Solution

```awk '{ print \$1 (\$2 < 50 || \$3 < 50 || \$4 < 50 ? " : Fail" : " : Pass") }'
```

Note: This problem (‘Awk’ – 2) is generated by HackerRank but the solution is provided by CodingBroz. This tutorial is only for Educational and Learning purpose.