Skip to content

Harvard University CS50's Introduction to Computer Science

Notifications You must be signed in to change notification settings

jmp1730/CS50x-CS

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

32 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Harvard University CS50x's Introduction to Computer Science

https://cs50.harvard.edu/x/2021/

Introduction to the intellectual enterprises of computer science and the art of programming. This course teaches students how to think algorithmically and solve problems efficiently. Topics include abstraction, algorithms, data structures, encapsulation, resource management, security, software engineering, and web programming. Languages include C, Python, and SQL plus HTML, CSS, and JavaScript. Problem sets inspired by the arts, humanities, social sciences, and sciences. Course culminates in a final project. Designed for concentrators and non-concentrators alike, with or without prior programming experience. Two thirds of CS50 students have never taken CS before. Among the overarching goals of this course are to inspire students to explore unfamiliar waters, without fear of failure, create an intensive, shared experience, accessible to all students, and build community among students.

Result:

Completed successfully and certificate obtained

PROJECT :

Pset0 - Implement any project in Scratch.

Pset:
1a - Implement a program that first asks the user how much change is owed and then prints the minimum number of coins with which that change can be made.
1b - Implement a program that prompts the user for a credit card number and then reports (via printf) whether it is a valid American Express, MasterCard, or Visa card number, per the definitions of each’s format herein.
1c - Implement a program that allows the user to decide just how tall the pyramid should be by first prompting them for a positive integer.
1d - Implement a program that allows the user to decide just how tall the adjacent pyramid blocks should be by first prompting them for a positive integer.

Pset:
2a - Implement a program that computes the approximate grade level needed to comprehend some text.
2b - Implement a program that encrypts messages using Caesar’s cipher.
2c - Implement a program that implements a substitution cipher.

Pset:
3a - Implement a program that runs a plurality election.
3b - Implement a program that runs a runoff election.
3c - Implement a program that runs a Tideman election.

Pset:
4a - Implement a program that applies filters to BMPs.
4b - Implement a program that applies more complex filters to BMPs.
4c - Implement a program that recovers JPEGs from a forensic image.

Pset5 - Implement a program that spell-checks a file using a hash table.

Pset:
6a - Implement a program that calculates the minimum number of coins required to give a user change in python.
6b - Implement a program that determines whether a provided credit card number is valid according to Luhn’s algorithm in python.
6c - Implement a program that identifies a person based on their DNA in python.
6d - Implement a program that prints out a simple greeting to the user in python.
6e - Implement a program that prints out a half-pyramid of a specified height in python.
6f - Implement a program that prints out a double half-pyramid of a specified height in python.
6g - Implement a program that computes the approximate grade level needed to comprehend some text in python.

Pset:
7a - Write SQL queries to answer questions about a database of houses.
7b - Write SQL queries to answer questions about a database of movies.

Pset8 - Build a simple homepage using HTML, CSS, and JavaScript.

Final Project - Develop your very own piece of software.