Download presentation
Presentation is loading. Please wait.
1
Welcome to SoC!
2
CS1101S or CS1010? why are you here?
3
DDP folks You can sleep
4
Turing Programme Yes, you also can sleep
6
Brief History Scheme was developed at MIT in 1975 to teach programming methodology First introduced at NUS 13 years ago I took this class at MIT in 1994.
7
What is Scheme?
8
8 (+ 5 3) (- (+ 5 3) (* 2 3)) 2 prefix notation
9
11 (+ 5 6) (define a 5) (+ a 6) 11
10
4 36 81 Scheme is Expressive (define (square x) (* x x))
To square something, multiply it by itself (square 2) (square (square 3)) 4 36 81
11
Congratulations! You know Scheme
12
Why Scheme?
13
(didn’t you just learn it in 10 mins? )
Simple (didn’t you just learn it in 10 mins? )
14
Futile to Teach a Language
(Here today, gone tomorrow)
15
Computational Thinking
16
Towers of Hanoi
17
Towers of Hanoi
18
Towers of Hanoi
19
Towers of Hanoi
20
Towers of Hanoi
21
Towers of Hanoi
22
Towers of Hanoi
23
Towers of Hanoi
24
Can you solve this for 1,000 discs?
25
How would we think about the problem?
26
What if we have one disc?
27
What if we have no discs? Do nothing!
28
Suppose we know how to move
Towers of Hanoi A B C Suppose we know how to move 3 discs from A to C
29
Suppose we know how to move
Towers of Hanoi A B C Suppose we know how to move 3 discs from A to C
30
Towers of Hanoi A B C Claim: we can move 3 discs from A to B. Why?
31
Towers of Hanoi A B C Claim: we can move 3 discs from A to B. Why?
32
Towers of Hanoi A B C What do we do for 4 discs?
33
Towers of Hanoi from extra to (define (move-tower size from to extra)
(cond ((= size 0) #t) (else (move-tower (- size 1) from extra to) (print-move from to) (move-tower (- size 1) extra to from)))) from extra to
34
Towers of Hanoi (define (print-move from to) (newline)
(display "move top disk from ") (display from) (display " to ") (display to))
35
Recursion
36
CS1101S Road Map Java Fundamental concepts of computer programming
Memoization Streams ADVANCED Dynamic Programming Object-Oriented Programming INTERMEDIATE Symbolic Data Higher-Order Procedures List Processing Generic Operators BASIC Data Abstraction Mutation & State Procedural Abstraction Iteration Recursion Wishful Thinking Order of Growth Fundamental concepts of computer programming
37
CS1101S or CS1010?
38
How to decide?
39
Puke Test
40
Caveat To enroll in CS1101S, min requirement of A grade for ‘A’ Level Math or equivalent. Or you can appeal at Undergrad Office
41
like ?
42
Scheme vs C Who would you marry? Pretty but poor? Rich but ugly?
43
Ask your friend
44
Ask a senior
45
10 Reasons NOT to take CS1101S If you hate Math If you don’t like challenges If you cannot manage self- studying and need to be spoonfed If you just want to get a free A If you are not interested in learning more
46
10 Reasons NOT to take CS1101S If you don’t like personalised attention If you don’t wish to meet like-minded peers If you don’t care about applying your knowledge If you don’t take shocks well/if you fear evilness If you don’t like shuai prof :P
47
Google is your Friend “cs1101s midterm review”
49
Why are you here?
50
What is the meaning of life?
51
many paths to success
52
“ “Your time is limited, so don't waste it living someone else's life. Don't be trapped by dogma - which is living with the results of other people's thinking. Don't let the noise of other's opinions drown out your own inner voice......
53
“ ......And most important, have the courage to follow your heart and intuition. They somehow already know what you truly want to become. Everything else is secondary.” - Steve Jobs
54
QUESTIONS
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.