This is CS50
what ultimately matters in this course is not so much where you end up relative to your classmates but where
you end up relative to yourself when you began
2/3
of CS50 students have never taken CS before
input →
→ output
000
001
010
011
100
101
110
111
123
123
1
123
10
1
123
100
10
1
123
100
10
1
100 × 1
123
100
10
1
100 × 1
10 × 2
+
123
100
10
1
100 × 1
10 × 2
1 × 3
+
+
123
100
10
1
100
20
3
+
+
123
# # #
100
10
1
# # #
102
101
100
# # #
22
21
20
# # #
4
2
1
000
4
2
1
001
4
2
1
010
4
2
1
011
4
2
1
100
4
2
1
101
4
2
1
110
4
2
1
111
4
2
1
A
65
01000001
ASCII
... | A | B | C | D | E | F | G | H | I | ... |
... | 65 | 66 | 67 | 68 | 69 | 70 | 71 | 72 | 73 | ... |
| | |
72 | 73 | 33 |
| | |
H | I | |
72 | 73 | 33 |
| | |
H | I | ! |
72 | 73 | 33 |
| | |
H | I | ! |
72 | 73 | 33 |
| | |
H | I | ! |
01001000 | 01001001 | 00100001 |
| | |
Unicode
4,036,991,159
11110000 10011111 10011000 10110111
| | |
RGB
| | |
72 | 73 | 33 |
72 | 73 | 33 |
| | |
| | |
144 60 64
128 60 64
144 62 64
128 62 64
144 65 64
128 65 64
144 62 64
128 62 64
144 69 64
128 69 64
144 69 64
128 69 64
144 67 64
128 67 64
input →
→ output
algorithm
n
n/2
n
n/2
n
n/2
n
n/2
n
log2 n
pseudocode
1 Pick up phone book
2 Open to middle of phone book
3 Look at page
4 If person is on page
5 Call person
6 Else if person is earlier in book
7 Open to middle of left half of book
8 Go back to line 3
9 Else if person is later in book
10 Open to middle of right half of book
11 Go back to line 3
12 Else
13 Quit
1 Pick up phone book
2 Open to middle of phone book
3 Look at page
4 If person is on page
5 Call person
6 Else if person is earlier in book
7 Open to middle of left half of book
8 Go back to line 3
9 Else if person is later in book
10 Open to middle of right half of book
11 Go back to line 3
12 Else
13 Quit
1 Pick up phone book
2 Open to middle of phone book
3 Look at page
4 If person is on page
5 Call person
6 Else if person is earlier in book
7 Open to middle of left half of book
8 Go back to line 3
9 Else if person is later in book
10 Open to middle of right half of book
11 Go back to line 3
12 Else
13 Quit
1 Pick up phone book
2 Open to middle of phone book
3 Look at page
4 If person is on page
5 Call person
6 Else if person is earlier in book
7 Open to middle of left half of book
8 Go back to line 3
9 Else if person is later in book
10 Open to middle of right half of book
11 Go back to line 3
12 Else
13 Quit
1 Pick up phone book
2 Open to middle of phone book
3 Look at page
4 If person is on page
5 Call person
6 Else if person is earlier in book
7 Open to middle of left half of book
8 Go back to line 3
9 Else if person is later in book
10 Open to middle of right half of book
11 Go back to line 3
12 Else
13 Quit
#include <stdio.h>
int main(void)�{
printf("hello, world\n");
}
print("hello, world")
algorithm
input →
→ output
algorithm
→
→
→ output
→
→
→ output
→
→
algorithm
input →
→ output
algorithm
→
→
→ output
→
→
→ output
→
→
algorithm
input →
→ output
algorithm
→
→
→ output
→
→
→ output
→
→
→
→
→
→
→
→
→
This is CS50