Posledné cvičenie

Problém Iosephusa Flavia

Tento problém som našiel na wikipedii

Zadanie (z wikipedie):

“People are standing in a circle waiting to be executed. Counting begins at a specified point in the circle and proceeds around the circle in a specified direction. After a specified number of people are skipped, the next person is executed. The procedure is repeated with the remaining people, starting with the next person, going in the same direction and skipping the same number of people, until only one person remains, and is freed.”

Vašou úlohou je zistiť kam by ste sa mali v kruhu postaviť (miesto kde počítanie začne viete) tak, aby ste to prežili. Počet ľudí a krok (t.j. koľko ľudí sa vynechá) budú argumenty vašej funkcie.

Test case pre josephus(41, 3) nájdete na wikipedii.

Pre aké teploty je najviac prvkov v kvapalnom skupenstve?

Pre zodpovedanie otázky sa hodí použiť balíček mendeleev.

Skript, ktorý vám pomože začať:

import mendeleev

all_elements = mendeleev.get_all_elements()

# print(dir(all_elements[0]))

fmt_str = """Name:  {}
Atomic number:  {}
Boiling point:  {} K
Melting point:  {} K
-----------------
"""

for el in all_elements:
    print(fmt_str.format(
        el.name,
        el.atomic_number,
        el.boiling_point,
        el.melting_point))

The Fed

Vašou úlohou je stiahnuť si dáta zo stránky federálneho rezervného systému a vykresliť menové agregáty M1 a M2.

Nápoveda

Všimnite si, že pre niektoré dátumy chýbajú hodnoty. Budete to musieť ošetriť.

Pre prácu s dátumom môžete použiť balíček datetime.

from datetime import datetime

date = datetime(year=2021, month=5, day=15)

Moment zotrvačnosti

Vyriešte tento problém: scipython.com - Ineria tensor. (Poslednú časť, rotačné konštanty, nemusíte robiť.)

Nejaké mini-návody, ktoré by sa mohli hodiť:

import numpy as np

np.genfromtxt("subor.dat", skip_header=4)
np.diag(matrix)
a = 1.6915509938532256
b = 1.6915480816188513

tolerance = 1e-4
abs(a - b) < tolerance