Problem Set 0: Survey and Python Installation

The questions below are due on Friday February 07, 2025; 10:00:00 PM.
 
You are not logged in.

Please Log In for full access to the web site.
Note that this link will take you to an external site (https://shimmer.mit.edu) to authenticate, and then you will be redirected back to this page.
Download Files

1) Background survey

What is your student year status?
First-year (undergrad)
Sophomore
Junior
Senior
Graduate student (non-MBA)
MBA student

What is your (primary) major/department? If first-year undergrad, choose "Undecided".

If you are double-majoring, what is your second major? If not double-majoring or undecided, please leave blank.

Approximately how many lines of code have you written before?

What prior programming experience do you have? (Select all that apply.)
None
HTML
AP Computer Science
Online coding course, e.g., Codeacademy, freeCodeCamp, etc.)
Programming course on MIT Open Course Ware or edX
Took 6.0001/6.100A before
Took a Python course at MIT during IAP before (e.g., 6.145)
College course using Python
College course using programming language other than Python
Programming experience in Python
Programming experience in language other than Python
Other

Why are you enrolling in 6.100A this term? (Select all that apply.)
To learn how to program
To fulfill a course requirement
Because my advisor suggested it
Because other students suggested it
To take it with friends
To take advantage of first-year No Record or Flex PNR
Other

Which resources are you familiar with for learning how to program (Select all that apply.)
Web search
Stack Overflow
Chatbots, e.g., ChatGPT, Copilot, Gemini, etc.
Python documentation
Online coding courses
MIT Open Course Ware or edX
Online exercises, e.g., CodingBat, Exercism, etc.
Programming textbooks
Friends that know how to program

2) Course info check

(Please read the course info page!)

Which of the following count towards your grade?
Finger exercises
Problem sets
Exercises on MITx
Extra practice problems
Microquizzes
Final exam

When are problem sets due?
Every Monday
Every Wednesday
Depends on the pset, check the calendar

When are finger exercises due?
Generally available with the pset, and due with the pset
Generally available with a lecture, and due by the beginning of next lecture
No deadline per exercise, but must do them all by the end of the course

Microquizzes are in the last 25-45 minutes of specific lectures outlined in the calendar. What happens if you cannot make it to a microquiz?
Email S^3 and 6.100-staff@mit.edu to schedule a conflict microquiz
Conflict microquizzes are not given, but the lowest quiz grade is dropped

You are working with a friend on the problem set. Your friend tells you to use a specific kind of language feature to solve a part. Is this a collaboration violation?
Yes for you and your friend
Yes only for you
Yes only for your friend
No

You are stuck debugging the problem set. Your friend already finished, but they can't stay to help you anymore, so they email you their code. You look over the part you are stuck, but write up your own code. Is this a collaboration violation?
Yes for you and your friend
Yes only for you
Yes only for your friend
No

3) Getting started with Python

The rest of this problem set is about setting up your Python environment, writing a simple Python program, and submitting it on our website. Your submission will not be graded, but subsequent problem sets will rely on this procedure.

3.1) Installing Python

Follow the Installing Python instructions under the About tab in the top menu. These will guide you through installing Python, the VS Code editor, and some Python packages we'll need in the course. If you choose not to use the VS Code setup outlined in those instructions, then you are responsible for providing your own Python environment. We use Python 3.11+ in this class, and require the following Python packages:

  • numpy
  • matplotlib
  • seaborn
  • scikit-learn

3.2) Making a simple program

The goal is to exercise using some simple elements of Python, including:

  • the ability to read input from a user at the console (using the input function),
  • the ability to store values in variables, so that the program can access those values as needed,
  • and the ability to print out results (using the print function).

In the unzipped ps0 folder from the Installing Python instructions, open the file named ps0.py, and write a program that does the following in order:

  1. Ask the user to enter a number x.
  2. Ask the user to enter a number y.
  3. Print the value of x raised to the power y.
  4. Print x immediately followed by y with no spaces or newlines.

An example run of the program is shown below. The numbers printed after : on a line are instances of a user's input. The rest should be printed by your program.

Enter number x: 78
Enter number y: 9
x to the power of y is 106868920913284608
x smushed with y is 789

4) Submission

At the start of ps0.py in the header comments, fill in your name and the names of your collaborators. Save the file, and upload it via the Select File button below. Then click the Submit button.

  No file selected

Refresh the page, and verify via the Download Most Recent Submission link that the correct file was uploaded. For all psets, always do this step to confirm we received the file you intended.

When you re-upload a file, your previous submission will be overwritten. Pset 0 does not count for a grade. For all other psets, if you upload anything after the due time (see the top of each pset page), it will count as your latest submission, and late days will start applying for the entire pset.