Skip to content

dennisberg13100/cs50

Repository files navigation

Introduction to Computer Science

Week 0

Project in scrath. Scratch is a website from MIT where you can put "Blocks of code" together. An amazing way to understand what programing is on a funny and interactive way. In this week our problem set (exercices, that we called pset) was just to create a simple program puting some of this "blocks of code" together.

Week 1

Program in C. This first week we had to create a program that draws a pyramid with a loop, and that the user could choose the size from the loop. We also had to create a greedy program which checks the minimum number of coins that we can use to give back some exchange. This two exercises are not availible anymore because it was created in a Sandbox, and not included in this repository, but we recreated this exercise in python in pset6.

Week 2

In this week we learned what arrays are and how we can manipulate them. The exercises from this week were to create a system that encodes a text on a very simple way by just adding numbers (chosen by yhe user) to the characters. For example: The chosen number is 2, the letter "a" would be "c", "b" would be "d" and so on. On the other exercise we had to create a program that could take a text as an input and could tell us the difficulty level to read this text based on the Coleman-Liau index. This exercises are availible in the pset2 folder in this repository.

Week 3

In this week we learned about alogriths. Afterwards we had to create two different voting systems.Both of them are available in the folder pset 3 from this repository. The difference between the two voting systems is that runoff has a more fare way to check who won in case of a tie.

Week 4

This week's goal was to learn about memory. Now the problems started to get really challenging. In the first problem we created a program which creats filters for fotos (gray-scale, mirror-rotation, blur and edge detection) in C. The second program should recover lost pictures in a foto camera memory. Both of this exercises are also available in this repository in the pset4 folder.

Week 5

Here we learned about data-structure and we started do learn how to handle bigger data (than just the arrays until now). In this exercise we had to create a spelling check program: This program would have an input file "book" and an input file "dictionaty". It is checking each word in the book if it's in the dictionary, otherwise, it's telling us that this word was spelled wrong. It was very important in this exercise that the program could realise this work in the least time as possible (this program also pronted out how long it took to check every thing). Also available in Pset 5.

Week 6

Here we started to program in phyton. The first exercise was to re-write part of our exercises made in C in Python. The other exercise was to write a program that would take a file with DNA code and tell use to who it belongs. Both exercises are available in the pset6 folder.

Week 7

In this week we started to use SQL programing language and we learned about data-base. These exercises were to create a lot of SQL request from a movie data base (13 in total) and the other was to convert a data-base that was writen in a csv (coma separated values), is a SQLite3 database to improve speed and efficiency of our data-base.

Week 8

In our last general lesson we talked about the risk of abstraction. From here on we had to chose our path. I chose the Web path. This path has two exercises: One is for the front-end (html, css, and javaScript), in which we had to create a page telling about ourselves. This page is available here in the pset8 folder and is also online.

CLICK HERE OT VISIT THE SITE.

The second exercise was a kind of a game. In this game you start with $ 10,000.00 and you can buy and sell stock-market shares to try to get more money. This exercise is available on the finance folder in this repository, and I have still plans to put it online aswell.

Final Project

For our final project we could chose what ever we whanted to program with any of the languages that we've learnt. I created a Front-end Sandbox. A website in which you can run some testcodes in HTML, CSS an JavaScript and see the results on real time on the same screen.

CS50 certificate