## CMSC412 exam 1: solution and results

### 2. My scoring and my cutoffs

My scoring is harsh, because I want you to know how far off you are from a precise and accurate answer to the question at hand. I do not want general statements about the question's topic, and definitely not incorrect statements on or off the topic.

My (letter-grade) cutoffs are lenient, because I don't want to penalize you for my scoring. This also means that there is plenty of room in the next exam to make up a bad score in this exam, but only if you answer accurately and precisely and you learn to write multi-threaded programs with minimal or no busy waiting.

I was surprised by the poor performance in problem 2 (GeekOS). If not for this, the cutoffs would have been slightly higher, e.g., A ≥ 60, B ≥ 50, etc.

Problem 4 was a "challenge" problem, to see if anyone had become fluent in the use of semaphores. I set the letter-grade cutoffs assuming a score of zero in this problem.

### 3. Total scores and individual problem scores

The columns below are independent. Column 1 has the sorted scores for problem 1, column 2 has the sorted scores for problem 2, etc. The last column has the sorted total scores and cutoffs.

```P1(20)	P2(30)	P3(20)	P4(10)	Total(80)

20	20	20	5	63
20	18	20	5	62
20	18	20	5	58
20	17	20	5	58
20	14	20	5	57
20	13	20	5	56  A ≥ 56
20	13	20	5	55
20	13	20	5	55
20	13	20	5	53
20	12	20	5	53
19	11	20	5	51
19	11	20	5	49
19	11	15	4	48
19	11	15	4	48
19	10	14	4	46
19	10	14	4	46 B ≥ 46
19	10	14	4	45
19	10	14	4	45
19	9	13	4	44
19	9	12	3	44
19	8	12	3	44
19	8	11	3	44
19	8	10	3	43
19	8	10	2	43
19	8	10	2	41
19	8	10	2	41
19	8	8	1	40  C ≥ 40
19	7	7	1	39
19	7	7	1	38
19	7	5	1	37
19	7	5	0	37
19	6	5	0	34
19	6	5	0	32
19	5	5	0	32  D ≥ 30
```