Analysis of algorithmic problems, development of solutions, and their implementation in a high level programming language using programming techniques. Topics: Numerical systems, internal representation, constants, variables, and data types, selection, and iteration control structures, functions, and data passing mechanisms, basic data structures, data input/output, files, and software development environments.