Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
25 commits
Select commit Hold shift + click to select a range
b146763
update finance
curiouskiwi Aug 4, 2019
3fced73
Add CS50.me links to CS50W, CS50M, and CS50G
brianyu28 Aug 7, 2019
867a611
Merge pull request #357 from cs50/me50
brianyu28 Aug 7, 2019
b6a1c92
Merge pull request #1 from coderigo17/master
Erin-c Aug 9, 2019
554c9e6
Update finance.adoc
dmalan Aug 10, 2019
d647a0e
Formatted JSON
dmalan Aug 10, 2019
d2efc72
Merge pull request #355 from cs50/finance19
dmalan Aug 10, 2019
eaebd46
Merge pull request #359 from Erin-c/master
Erin-c Aug 12, 2019
fe23934
Merge pull request #360 from coderigo17/master
Erin-c Aug 13, 2019
371c74e
Merge pull request #362 from coderigo17/master
Erin-c Aug 15, 2019
c0d2e01
Add Big Board back
brianyu28 Aug 15, 2019
618a43d
removes typo
Aug 15, 2019
8033af3
Merge pull request #363 from Erin-c/master
Erin-c Aug 15, 2019
d1a4276
Update speller.adoc
brianyu28 Aug 15, 2019
30607b6
Update speller.adoc
brianyu28 Aug 15, 2019
aaca3b4
update speller fix check50
curiouskiwi Aug 15, 2019
36ea33c
Merge pull request #365 from cs50/curiouskiwi-patch-2
curiouskiwi Aug 15, 2019
a634d7a
Update Scratch instructions
brianyu28 Aug 16, 2019
2820c9a
Fix typo
brianyu28 Aug 16, 2019
458f631
update project
curiouskiwi Aug 21, 2019
67df516
Merge pull request #366 from cs50/curiouskiwi-patch-2
dmalan Aug 21, 2019
0197895
fixes typo in hello for AP
Aug 26, 2019
8a11441
Merge pull request #367 from Erin-c/master
Erin-c Aug 26, 2019
54fe375
ocw versions of specs
dlloyd09 Sep 5, 2019
40bffc4
update max height from 23 to 8
coderigo17 Sep 12, 2019
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 0 additions & 4 deletions _pages/2019/ap/honesty.adoc
Original file line number Diff line number Diff line change
@@ -1,7 +1,3 @@
---
published: false
---

== Academic Honesty

This course's philosophy on academic honesty is best stated as "be reasonable." The course recognizes that interactions with classmates and others can facilitate mastery of the course's material. However, there remains a line between enlisting the help of another and submitting the work of another. This policy characterizes both sides of that line.
Expand Down
2 changes: 1 addition & 1 deletion _pages/2019/ap/problems/hello/hello.adoc
Original file line number Diff line number Diff line change
Expand Up @@ -49,7 +49,7 @@ Okay, let's create a folder (otherwise known as a *directory*) in which your cod

Front and center in the CS50 IDE workspace is a window wherein you'll be able to write your code. Right now, assuming you haven't played around with the tabs, that window is blank.

Let's create a new file to play around with. Right-click on your newly-created `hello` folder and choose *New File* from the context menu. Then, double-click on this new file (which should hopefully be called `Untitled` and which should be nested beneath `hello` in the file tree), and a blank window should open up in Ace with the tab for `Untitled` as the active one.
Let's create a new file to play around with. Right-click on your newly-created `hello` folder and choose *New File* from the context menu. Then, double-click on this new file (which should hopefully be called `Untitled` and which should be nested beneath `hello` in the file tree), and a blank window should open up a tab for `Untitled` as the active one.

Go ahead and type `hello` (or the ever-popular `asdf`) on line 1 of the document, and then notice how the tab's name now contains a red dot, indicating that you've made changes since the file was first opened. Select *File > Save*, and that red dot should turn green and then disappear, indicating all of our changes are saved.

