文字が来ました。 3つの列で構成されています。
1. student number
2. midterm grade
3. final grade
variable=$(cat $1 | awk 'NR=='$j' {print (($2+$3)/2)}' )
3桁の数字の後に結果を取得するには:
Example: 123123 50 55
result: 52.500
各結果が50より大きいことを確認したいと思います。
答え1
私は提供する:
awk '{ printf("%.3f\n", ($2+$3)/2 ) }' example.txt
出力:52.500
答え2
自分よりランクの高い人にマッチングするには、50
次の手順を実行します。
awk '{sum=($2+$3)/2 ; split(sum,a,"."); if(a[1] > 50) printf("%.3f\n", sum)}' grades
結果をsum
変数に保存します。split
関数を使用して.
点の前の最初の部分を一致させ、結果を印刷します。
学番を印刷するには、printf
次のように行を変更します。
printf("Student: %s\t%.3f\n", $1, sum)