rlinsdev / cs50

CS50

Home Page:https://csfif-oauth.vercel.app

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Harvard CS50 2023x - Weekly Overview

Harvard University's introduction to the intellectual enterprises of computer science and the art of programming for majors and non-majors alike, with or without prior programming experience.

CS50x teaches students how to think algorithmically and solve problems efficiently.Activities and societies: Harvard University's introduction to the intellectual enterprises of computer science and the art of programming for majors and non-majors alike, with or without prior programming experience. CS50x teaches students how to think algorithmically and solve problems efficiently. Topics include abstraction, algorithms, data structures, encapsulation, resource management, security, software engineering, and web development.

Week 0 - Scratch

Links

Week 1 - C - Lab 1:

Population

$ check50 cs50/labs/2023/x/population
$ style50 population.c
$ submit50 cs50/labs/2023/x/population

Hello

$ check50 cs50/problems/2023/x/hello
$ style50 hello.c
$ submit50 cs50/labs/2023/x/population

Mario

$ check50 cs50/problems/2023/x/mario/less
$ style50 mario.c
$ submit50 cs50/problems/2023/x/mario/less

Cash

$ check50 cs50/problems/2023/x/cash
$ style50 cash.c
$ submit50 cs50/problems/2023/x/cash

Week 2 - Arrays - Lab 1:

Scrabble

$ check50 cs50/labs/2023/x/scrabble
$ style50 scrabble.c
$ submit50 cs50/labs/2023/x/scrabble

Week 2 - Readability

$ check50 cs50/problems/2023/x/readability
$ style50 readability.c
$ submit50 cs50/problems/2023/x/readability

Week 2 - Bulbs

$ check50 cs50/problems/2023/x/bulbs
$ style50 bulbs.c
$ submit50 cs50/problems/2023/x/bulbs

Week 3 - Algorithms

$ check50 cs50/labs/2023/x/sort
$ submit50 cs50/labs/2023/x/sort

Week 3 - Plurality

$ check50 cs50/problems/2023/x/plurality
$ style50 plurality.c
$ submit50 cs50/problems/2023/x/plurality

Week 3 - Runoff

$ check50 cs50/problems/2023/x/plurality
$ style50 plurality.c
$ submit50 cs50/problems/2023/x/plurality

Week 4 - smiley

$ check50 cs50/labs/2023/x/smiley
$ style50 helpers.c
$ submit50 cs50/labs/2023/x/smiley

Week 4 - filter-less

$ check50 cs50/problems/2023/x/filter/less
$ style50 helpers.c
$ submit50 cs50/problems/2023/x/filter/less
$ make filter
$ ./filter -g ./images/yard.bmp g.bmp
$ ./filter -s ./images/INFILE.bmp OUTFILE.bmp
$ ./filter -r ./images/INFILE.bmp OUTFILE.bmp
$ ./filter -b ./images/yard.bmp 1.bmp

Week 4 - Recover

$ check50 cs50/problems/2023/x/recover
$ style50 recover.c
$ submit50 cs50/problems/2023/x/recover
$ ./recover card.raw

Week 5 - Inheritance

$ check50 cs50/labs/2023/x/inheritance
$ style50 inheritance.c
$ submit50 cs50/labs/2023/x/inheritance
valgrind --leak-check=full --show-leak-kinds=all --track-origins=yes -s ./inheritance

Week 5 - speller

$ check50 cs50/problems/2023/x/speller
$ style50 dictionary.c
$ submit50 cs50/problems/2023/x/speller
# Small dic - Redirect to file to compare - wordsworth
./speller dictionaries/small texts/wordsworth.txt > student.txt
./speller50 dictionaries/small texts/wordsworth.txt > staff.txt
# large dic - Redirect to file to compare - wordsworth
./speller dictionaries/large texts/wordsworth.txt > student.txt
./speller50 dictionaries/large texts/wordsworth.txt > staff.txt
# Small dic - Redirect to file to compare - Birdman
./speller dictionaries/large texts/birdman.txt > student.txt
./speller50 dictionaries/large texts/birdman.txt > staff.txt
# Simple Tests in prompt
./speller50 texts/lalaland.txt
./speller texts/lalaland.txt
./speller texts/wordsworth.txt
# Valgrind tests
valgrind ./speller50 texts/lalaland.txt
valgrind ./speller texts/lalaland.txt
valgrind ./speller50 texts/wordsworth.txt
valgrind ./speller texts/wordsworth.txt

