Principles of Computer Science - 2018/2019

This course is part of the Bioinformatics program at Sapienza University of Rome. The topics covered in this course include: introduction to programming, Python 2.7, its standard library, and its use in the analysis of data.

Teachers

Prof. Flavio Chierichetti

Classrooms

  • Tuesday 11:00-14:00 (Psicologia A, CU026)
  • Thursday 9:00-11:00 (Psicologia A, CU026)

Useful Links

  • Please subscribe to our mailing list (using your institutional email address ...@studenti.uniroma1.it) to receive the lecture notes, to ask questions, to read answers, and to get news about the course.
  • Download Canopy 2.1.9, a software package containing Python 2.7 and a number of its libraries.

Textbooks

Grading

Two homeworks will be given during the course - these homeworks will consist of several program-writing exercises.

If a student gets a final homework score greater than or equal 15, he or she can decide to only do the oral exam in January or February.

If a student does not get a final homework score greater than or equal 15, or if a student does not pass the oral exam in January or February, he or she will have to do both a written and an oral exam. Please also note that - while any student can choose to do the written exam - if a student decides to do the written exam, he or she loses whichever homework score he or she obtained.

Exams

The first written exam will take place on January 14th at 10:30 in Aula G50, Viale Regina Elena, 295b (Palazzina G - Third Floor). The first oral exam will take place on January 14th at 15:00 in Room G43, Viale Regina Elena, 295b (Palazzina G - Second Floor).

The second written exam will take place on February 11th at 10:30 in Aula G50, Viale Regina Elena, 295b (Palazzina G - Third Floor). The second oral exam will take place on February 11th at 15:00 in Room G43, Viale Regina Elena, 295b (Palazzina G - Second Floor).

Homeworks

The final grades (and the grades of the second homework) have been published.

The grades of the first homework have been published.

Ethical Code

Copying is forbidden, and each student has to write the homework solutions by himself or herself, and must not show the solutions to other students. On the other hand, students are encouraged to discuss approaches for solving the exercises.

The teacher will analyze all the submitted solutions, and will strongly penalize plagiarism.

Syllabus

  • October 8th: Computers and Programming
  • October 9th: First Steps in Python
  • October 11th: Sequences and Iterations
  • October 16th: Making Decisions
  • October 18th: Exercises
  • October 23rd: Objects
  • October 25th: Exercises
  • October 30th: Cancelled
  • November 1st: Holiday
  • November 6th: Exercises
  • November 8th: Strings (1)
  • November 13th: Strings (2)
  • November 15th: Encodings
  • November 20th: Files (1)
  • November 22th: Files (2)
  • November 27th: Dictionaries
  • November 29th: Sets
  • December 4th: List of Lists
  • December 11th: Passing Functions to Functions
  • December 13th: Exercises
  • December 18th: Classes
  • December 19th: Recap (1)
  • December 21st: Recap (2)