### Additional Resources

- Theory & Exercises by M. Ragni
- Google Classroom (code in slides)

& Numerical Methods 17-18

- Theory & Exercises by M. Ragni
- Google Classroom (code in slides)

- [20180222] Bash & Intro to Ruby (.rb, puts, '', "")
*PDF* - [20180226]

Topics:

- String interpolation.
- Mathematical operators (and int vs float).
- A gentle introduction to the math library.
- The first function (with hints on scopes).
- Variables (with hints on scopes).
- Bash input - output.

- [20180305]

Topics:

- Recap on math operators.
- Boolean variables and expressions.
- Conditional execution.
- Input from the user.
- Range

- [20180312]

Topics:

- Loops, break, next.
- Example: Method of Exhaustion for the Area of the Circle
*PDF*. - Recursive function.
- Example: Factorial.
- Exercise:
*"Move O around"*(solution next lesson).

- [20180319]

Topics:

- Example:
*"Move O around"*- (solution). - Array - doc.
- Example:
*"Screen via Array"*- (code). - OOP: class, instance, method, instance's variable, initialize.
- Example:
*"Screen as class"*- (code).

- Example:
- [20180322]

Topics:

- [20180326]

Topics:

- OOP Recap; Encapsulation; Inheritance; Polymorphism - (pdf).
- Classes: Object, Numeric, Array, Strings, Hash, File - (doc).
- Exercise 1: Read numbers from a file and sort them - (solution).
- Exercise 2: Read numbers from a file and count occurrences.

- [20180409]

Topics:

- Solution to 0326 exercise 2 - (solution).
- Sorting (<0, 0, >0). Note: 0 is True in Ruby.
- Methods and attributes visibility: public, protected, private.
- Introduction to attributes accessibility: getter & setter.
- Enumerable mixin.
- Design of
*our*Matrix class.

- [20180416]

Topics:

- Attributes accessibility: getter & setter - (examples)
- Matrix implementation draft
- Assignment: Write tests (simple code that uses the class features) and debug it - (broken_matrix).

- [20180423]

Topics:

- How to debug
- Matrix debugging and test - (fixed_matrix).

- [20180507]

Topics:

- [Exercise] Operations on vectors - (max(even), min(odd)).
- [Exercise] Operations on vectors - (local minima).
- [Revision] Hash (
*a.k.a*dict). - Introduction to bubble-sort.

- [20180514]

Topics:

- [20180521]

Topics:

- Campionato - (source).
- Newton - (source).
- Halley - (source).
- [Revision] Hash, File, Blocks.
- [Funny] What happens when you forget to cast - JDK 7.67 installer on OSx 10.10 - String vs Numeric comparison.

- [20180528]

Topics:

- Exam simulation.

When contacting me, please use an appropriate subject like '[CNUM 1718] ...' and, before sending in your questions, double check for the answers not to be already in the Google Classroom.