Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                

Syllabus

Download as pdf or txt
Download as pdf or txt
You are on page 1of 8

KOMAR UNIVERSITY OF SCIENCE AND TECHNOLOGY

Programming Concept and Algorithms


Course Title Programming Concept and Algorithm

Course Code CPE2405C No. of Credits 4

Department CPE & CPS College Engineering & Science


Pre-requisites CMP1300 Co-requisites CPE3330
Course Code CPE1410C Course Code CPE2315
Course Coordinator(s) Susan Al Naqshbandi, PhD
Email Susan.alnaqshbandi@komar.edu.iq IP No. 237
Other Course
Teacher(s)/Tutor(s)
None
T1/ Sun B-B06(9:30-11:30) & Tue E-G14 (9:30-11:30)
Class Hours
T2/ Sun B-B05(11:30-13:30) & Tue B-B05(11:30-13:30)

Office Hours Sun & Tue (2:00 – 4:00) / E-232

Course Type Department Requirements


Offer in Academic Year FALL 2024
COURSE DESCRIPTION

This course provides a solid foundation in programming concepts and algorithms, with a special
emphasis on how these can be applied to support sustainable development. Students will learn how to
design and implement efficient algorithms that minimize resource usage, energy consumption, and
environmental impact.
This is an introductory computer programming course using Java programming language. This course
helps the students to understand problem solving techniques using fundamental components of a
structured programming. The fundamental components of a programming language including simple and
structured data representation; mathematical and logical operations; input/output, control and loop
structures; functions. This course also provides students with the knowledge and skills in complexity
analysis and design of computer algorithms.

COURSE OBJECTIVES

The objectives to teach this course are:

Ø Master fundamental programming concepts and algorithm design techniques.


Ø Understand the relationship between computational efficiency and environmental sustainability.
Ø Develop algorithms that address sustainability challenges,
1 such as optimizing resource allocation
KOMAR UNIVERSITY OF SCIENCE AND TECHNOLOGY
and minimizing energy consumption.
Ø The students will learn and understand Java programming IDE platforms.
Ø The students will learn and understand Java language syntax.
Ø The students will learn and understand variable declarations, control statements, loops, method
and arrays.
Ø The students will learn and understand how to write Java code to solve different kinds of
problems in math, science and engineering.

2
KOMAR UNIVERSITY OF SCIENCE AND TECHNOLOGY
COURSE LEARNING OUTCOMES (CLOs)
After completing this course, the students will be able to:
1. Understand the strategies for algorithms to solve basic programming problems [ABET Program
Outcome E].
2. Understand the principle of programming languages. Specifically, how to use Java IDE tools to
develop the programs. [ABET Program Outcome K]
3. Identify different kinds of variables, data types and constants and also how to use them in
computing. [ABET Program Outcome E].
4. Understand the decision-making using control structure selection statements and loops. [ABET
Program Outcome I, J, K]
5. Create Java programs to solve a variety of problems in math, science, business, and games.
[ABET Program Outcome A]
GUIDELINES ON GRADING POLICY

Grades Letter GPA Grades Letter GPA


95 -100% A 4.0 65-69% C 2.0
90-94% A– 3.7 60-64% C– 1.7
85-89% B+ 3.3 55-59% D+ 1.3
80-84% B 3.0 50-54% D 1.0
75-79% B– 2.7 0-49% F 0.0
70-74% C+ 2.3
W Withdrawal I Incomplete

Note: Passing Grade is: 65%

COURSE CONTENT
Course topics include:

• Basic Algorithms
• Data and Expressions
• Conditional and Loops
• Methods
• Arrays
• File processing

3
KOMAR UNIVERSITY OF SCIENCE AND TECHNOLOGY
COURSE TEACHING AND LEARNING ACTIVITIES

• Problem or Project-based Learning


• Case-based learning
• Flipped Classroom (Adding resources before the lecture and later discussing them with the
students during class).
• Presentation.
• Class activity and participation is highly recommended.

COURSE ASSESSMENT TOOLS

Assessment Tool Description Weight


2 Quizzes on week 4 and 8, scheduled by the
Quiz 20%
department. Each quiz 10%
Lab assignment weekly based (Lab Manual will be
Lab assignments / Lab Activity 15%
used to evaluate your weekly assessment)

Practical Test Final Practical Test on week 9 or 10 10%

Problem solving, Case studies


PBL/Case study 10%
Problem-based Learning and real-life case studies
Class participation Daily activity and class discussion and attendance. 5%

Final Exam Theoretical Exam 40%

Assessment Tools Course Learning Outcomes (CLOs) Weight (%)

Quiz 1 and 2 Equally

Lab Assignments 2 and 3 Equally

PBL/Case study 5 100%

Class Participation 1,2,3,4,5 Equally

Final Practical Exam 1,2,3,4,5 Equally

Final Theoretical exam 1,2,3,4 Equally

