Trimester 1 Reflection

Introduction

  • This trimester has been one of a kind as I’ve learnt many things so far ranging from python to javascript, but I’ve learnt more python than javascript this trimester at least.
  • I liked working with my group it has taught me lots of things and it was good working with our strengths and sharing our knowledge.

First 4 weeks

  • First four weeks were just the starting weeks where we work in pairs. I worked with my pair Arnav.
  • Somethings we did:
    1. We made a wikipedia serach like thing that searches for wikipedia articles. It used the wikipedia module by using import wikipedia. Sadly, as the javascript was pretty advanced we had to use chatgpt in order to help us complete the code. However, we did add comments to help us understand it. As we focused a lot on python this trimester, we haven’t learnt as much javascript but I hope to learn more in the future.
    2. We made a small bash script program in which we ran an echo program for hello, this just shows us how to run a bash script for fun as this was part of the pair showcase requirements. We didn’t do that many bash related things this trimester, but I hope to review my knowledge on bash so it can be later used next trimester.
    3. Something I made for fun is a quiz. Its a quiz in which it asks questions and then makes a point system based on that. For every question that is answered correctly, the person gets 1 point. If its answered incorrectly, then they will get 0 points.

5-8 weeks

  • Here is where we got into teams and started to work on many things together. With my team, we worked on the Team Teach, Team Project and Passion Project.
  • We worked on a movie database in which we were assigned roles. We made it during the Team Project but for the Passion Project we decided to expand on this
  • We talked about Data Abstraction in the team teach and we assigned homework for people to practice with. Something I learned was that as most people know the Data Abstracton material as it is just variables and lists, the homework wasn’t hard.

9 - 12 weeks

  • Here is where we mainly worked on our Passion Project. For our passion project we created a movie database using multiple APIs and created our own database with retrieving movies from these APIs.
  • We worked on the front end and back end respectively in which we created a nicer looking front end using a color gradient and backend which powers the movie database. Some stuff that we have worked in the front end were the recommendation system and making the front end look really good.

Pseudocode Notes

Developing Algorithms:

WHILE TRUE: { IF (CAN_MOVE(FORWARD)) { MOVE_FORWARD } ELSE { IF CAN_MOVE(RIGHT) { ROTATE_RIGHT MOVE_FORWARD } } }

Developing Procedures:

A 60$ item recieves a 20% discount and taxed at 8%. PROCEDURE applyDiscount(cost, percentDiscounted) { temp ← 100 - percentDiscounted temp← temp/ 100 cost ← cost *temp RETURN(cost) }

price ← applyDiscount(60, 20) This is how we get the final price with the discount by calling the procedure and assigning it to the price variable.

PROCEDURE applyTax(cost, percentTaxed) { temp ← 100 + percentTaxed temp← temp/ 100 cost ← cost *temp RETURN(cost) } price ← applyTax(price, 8)

This applys the 8% tax to the price determined after the discount.

Algorithms:

Pseudo Code

College Board Pseudo Code is a simplified, high-level representation of an algorithm that is designed to be easy to understand. Pseudo code uses a mixture of natural language and programming-like constructs to describe the algorithm’s logic without specifying a particular programming language.

OUTPUT “Name:”, name OUTPUT “Age:”, age </span>

Boolean If Else:

AND:

A ← true B ← true

IF (A AND B) { DISPLAY(“It’s true!”) }

OR: A ← true B ← false

IF (A OR B) { DISPLAY(“It’s true!”) }

NOT:

A ← false

IF (NOT A) { DISPLAY(“It’s true!”) }

Iteration in python:

Nested For Loops:

FOR EACH pair IN groups: FOR EACH person IN pair: DISPLAY person + “ is cool” END FOR DISPLAY pair[0] + “ and “ + pair[1] + “ love to code code code” END FOR

Lists:

aList ← []

USER_INPUT ← (“Enter an item you want (or ‘q’ to quit): “)

REPEAT UNTIL USER_INPUT ← q{ APPEND (aList, USER_INPUT) }

DISPLAY(aList)

Libraries

You can import libraries through import in python. (Not much pseudocode here)

Simulations

Using the pseudocode from above you can create simulations.