Advertisement
ptrelford

Tennis scoring

Apr 18th, 2012
309
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Erlang 0.51 KB | None | 0 0
  1. -module(tennis).
  2. -export([score/2]).
  3.  
  4. nextPointCall(love)  -> 15;
  5. nextPointCall(15) -> 30;
  6. nextPointCall(30) -> 40.
  7. score({advantage,Player},Scorer) when Player==Scorer -> {game,Player};
  8. score({advantage,_},_) -> deuce;
  9. score(deuce,Player) -> {advantage, Player};
  10. score({30,40},server) -> deuce;
  11. score({40,30},receiver) -> deuce;
  12. score({40,_},server) -> {game,server};
  13. score({_,40},receiver) -> {game,receiver};
  14. score({S,R},server)   -> {nextPointCall(S),R};
  15. score({S,R},receiver) -> {S,nextPointCall(R)}.
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement