Warning

## Homework 01 - Solving a polynomial equation

Solve the problems in PRO-HW-01.pdf:

1. Solve tasks 1, 2 and 3.a in hand.
2. Solve tasks 3.b and 4 using Python. In task 4 find the roots of the polynomial specified for you in Brute.

Upload a zip archive hw01.zip (via the course ware) containing:

1. hw01.json - json file containing the answers to tasks 1, 2, 3.b and 4 (see below for the description of how to create it)
2. hw01.py - python script which solves tasks 3.b and 4 via companion matrices.
3. hw01.pdf - pdf file containing the solution to tasks 1, 2, 3.a together with companion matrices for tasks 3.b and 4 (LaTex, photographies, scans, …).

Note: All files must be contained in the root of hw01.zip.

The file hw01.json will be evaluated automatically, while hw01.py and hw01.pdf will be evaluated manually.

Creating hw01.json:

Create an empty dictionary in Python:

solution = {}

The value for the key “task1” is the list of coefficients of the product polynomial starting from the term of the highest degree, i.e. for the product polynomial 2*x^4 + 5*x^3 + 3*x^2 + 1 do

solution["task1"] = [2, 5, 3, 0, 1]

The value for the key “task2” is the list of lists of coefficients of the quotient polynomial and the remainder, respectively, starting from the term of the highest degree, i.e. for the quotient polynomial 2*x^3 + 1 and the remainder x + 2 do

solution["task2"] = [[2, 0, 0, 1], [1, 2]]

The value for the key “task3” is the list of roots to the polynomial from task 3.b (including multiplicities), i.e. for the sequence of roots 1, 1, 2, 3 do

solution["task3"] = [1, 1, 2, 3]

The value for the key “task4” is created in the same way as for the key “task3”.

Finally, save solution to hw01.json:

import json
with open("hw01.json", "w") as outfile:
json.dump(solution, outfile)