Skip to content

Nashmed28/CS50

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

88 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

CS50

CS50 is the popular introductory Computer Science program at Harvard and Yale taught by David J. Malan. It was the largest class for the 2015 fall semester at both universities. Their website is: https://cs50.harvard.edu/
The course has nine psets (psets 0-8), with four psets (psets 1-4) having two versions, hacker and original, with hacker being a harder version designed for those who have a computer science background. This directory has my solutions for psets 1-8 (both versions) along with their descriptions (pset 0 was excluded as it was to create a scratch game, which couldn't be upload to GitHub) and the pset specifications.
All the psets (except pset 0) were done in CS50 ide, which provides a terminal window along with options to write code. Below are brief descriptions of each pset along with their specifications.

pset 0: Create a Scratch program with specified features. (MIT Scratch website: https://scratch.mit.edu/)
Specifications: http://cdn.cs50.net/2015/fall/psets/0/pset0/pset0.html

pset 1: Create simple programs to learn basic C utilities (such as "Hello World", a shower time to water bottle converter, printing characters based on input, and minimum coin change algorithm).
Specifications: http://cdn.cs50.net/2015/fall/psets/1/pset1/pset1.html

pset 1 hacker edition: Similar to pset1, but required to make a credit card verifier algorithm and print out a more sophisticated pattern based on input.
Specifications: http://cdn.cs50.net/2015/fall/psets/1/hacker1/hacker1.html

pset 2: Create several cipher programs (caesar and vigenère) along with a name to initials algorithm.
Specifications: http://cdn.cs50.net/2015/fall/psets/2/pset2/pset2.html

pset 2 hacker edition: Create a more sophisticated name to initials algorithm (needs to account for more scenarios) and a brute force attack program (to crack hashed/encrypted passwords).
Specifications: http://cdn.cs50.net/2015/fall/psets/2/hacker2/hacker2.html

pset 3: Create a search algorithm and sort algorithm of run time O(n^2). Also program functionality for Game of Fifteen.
Specifications: http://cdn.cs50.net/2015/fall/psets/3/pset3/pset3.html

pset 3 hacker edition: Create a search algorithm and sort algorithm of run time O(n). Also program functionality for Game of Fifteen as well as a solver algorithm.
Specifications: http://cdn.cs50.net/2015/fall/psets/3/hacker3/hacker3.html

pset 4: Use File I/O to edit photos and recover deleted images.
Specifications: http://cdn.cs50.net/2015/fall/psets/4/pset4/pset4.html

pset 4 hacker edition: Similar to pset4, however the resize algorithm has to understand floats.
Specifications: http://cdn.cs50.net/2015/fall/psets/4/hacker4/hacker4.html

pset 5: Create a spell checker.
Specifications: http://cdn.cs50.net/2015/fall/psets/5/pset5/pset5.html

pset 6: Create a web server.
Specifications: http://cdn.cs50.net/2015/fall/psets/6/pset6/pset6.html

pset 7: Create a website that allows people to buy, sell, and manage a stock portfolio.
Specifications: http://cdn.cs50.net/2015/fall/psets/7/pset7/pset7.html

pset 8: Use google map's API to make a map that displays local news by town.
Specifications: http://cdn.cs50.net/2015/fall/psets/8/pset8/pset8.html

The programming languages used were: C (psets 1-5), html (psets 6-8), php (psets 6-8), javascript (pset 6-8), and SQL (psets 7-8).

About

This repository contains all my solutions for my CS50 PSETs.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published