
Witryna zawiera kilkanaście prostych zadań do rozwiązania w języku Python. Zadania rozwiązuj zgodnie z podaną specyfikacją. Po rozwiązaniu zadania wyślij plik .py do oceny. W programach nie stosuj sprawdzenia if __name__ == „__main__”, gdyż programy są wyłącznie jednoplikowe. Sprawdzaczka obsługuje programy Python w wersji 3.x i działa w systemie linux. W Pythonie prawie wszystko jest gotowe, dlatego w swoich programach można tylko korzystać z biblioteki 'math’.
Miłej zabawy!
-
Iloczyn skalarny, iloczyn wektorowy, pole trójkąta
Wyznaczanie kąta dwóch wektorów, jeœli znane są ich współrzędne. Niech będą dwa niezerowe wektory \(\overrightarrow{u}=[u_{x}, u_{y}]\) oraz \(\overrightarrow{v}=[v_{x}, v_{y}]\) Z definicji kąta kierunkowego odczytujemy z rysunku, że: $$sin(\alpha)= \frac{v_{y}}{v}$$ $$cos(\alpha)= \frac{v_{x}}{v}$$ $$sin(\beta)= \frac{u_{y}}{u}$$ $$cos(\beta)= \frac{u_{x}}{u}$$ gdzie $$v=\sqrt{v_{x}^2+v_{y}^2}, \ u=\sqrt{u_{x}^2+u_{y}^2}$$ Oznaczmy kąt pomiędzy wektorami $\overrightarrow{u}$ oraz $\overrightarrow{v}$ przez $\varphi$ Z rysunku widzimy, że: $\varphi=\beta – \alpha$…
-
Eliminacja Gausa
Eliminacja Gaussa Metoda rozwiązywania układów równań liniowych polegająca na doprowadzeniu układu równań do postaci schodkowej (górnotrójkątnej) poprzez operacje elementarne, które nie zmieniają jego zbioru rozwiązań. Operacje elementarne: przestawienie dwóch równań pomnożenie obu stron równania przez liczbę różną od zera dodanie stronami do jednego z równań dowolnej wielokrotności innego równania Przykład Rozwiązaæ układ równań $$\begin{cases} -x_{1}+2x_{2}+x_{3}…
-
Rozszerzony Algorytm Euklidesa
Rozszerzony algorytm Eukliedesa Liczby wygenerowane przez algorytm Euklidesa pozwalają wyznaczye liczby całkowite \(x, y\) takie, że $$ax+by=NWD(a, b)$$ Przykład Rozwiązae w liczbach całkowitych równanie $$48x+62y = NWD(48, 62)$$ Obliczamy NWD(48, 62) korzystając z algorytmu Euklidesa $$62 = 14 +1\cdot 48$$ $$48=3\cdot 14 + 6$$ $$14=2\cdot 6+2$$ $$6 = 3\cdot 2$$ Zaczynając od przedostatnej równości i…