380 likes | 680 Views
E N D
1. CS1010 Programming MethodologyA beginning in problem solving in Computer Science Aaron Tan
http://www.comp.nus.edu.sg/~cs1010/
2. 2 Contents What is Computer Science (CS)?
What is Problem Solving?
What is Algorithmic Problem Solving?
[CS1010: A beginning in problem solving in CS]
3. What is Computer Science? Computing Curricula 2001 (Computer Science) Report identifies 14 knowledge focus groups 3 [CS1010: A beginning in problem solving in CS] Computer science or computing science (sometimes abbreviated CS) is the study of the theoretical foundations of information and computation and of practical techniques for their implementation and application in computer systems. It is frequently described as the systematic study of algorithmic processes that create, describe, and transform information.
The branch of engineering science that studies (with the aid of computers) computable processes and structures.
Computer science or computing science (sometimes abbreviated CS) is the study of the theoretical foundations of information and computation and of practical techniques for their implementation and application in computer systems. It is frequently described as the systematic study of algorithmic processes that create, describe, and transform information.
The branch of engineering science that studies (with the aid of computers) computable processes and structures.
4. 4 Problem Solving Exercises The exercises in the next few slides are of varied nature, chosen to illustrate the extent of general problem solving.
Different kinds of questions require different domain knowledge and strategies.
Apply your problem solving skills and creativity here!
[CS1010: A beginning in problem solving in CS]
5. 5 Warm-up #1: Glasses of milk Six glasses are in a row, the first three full of milk, the second three empty. By moving only one glass, can you arrange them so that empty and full glasses alternate? [CS1010: A beginning in problem solving in CS]
6. 6 Warm-up #2: Bear A bear, starting from the point P, walked one mile due south. Then he changed direction and walked one mile due east. Then he turned again to the left and walked one mile due north, and arrived at the point P he started from. What was the colour of the bear? [CS1010: A beginning in problem solving in CS]
7. 7 Warm-up #3: Mad scientist A mad scientist wishes to make a chain out of plutonium and lead pieces. There is a problem, however. If the scientist places two pieces of plutonium next to each other, KA-BOOM!!! [CS1010: A beginning in problem solving in CS]
8. 8 Warm-up #4: Silver chain A traveller arrives at an inn and intends to stay for a week. He has no money but only a chain consisting of 7 silver rings. He uses one ring to pay for each day spent at the inn, but the innkeeper agrees to accept no more than one broken ring. [CS1010: A beginning in problem solving in CS]
9. 9 Warm-up #5: Dominoes Figure 1 below shows a domino and Figure 2 shows a 4?4 board with two squares at opposite corners removed. How do you show that it is not possible to cover this board completely with dominoes? [CS1010: A beginning in problem solving in CS]
10. 10 Warm-up #6: Triominoes Figure 3 below shows a triomino and Figure 4 shows a 4 ? 4 board with a defect (hole) in one square. How do you show that the board can be covered with triominoes? [CS1010: A beginning in problem solving in CS]
11. 11 [CS1010: A beginning in problem solving in CS] Problem Solving Process (1/5) Analysis
Design
Implementation
Testing
12. 12 Problem Solving Process (2/5) Analysis
Design
Implementation
Testing
[CS1010: A beginning in problem solving in CS]
13. 13 Problem Solving Process (3/5) Analysis
Design
Implementation
Testing
[CS1010: A beginning in problem solving in CS]
14. 14 Problem Solving Process (4/5) Analysis
Design
Implementation
Testing
[CS1010: A beginning in problem solving in CS]
15. 15 Problem Solving Process (5/5) [CS1010: A beginning in problem solving in CS]
16. 16 CS1010: Description and Objectives This module introduces the fundamental concepts of problem solving by computing and programming using an imperative programming language.
Outcomes:
Know how to solve simple algorithmic problems.
Know how to write good small programs.
C is merely a tool.
This module is not just about C.
[CS1010: A beginning in problem solving in CS]
17. 17 CS1010: Your Friendly Lecturers [CS1010: A beginning in problem solving in CS]
18. 18 CS1010: Sectional and Discussion Groups Sectional groups are small lecture groups, small enough to fit in a programming lab.
Discussion groups are tutorial groups. They are even smaller, and are also conducted in programming labs.
Your sectional group and discussion groups will be pre-allocated to you.
All groups cover the SAME syllabus, and have common tests, and all students are graded together as a whole.
[CS1010: A beginning in problem solving in CS]
19. 19 A Peek at a Lecture Session (1/2) [CS1010: A beginning in problem solving in CS]
20. 20 A Peek at a Lecture Session (2/2) [CS1010: A beginning in problem solving in CS]
21. 21 Module Website http://www.comp.nus.edu.sg/~cs1010
[CS1010: A beginning in problem solving in CS]
22. 22 IVLE http://ivle/nus.edu.sg
[CS1010: A beginning in problem solving in CS]
23. 23 Workload (4 MCs) Lectures:
3 hours/week in a lab setting.
Discussion sessions:
2 hours/week in a lab setting.
Continual assessment:
Take-home lab assignments
2 Practical Exams
Term Test
Final Exam
[CS1010: A beginning in problem solving in CS]
24. 24 Algorithmic Problem Solving An algorithm is a well-defined computational procedure consisting of a set of instructions, that takes some value or set of values, as input, and produces some value or set of values, as output.
[CS1010: A beginning in problem solving in CS]
25. 25 Programming [CS1010: A beginning in problem solving in CS]
26. Placement Exam (1/4) 26 [CS1010: A beginning in problem solving in CS]
27. Placement Exam (2/4) 27 [CS1010: A beginning in problem solving in CS]
28. Placement Exam (3/4) 28 [CS1010: A beginning in problem solving in CS]
29. Placement Exam (4/4) 29 [CS1010: A beginning in problem solving in CS]
30. 30 A C Program (welcome.c) [CS1010: A beginning in problem solving in CS]
31. Algorithmic Problem Solving #1: Maze 31 [CS1010: A beginning in problem solving in CS]
32. Algorithmic Problem Solving #2: Sudoku 32 [CS1010: A beginning in problem solving in CS]
33. Algorithmic Problem Solving #3: MasterMind (1/2) Sink: Correct colour, correct position
Hit: Correct colour, wrong position
33 [CS1010: A beginning in problem solving in CS]
34. Algorithmic Problem Solving #3: MasterMind (2/2) 6 colours:
R: Red
B: Blue
G: Green
Y: Yellow
C: Cyan
M: Magenta
34 [CS1010: A beginning in problem solving in CS]
35. CS1010 versus CS1101S 35 [CS1010: A beginning in problem solving in CS]
36. Announcements Choosing CS1010 or CS1101S
URL: https://register.comp.nus.edu.sg/UGOffice4
Deadline revised to: 26 July 2011, Tuesday,12.00 noon
Default: CS1010
No bidding queue in CORS for both CS1010 and CS1101S
Students from IS Dept are precluded from taking CS1101S.
DDP students in CS and Maths/Applied Maths will be pre-allocated CS1101S
Diploma holders who are exempted CS1010 will be pre-allocated CS1020
For more details, please contact the SoC Undergraduate Office at COM1, Level 2, Room 5
36 [CS1010: A beginning in problem solving in CS]
37. Attitude is Everything 37 [CS1010: A beginning in problem solving in CS]
38. My Contact 38 [CS1010: A beginning in problem solving in CS]
39. 39 [CS1010: A beginning in problem solving in CS]