Textbooks:
- Y Daniel, L., & Georgia, S. (2020). Introduction to Java Programming and Data Structures,
Comprehensive Version. -12th.
References:
1. Chaudhuri, A. B. (2020). Flowchart and algorithm basics: The art of programming. Mercury
Learning and Information.
2. Robert W. Sebesta (2019). Concepts of Programming Languages, 12th Edition, Pearson
Education Limited.
4
KOMAR UNIVERSITY OF SCIENCE AND TECHNOLOGY
3. Paul Deitel, Harvey Deitel, “Java How to program” , Prentice Hall,2014

COURSE POLICY (including plagiarism, academic honesty, attendance etc)

Attendance Policy:
Students are expected to attend each class for the entire semester. Students are responsible for the material
presented in lectures. Only students with official KUST absences, family crises, and illness are excused from
class. Three occasions of lateness count as one absence. The student who misses 10% of the classes will be
considered as failed.

Make-up Policy:
Since all examinations are announced in advance, ZERO grades will be given to any missed examination unless a
student has an acceptable reason, such as illness, for not being able to take the examination during all those days
when the examination was announced.

Academic Dishonesty:
Any type of dishonesty (Plagiarism, copying another’s test or homework, etc) will not be tolerated. Students
found guilty of any type of academic dishonesty are subject to failure in this course, plus further punishment by
the Vice-president’s order on cheating.

GUIDELINES FOR SUCCESS

1. Read and strive to understand (e.g. re-read, ponder) the materials assigned.
2. Illustrate interest and dedication to the course activities and deliverables.
3. Participate and respond to the instructor feedback sessions.
4. Be able to work independently and in a group.
5. Try not to miss the classes.

Course Schedule (Fall 2024)

Week Topics (Chapters) Assessment Tool


Beginning Dates
- Course Syllabus

- Overview of sustainable
September 8th 2024
1 development and its relevance to
September 10th 2024
computer science.
- Course overview:

5
KOMAR UNIVERSITY OF SCIENCE AND TECHNOLOGY
• Introduction to Computers,
Programs, and Java
• Think as a programmer.
• Editors, Compilers, and Interpreters
• Dr.Java as Java Editor
• Other IDE
• Introduction to problem-solving
and Algorithms

September 15th 2024 Mawlid al-Nabi Holiday


- Algorithms:
• Algorithm
• Algorithm Application
Examples
• Sustainable programming:
How algorithmic
efficiency contributes to
2 energy conservation.
September 17th 2024 • Flowchart Application
Examples
• Building Flowcharts for
real-life application
systems.
• Pseudo Code
• Convert Pseudo code to
flowchart

- Elementary Programming

Introduction to Java environments
(Dr.Java)
• Java programs to perform simple
computations
- Variables and assignment:
• Variables
• The assignment Statement
- Primitive Data Types:
September 22nd 2024
3 • Numeric: (Type casting & Lab Activity-1
September 24th 2024
ASCII)
o Integer and Long integer
o Double
o Float
• Characters
• Boolean
- Non-Primitive Data Types:
• String
• String Methods (length and

6
KOMAR UNIVERSITY OF SCIENCE AND TECHNOLOGY
Concatenate)
- Print and println Methods.
• Escape Sequences.

- Expressions:

Arithmetic Operators

Operator precedence

Boolean Operators

Increment &Decrement
September 29th 2024 Operators
4 Quiz-1
September 30th 2024 • Assignment Operators
- Data conversion (Casting):
• Conversion Techniques
- Reading Input Data
• The Scanner Class

- Conditionals:
• Equality and rational operator
October 6th 2024 • If- else statement
5 Lab Activity-2
October 8th 2024 • Nested if statements
• The switch statements

- Loops I:
October 13th 2024 • While statement
6 October 15th 2024 • Do statement. Lab Activity-3
• For Statement

October 20th 2024 Kurdistan Parliament Election Day

7 October 22nd 2024 - Loops II:


• Nested loops PBL /Case Study1
• Break & continue statements.
-
- Methods
October 27th 2024 • Return Type and void methods
8 October 29th 2024 • Static and non-static methods Quiz-2
• Calling methods

- Single-Dimensional Arrays
• Why arrays are necessary for
November 3rd 2024 programming?
November 5th 2024 • Declaring Array Variables
9 Lab Activity-4
• Creating Arrays
• Array Size and Default Values
• Accessing Array Elements

7
KOMAR UNIVERSITY OF SCIENCE AND TECHNOLOGY
- Single-Dimensional Arrays
November 10th 2024 • Array Initializers
10 November 12th 2024 • Processing Arrays Final Practical Exam
• Foreach Loops

- Multidimensional Arrays
• Declaring Variables of Two-
Dimensional Arrays and
November 17th 2024 Creating
November 19th 2024 • Obtaining the Lengths of Two-
Dimensional Arrays
11 • Ragged Arrays Lab Activity-5
• Processing Two-Dimensional
Arrays
• Passing Two-Dimensional
Arrays to Methods
• Searching in Array

- File Processing
November 24th 2024 • Creating file
12 November 26th 2024 • Writing to file PBL /Case Study2
• Reading from file

December 1st 2024


13 Review Week
December 3rd 2024

14 December 7th 2024 FINAL EXAMINATION

You might also like