The American university in Cairo
Computer Science & Engineering Department
Summer 2017

http://www1.aucegypt.edu/faculty/cse/akhalil/csci106k/
Why Should Everybody Learn How to Program
the Computer ?
Course: CSCE 1001-04&05
“Fundamentals of Computer Science” , 3 Credit Hours
Instructor: Dr. KHALIL
E-Mail:
akhalil@aucegypt.edu
Office: Room 2148 SSE
Office hours: 11:00 - 12:00 noon UMTWR
Lab Instructors: Eng. Belal Youssef
E-Mail:
belalali@aucegypt.edu
Course
Description:
Introduction to the discipline of computing. Computer history and Evolution. Internal Information representation and operations. Professional ethics for computer programmers and users. Problem solving concepts, algorithms, pseudo-code, and Flow Charts. Control structures, functions, procedures, parameters, one-dimensional arrays. Programming laboratory provides hands-on using C++ language in problem solving .
Course
Outcomes:
After completing the CSCE 1001, students
will be able to:
Textbook
“Problem Solving with C++”,
Walter Savitch & Kendrick Mock. ISBN: 9781292018249
Topics
to be covered in the course
|
Topic |
Textbook ppt |
Other
Supporting Material |
Supplementary
Material |
Supplementary
Material |
|
1. Introduction to Computer (Ch 1 –
Self-Reading) § A Preview of Computer Science § Computer Architecture § Computer Hardware § Computer Software § Computer Languages § Processing a High-Level Language Program § 2. Professional Ethics for Computer Programmers. |
Introduction to
Computers and Programming in C++ |
(pdf) Introduction
to Computer (ppt) |
|
|
|
2. Internal Information Representation
& Processing § Number Systems § Binary Number System §
Information
Representation, integer and character
representations § Simple Arithmetic operations in Binary |
|
|
|
|
|
3. Problem Solving Concepts &
Programming in C++ 3.1 Problem Solving Methodologies § Algorithmic Methodology § Software Engineering Methodology § Flow Charts § Top-Down Design, Problem breakdown and abstraction |
|
|
||
|
3.2
Program Development in C++ (Ch 2) § C++ Language Elements § Data Types, Declarations, and Expressions § Input/Output § The string class § C++ Program Structure |
|
|
||
|
3.3
Arithmetic Operations (Ch 2) § Arithmetic operators § Using Variables/constants § Type Compatibilities & Integer Operations § Standard Library Functions (cmath) |
|
|||
|
3.4
Control Structures – Programming of Selections & Iterations (Ch 2) § Flow Controls § if-else Statement § Compound statements § Simple Loop Mechanisms § while and do-while statements |
|
|
||
|
3.5
More Control Structures (Ch 3) § Using Boolean Expressions § Multiway Selections using Nested and Extended if Statement § Increment and Decrement operators § for loop |
|
|
||
|
3.6
Procedural Abstraction and Modular Programming Using Functions (Ch 4) 1. § Top-down Design & Structure Chart § Programmer-defined functions § Procedural Abstraction § Scope & Local Variables |
|
|||
|
3.7
Functions (Ch 5) § § Type of functions § Pre-defined functions § Programmer-defined functions § Call-BY-Value Parameters § Call-By-Reference Parameters |
|
|||
|
3.8
Arrays (Ch 7) § Introduction to Arrays § Arrays in Functions § Programming with Arrays |
|
Research Paper & Presentation:
In
this assignment, students are encouraged to work in groups of 2 students at most.
Each group is asked to write a research paper (5 to 10 pages) and give a
10-minute presentation on one the following topics (Due Date: Sunday,
July 2nd, 2017).
CSCE 1001
Research Topic Assignment Summer 2017
|
Topic |
Section 04 |
Section 05 |
|
1. Big Data Analytics |
|
|
|
2. Virtual & Augmented Reality |
|
|
|
3. Internet Of
Things (IoS) |
|
|
|
4. Operating Systems |
|
|
|
6. Computer
Networks |
|
|
|
7. Algorithms |
|
|
|
8. Programming
Languages |
|
|
|
9. Software
Engineering |
|
|
|
10. Database
Systems |
|
|
|
11. Computer
Graphics |
|
|
|
12. Artificial Intelligence |
|
|
|
13. Web-based Applications |
|
|
|
14. Cloud Computing |
|
|
|
15. Computer Security |
|
|
|
16. Computer Applications in
Engineering |
|
|
|
17. Computer Applications in
Science |
|
|
|
18. Computer Applications in
Media (TV
Broadcasting and Journalism) |
|
|
|
19. CAD/CAM Systems |
|
|
|
20. Mobile Computing |
|
|
|
21. Computer Games |
|
|
|
22. Social Networks |
|
|
|
23. Media Networks |
|
|
|
24. GIS (Geographical
Information Systems) |
|
|
|
25. E-Commerce |
|
|
|
26. E-Learning |
|
|
|
27. E-Government |
|
|
Programming Laboratory:
This part will accompany the regular
classes and covers the following hands-on:
§ Working with C++ Programming Environment (Visual Studio)
§ C++ Language Elements.
§ Arithmetic Expressions.
§ Arithmetic and Assignment.
§ Boolean, Conditionals, and Loops
§ Arrays.
Exams: Midterm Exam I: Monday, June 19, 2017
Midterm Exam II: Monday, July 10, 2017
Final Exam: Last Day of Classes,Wednesday, July 19, 2017 at
12:00 noon
Grading
System:
Activity
|
Points |
Exam I
|
20
|
Exam II
|
20
|
Quizzes
|
15
|
Research & Presentation
|
5
|
Assignments & Lab Prog. Quizzes
|
10
|
Attendance & Class Contribution
|
5
|
Final Exam
|
25
|
Total |
100 |
Lab
Sessions Schedule for Sections 04 & 05
|
Day |
Time Slot |
|
|
|
|
|
|
|
|
|
Lab
Sessions Content:
|
Lab Session No. |
Problems’ Sheet |
Week Number |
|
Lab Session 1 |
2 |
|
|
Lab Session 2 |
3 |
|
|
Lab Session 3 |
4 |
|
|
Lab Session 4 |
5 |
|
|
Lab Session 5 |
6 |
|
|
Lab Session 6 |
7 |
|
|
Lab Session 7 |
8 |
|
|
Lab Session 8 |
9 |
|
|
Lab Session 9 |
10 |
|
|
Lab Session 10 |
11 |
|
|
Lab Session 11 |
12 |
|
|
Lab Session 12 |
13 |
Teaching Assistant
(TA)
|
Name |
Section No |
Responsibilities |
Email |
Mobile Phone |
Office Hours |
|
Mr. Belal Youssef |
03 & 05 |
Instruction of Lab Sessions & grading
Assignments |
belalali |
|
|
|
|
|
|
|
|
|
Undergraduate
Teaching Assistants
|
Name |
Email |
Mobile Phone |
Office Hours Schedule |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Attendance Policy:
Attendance is expected.
Whether you come to class or not, you are responsible for keeping up with what
happens in class. If you miss a class (other than for illness or emergency), it
is not reasonable for you to expect me to repeat the material that was covered
in the class you missed just for you. This applies both the content of the
class as well as the announcements about class policies, events, deadlines or
whatever. The AUC attendance policy will be applied.