3 ms·
Erlang, just for fun: grade(#student{work=Work, tried_hard=Tried}) -> grade1(Work, Tried). grade1(excellent_work, _) -> 'a+'; grade1(okay_stuff, yes) ->
by illo 12y ago
Erlang, just for fun:
grade(#student{work=Work, tried_hard=Tried}) -> grade1(Work, Tried).
grade1(excellent_work, _) -> 'a+';
grade1(okay_stuff, yes) -> b;
grade1(okay_stuff, _) -> 'b-';
grade1(_, _) -> c.
Edit: formatting.
- JadeNB 12y agoOr, if we're going to go with Prolog-inspired syntax, then why not Prolog? grade(Student, Grade) :- worked(Student, Work), work_grade(Work, Student, Grade). work_grade('Excellent', _, 'A+'). work_grade('Okay', Student, 'B') :- tried_hard(Student). work_grade('Okay', _, 'B-'). work_grade(_, _, 'C'). I'm a bit rusty, and I don't have a Prolog interpreter to hand to test, so I might have got some syntax wrong.