2026 ASEE Annual Conference & Exposition

Bridging Mathematics and Programming in Introductory Computer Science: Lessons from Assignment Design and Classroom Practice

Presented at CIT Technical Session 11: Tools, Platforms, and Technologies.

Mathematical reasoning is fundamental to computer science (CS); however, many students entering introductory programming courses struggle to connect foundational mathematical concepts with computational logic. Drawing from over a decade of college-level mathematics teaching experience, doctoral studies in mathematical theory within computer science, and several years of teaching introductory computer science at a four-year college, this paper explores how lesson and assignment design can bridge the gap between mathematical thinking and programming practice in an introductory Java course.
This reflective paper presents classroom strategies, lesson structures, and programming assignments intentionally designed to strengthen mathematical reasoning through guided problem solving, logical analysis, and coding exercises. Three instructional strategies are emphasized: (1) making the mathematical foundations of programming constructs explicit, (2) translating real-world problem scenarios into mathematical representations prior to coding, and (3) connecting mathematical models directly to programming constructs and program state. Common student challenges, including confusion surrounding integer division in Java, misunderstandings of quotient–remainder reasoning and logical conditions, difficulties translating mathematical relationships into Boolean expressions, and errors in applying operator precedence, are discussed alongside concrete classroom examples, including a representative lab assignment that guides students from mathematical modeling to program implementation. Reflective classroom observations and informal assessments suggest that embedding mathematical reasoning throughout lessons and assignments can support improved conceptual understanding, confidence, and engagement among novice programmers. The paper concludes with lessons learned, practical recommendations for instructors, and broader implications for integrating mathematical thinking into computer science education.

Authors
Download paper (469 KB)

Are you a researcher? Would you like to cite this paper? Visit the ASEE document repository at peer.asee.org for more tools and easy citations.