curriculum vitae de cirujano dentista programming problem solving and abstraction with c alistair moffat pdf