Expand Down
4 changes: 2 additions & 2 deletions _pages/2019/ap/problems/mario/less/mario.adoc
Original file line number Diff line number Diff line change
Expand Up @@ -36,8 +36,8 @@ image:pyramid.png[Super Mario Brothers, width="50%"]
== Specification

* Write, in a file called `mario.c` in your `~/chapter1/mario/` directory, a program that recreates this half-pyramid using hashes (`#`) for blocks.
* To make things more interesting, first prompt the user for the half-pyramid's height, a non-negative integer no greater than `23`. (The height of the half-pyramid pictured above happens to be `8`.)
* If the user fails to provide a non-negative integer no greater than `23`, you should re-prompt for the same again.
* To make things more interesting, first prompt the user for the half-pyramid's height, a non-negative integer no greater than `8`. (The height of the half-pyramid pictured above is indeed `8`.)
* If the user fails to provide a non-negative integer no greater than `8`, you should re-prompt for the same again.
* Then, generate (with the help of `printf` and one or more loops) the desired half-pyramid.
* Take care to align the bottom-left corner of your half-pyramid with the left-hand edge of your terminal window.

Expand Down
2 changes: 1 addition & 1 deletion _pages/2019/x/project/project.adoc
Original file line number Diff line number Diff line change
Expand Up @@ -27,7 +27,7 @@ submit50 cs50/problems/2019/x/project

=== Step 2 of 2

