20804207Introduction to Computer Programming
Course Information
Description
This course introduces students to programming using the Visual Basic.NET programming language. (Note: 207 and 208 do not use the same programming language.) It is intended for students with little or no prior programming experience. Topics include the basics of structured programming such as data types, looping and decision statements, functions, arrays, strings, and files. The course also covers the construction and use of classes and other principles of object-oriented programming.
Total Credits
2

Course Competencies
  1. Write a given program
    Assessment Strategies
    in a lab exercise
    Criteria
    write a given program
    compile a program
    save a source file
    print a source file
    run an executable file
    redirect output to a printer
    write source file in standard format

  2. Document a program using comments
    Assessment Strategies
    in projects completed in lab and outside of class
    Criteria
    use appropriate form for single and multiline comments.
    comment all required input.
    comment all output generated.
    comment on algorithms and/or program organization.
    comment on choices of data types.

  3. Construct an algorithm to solve a problem
    Assessment Strategies
    in projects completed in lab and outside of class
    in classroom exercises, take-home problem sets, and tests
    Criteria
    analyze data and operation specifications of a problem
    do a top-down analysis of the problem
    devise an algorithm to solve the problem
    modify the algorithm to handle exceptional cases

  4. Use variables in a program
    Assessment Strategies
    in every programming project
    in every test and problem set
    Criteria
    define variables of atomic data types with appropriate names
    store information in the variables with initialization, assignment, and input
    extract information in variables for output

  5. Debug a program
    Assessment Strategies
    in projects completed in lab and outside of class
    in written debugging exercises on exams and problem sets
    Criteria
    find syntax errors which prevent compilation and linking
    repair syntax errors which prevent compilation and linking
    write logically correct source code to accomplish assigned task
    analyze output and watch variables with break points and step-by-step execution to detect and repair logical errors

  6. Format output in a program
    Assessment Strategies
    in projects completed in lab and outside of class
    in quizzes and tests
    Criteria
    specify a field width
    display numbers in scientific notation
    display numbers in fixed decimal notation with appropriate precision
    insert new lines
    change the justification

  7. Use header files in a program
    Assessment Strategies
    in projects completed in lab and outside of class
    in classroom exercises, take-home problem sets, and tests
    Criteria
    include appropriate header files for each desired library function and predefined identifier

  8. Use operators in a program
    Assessment Strategies
    in projects completed in lab and outside of class
    in classroom exercises, take-home problem sets, and tests
    Criteria
    use insertion operator
    use extraction operator >> with output streams
    use arithmetic operators (+, -, *, /, %) with integer (and where appropriate) floating point numbers
    use assignment operators (=, +=, -=, *=, /=, %=) with appropriate data types
    use logical operators (&&, ||, !) to combine logical (T/F) expressions
    use relational operators (==, !=, =) with appropriate data types
    use ++ and -- in both prefix and postfix form
    use parentheses to change the order of operations as required by the operator precedence table

  9. Use looping statements in a program
    Assessment Strategies
    in projects completed in lab and outside of class
    in classroom exercises, problem sets, quizzes, and tests
    Criteria
    use "for" loop appropriately
    use "while" loop appropriately
    use "do-while" loop appropriately
    analyze problem to determine which type of loop to use
    use nested loops to solve various problems (eg, sorting)

  10. Use branching statements in a program
    Assessment Strategies
    in projects completed in lab and outside of class
    in classroom exercises, problem sets, quizzes, and exams
    Criteria
    use "if" statement appropriately
    use "if-else" statement appropriately
    use nested "if-else" statements appropriately
    use "switch" statement appropriately
    analyze a problem to determine which branching type to use
    use branching statements to solve a problem

  11. Select control structures to implement an algorithm
    Assessment Strategies
    in projects completed in lab and outside of class
    Criteria
    embody algorithm in structure chart and/or flow chart
    determine which tasks require separate functions and what each function requires for input and output
    select looping and branching statements to accomplish repetitive and decision-making steps, respectively

  12. Use functions in a program
    Assessment Strategies
    in projects completed in lab and outside of class
    in quizzes and exams
    Criteria
    use predefined functions from libraries
    declare a function prototype
    define a function, including return type, value and reference parameters, and default values as appropriate
    overload a function

  13. Use arrays in a program
    Assessment Strategies
    in projects completed in lab and outside of class
    in quizzes and exams
    Criteria
    define elements of a static array
    fill elements of a static array
    access elements of a static array
    pass arrays as parameters in functions

  14. Use strings in a program
    Assessment Strategies
    in projects completed in lab and outside of class
    in quizzes and exams
    Criteria
    defines a string.
    initializes a string.
    inserts a string into a stream.
    extracts a string from a stream.
    uses library functions from string.h (strcmp, strcpy, strlen, etc.)