ECS 032A: Introduction to Programming

Subject
ECS 032A
Title
Introduction to Programming
Status
Active
Units
4.0
Effective Term
2020 Spring Quarter
Learning Activities
Lecture - 3.0 hours
Discussion - 1.0 hours
Description
Introduction to programming and problem solving in Python. Aimed primarily at non-major students. No credit to students who completed previous ECS 010, ECS 030 or higher. GE Prior to Fall 2011: SciEng. GE: SE.
Credit Limitation
No credit to students who completed ECS 030, ECS 032B, ECS 032C, ECS 036B, ECS 036C, ECS 040, or ECS 060
Enrollment Restrictions
Not open to students who have completed ECS 036A; open to undergraduate students only.
  • Introduction: the design of a computer, steps in solving a problem using a computer
  • Algorithms: general concept, development of efficient algorithms
  • Programming in Python
    • Scalar data types, concept of data type, standard and user-defined scalar types
    • Simple statements, arithmetic and boolean expressions, assignment statements, simple input and output statements (including file I/O)
    • Flow of control, repetitive statements, conditional statements
    • Data structures: lists, strings
    • Functions: general concept; declaration and calls; parameters
    • Classes
    • Use of an Integrated Development Environment  (IDE)

Illlustrative Reading
John Zelle, Python Programming: An Introduction to Computer Science, Addison-Wesley, 2010 

GE3
Science & Engineering

Overlap
This course overlaps in the introduction of basic programming concepts with ECS 12, ECS 15, ECS 30, ECS 36A, and Engineering 6. It covers Python programming in much greater depth than ECS 15. ECS 32A does not cover topics such as memory management, pointers, and arrays, which are covered in the context of C programming in ECS 30. ECS 32A does not cover topics such as the UNIX environment that are coved in ECS 36A. Engineering 6 covers programming in MATLAB, a specialized language for mathematical data analysis, and ECS 12 covers programming in PROCESSNG, a specialized language for media programming. ECS 32A covers general-purpose programming and is appropriate for all majors. 

Course Category