Skip to content
This repository was archived by the owner on Dec 1, 2022. It is now read-only.

Latest commit

 

History

History

Folders and files

NameName
Last commit message
Last commit date

parent directory

..
 
 

README.md

Prep for Class 1

Before coming to Class 1, please complete the following tasks:

Getting set up

Task Resource Type Link Instructions
Read Lecture Notes Week 1 / Introduction Read over the (very brief) notes associated with "Introduction" portion of the lecture video. Optionally, rewatch that section of the video (0:00-4:36).
Stop at the Announcements header.
Read Lecture Notes Week 1 / C Read over the notes for the "C" section. This will compare what we did in Scratch to code in C.
Stop at the CS50 IDE header (or just keep going, because the next task is to read that. See below for when to stop next).
Read Lecture Notes Week 1 / cs50 IDE Read over the notes for the "CS50 IDE" section. This introduces you to the environment where we'll be writing code throughout the course.
Stop at the Writing Code header.
Do Exercise Logging into the IDE This exercise contains instructions on how get started using the CS50 IDE, where you'll write all your code. Follow those instructions so you can start coding!
Do Exercise Organizing Your Workspace In Helpful Resources, we outline how you should structure the folders in your workspace inside the IDE, and we walk you through how to create those folders.
Do Exercise Hello Now that you've got your IDE set up, let's code! This exercise will walk you through writing a Hello, World program.
Watch Doug's Playlist Command-Line Watch the video from Doug's Playlist called Command-Line. This will introduce you to, you guessed it, the command-line!
There are cheatsheets in Helpful Resources for Terminal Commands here and one for Command Line Shortcuts here that contain topics from the video and more!
Watch Section Week 1 / IDE Watch the first ~13 minutes where they demo using the IDE, running some linux commands in the terminal, and writing a Hello, World program.
Stop at the 13:15 minute mark.

Printing, Getting user input

Task Resource Type Link Instructions
Follow-Along Walkthrough Hello-0 Watch this video in which David Malan writes a Hello, World program. As you watch, follow along by creating your own copy of the same program in your IDE. Afterwards, try poking around and tinkering with your program: Change something, re-run, break it, fix it.
*If you want to challenge yourself, before watching the video, you can grab the psuedocode from here to start writing the program in the CS50 IDE, follow the instructions and then watch the video to finish writing the program.
Do Exercise Haiku Do this simple Haiku exercise in your IDE. This should be similar to what you just did with David Malan (remember how to make a new line?).
Read Lecture Notes Week 1 / Writing Code Read over the "Writing Code" notes, and optionally rewatch that section of the lecture. This will go into more depth about the different components of the programs you've written so far.
Follow-Along Walkthrough Hello-1 Follow along (and type along in your IDE!) with David Malan as he adds some complexity to the Hello, World program. Use a variable to say hello to yourself!
*If you want to challenge yourself, before watching the video, you can grab the psuedocode from here to start writing code in the CS50 IDE, follow the instructions and then watch the video to finish writing the program
Follow-Along Walkthrough Hello-2 Continue to follow along as David adds another wrinkle to this program: taking input from the user.
*The psuedocode for this Follow-Along is here.
Do Exercise Book Do the Book exercise in your IDE. Remember how you got input from the user in the last Follow-Along.
Read Lecture Notes Week 1, continued / C Read over these notes that talks about the components of your Hello, World program in C. We haven't watched this Lecture yet, so don't worry if this is unfamiliar.
Stop when you get to the header titled Types.
Read Supplementary Resource String Format Codes Cheatsheet Check out this cheatsheet of the most common string format codes for inserting values into a string, e.g. %s, %f etc. For now, just pay attention to the "Format Codes" section.

Math, Numeric Types

Task Resource Type Link Instructions
Follow-Along Walkthrough <a href="https://www.youtube.com/watch?v=xmZR2XiwOq4"target="_blank">adder Follow along with David Malan to create a program that takes two numbers provided by the user and adds them together.
*The psuedocode for this Follow-Along is here.
Read Lecture Notes Week, 1 continued / Imprecision Read over the (brief) notes about imprecision. Unfortunately, the Modern Marvels link referenced does not work :(
Stop when you get to the Annonuncements header.
Read Lecture Notes Week 1 / Types Read the lecture notes about types.
Stop at the Conditions header.
Watch Doug's Playlist Data Types Watch Doug's video about Data Types.
You can check the Helpful Resources page C Language here for a cheatsheet on Data Types and Variables covered in the video.
Watch Section Week 1 / data types Pick up the section where we last left off at the ~13:15 minute mark.
Stop at the 15:15 minute mark.
Follow-Along Walkthrough f2c Follow along with David Malan to create a program that converts temperatures in Farenheit to Celsius.
*The psuedocode for this Follow-Along is here.
Do Exercise Percent Try the Percent exercise to practice using floating-point numbers.
Watch Short Precedence Watch this short on Precedence / order of operations.
Stop at the 3:05 minute mark (if you go beyond, you'll hear about more advanced topics we won't be talking about for several weeks).
You can check the Helpful Resources page C Language here for a cheatsheet of the topics covered in the video.
Do Exercise Marathon Fix a program that tells the user how much more time they have to run in a marathon. It's mostly written already, with a key bug.

Now you're ready for Class 1!