Submit a short video (that's no more than 2 minutes in length) in which you present your project to the world, as with slides, screenshots, voiceover, and/or live action. Your video should somehow include your project's title, your name, your city and country, and any other details that you'd like to convey to viewers. See http://www.cs171.org/2015/screencast/ for tips from another class at Harvard on how to make a "screencast," though you're welcome to use an actual camera. Upload your video to YouTube (or, if blocked in your country, a similar site) and take note of its URL; it's fine to flag it as "unlisted," but don't flag it as "private."
Submit a short video (that's no more than 2 minutes in length) in which you present your project to the world, as with slides, screenshots, voiceover, and/or live action. Your video should somehow include your project's title, your name, your city and country, and any other details that you'd like to convey to viewers. See https://www.howtogeek.com/205742/how-to-record-your-windows-mac-linux-android-or-ios-screen/ for tips on how to make a "screencast," though you're welcome to use an actual camera. Upload your video to YouTube (or, if blocked in your country, a similar site) and take note of its URL; it's fine to flag it as "unlisted," but don't flag it as "private."

When ready to submit your video, submit https://forms.cs50.net/2019/x/project[this form]!

Expand Down
14 changes: 4 additions & 10 deletions _pages/2019/x/psets/0/scratch.md
Original file line number Diff line number Diff line change
Expand Up @@ -52,15 +52,9 @@ This step assumes that you've downloaded your [Scratch](scratch.md) project as a

1. Visit [this link](https://submit.cs50.io/invites/9770b67479384c4d8c37790779e466d9) to enroll in CS50x on submit.cs50.io. Log in with your GitHub account, and click **Authorize cs50**.
1. Check the box indicating that you'd like to grant course staff access to your submissions, and click **Join course**.
1. Go to `https://github.com/me50/USERNAME`, replacing `USERNAME` in the URL with your own GitHub username.
1. If you see the sentence "We recommend every repository include a README, LICENSE, and .gitignore.", click the blue README link in that sentence. On the next page, scroll down and click the Green "**Commit**" button.
1. On the left side of the screen, click on **Branch: master**.
1. In the field that says **Find or create a branch...**, copy and paste precisely this value, `cs50/problems/2019/x/scratch`, then click **Create branch**. That value is just a unique identifier for this problem.
1. Click the button that says **Upload files**.
1. Drag your `.sb3` file into the box that says **Drag files here**.
1. Click the green **Commit changes** button.
1. Go to [https://submit.cs50.io/upload/cs50/problems/2019/x/scratch](https://submit.cs50.io/upload/cs50/problems/2019/x/scratch).
1. Click "Choose File" and choose your `.sb3` file. Click **Submit**.

That's it! If you visit the course gradebook at [cs50.me/cs50x](https://cs50.me/cs50x), you should see your score within a few minutes. From that page, you can also click on the "View Submissions" link to see deatils about your submission. If you click on the **check50** link next to the submission, you should see which requirements your project met. You are welcome to resubmit as many times as you'd like!

If you don't see any results in [your gradebook](https://cs50.me/cs50x) after a few minutes, make sure that your branch is named `cs50/problems/2019/x/scratch`. If you mistyped it the first time, you should create a new branch (repeating steps 6 and 7), making sure to name it `cs50/problems/2019/x/scratch`!
That's it! Once your submission uploads, you should be redirected to your submission page. After your submission is graded, you can click on the **check50** link next to the submission to see which requirements your project met. You are welcome to resubmit as many times as you'd like!

To view your current progress in the course, visit the course gradebook at [cs50.me/cs50x](https://cs50.me/cs50x)!
6 changes: 2 additions & 4 deletions _pages/2019/x/psets/4/speller/hashtable/speller.adoc
Original file line number Diff line number Diff line change
Expand Up @@ -319,18 +319,16 @@ How to assess just how fast (and correct) your code is? Well, as always, feel fr
~cs50/2019/x/pset4/speller dictionaries/large texts/lalaland.txt
----

/////
== Big Board

And if you'd like to put your code to the test against classmates' code (just for fun), execute the command below to challenge the Big Board before or after you submit.

[source]
----
check50 cs50/problems/2019/x/challenges/speller
submit50 cs50/problems/2019/x/challenges/speller
----

Then visit the URL that `check50` outputs to see where you rank!
/////
Then visit the URL that `submit50` outputs (after a few minutes!) to see where you rank!

== How to Submit

Expand Down
6 changes: 2 additions & 4 deletions _pages/2019/x/psets/4/speller/trie/speller.adoc
Original file line number Diff line number Diff line change
Expand Up @@ -317,18 +317,16 @@ How to assess just how fast (and correct) your code is? Well, as always, feel fr
~cs50/2019/x/pset4/speller dictionaries/large texts/lalaland.txt
----

/////
== Big Board

And if you'd like to put your code to the test against classmates' code (just for fun), execute the command below to challenge the Big Board before or after you submit.

[source]
----
check50 cs50/problems/2019/x/challenges/speller
submit50 cs50/problems/2019/x/challenges/speller
----

Then visit the URL that `check50` outputs to see where you rank!
/////
Then visit the URL that `check50` outputs (after a few minutes!) to see where you rank!

== How to Submit

Expand Down
52 changes: 51 additions & 1 deletion _pages/2019/x/psets/8/finance/finance.adoc
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,57 @@ If you're not quite sure what it means to buy and sell stocks (i.e., shares of a

You're about to implement C$50 Finance, a web app via which you can manage portfolios of stocks. Not only will this tool allow you to check real stocks' actual prices and portfolios' values, it will also let you buy (okay, "buy") and sell (okay, "sell") stocks by querying https://iextrading.com/developer/[IEX] for stocks' prices.

Indeed, IEX lets you download stock quotes via their API (application programming interface) using URLs like https://api.iextrading.com/1.0/stock/NFLX/quote. Notice how Netflix's symbol (NFLX) is embedded in this URL; that's how IEX knows whose data to return. If you follow that link, you'll see a reponse in JSON (JavaScript Object Notation) format. It's a bit messy, but notice how, between the curly braces, there's a comma-separated list of key-value pairs, with a colon separating each key from its value.
Indeed, IEX lets you download stock quotes via their API (application programming interface) using URLs like `https://cloud-sse.iexapis.com/stable/stock/nflx/quote?token=API_KEY`. Notice how Netflix's symbol (NFLX) is embedded in this URL; that's how IEX knows whose data to return. That link won't actually return any data because IEX requires you to use an API key (more about that in a bit), but if it did, you'd see a response in JSON (JavaScript Object Notation) format like this:

[source,json]
----
{
"symbol": "NFLX",
"companyName": "Netflix, Inc.",
"primaryExchange": "NASDAQ",
"calculationPrice": "close",
"open": 317.49,
"openTime": 1564752600327,
"close": 318.83,
"closeTime": 1564776000616,
"high": 319.41,
"low": 311.8,
"latestPrice": 318.83,
"latestSource": "Close",
"latestTime": "August 2, 2019",
"latestUpdate": 1564776000616,
"latestVolume": 6232279,
"iexRealtimePrice": null,
"iexRealtimeSize": null,
"iexLastUpdated": null,
"delayedPrice": 318.83,
"delayedPriceTime": 1564776000616,
"extendedPrice": 319.37,
"extendedChange": 0.54,
"extendedChangePercent": 0.00169,
"extendedPriceTime": 1564876784244,
"previousClose": 319.5,
"previousVolume": 6563156,
"change": -0.67,
"changePercent": -0.0021,
"volume": 6232279,
"iexMarketPercent": null,
"iexVolume": null,
"avgTotalVolume": 7998833,
"iexBidPrice": null,
"iexBidSize": null,
"iexAskPrice": null,
"iexAskSize": null,
"marketCap": 139594933050,
"peRatio": 120.77,
"week52High": 386.79,
"week52Low": 231.23,
"ytdChange": 0.18907500000000002,
"lastTradeTime": 1564776000616
}
----

Notice how, between the curly braces, there's a comma-separated list of key-value pairs, with a colon separating each key from its value.

Let's turn our attention now to this problem's distribution code!

Expand Down
4 changes: 3 additions & 1 deletion _pages/games/2019/x/assignments/0/assignment0.md
Original file line number Diff line number Diff line change
Expand Up @@ -58,7 +58,7 @@ paddle (or both, if desired) try to deflect the paddle on their own, you've done

## How to Submit

1. Visit [submit.cs50.io](https://submit.cs50.io/), log in with your GitHub account, and click **Authorize cs50**.
1. Visit [this link](https://submit.cs50.io/invites/46e6f2ea29954ce9bb1bdc478a440055), log in with your GitHub account, and click **Authorize cs50**. Then, check the box indicating that you'd like to grant course staff access to your submissions, and click **Join course**.
1. [Install Git](https://git-scm.com/downloads) and, optionally, [install `submit50`](https://cs50.readthedocs.io/submit50/).
1. Using Git, push your work to `https://github.com/me50/USERNAME.git`, where `USERNAME` is your GitHub username, on a branch called `games50/assignments/2019/x/0` or, if you've installed `submit50`, execute

Expand All @@ -69,3 +69,5 @@ paddle (or both, if desired) try to deflect the paddle on their own, you've done
instead.
1. [Record a 1- to 5-minute screencast](https://www.howtogeek.com/205742/how-to-record-your-windows-mac-linux-android-or-ios-screen/) in which you demonstrate your app's functionality and/or walk viewers through your code. [Upload that video to YouTube](https://www.youtube.com/upload) (as unlisted or public, but not private) or somewhere else.
1. [Submit this form](https://forms.cs50.io/3f2958dd-e506-4232-970c-c51c62b94ae1).

You can then go to [https://cs50.me/cs50g](https://cs50.me/cs50g) to view your current progress!
4 changes: 3 additions & 1 deletion _pages/games/2019/x/assignments/1/assignment1.md
Original file line number Diff line number Diff line change
Expand Up @@ -58,7 +58,7 @@ cap it off, display a pause icon in the middle of the screen, nice and large, so

## How to Submit

1. If you haven't done so already, visit [submit.cs50.io](https://submit.cs50.io/), log in with your GitHub account, and click **Authorize cs50**.
1. If you haven't done so already, visit [this link](https://submit.cs50.io/invites/46e6f2ea29954ce9bb1bdc478a440055), log in with your GitHub account, and click **Authorize cs50**. Then, check the box indicating that you'd like to grant course staff access to your submissions, and click **Join course**.
1. Using [Git](https://git-scm.com/downloads), push your work to `https://github.com/me50/USERNAME.git`, where `USERNAME` is your GitHub username, on a branch called `games50/assignments/2019/x/1` or, if you've installed [`submit50`](https://cs50.readthedocs.io/submit50/), execute

```
Expand All @@ -68,3 +68,5 @@ cap it off, display a pause icon in the middle of the screen, nice and large, so
instead.
1. [Record a 1- to 5-minute screencast](https://www.howtogeek.com/205742/how-to-record-your-windows-mac-linux-android-or-ios-screen/) in which you demonstrate your app's functionality and/or walk viewers through your code. [Upload that video to YouTube](https://www.youtube.com/upload) (as unlisted or public, but not private) or somewhere else.
1. [Submit this form](https://forms.cs50.io/3f2958dd-e506-4232-970c-c51c62b94ae1).

You can then go to [https://cs50.me/cs50g](https://cs50.me/cs50g) to view your current progress!
4 changes: 3 additions & 1 deletion _pages/games/2019/x/assignments/10/assignment10.md
Original file line number Diff line number Diff line change
Expand Up @@ -37,7 +37,7 @@ Your goal this assignment:

## How to Submit

1. If you haven't done so already, visit [submit.cs50.io](https://submit.cs50.io/), log in with your GitHub account, and click **Authorize cs50**.
1. If you haven't done so already, visit [this link](https://submit.cs50.io/invites/46e6f2ea29954ce9bb1bdc478a440055), log in with your GitHub account, and click **Authorize cs50**. Then, check the box indicating that you'd like to grant course staff access to your submissions, and click **Join course**.
1. Using [Git](https://git-scm.com/downloads), push your work to `https://github.com/me50/USERNAME.git`, where `USERNAME` is your GitHub username, on a branch called `games50/assignments/2019/x/10` or, if you've installed [`submit50`](https://cs50.readthedocs.io/submit50/), execute

```
Expand All @@ -47,3 +47,5 @@ Your goal this assignment:
instead.
1. [Record a 1- to 5-minute screencast](https://www.howtogeek.com/205742/how-to-record-your-windows-mac-linux-android-or-ios-screen/) in which you demonstrate your app's functionality and/or walk viewers through your code. [Upload that video to YouTube](https://www.youtube.com/upload) (as unlisted or public, but not private) or somewhere else.
1. [Submit this form](https://forms.cs50.io/3f2958dd-e506-4232-970c-c51c62b94ae1).

You can then go to [https://cs50.me/cs50g](https://cs50.me/cs50g) to view your current progress!
4 changes: 3 additions & 1 deletion _pages/games/2019/x/assignments/2/assignment2.md
Original file line number Diff line number Diff line change
Expand Up @@ -35,7 +35,7 @@ Your goals this assignment:

## How to Submit

1. If you haven't done so already, visit [submit.cs50.io](https://submit.cs50.io/), log in with your GitHub account, and click **Authorize cs50**.
1. If you haven't done so already, visit [this link](https://submit.cs50.io/invites/46e6f2ea29954ce9bb1bdc478a440055), log in with your GitHub account, and click **Authorize cs50**. Then, check the box indicating that you'd like to grant course staff access to your submissions, and click **Join course**.
1. Using [Git](https://git-scm.com/downloads), push your work to `https://github.com/me50/USERNAME.git`, where `USERNAME` is your GitHub username, on a branch called `games50/assignments/2019/x/2` or, if you've installed [`submit50`](https://cs50.readthedocs.io/submit50/), execute

```
Expand All @@ -45,3 +45,5 @@ Your goals this assignment:
instead.
1. [Record a 1- to 5-minute screencast](https://www.howtogeek.com/205742/how-to-record-your-windows-mac-linux-android-or-ios-screen/) in which you demonstrate your app's functionality and/or walk viewers through your code. [Upload that video to YouTube](https://www.youtube.com/upload) (as unlisted or public, but not private) or somewhere else.
1. [Submit this form](https://forms.cs50.io/3f2958dd-e506-4232-970c-c51c62b94ae1).

You can then go to [https://cs50.me/cs50g](https://cs50.me/cs50g) to view your current progress!
4 changes: 3 additions & 1 deletion _pages/games/2019/x/assignments/3/assignment3.md
Original file line number Diff line number Diff line change
Expand Up @@ -40,7 +40,7 @@ Your goals this assignment:

## How to Submit

1. If you haven't done so already, visit [submit.cs50.io](https://submit.cs50.io/), log in with your GitHub account, and click **Authorize cs50**.
1. If you haven't done so already, visit [this link](https://submit.cs50.io/invites/46e6f2ea29954ce9bb1bdc478a440055), log in with your GitHub account, and click **Authorize cs50**. Then, check the box indicating that you'd like to grant course staff access to your submissions, and click **Join course**.
1. Using [Git](https://git-scm.com/downloads), push your work to `https://github.com/me50/USERNAME.git`, where `USERNAME` is your GitHub username, on a branch called `games50/assignments/2019/x/3` or, if you've installed [`submit50`](https://cs50.readthedocs.io/submit50/), execute

```
Expand All @@ -50,3 +50,5 @@ Your goals this assignment:
instead.
1. [Record a 1- to 5-minute screencast](https://www.howtogeek.com/205742/how-to-record-your-windows-mac-linux-android-or-ios-screen/) in which you demonstrate your app's functionality and/or walk viewers through your code. [Upload that video to YouTube](https://www.youtube.com/upload) (as unlisted or public, but not private) or somewhere else.
1. [Submit this form](https://forms.cs50.io/3f2958dd-e506-4232-970c-c51c62b94ae1).

You can then go to [https://cs50.me/cs50g](https://cs50.me/cs50g) to view your current progress!
4 changes: 3 additions & 1 deletion _pages/games/2019/x/assignments/4/assignment4.md
Original file line number Diff line number Diff line change
Expand Up @@ -38,7 +38,7 @@ Your goals this assignment:

## How to Submit

1. If you haven't done so already, visit [submit.cs50.io](https://submit.cs50.io/), log in with your GitHub account, and click **Authorize cs50**.
1. If you haven't done so already, visit [this link](https://submit.cs50.io/invites/46e6f2ea29954ce9bb1bdc478a440055), log in with your GitHub account, and click **Authorize cs50**. Then, check the box indicating that you'd like to grant course staff access to your submissions, and click **Join course**.
1. Using [Git](https://git-scm.com/downloads), push your work to `https://github.com/me50/USERNAME.git`, where `USERNAME` is your GitHub username, on a branch called `games50/assignments/2019/x/4` or, if you've installed [`submit50`](https://cs50.readthedocs.io/submit50/), execute

```
Expand All @@ -48,3 +48,5 @@ Your goals this assignment:
instead.
1. [Record a 1- to 5-minute screencast](https://www.howtogeek.com/205742/how-to-record-your-windows-mac-linux-android-or-ios-screen/) in which you demonstrate your app's functionality and/or walk viewers through your code. [Upload that video to YouTube](https://www.youtube.com/upload) (as unlisted or public, but not private) or somewhere else.
1. [Submit this form](https://forms.cs50.io/3f2958dd-e506-4232-970c-c51c62b94ae1).

You can then go to [https://cs50.me/cs50g](https://cs50.me/cs50g) to view your current progress!
Loading