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. 1 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)) • Kvapalné skupenstvo je medzi teplotou topenia (meltiing_point) a bodom varu (boiling_point). • Vašim cielom je vykresliť závislosť počtu prvkov, ktoré sú kvapalné na teplote. 2 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. • M1 označuje celkové množstvo fyzických peňazí (bankovky a mince) v rukách nebankovních subjektov + vklady na bežných účtoch. • M2 je M1 + vklady na terminovaných a šporiacich účtoch + cestovné šeky. 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) 3 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ť: • Načítanie tabuľky s preskočením prvých 4-och riadkov: import numpy as np np.genfromtxt("subor.dat", skip_header=4) • Extrahovanie diagonály z numpy-matice: np.diag(matrix) • NIKDY!!! neporovnávajte reálne čísla pomocou operátoru ==. Použite buď funkciu numpy.isclose alebo niečo ako: a = 1.6915509938532256 b = 1.6915480816188513 tolerance = 1e-4 abs(a - b) < tolerance 4