Logical thinking: fundamentals of computers and computational thinking