Computer Programming Techniques

CSE 0611-1101 | Theory | 1st Year 1st Semester | Dept. of CSE, University of Brahmanbaria

Instructor: Md. Rashed

Term: Fall

Location: University of Brahmanbaria, Dept. of CSE

Time: On Campus (3.00 contact hours per week)

Course Overview

This course gives a fundamental idea about the common theoretical phenomena in computer programming techniques. It also provides a bridge to students’ previous concepts about basic computer knowledge.

Course Code: CSE 0611-1101 Credit: 3.00 Total Marks: 100

Course Objectives

  • Familiarize students with the history of computers
  • Help them know the laws of computing with different number systems
  • Make them understand the computer system and its workflow
  • Make students able to understand the fundamental techniques of programming
  • Acquire preliminary ideas of structured programming using a specific programming language
  • Enable students to develop and debug basic C programs using problem-solving skills

Course Learning Outcomes (CLOs)

After successful completion of the course, students will be able to:

  • CLO1. Demonstrate a solid understanding of computer fundamentals, including hardware, software, operating systems, and computer networks and security basics
  • CLO2. Develop and debug basic C programs, demonstrating proficiency in program design and code implementation
  • CLO3. Design and implement algorithms to solve computational problems, using C programming constructs such as loops, conditionals and functions
  • CLO4. Analyze and solve simple programming problems using the C programming language, applying fundamental programming concepts such as variables, data types, control structures, functions and arrays
  • CLO5. Apply basic debugging and testing techniques to identify and resolve errors in C programs, ensuring program correctness and reliability
  • CLO6. Work collaboratively in teams to solve programming problems, effectively communicating their solutions and incorporating feedback
  • CLO7. Analyze the social implications of computing technologies, recognizing ethical considerations, privacy concerns and the impact of technology on society

Prerequisites

  • None

Textbooks

  • Peter Norton, Introduction to Computers
  • Greg Perry and Dean Miller, C Programming Absolute Beginner’s Guide
  • Reema Thareja, Computer Fundamentals and Programming in C
  • Herbert Schildt, Teach Yourself C

Grading

  • Class Attendance and Performance: 10%
  • Assignment/Class Test: 20%
  • Midterm: 30%
  • Final: 40%

Contact

Md. Rashed, Lecturer, Dept. of CSE, University of Brahmanbaria Email: md.rashed@uob.edu.bd

Schedule

Week Date Topic Materials
1 Introduction to Computers

Computer history, generations of computers, types of computers, basic organization of a computer system.

2 Communication and Security Basics

Data communication and computer networks overview, computer security basics, ethical considerations, privacy concerns and the impact of computing technology on society.

3-4 Computer Peripherals, Software and Number Systems

Input/output devices and their hardware, memory and storage, system software, application software and operating systems. Binary, octal, decimal and hexadecimal systems, conversions and basic arithmetic.

5-6 Programming Workflow

Problem solving, algorithms, flowcharts and pseudocode, source code to machine code (editor, compiler, linker, executable), structure of a C program, types of errors and basic debugging.

7-8 Programming Language Basic Concepts

Tokens, variables, data types, constants, operators and expressions, input and output, conditional statements (if, if-else, switch).

9 Midterm Examination
10 Loops

for, while and do-while loops, nested loops, break and continue, problem solving with loops.

11 Functions

Function declaration, definition and calling, parameter passing, return values, scope of variables, recursion.

12 Arrays

One-dimensional and two-dimensional arrays, array operations, searching and sorting basics, passing arrays to functions.

13 Strings

Character arrays, string input and output, string handling functions, common string problems.

14 Debugging, Testing and Group Problem Solving

Testing and debugging techniques, group problem analysis and presentation of solutions, revision.

Final Final Examination (Semester End)