./speller texts/cat.txt
valgrind ./speller texts/cat.txt

valgrind --leak-check=full --show-leak-kinds=all --track-origins=yes -s ./speller texts/cat.txt

valgrind ./speller texts/cat.txt
valgrind ./speller dictionaries/small texts/cat.txt
valgrind --leak-check=full --show-leak-kinds=all --track-origins=yes -s ./speller dictionaries/small texts/cat.txt

Week 6 - Python

$ check50 cs50/labs/2023/x/worldcup
$ style50 tournament.py
$ submit50 cs50/labs/2023/x/worldcup
# to debug: Open just the folder labs, run with F5
python3 tournament.py 2019w.csv
python3 tournament.py 2018m.csv

Week 6 - Python

# Hello
$ check50 cs50/problems/2023/x/sentimental/hello
$ style50 hello.py
$ submit50 cs50/problems/2023/x/sentimental/hello
# Mario
$ check50 cs50/problems/2023/x/sentimental/mario/less
$ style50 mario.py
$ submit50 cs50/problems/2023/x/sentimental/mario/less
# Cash
$ check50 cs50/problems/2023/x/sentimental/cash
$ style50 cash.py
$ submit50 cs50/problems/2023/x/sentimental/cash
# readability
$ check50 cs50/problems/2023/x/sentimental/readability
$ style50 readability.py
$ submit50 cs50/problems/2023/x/sentimental/readability
# DNA
$ check50 cs50/problems/2023/x/dna
$ style50 dna.py
$ submit50 cs50/problems/2023/x/dna
$ python3 hello.py
$ python3 mario.py
$ python3 cash.py
$ python3 readability.py
$ python dna.py databases/large.csv sequences/5.txt

Week 7 - SQL - Song

-Install SQLite extension -look inside the table (SQLite explorer - left footer) -Open new query (right click, new query) -execute query with Ctrl + Shift + Q

$ check50 cs50/labs/2023/x/songs
$ submit50 cs50/labs/2023/x/songs
$ sqlite3 songs.db
$ .quit

Week 7 - SQL - Problem Movies

-Install SQLite extension -look inside the table (SQLite explorer - left footer) -Open new query (right click, new query) -execute query with Ctrl + Shift + Q

$ check50 cs50/problems/2023/x/movies
$ submit50 cs50/problems/2023/x/movies

Week 7 - SQL - Problem - fifty-ville

-Install SQLite extension -look inside the table (SQLite explorer - left footer) -Open new query (right click, new query) -execute query with Ctrl + Shift + Q

$ check50 cs50/problems/2023/x/fiftyville
$ submit50 cs50/problems/2023/x/fiftyville

Week 8 - Html - Trivia

-Install Live Server extension -Go Live

$ submit50 cs50/labs/2023/x/trivia

Week 8 - Html - Homepage

-Install Live Server extension -Go Live

$ submit50 cs50/labs/2023/x/homepage

TODOs:

  • Create a simple homepage that introduces yourself, your favorite hobby or extracurricular, or anything else of interest to you.
  • Contain at least four different .html pages
  • HTML: Use at least ten (10) distinct HTML tags
  • CSS: Uses at least five (5) different CSS selectors
  • JS: Integrate one or more features of JavaScript

Lins:

Week 9 - Lab - birthdays

$ submit50 cs50/labs/2023/x/birthdays
#Debug flask configured in json file too
flask run

Week 9 - Problem - Finance

Helpers:

$ check50 cs50/problems/2023/x/finance
$ submit50 cs50/problems/2023/x/finance
#register Key:
$ export API_KEY=[value]
$ pip3 install flask-session
$ flask run
$ style50 *.py

Debug C - Intra

$ make mario
$ debug50 ./mario

Debug C - Localhost

$ gcc -g mario.c -lcs50 -o mario
$ gcc -g filter.c -lcs50 -o ./filter -b images/stadium.bmp ./s.bmp

General Links

Academic Honesty:

About

CS50

https://csfif-oauth.vercel.app


Languages

Language:C 43.0%Language:HTML 28.0%Language:Python 16.6%Language:JavaScript 4.5%Language:EJS 4.0%Language:CSS 3.0%Language:Makefile 0.9%