Fundamental concepts and skills of programming in a high-level language. Flow of control: selection, iteration, subroutines. Data structures: strings, arrays, lists. Algorithms using selection and iteration (decision making, finding maxima/minima, searching, sorting, simulation, etc.). Good program design, structure and style are emphasized. Testing and debugging.
This course (website: eecs183.org) is an introductory course to computer science and programming. Students will learn the basics of computing, as well as problem-solving and algorithmic thinking. Languages include C++ and Python.
Learning takes repetition, and approaching the topic from different angles. EECS 183 provides the repetition and the different approaches through multiple tools integrated into the course. We use: zyBooks is an online animated interactive textbook. ZyBooks have minimal text, and instead consist of question sets, animations, interactive tools, and auto-graded homework, so students can learn by doing. CodeLab is an online program for learning and practicing computer programming. It provides you with hundreds of very short exercises with immediate feedback. Problem Roulette is an online tool where you can practice multiple choice exam questions from several years of past exams.
Students will complete projects and create programs that are practical to life outside of class. At the semester’s end, students will work on a real-world final project. You will be working as part of a team. Course Requirements: No data submitted
Intended Audience:
Suitable for both prospective computer science majors in LSA and non-majors. No prior programming experience required.
Class Format:
Lectures are conducted in-person. Lecture attendance is required IN YOUR ENROLLED LECTURE SECTION. Labs are in-person and attendance is required IN YOUR ENROLLED LAB SECTION. There is a significant workload with this course. Students say they spend at least 10 hours every week outside of lecture on this course.
Course Home Page:
Go to eecs183.org to find the current syllabus, schedule, and assignments for the course.