PROBLEM. Znaleźć rozkład liczby p > 1. na iloczyn czynników pierwszych.

Wielkość: px
Rozpocząć pokaz od strony:

Download "PROBLEM. Znaleźć rozkład liczby p > 1. na iloczyn czynników pierwszych."

Transkrypt

1 PROBLEM Znaleźć rozkład liczby p > 1. na iloczyn czynników pierwszych. Postawiony problem posiada bardzo duże znaczenie w wielu dziedzinach informatyki szczególnie w kryptografii. Na dzień dzisiejszy nie istnieje powszechnie znany żaden szybki algorytm rozkładu dużej liczby naturalnej na czynniki pierwsze. Na tym fakcie opierają swoje bezpieczeństwo współczesne systemy szyfrowania informacji np. RSA. Dla przykładu rozkład 200 cyfrowej liczby zajął 18 miesięcy wielu komputerom pracującym w sieci w sumie czas obliczeń dla pojedynczej maszyny wyniósł ponad pół wieku! Zasadnicze twierdzenie arytmetyki mówi, iż każda liczba naturalna większa od 1 może być jednoznacznie zapisana jako iloczyn liczb pierwszych

2 Na przykład: 1200 = i nie istnieje żaden inny rozkład dla liczby 1200 Znając rozkład liczby na czynniki pierwsze można dla niej określić wszystkie możliwe podzielniki. Na przykład każdy podzielnik liczby 1200 da się zapisać jako: p 1200 = 2 a 3 b 5 c, gdzie a {0,1,2,3,4}, b {0,1}, c {0,1,2} Zatem wszystkich możliwych podzielników jest tyle ile wynosi iloczyn liczebności możliwych wartości a, b i c: 5 x 2 x 3 = 30 Podstawowe twierdzenie arytmetyki mówi nam, iż rozkład na czynniki pierwsze jest zawsze możliwy i jednoznaczny, lecz nie mówi, jak tego mamy dokonać.

3 Rozwiązanie 1 Pierwsze podejście do znalezienia rozkładu liczby p na jej czynniki pierwsze jest bardzo prymitywne, chociaż daje oczywiście poprawny wynik. Nazywa się ono bezpośrednim poszukiwaniem rozkładu na czynniki pierwsze. Będziemy sprawdzać podzielność liczby p przez kolejne liczby naturalne od 2 do pierwiastka z p. Jeśli liczba p będzie podzielna przez daną liczbę, to liczbę wyprowadzimy na wyjście, a za nowe p przyjmiemy wynik dzielenia i próbę dzielenia będziemy powtarzać dotąd, aż nie będzie to już możliwe. Wtedy przejdziemy do następnego dzielnika.

4 Przykład: Rozłożyć liczbę na czynniki pierwsze. Podział Reszta Czynnik Znalezione czynniki Uwagi : 2 = dzieli się : 2 = dzieli się : 2 = X 2 2 nie dzieli się : 3 = dzieli się 3675 : 3 = dzieli się 1225 : 3 = X nie dzieli się 1225 : 4 = X nie dzieli się 1225 : 5 = dzieli się 245 : 5 = dzieli się 49 : 5 = 9 4 X nie dzieli się 49 : 6 = 8 1 X nie dzieli się 49 : 7 = dzieli się 7 : 7 = dzieli się = Kończymy, ponieważ wynik ostatniego dzielenia jest równy 1

5 ALGORYTM ROZKŁADU LICZBY NATURALNEJ NA CZYNNIKI PIERWSZE Wejście p liczba rozkładana na czynniki pierwsze, p ϵ N, p > 1 Wyjście: Czynniki pierwsze liczby p. Elementy pomocnicze: g granica sprawdzania podzielności liczby p. g ϵ N i kolejne podzielniki, i ϵ N

6 Lista kroków: K01: g [ p] ; granica sprawdzania czynników pierwszych K02: Dla i = 2,3,...,g wykonuj kroki K03...K06 ; w pętli sprawdzamy podzielność liczby p przez kolejne liczby K03: Dopóki p mod i = 0 ; dopóki dzielnik dzieli p K04: Pisz i ; wyprowadzamy go i K05: p p div i ; dzielimy przez niego p K06: Jeśli p = 1, to zakończ ; pętlę przerywamy, gdy stwierdzimy brak dalszych dzielników K07: Jeśli p > 1, to pisz p ; p może posiadać ostatni czynnik większy od pierwiastka z p K08: Zakończ

7 Program w pierwszym wierszu czyta liczbę p i w następnym wierszu wypisuje kolejne czynniki pierwsze tej liczby.

8 ROZWIĄZANIE 2 Poprzedni algorytm sprawdza podzielność liczby p przez wszystkie kolejne liczby naturalne, zawarte w przedziale <2, p>. Tymczasem poszukiwane podzielniki muszą być liczbami pierwszymi. Jeśli nie mamy liczb pierwszych pod ręką, to przynajmniej możemy ograniczyć dzielenia do liczb 2, 3 oraz 6k±1, dla k = 1,2... wpadających w przedział <2, p>. Prezentowany poniżej algorytm dokonuje takiej właśnie optymalizacji, redukując do 1 / 3 liczbę sprawdzanych podzielników

9 ALGORYTM ROZKŁADU LICZBY NATURALNEJ NA CZYNNIKI PIERWSZE Wejście p liczba rozkładana na czynniki pierwsze, p ϵ N, p > 1 Wyjście: Czynniki pierwsze liczby p. Elementy pomocnicze: g granica sprawdzania podzielności liczby p. g ϵ N i kolejne podzielniki, i ϵ N k,d zmienne do generacji liczb postaci 6k±1, k N, d {-1, 1}

10 LISTA KROKÓW K01:g [ p]; wyznaczamy granicę sprawdzania podzielności K02:k 1; d -1; współczynniki do generacji liczb postaci 6k±1 K03:i 2; początek sprawdzania podzielności K04:Dopóki i g wykonuj kroki K05...K12 K05: Dopóki p mod i = 0 wykonuj kroki K06...K07; wyznaczamy dzielnik p K06: Pisz i K07: p p div i; modyfikujemy p K08: Jeśli p = 1, to idź do K14; p nie jest już podzielne K09: Jeśli i 3, to idź do K11; wyznaczamy następny podzielnik K10: i i + 1 i następny obieg pętli K04; podzielniki 2 i 3 K11: i 6k + d; pozostałe, postaci 6k±1 K12: Jeśli d = 1, to d -1; k k + 1 inaczej d 1; modyfikujemy współczynniki dla następnego podzielnika K13:Jeśli p 1, to pisz p; ewentualny, ostatni podzielnik K14:Zakończ Mamy program, który wczytuje liczbę p i wypisuje jej czynniki pierwsze:

11 Program w pierwszym wierszu czyta liczbę p i w następnym wierszu wypisuje kolejne czynniki pierwsze tej liczby

12 PROBLEM: SPRAWDZIĆ, CZY LICZBA NATURALNA Rozwiązanie 1 P JEST PIERWSZA. Liczba jest pierwsza,jeśli nie posiada dzielników ( innych poza 1 i sobą samą. Pierwsze rozwiązanie testu na pierwszość polega na próbnym dzieleniu liczby p przez liczby z przedziału od 2 do [ p] i badaniu reszty z dzielenia. Powód takiego postępowania jest prosty jeśli liczba p posiada czynnik większy od pierwiastka z p, to drugi czynnik musi być mniejszy od pierwiastka, aby ich iloczyn był równy p. W przeciwnym razie iloczyn dwóch liczb większych od p dawałby liczbę większą od p. Zatem wystarczy przebadać podzielność p przez liczby z przedziału <2,[ p]>, aby wykluczyć liczby złożone.

13 ALGORYTM SPRAWDZANIA PIERWSZOŚCI LICZBY NATURALNEJ Wejście p liczba badana na pierwszość, p N, p > 1 Wyjście: TAK, jeśli p jest pierwsze lub NIE w przypadku przeciwnym. Elementy pomocnicze: g granica sprawdzania podzielności p. g Ni kolejne podzielniki liczby p, i N Lista kroków: K01:g [ p] ; wyznaczamy granicę sprawdzania podzielności p K02:Dla i = 2,3,...,g wykonuj krok K03 ; przebiegamy przez przedział <2,[ p]> K03: Jeśli p mod i = 0, to pisz NIE i zakończ ; jeśli liczba z przedziału <2,[ p]> dzieli p, to p nie jest pierwsze K04:Pisz TAK ; jeśli żadna liczba z <2,[ p]> nie dzieli p, p jest pierwsze K05:Zakończ

14 Program odczytuje w pierwszym wierszu liczbę p, a w drugim wierszu wypisuje słowo TAK, jeśli liczba p jest pierwsza lub NIE w przypadku przeciwnym. W programie zastosowano zmienne 64 bitowe, zatem zakres p jest dosyć duży. Jednakże dla wielkich liczb naturalnych test na pierwszość może zająć wiele czasu.

15 ROZWIĄZANIE 2 Liczba p jest liczbą pierwszą, jeśli nie dzieli się przez żadną liczbę pierwszą z przedziału <2,[ p]>. Wszystkie liczby pierwsze z wyjątkiem 2 są liczbami nieparzystymi. Możemy zatem w poprzednim algorytmie zmniejszyć dwukrotnie liczbę potrzebnych dzieleń, jeśli liczbę p będziemy dzielić przez kolejne liczby nieparzyste z przedziału <2,[ p]>. Oczywiście najpierw należy wykonać test podzielności przez 2.

16 ALGORYTM SPRAWDZANIA PIERWSZOŚCI LICZBY NATURALNEJ Wejście p liczba badana na pierwszość, p N, p > 1Wyjście: TAK, jeśli p jest pierwsze lub NIE w przypadku przeciwnym. Elementy pomocnicze: g granica sprawdzania podzielności p. g Ni kolejne podzielniki liczby p, i N Lista kroków: K01Jeśli p = 2, to idź do K08; liczba 2 jest pierwsza K02:Jeśli p mod 2 = 0, to idź do K10; sprawdzamy podzielność przez 2 K03:g [ p]; granica sprawdzania podzielności K04:i 3; pierwszy podzielnik nieparzysty K05:Dopóki i g, wykonuj kroki K06...K07; w pętli sprawdzamy podzielność przez podzielniki nieparzyste K06: Jeśli p mod i = 0, to idź do K10 K07: i i + 2; następny podzielnik nieparzysty K08:Pisz "TAK"; p nie dzieli się, zatem jest pierwsze K09:Zakończ K10:Pisz "NIE"; p jest podzielne, zatem nie jest pierwsze K11:Zakończ

17 Program odczytuje w pierwszym wierszu liczbę p, a w drugim wierszu wypisuje słowo TAK, jeśli liczba p jest pierwsza lub NIE w przypadku przeciwnym

18 ROZWIĄZANIE 3 Liczbę niezbędnych dzieleń można dalej ograniczyć, jeśli liczbę p będziemy dzielić przez dzielniki: 2, 3 oraz 6k ± 1, dla k = 1,2,..., 6k ± 1 <2,[ p]>. Dwa pierwsze dzielniki są początkowymi liczbami pierwszymi. Gdy wyeliminujemy czynniki 2 i 3, pozostałe liczby pierwsze muszą przybrać postać 6k ± 1. Wyjaśnienie jest bardzo proste: 6k = 2 3 k liczby podzielne przez 2 i 3 nie są pierwsze 6k ± 2 = 2 (3k ± 1) liczby podzielne przez 2 nie są pierwsze 6k ± 3 = 3 (2k ± 1) liczby podzielne przez 3 nie są pierwsze 6k ± 4 = 2 (3k ± 2) liczby podzielne przez 2 nie są pierwsze Pozostają liczby postaci: 6k ± 1, które mogą być pierwsze (ale nie muszą!). Jednakże liczb tych jest 1 / 3 w stosunku do pierwotnego algorytmu, co zaowocuje zmniejszeniem liczby wykonywanych dzieleń

19 ALGORYTM SPRAWDZANIA PIERWSZOŚCI LICZBY NATURALNEJ Wejście p liczba badana na pierwszość, p N, p > 1Wyjście: TAK, jeśli p jest pierwsze lub NIE w przypadku przeciwnym. Elementy pomocnicze: g granica sprawdzania podzielności p. g ϵ N i podzielniki liczby p, i ϵ N k mnożnik do wyznaczania podzielników postaci 6k ± 1, k ϵ N d zmienna pomocnicza do wyznaczania podzielników, d ϵ {false,true}

20 LISTA KROKÓW: K01: g [ p]; wyznaczamy granicę sprawdzania podzielności K02: i 2; pierwszy dzielnik K03: k 1; d false;; ustawiamy zmienne pomocnicze K04: Dopóki i g, wykonuj kroki K05...K14 K05: Jeśli p mod i = 0, to idź do K17; sprawdzamy podzielność p przez i K06: Jeśli i > 2, to idź do K09; podzielniki > 3 generujemy wg wzoru 6k ± 1 K07: i i + 1; podzielniki 2 i 3 K08: Następny obieg pętli K04 K09: d d; generujemy podzielnik i = 6k ± 1 K10: i 6k K11: Jeśli d = true, to idź do K14 K12: k k + 1 K13 i i + 1 i następny obieg pętli K04 K14 i i - 1 K15:Pisz "TAK"; p nie dzieli się przez żaden z dzielników K16:Zakończ K17:Pisz "NIE"; p nie jest pierwsze K18:Zakończ

21 Program odczytuje w pierwszym wierszu liczbę p, a w drugim wierszu wypisuje słowo TAK, jeśli liczba p jest pierwsza lub NIE w przypadku przeciwnym.

22 PROBLEM : DANY, SKOŃCZONY ZBIÓR LICZB CAŁKOWITYCH POMIESZAĆ PSEUDOLOSOWO Mieszanie pseudolosowe Zadanie mieszania, tasowania zawartości tablicy sprowadza się do wykonywania w pętli zamiany miejscami dwóch elementów tablicy o wylosowanych indeksach. Pętla musi być wykonana tyle razy, aby tasowanie objęło wszystkie elementy w praktyce wystarcza ilość wykonań równa 3n, gdzie n jest ilością elementów.

23 ALGORYTM MIESZANIA PSEUDOLOSOWEGO Wejście n liczba elementów w tablicy, n ϵ N Z tablica elementów, indeksy rozpoczynają się od 0 Wyjście: Tablica Z z potasowaną zawartością Zmienne pomocnicze i licznik obiegów pętli, iϵ N x przechowuje element tablicy Z przy zamianie zawartości. Typ ten sam, co elementy tablicy Z.losowa(x) funkcja zwracająca liczbę pseudolosową z zakresu od 0 do x - 1 Lista kroków: K01:Dla i = 1,2,...,3n: wykonuj K02...K07; tasowanie wykonujemy w pętli K02: i 1 losowa(n); losujemy pierwszy indeks K03: i 2 losowa(n); losujemy drugi indeks K04: x Z[i 1 ]; zamieniamy miejscami Z[i 1 ] i Z[i 2 ] K05: Z[i 1 ] Z[i 2 ] K06: Z[i 2 ] x K07:Zakończ

24 Program tasuje tablicę 10 elementów całkowitych o kolejnych wartościach od 0 do 9. Tablica jest najpierw wyświetlana przed tasowaniem, a następnie po tasowaniu.

25 PROBLEM : WYLOSOWAĆ Z PRZEDZIAŁU CAŁKOWITEGO <A,B> N LICZB PSEUDOLOSOWYCH BEZ POWTÓRZEŃ. Losowanie bez powtórzeń Zadanie losowania bez powtórzeń można rozwiązać na kilka różnych sposobów. Jeśli przedział <a,b> jest mały (np. zawiera 80 kolejnych liczb Multi-Lotka), to możemy go odwzorować w tablicy, następnie zawartość tej tablicy potasować poprzednio podanym algorytmem i jako wynik zwrócić pierwsze n elementów. Tasowanie nie dubluje elementów tablicy, zatem otrzymamy n liczb bez powtórzeń. Taki algorytm posiada klasę złożoności obliczeniowej O(n). Jeśli przedział <a,b> jest bardzo duży, a n stosunkowo małe, to postępujemy w sposób następujący. Przygotowujemy pustą tablicę o n elementach. Losujemy liczbę pseudolosową. Jeśli wylosowana liczba jest już w tablicy, to losujemy ponownie dotąd, aż wylosowanej liczby nie będzie w tablicy. Liczbę dopisujemy do tablicy. Jeśli tablica jest zapełniona, kończymy. W przeciwnym razie powtarzamy losowanie. Algorytm w takiej postaci posiada optymistyczną klasę złożoności obliczeniowej O(n 2 ).

26 ALGORYTM LOSOWANIA BEZ POWTÓRZEŃ Wejście n liczba określająca, ile liczb pseudolosowych bez powtórzeń należy wylosować, n ϵ N a,b liczby określające całkowity przedział losowania, b - a n, a,b ϵc Wyjście: n różnych od siebie liczb pseudolosowych z przedziału <a,b> Zmienne pomocnicze T tablica przechowująca wylosowane liczby pseudolosowe. Indeksy od 0 do n-1. i licznik wylosowanych liczb pseudolosowych, i ϵ N j wykorzystywane do przeszukiwania tablicy T, j ϵ N x wylosowana liczba pseudolosowalosowa (x) funkcja zwracająca liczbę pseudolosową z zakresu od 0 do x - 1 Lista kroków: K01:Dla i = 0,1,...,n-1 wykonuj K02...K06 K02: x a + losowa(b - a + 1); losujemy liczbę pseudolosową K03: Dla j = 0,1,...,i - 1 wykonuj K04; sprawdzamy, czy wylosowana liczba jest w T K04: Jeśli T[j] = x, to idź do K02; jeśli tak, powtarzamy losowanie K05: T[i] x; jeśli nie, zapamiętujemy w T wylosowaną liczbę K06: Wyprowadź x; wyprowadzamy liczbę na wyjście K07:Zakończ

27 W pierwszym wierszu program odczytuje trzy liczby: a,b krańce przedziału, n ilość liczb pseudolosowych do wylosowania. Jeśli długość przedziału <a,b> pozwala na wygenerowanie zadanej ilości różnych liczb pseudolosowych, to program je generuje i wyświetla w następnym wierszu. W przeciwnym razie wypisuje odpowiedni komunikat.

28 PROBLEM: WYZNACZYĆ N-TY WYRAZ CIĄGU FIBONACCIEGO. Leonardo Fibonacci był włoskim matematykiem żyjącym w latach od 1175 do Jest on autorem specyficznego ciągu liczbowego, który pojawia się w wielu zastosowaniach informatycznych (i nie tylko). Wyrazy ciągu Fibonacciego definiujemy rekurencyjnie w sposób następujący: F 0 = 0 F 1 = 1 F i = F i-2 + F i-1, dla i > 1 Oto kilka pierwszych wyrazów ciągu Fibonacciego:

29 ROZWIĄZANIE PIERWSZE ROZWIĄZANIE OPIERAMY BEZPOŚREDNIO NA DEFINICJI WYKORZYSTUJĄC WYWOŁANIA REKURENCYJNE. JEST TO BARDZO ZŁE ROZWIĄZANIE (PODAJEMY JE TYLKO ZE WZGLĘDÓW DYDAKTYCZNYCH), PONIEWAŻ ALGORYTM WIELOKROTNIE OBLICZA WYRAZY CIĄGU, CO W EFEKCIE PROWADZI DO WYKŁADNICZEJ KLASY ZŁOŻONOŚCI OBLICZENIOWEJ O(2 N ). DLA DUŻYCH N CZAS OBLICZEŃ MOŻE SIĘGAĆ MILIARDÓW... MILIARDÓW TYSIĄCLECI. Algorytm generacji liczb Fibonacciego metodą rekurencyjną: Wejście n numer liczby ciągu Fibonacciego do wyliczenia, n ϵn Wyjście: n-ta liczba ciągu Fibonacciego Lista kroków funkcji Fibo(n) K01:Jeśli n 1, to zwróć n i zakończ; f 0 lub f 1 K02:Zwróć Fibo(n - 2) + Fibo(n - 1) i zakończ; dwa wywołania rekurencyjne

30 W pierwszym wierszu program odczytuje n numer liczby Fibonacciego do wyliczenia. W następnym wierszu program wypisuje wartość n-tej liczby Fibonacciego. Z uwagi na wykładniczą klasę złożoności obliczeniowej czas obliczeń szybko rośnie, zatem nie podawaj zbyt dużych n (<45), inaczej nie doczekasz się wyniku lub komputer zgłosi przepełnienie pamięci.

31 ROZWIĄZANIE DRUGIE Poprzednie rozwiązanie jest bardzo proste. Niestety wywołania rekurencyjne powodują, iż komputer wielokrotnie oblicza te same liczby Fibonacciego. W ramach ćwiczeń proponuję dodać w wywołaniu funkcji Fibo() licznik, który zwiększa swój stan o 1 przy każdym wywołaniu. Na końcu programu, oprócz wartości Fibo(n), wyświetlamy również stan licznika da nam to pojęcie o ilości wywołań rekurencyjnych. Drugie rozwiązanie wykorzystuje zasadę programowania dynamicznego (ang. dynamic programming). Polega ona na tym, iż rozwiązanie wyższego poziomu obliczamy z rozwiązań otrzymanych na poziomie niższym, które odpowiednio zapamiętujemy. Dzięki temu podejściu program nie musi liczyć wszystkich składników od początku, wykorzystuje wyniki poprzednich obliczeń. W efekcie klasa złożoności obliczeniowej algorytmu spadnie do O(n). Jeszcze lepsze rozwiązanie podajemy w rozdziale dotyczącym potęgowania macierzy.

32 ALGORYTM GENERACJI LICZB FIBONACCIEGO METODĄ ITERACYJNĄ Wejście n numer liczby ciągu Fibonacciego do wyliczenia, n ϵ N Wyjście: n-ta liczba ciągu Fibonacciego Elementy pomocnicze: f 0,f 1,f kolejne trzy liczby Fibonacciego, f 0,f 1,f ϵ C Lista kroków: K01:f 0 0; pierwsza lub f i-2 liczba Fibonacciego K02:f 1 1; druga lub f i-1 liczba Fibonacciego K03:Dla i = 0,1,...,n wykonuj K04...K08 K04: Jeśli i > 1, to idź do K06 K05: f i i następny obieg pętli K03 K06: f f 0 + f 1 ; obliczamy kolejną liczbę Fibonacciego K07 : f 0 f 1 ; zapamiętujemy wyniki obliczeń pośrednich K08: f 1 f; dla następnego obiegu pętli K09:Pisz f K10:Zakończ

33 Program odczytuje z pierwszego wiersza numer n liczby Fibonacciego, a w następnym wierszu wyświetla jej wartość. Z uwagi na ograniczony zakres liczb 64 bitowych, program wylicza dokładnie maksymalnie 93-cią liczbę ciągu Fibonacciego.

34 PROBLEM : ZNALEŹĆ KWADRATOWY PIERWIASTEK CAŁKOWITY NIEUJEMNEJ LICZBY RZECZYWISTEJ X. Całkowity pierwiastek kwadratowy (ang. integer square root) jest największą liczbą całkowitą p, która spełnia nierówność: p 2 x

35 Problem możemy rozwiązać następująco. ROZWIĄZANIE NR 1 Tworzymy ciąg kwadratów kolejnych liczb całkowitych począwszy od 0: i 2 do momentu, gdy dla pewnego i otrzymamy spełnioną nierówność i 2 > x. Wtedy p = i - 1. Pozostaje do rozwiązania efektywny sposób tworzenia kwadratów kolejnych liczb całkowitych. Wypiszmy kilkanaście początkowych wyrazów tego ciągu:... i i

36 Teraz policzmy ciąg różnic pierwszego rzędu: r 1i = i 2 - (i-1) 2, dla i > 0. Różnica pierwszego rzędu powstaje przez odjęcie od wyrazu i-tego jego poprzednika w ciągu, czyli wyrazu (i - 1)-szego. i i r

37 Ciekawa rzecz różnice pierwszego rzędu dla naszego ciągu tworzą ciąg kolejnych liczb nieparzystych. Teraz analogicznie utwórzmy ciąg różnic drugiego rzędu: r 2i = r 1i - r 1(i-1), dla i > 1 Różnice drugiego rzędu powstają w analogiczny sposób z różnic pierwszego rzędu, jak różnice pierwszego rzędu powstają z wyrazów ciągu od i-tej różnicy pierwszego rzędu odejmujemy poprzedzającą ją, (i - 1)-szą różnicę. i i r r

38 Różnice rzędu drugiego tworzą już ciąg stały o wyrazach równych 2. Nie ma sensu liczyć różnic wyższych rzędów, ponieważ otrzymamy tylko wyrazy równe 0. W tabelce zaznaczyliśmy pierwsze wyrazy odpowiednio: ciągu kwadratów i 2 0 ciągu różnic pierwszego rzędu r 1i 1 ciągu różnic drugiego rzędu r 2i 2 Mając te trzy wartości możemy rekurencyjnie konstruować ciąg kolejnych kwadratów: a = 0, r 11 = 1, r 2 = 2, gdzie a 0 pierwszy wyraz ciągu kwadratów Dla i > 0 mamy: r 1i = r 1(i-1) + r 2 kolejna różnica pierwszego rzędu powstaje z poprzedniej przez dodanie różnicy drugiego rzędu a i = a i-1 + r 1i kolejny kwadrat powstaje z poprzedniego przez dodanie wyliczonej różnicy pierwszego rzędu Zwróć uwagę, iż wykorzystujemy tylko dodawanie, dzięki czemu nasz algorytm jest szybki. Jednakże podany algorytm nie jest stosowany w praktyce do wyznaczania wartości pierwiastka kwadratowego. Podajemy go tutaj tylko ze względów dydaktycznych.

39 ALGORYTM OBLICZANIA CAŁKOWITEGO PIERWIASTKA KWADRATOWEGO WERSJA NR 1 Wejście x liczba, której pierwiastek obliczamy, x 0, x ϵ R Wyjście: całkowity pierwiastek kwadratowy z x Elementy pomocnicze: i numery wyrazów ciągu kwadratów, i ϵc a wyraz ciągu kwadratów, a ϵ C r 1 różnica pierwszego rzędu, r 1 ϵ N r 2 różnica drugiego rzędu, r 2 ϵ N

40 Lista kroków: K01: a 0 ; pierwszy kwadrat 0 2 K02: r 1 1 ; początkowa wartość różnicy pierwszego rzędu K03: r 2 2 ; wartość różnic drugiego rzędu K04: i 0 ; numer pierwszego wyrazu K05: Dopóki a x wykonuj K06...K 08 ; szukamy pierwszego wyrazu a większego od x K06: a a + r 1 ; następny kwadrat K07: r 1 r 1 + r 2 ; wyliczamy nową różnicę pierwszego rzędu K08: i i + 1 ; następny numer K09: Zakończ z wynikiem i - 1 ; obliczamy pierwiastek całkowity

41 W pierwszym wierszu program odczytuje liczbę x. Następnie wyznacza jej całkowity pierwiastek kwadratowy i wypisuje go w wierszu drugim. Dodatkowo w wierszu trzecim program wypisuje kwadrat znalezionego pierwiastka kwadratowego dla celów porównawczych.

42 ROZWIĄZANIE NR 2 Druga metoda znajdowania całkowitego pierwiastka kwadratowego pochodzi od Izaaka Newtona (chociaż podobną metodę stosowali już starożytni Babilończycy). Jeśli mamy pewne przybliżenie p pierwiastka liczby x, to lepsze przybliżenie otrzymamy stosując wzór: p = 1/2 (p + x /p)

43 DLACZEGO TO DZIAŁA? ROZWAŻMY DWA PRZYPADKI: p < x Wtedy iloraz x / p jest większy od x i po dodaniu go do p i podzieleniu sumy przez 2 otrzymamy liczbę większą od poprzedniego p, która przybliża się od dołu do rzeczywistego pierwiastka. p > x Wtedy iloraz x / p jest mniejszy od x i po dodaniu go do p i podzieleniu sumy przez 2 otrzymamy liczbę mniejszą od poprzedniego p, która przybliża się od góry do rzeczywistego pierwiastka. Wynika z tego, iż w każdej iteracji otrzymujemy liczbę coraz bliższą wartości pierwiastka. Iterujemy dotąd, aż różnica pomiędzy dwoma kolejnymi przybliżeniami będzie mniejsza lub równa założonej dokładności ε w przypadku pierwiastków całkowitych jest to 1.

44 ALGORYTM OBLICZANIA CAŁKOWITEGO PIERWIASTKA KWADRATOWEGO WERSJA NR 2 Wejście x liczba, której pierwiastek obliczamy, x 0, xϵ C Wyjście: Całkowity pierwiastek kwadratowy z x Elementy pomocnicze: p 1, p 2 kolejne przybliżenia pierwiastka z x; p 1, p 2 ϵ C

45 Lista kroków: K01: Jeśli x > 1, to idź do K04 ; pierwiastki > 1 liczymy K02: p 2 x ; inne nie K03: Idź do K09 K04: p 1 0 ; zapewniamy p 1 - p 2 > 1 K05: p 2 x shr 1 ; pierwsze przybliżenie pierwiastka K06: Dopóki p 1 - p 2 > 1, wykonuj K07...K08 ; w pętli wyliczamy kolejne przybliżenia K07: p 1 p 2 ; zapamiętujemy bieżące przybliżenie K08: p 2 (p 2 + x div p 1 ) shr 1 ; wyliczamy nowe przybliżenie K09: Dopóki p 2 p 2 > x, wykonuj p 2 p 2-1 ; jeśli przybliżenie było od góry, zmniejszamy je K09: Zakończ z wynikiem p 2

46 W pierwszym wierszu program odczytuje liczbę x. Następnie wyznacza jej całkowity pierwiastek kwadratowy i wypisuje go w wierszu drugim. Dodatkowo w wierszu trzecim program wypisuje kwadrat znalezionego pierwiastka kwadratowego dla celów porównawczych.

47 ROZWIĄZANIE NR 3 Istnieje bardzo szybki algorytm wyznaczania wartości całkowitego pierwiastka kwadratowego, który wykorzystuje binarną reprezentację liczb czyli idealnie nadaje się do zastosowania dla danych komputerowych, które przecież są liczbami binarnymi. Algorytm wywodzi się z chińskiego abakusa i nie wymaga skomplikowanych działań arytmetycznych jedynie dodawania oraz przesuwania bitów. Dzięki tym zaletom może być z powodzeniem stosowany w prostych systemach mikrokontrolerów jednoukładowych.

48 ALGORYTM OBLICZANIA CAŁKOWITEGO PIERWIASTKA KWADRATOWEGO WERSJA NR 3 Wejście: x liczba, której pierwiastek obliczamy, x 0, x ϵ C Wyjście: Całkowity pierwiastek kwadratowy z x Elementy pomocnicze: m b zawiera maskę bitową z ustawionym jednym bitem. Maska jest 64 bitowa. p x obliczana wartość pierwiastka, p x ϵc

49 Lista kroków: K01: p x 0 ; początkowa wartość pierwiastka K02: m b 1 shl 62 ; maska z ustawionym drugim najstarszym bitem K03: Dopóki m b > x, wykonuj m b m b shr 2 ; szukamy najstarszej potęgi 4, mniejszej od x K04: Dopóki m b 0, wykonuj K05...K09 ; wyznaczamy kolejne bity pierwiastka K05: t p x + m b ; łączymy bit maski z przybliżeniem pierwiastka K06: Jeśli x < t, idź do K09 ; sprawdzamy, czy dany bit ma być ustawiony. K07: x x - t ; usuwamy bity z x K08: p x t + m b ; dodajemy bit maski do p x K09: p x p x shr 1 ; przesuwamy bity pierwiastka o 1 w prawo K09: m b m b shr 2 ; bity maski przesuwamy o 2 w prawo K10: Zakończ z wynikiem p x

50 W pierwszym wierszu program odczytuje liczbę x. Następnie wyznacza jej całkowity pierwiastek kwadratowy i wypisuje go w wierszu drugim. Dodatkowo w wierszu trzecim program wypisuje kwadrat znalezionego pierwiastka kwadratowego dla celów porównawczych.

Liczby całkowite i rzeczywiste

Liczby całkowite i rzeczywiste Wykład 4(20 marzec 2014r.) Liczby całkowite i rzeczywiste Paulina Rogowiecka Klaudia Kamińska Adrianna Znyk 1 Spis treści: Czynniki pierwsze metoda próbnych dzieleń Pierwszość liczby naturalnej algorytmy

Bardziej szczegółowo

Problem W przedziale całkowitym <a,b> wyszukaj wszystkie liczby parzyste.

Problem W przedziale całkowitym <a,b> wyszukaj wszystkie liczby parzyste. Problem W przedziale całkowitym wyszukaj wszystkie liczby parzyste. Liczby parzyste W wielu algorytmach musimy wygenerować liczby parzyste z zadanego przedziału liczb całkowitych. Tego typu

Bardziej szczegółowo

Algorytmy i struktury danych. Wykład 4

Algorytmy i struktury danych. Wykład 4 Wykład 4 Różne algorytmy - obliczenia 1. Obliczanie wartości wielomianu 2. Szybkie potęgowanie 3. Algorytm Euklidesa, liczby pierwsze, faktoryzacja liczby naturalnej 2017-11-24 Algorytmy i struktury danych

Bardziej szczegółowo

Luty 2001 Algorytmy (7) 2000/2001 s-rg@siwy.il.pw.edu.pl

Luty 2001 Algorytmy (7) 2000/2001 s-rg@siwy.il.pw.edu.pl System dziesiętny 7 * 10 4 + 3 * 10 3 + 0 * 10 2 + 5 *10 1 + 1 * 10 0 = 73051 Liczba 10 w tym zapisie nazywa się podstawą systemu liczenia. Jeśli liczba 73051 byłaby zapisana w systemie ósemkowym, co powinniśmy

Bardziej szczegółowo

Iteracje. Algorytm z iteracją to taki, w którym trzeba wielokrotnie powtarzać instrukcję, aby warunek został spełniony.

Iteracje. Algorytm z iteracją to taki, w którym trzeba wielokrotnie powtarzać instrukcję, aby warunek został spełniony. Iteracje Algorytm z iteracją to taki, w którym trzeba wielokrotnie powtarzać instrukcję, aby warunek został spełniony. Iteracja inaczej zwana jest pętlą i oznacza wielokrotne wykonywanie instrukcji. Iteracje

Bardziej szczegółowo

WYKŁAD 3 (13 MARZEC 2014) LICZBY CAŁKOWITE I RZECZYWISTE. Bartosz Łakomy i Dariusz Dobiesz

WYKŁAD 3 (13 MARZEC 2014) LICZBY CAŁKOWITE I RZECZYWISTE. Bartosz Łakomy i Dariusz Dobiesz WYKŁAD 3 (13 MARZEC 2014) LICZBY CAŁKOWITE I RZECZYWISTE Bartosz Łakomy i Dariusz Dobiesz SPIS TREŚCI: Liczby parzyste i nieparzyste Liczby podzielne lub niepodzielne przez zadane podzielniki NWD algorytm

Bardziej szczegółowo

B.B. 2. Sumowanie rozpoczynamy od ostatniej kolumny. Sumujemy cyfry w kolumnie zgodnie z podaną tabelką zapisując wynik pod kreską:

B.B. 2. Sumowanie rozpoczynamy od ostatniej kolumny. Sumujemy cyfry w kolumnie zgodnie z podaną tabelką zapisując wynik pod kreską: Dodawanie dwójkowe Do wykonywania dodawania niezbędna jest znajomość tabliczki dodawania, czyli wyników sumowania każdej cyfry z każdą inną. W systemie binarnym mamy tylko dwie cyfry 0 i 1, zatem tabliczka

Bardziej szczegółowo

do instrukcja while (wyrażenie);

do instrukcja while (wyrażenie); Instrukcje pętli -ćwiczenia Instrukcja while Pętla while (póki) powoduje powtarzanie zawartej w niej sekwencji instrukcji tak długo, jak długo zaczynające pętlę wyrażenie pozostaje prawdziwe. while ( wyrażenie

Bardziej szczegółowo

Dr inż. Robert Wójcik, p. 313, C-3, tel Katedra Informatyki Technicznej (K-9) Wydział Elektroniki (W-4) Politechnika Wrocławska

Dr inż. Robert Wójcik, p. 313, C-3, tel Katedra Informatyki Technicznej (K-9) Wydział Elektroniki (W-4) Politechnika Wrocławska Dr inż. Robert Wójcik, p. 313, C-3, tel. 320-27-40 Katedra Informatyki Technicznej (K-9) Wydział Elektroniki (W-4) Politechnika Wrocławska E-mail: Strona internetowa: robert.wojcik@pwr.edu.pl google: Wójcik

Bardziej szczegółowo

ALGORYTMY Algorytm poprawny jednoznaczny szczegółowy uniwersalny skończoność efektywność (sprawność) zmiennych liniowy warunkowy iteracyjny

ALGORYTMY Algorytm poprawny jednoznaczny szczegółowy uniwersalny skończoność efektywność (sprawność) zmiennych liniowy warunkowy iteracyjny ALGORYMY Algorytm to przepis; zestawienie kolejnych kroków prowadzących do wykonania określonego zadania; to uporządkowany sposób postępowania przy rozwiązywaniu zadania, problemu, z uwzględnieniem opisu

Bardziej szczegółowo

1. Napisz program, który wyświetli Twoje dane jako napis Witaj, Imię Nazwisko. 2. Napisz program, który wyświetli wizytówkę postaci:

1. Napisz program, który wyświetli Twoje dane jako napis Witaj, Imię Nazwisko. 2. Napisz program, który wyświetli wizytówkę postaci: 1. Napisz program, który wyświetli Twoje dane jako napis Witaj, Imię Nazwisko. 2. Napisz program, który wyświetli wizytówkę postaci: * Jan Kowalski * * ul. Zana 31 * 3. Zadeklaruj zmienne przechowujące

Bardziej szczegółowo

Zadania do samodzielnego rozwiązania

Zadania do samodzielnego rozwiązania Zadania do samodzielnego rozwiązania I. Podzielność liczb całkowitych 1. Pewna liczba sześciocyfrowa a kończy się cyfrą 5. Jeśli tę cyfrę przestawimy na miejsce pierwsze ze strony lewej, to otrzymamy nową

Bardziej szczegółowo

LISTA 5. C++ PETLE for, while, do while

LISTA 5. C++ PETLE for, while, do while WSTEP DO INFORMATYKI I PROGRAMOWANIA LISTA 5. C++ PETLE for, while, do while Zadanie. Przeanalizuj działanie poniższego programu. cout

Bardziej szczegółowo

Algorytmy w teorii liczb

Algorytmy w teorii liczb Łukasz Kowalik, ASD 2004: Algorytmy w teorii liczb 1 Algorytmy w teorii liczb Teoria liczb jest działem matemtyki dotyczącym własności liczb naturalnych. Rozważa się zagadnienia związane z liczbami pierwszymi,

Bardziej szczegółowo

Zaawansowane algorytmy i struktury danych

Zaawansowane algorytmy i struktury danych Zaawansowane algorytmy i struktury danych u dr Barbary Marszał-Paszek Opracowanie pytań praktycznych z egzaminów. Strona 1 z 12 Pytania praktyczne z kolokwium zaliczeniowego z 19 czerwca 2014 (studia dzienne)

Bardziej szczegółowo

ARYTMETYKA BINARNA. Dziesiątkowy system pozycyjny nie jest jedynym sposobem kodowania liczb z jakim mamy na co dzień do czynienia.

ARYTMETYKA BINARNA. Dziesiątkowy system pozycyjny nie jest jedynym sposobem kodowania liczb z jakim mamy na co dzień do czynienia. ARYTMETYKA BINARNA ROZWINIĘCIE DWÓJKOWE Jednym z najlepiej znanych sposobów kodowania informacji zawartej w liczbach jest kodowanie w dziesiątkowym systemie pozycyjnym, w którym dla przedstawienia liczb

Bardziej szczegółowo

Plan wynikowy z wymaganiami edukacyjnymi z matematyki w zakresie podstawowym dla klasy 1 zsz Katarzyna Szczygieł

Plan wynikowy z wymaganiami edukacyjnymi z matematyki w zakresie podstawowym dla klasy 1 zsz Katarzyna Szczygieł Plan wynikowy z wymaganiami edukacyjnymi z matematyki w zakresie podstawowym dla klasy 1 zsz Katarzyna Szczygieł Lp. Temat Kształcone umiejętności 1 Zasady pracy na lekcjach matematyki. Dział I. LICZBY

Bardziej szczegółowo

1. Operacje logiczne A B A OR B

1. Operacje logiczne A B A OR B 1. Operacje logiczne OR Operacje logiczne są operacjami działającymi na poszczególnych bitach, dzięki czemu można je całkowicie opisać przedstawiając jak oddziałują ze sobą dwa bity. Takie operacje logiczne

Bardziej szczegółowo

Przykładowe zadania z teorii liczb

Przykładowe zadania z teorii liczb Przykładowe zadania z teorii liczb I. Podzielność liczb całkowitych. Liczba a = 346 przy dzieleniu przez pewną liczbę dodatnią całkowitą b daje iloraz k = 85 i resztę r. Znaleźć dzielnik b oraz resztę

Bardziej szczegółowo

WHILE (wyrażenie) instrukcja;

WHILE (wyrażenie) instrukcja; INSTRUKCJE ITERACYJNE WHILE, DO WHILE, FOR Instrukcje iteracyjne pozwalają powtarzać daną instrukcję programu określoną liczbę razy lub do momentu osiągnięcia określonego skutku. Pętla iteracyjna while

Bardziej szczegółowo

Zadanie 1. Zmiana systemów. Zadanie 2. Szyfr Cezara. Zadanie 3. Czy liczba jest doskonała. Zadanie 4. Rozkład liczby na czynniki pierwsze Zadanie 5.

Zadanie 1. Zmiana systemów. Zadanie 2. Szyfr Cezara. Zadanie 3. Czy liczba jest doskonała. Zadanie 4. Rozkład liczby na czynniki pierwsze Zadanie 5. Zadanie 1. Zmiana systemów. Zadanie 2. Szyfr Cezara. Zadanie 3. Czy liczba jest doskonała. Zadanie 4. Rozkład liczby na czynniki pierwsze Zadanie 5. Schemat Hornera. Wyjaśnienie: Zadanie 1. Pozycyjne reprezentacje

Bardziej szczegółowo

WHILE (wyrażenie) instrukcja;

WHILE (wyrażenie) instrukcja; INSTRUKCJE ITERACYJNE WHILE, DO WHILE, FOR Instrukcje iteracyjne pozwalają powtarzać daną instrukcję programu określoną liczbę razy lub do momentu osiągnięcia określonego skutku. Pętla iteracyjna while

Bardziej szczegółowo

1. LICZBY DZIAŁ Z PODRĘCZNIKA L.P. NaCoBeZu kryteria sukcesu w języku ucznia

1. LICZBY DZIAŁ Z PODRĘCZNIKA L.P. NaCoBeZu kryteria sukcesu w języku ucznia L.P. DZIAŁ Z PODRĘCZNIKA NaCoBeZu kryteria sukcesu w języku ucznia 1. LICZBY 1. Znam pojęcie liczby naturalne, całkowite, wymierne, dodatnie, ujemne, niedodatnie, odwrotne, przeciwne. 2. Potrafię zaznaczyć

Bardziej szczegółowo

WYMAGANIA NA POSZCZEGÓLNE OCENY MATEMATYKA KL.VII

WYMAGANIA NA POSZCZEGÓLNE OCENY MATEMATYKA KL.VII WYMAGANIA NA POSZCZEGÓLNE OCENY MATEMATYKA KL.VII ROZDZIAŁ I LICZBY 1. rozpoznaje cyfry używane do zapisu liczb w systemie rzymskim w zakresie do 3000 2. odczytuje liczby naturalne dodatnie zapisane w

Bardziej szczegółowo

wagi cyfry 7 5 8 2 pozycje 3 2 1 0

wagi cyfry 7 5 8 2 pozycje 3 2 1 0 Wartość liczby pozycyjnej System dziesiętny W rozdziale opiszemy pozycyjne systemy liczbowe. Wiedza ta znakomicie ułatwi nam zrozumienie sposobu przechowywania liczb w pamięci komputerów. Na pierwszy ogień

Bardziej szczegółowo

Liczby. Wymagania programowe kl. VII. Dział

Liczby. Wymagania programowe kl. VII. Dział Wymagania programowe kl. VII Dział Liczby rozpoznaje cyfry używane do zapisu liczb w systemie rzymskim w zakresie do 3000 odczytuje liczby naturalne dodatnie zapisane w systemie rzymskim w zakresie do

Bardziej szczegółowo

Pętla for. Matematyka dla ciekawych świata -19- Scilab. for i=1:10... end. for k=4:-1:1... end. k=3 k=4. k=1. k=2

Pętla for. Matematyka dla ciekawych świata -19- Scilab. for i=1:10... end. for k=4:-1:1... end. k=3 k=4. k=1. k=2 Pętle wielokrotne wykonywanie ciągu instrukcji. Bardzo często w programowaniu wykorzystuje się wielokrotne powtarzanie określonego ciągu czynności (instrukcji). Rozróżniamy sytuacje, gdy liczba powtórzeń

Bardziej szczegółowo

Wymagania edukacyjne z matematyki w klasie VII szkoły podstawowej

Wymagania edukacyjne z matematyki w klasie VII szkoły podstawowej Wymagania edukacyjne z matematyki w klasie VII szkoły podstawowej ROZDZIAŁ I LICZBY Uczeń otrzymuje ocenę dopuszczającą jeśli: 1. rozpoznaje cyfry używane do zapisu liczb w systemie rzymskim w zakresie

Bardziej szczegółowo

Matematyka z kluczem. Szkoła podstawowa nr 18 w Sosnowcu. Przedmiotowe zasady oceniania klasa 7

Matematyka z kluczem. Szkoła podstawowa nr 18 w Sosnowcu. Przedmiotowe zasady oceniania klasa 7 Matematyka z kluczem Szkoła podstawowa nr 18 w Sosnowcu Przedmiotowe zasady oceniania klasa 7 KlasaVII wymagania programowe- wymagania na poszczególne oceny ROZDZIAŁ I LICZBY 1. rozpoznaje cyfry używane

Bardziej szczegółowo

WYMAGANIA EDUKACYJNE Z MATEMATYKI KLASA VII

WYMAGANIA EDUKACYJNE Z MATEMATYKI KLASA VII WYMAGANIA EDUKACYJNE Z MATEMATYKI KLASA VII Ocena Dopuszczający Osiągnięcia ucznia rozpoznaje cyfry używane do zapisu liczb w systemie rzymskim w zakresie do 3000 odczytuje liczby naturalne dodatnie zapisane

Bardziej szczegółowo

4. Postęp arytmetyczny i geometryczny. Wartość bezwzględna, potęgowanie i pierwiastkowanie liczb rzeczywistych.

4. Postęp arytmetyczny i geometryczny. Wartość bezwzględna, potęgowanie i pierwiastkowanie liczb rzeczywistych. Jarosław Wróblewski Matematyka dla Myślących, 008/09. Postęp arytmetyczny i geometryczny. Wartość bezwzględna, potęgowanie i pierwiastkowanie liczb rzeczywistych. 15 listopada 008 r. Uwaga: Przyjmujemy,

Bardziej szczegółowo

Algorytm i złożoność obliczeniowa algorytmu

Algorytm i złożoność obliczeniowa algorytmu Algorytm i złożoność obliczeniowa algorytmu Algorytm - przepis postępowania, którego wykonanie prowadzi do rozwiązania określonego problemu określa czynności, jakie należy wykonać wyszczególnia wszystkie

Bardziej szczegółowo

Arytmetyka komputera. Na podstawie podręcznika Urządzenia techniki komputerowej Tomasza Marciniuka. Opracował: Kamil Kowalski klasa III TI

Arytmetyka komputera. Na podstawie podręcznika Urządzenia techniki komputerowej Tomasza Marciniuka. Opracował: Kamil Kowalski klasa III TI Arytmetyka komputera Na podstawie podręcznika Urządzenia techniki komputerowej Tomasza Marciniuka Opracował: Kamil Kowalski klasa III TI Spis treści 1. Jednostki informacyjne 2. Systemy liczbowe 2.1. System

Bardziej szczegółowo

Obliczenia iteracyjne

Obliczenia iteracyjne Lekcja Strona z Obliczenia iteracyjne Zmienne iteracyjne (wyliczeniowe) Obliczenia iteracyjne wymagają zdefiniowania specjalnej zmiennej nazywanej iteracyjną lub wyliczeniową. Zmienną iteracyjną od zwykłej

Bardziej szczegółowo

2 Arytmetyka. d r 2 r + d r 1 2 r 1...d d 0 2 0,

2 Arytmetyka. d r 2 r + d r 1 2 r 1...d d 0 2 0, 2 Arytmetyka Niech b = d r d r 1 d 1 d 0 będzie zapisem liczby w systemie dwójkowym Zamiana zapisu liczby b na system dziesiętny odbywa się poprzez wykonanie dodawania d r 2 r + d r 1 2 r 1 d 1 2 1 + d

Bardziej szczegółowo

ALGORYTMY. 1. Podstawowe definicje Schemat blokowy

ALGORYTMY. 1. Podstawowe definicje Schemat blokowy ALGORYTMY 1. Podstawowe definicje Algorytm (definicja nieformalna) to sposób postępowania (przepis) umożliwiający rozwiązanie określonego zadania (klasy zadań), podany w postaci skończonego zestawu czynności

Bardziej szczegółowo

Zadanie 1. Algorytmika ćwiczenia

Zadanie 1. Algorytmika ćwiczenia Zadanie 1 Algorytmika ćwiczenia Zadanie 2 Zadanie 3 Zadanie 4 Zadanie 5 Zadanie 6 Zadanie 7 Wiązka zadań Ułamki dwójkowe W systemach pozycyjnych o podstawie innej niż 10 można zapisywać nie tylko liczby

Bardziej szczegółowo

Zadanie 1. Potęgi (14 pkt)

Zadanie 1. Potęgi (14 pkt) 2 Egzamin maturalny z informatyki Zadanie 1. otęgi (14 pkt) W poniższej tabelce podane są wartości kolejnych potęg liczby 2: k 0 1 2 3 4 5 6 7 8 9 10 2 k 1 2 4 8 16 32 64 128 256 512 1024 Ciąg a=(a 0,

Bardziej szczegółowo

Rekurencja (rekursja)

Rekurencja (rekursja) Rekurencja (rekursja) Rekurencja wywołanie funkcji przez nią samą wewnątrz ciała funkcji. Rekurencja może być pośrednia funkcja jest wywoływana przez inną funkcję, wywołaną (pośrednio lub bezpośrednio)

Bardziej szczegółowo

Schematy blokowe I. 1. Dostępne bloki: 2. Prosty program drukujący tekst.

Schematy blokowe I. 1. Dostępne bloki: 2. Prosty program drukujący tekst. Schematy blokowe I Jeżeli po schematach blokowych będzie używany język C, to należy używać operatorów: '&&', ' ', '!=', '%' natomiast jeśli Ruby to 'and', 'or', '%', '!='. 1. Dostępne bloki: a) początek:

Bardziej szczegółowo

Programowanie w Baltie klasa VII

Programowanie w Baltie klasa VII Programowanie w Baltie klasa VII Zadania z podręcznika strona 127 i 128 Zadanie 1/127 Zadanie 2/127 Zadanie 3/127 Zadanie 4/127 Zadanie 5/127 Zadanie 6/127 Ten sposób pisania programu nie ma sensu!!!.

Bardziej szczegółowo

Metody numeryczne. dr Artur Woike. Ćwiczenia nr 2. Rozwiązywanie równań nieliniowych metody połowienia, regula falsi i siecznych.

Metody numeryczne. dr Artur Woike. Ćwiczenia nr 2. Rozwiązywanie równań nieliniowych metody połowienia, regula falsi i siecznych. Ćwiczenia nr 2 metody połowienia, regula falsi i siecznych. Sformułowanie zagadnienia Niech będzie dane równanie postaci f (x) = 0, gdzie f jest pewną funkcją nieliniową (jeżeli f jest liniowa to zagadnienie

Bardziej szczegółowo

Katarzyna Bereźnicka Zastosowanie arkusza kalkulacyjnego w zadaniach matematycznych. Opiekun stypendystki: mgr Jerzy Mil

Katarzyna Bereźnicka Zastosowanie arkusza kalkulacyjnego w zadaniach matematycznych. Opiekun stypendystki: mgr Jerzy Mil Katarzyna Bereźnicka Zastosowanie arkusza kalkulacyjnego w zadaniach matematycznych Opiekun stypendystki: mgr Jerzy Mil 1 Działania na ułamkach Wyłączanie całości z dodatnich ułamków niewłaściwych Formuła

Bardziej szczegółowo

Wstęp do Informatyki

Wstęp do Informatyki Wstęp do Informatyki Bożena Woźna-Szcześniak bwozna@gmail.com Jan Długosz University, Poland Wykład 4 Bożena Woźna-Szcześniak (AJD) Wstęp do Informatyki Wykład 4 1 / 1 DZIELENIE LICZB BINARNYCH Dzielenie

Bardziej szczegółowo

Języki programowania zasady ich tworzenia

Języki programowania zasady ich tworzenia Strona 1 z 18 Języki programowania zasady ich tworzenia Definicja 5 Językami formalnymi nazywamy każdy system, w którym stosując dobrze określone reguły należące do ustalonego zbioru, możemy uzyskać wszystkie

Bardziej szczegółowo

Wymagania edukacyjne z matematyki dla klasy 7 na podstawie planu wynikowego z rozkładem materiału

Wymagania edukacyjne z matematyki dla klasy 7 na podstawie planu wynikowego z rozkładem materiału Wymagania edukacyjne z matematyki dla klasy 7 na podstawie planu wynikowego z rozkładem materiału Lp. Temat lekcji Punkty z podstawy programowej z dnia 1 lutego 2017 r. Wymagania podstawowe Wymagania ponadpodstawowe

Bardziej szczegółowo

5. Rozwiązywanie układów równań liniowych

5. Rozwiązywanie układów równań liniowych 5. Rozwiązywanie układów równań liniowych Wprowadzenie (5.1) Układ n równań z n niewiadomymi: a 11 +a 12 x 2 +...+a 1n x n =a 10, a 21 +a 22 x 2 +...+a 2n x n =a 20,..., a n1 +a n2 x 2 +...+a nn x n =a

Bardziej szczegółowo

Funkcje wymierne. Jerzy Rutkowski. Działania dodawania i mnożenia funkcji wymiernych określa się wzorami: g h + k l g h k.

Funkcje wymierne. Jerzy Rutkowski. Działania dodawania i mnożenia funkcji wymiernych określa się wzorami: g h + k l g h k. Funkcje wymierne Jerzy Rutkowski Teoria Przypomnijmy, że przez R[x] oznaczamy zbiór wszystkich wielomianów zmiennej x i o współczynnikach rzeczywistych Definicja Funkcją wymierną jednej zmiennej nazywamy

Bardziej szczegółowo

Programowanie dynamiczne

Programowanie dynamiczne Programowanie dynamiczne Ciąg Fibonacciego fib(0)=1 fib(1)=1 fib(n)=fib(n-1)+fib(n-2), gdzie n 2 Elementy tego ciągu stanowią liczby naturalne tworzące ciąg o takiej własności, że kolejny wyraz (z wyjątkiem

Bardziej szczegółowo

ZADANIE 1. Ważenie (14 pkt)

ZADANIE 1. Ważenie (14 pkt) ZADANIE 1. Ważenie (14 pkt) Danych jest n przedmiotów o niewielkich gabarytach i różnych wagach. Jest też do dyspozycji waga z dwiema szalkami, ale nie ma odważników. Kładąc na wadze przedmioty a i b,

Bardziej szczegółowo

Systemy liczbowe. 1. Przedstawić w postaci sumy wag poszczególnych cyfr liczbę rzeczywistą R = (10).

Systemy liczbowe. 1. Przedstawić w postaci sumy wag poszczególnych cyfr liczbę rzeczywistą R = (10). Wprowadzenie do inżynierii przetwarzania informacji. Ćwiczenie 1. Systemy liczbowe Cel dydaktyczny: Poznanie zasad reprezentacji liczb w systemach pozycyjnych o różnych podstawach. Kodowanie liczb dziesiętnych

Bardziej szczegółowo

Zadania do wykonania. Rozwiązując poniższe zadania użyj pętlę for.

Zadania do wykonania. Rozwiązując poniższe zadania użyj pętlę for. Zadania do wykonania Rozwiązując poniższe zadania użyj pętlę for. 1. apisz program, który przesuwa w prawo o dwie pozycje zawartość tablicy 10-cio elementowej liczb całkowitych tzn. element t[i] dla i=2,..,9

Bardziej szczegółowo

Matematyka dyskretna

Matematyka dyskretna Matematyka dyskretna Wykład 6: Ciała skończone i kongruencje Gniewomir Sarbicki 2 marca 2017 Relacja przystawania Definicja: Mówimy, że liczby a, b Z przystają modulo m (co oznaczamy jako a = b (mod m)),

Bardziej szczegółowo

ALGORYTMY. 1. Podstawowe definicje Schemat blokowy

ALGORYTMY. 1. Podstawowe definicje Schemat blokowy ALGORYTMY 1. Podstawowe definicje Algorytm (definicja nieformalna) to sposób postępowania (przepis) umożliwiający rozwiązanie określonego zadania (klasy zadań), podany w postaci skończonego zestawu czynności

Bardziej szczegółowo

1. Informatyka - dyscyplina naukowa i techniczna zajmująca się przetwarzaniem informacji.

1. Informatyka - dyscyplina naukowa i techniczna zajmująca się przetwarzaniem informacji. Temat: Technologia informacyjna a informatyka 1. Informatyka - dyscyplina naukowa i techniczna zajmująca się przetwarzaniem informacji. Technologia informacyjna (ang.) Information Technology, IT jedna

Bardziej szczegółowo

Matematyka z kluczem. Plan wynikowy z rozkładem materiału Klasa 7

Matematyka z kluczem. Plan wynikowy z rozkładem materiału Klasa 7 Matematyka z kluczem Plan wynikowy z rozkładem materiału Klasa 7 Matematyka z kluczem Plan wynikowy z rozkładem materiału Klasa 7 Temat lekcji Punkty z podstawy programowej Lp. Wymagania podstawowe Wymagania

Bardziej szczegółowo

Matematyka z kluczem. Plan wynikowy z rozkładem materiału Klasa 7

Matematyka z kluczem. Plan wynikowy z rozkładem materiału Klasa 7 Matematyka z kluczem Plan wynikowy z rozkładem materiału Klasa 7 Matematyka z kluczem Plan wynikowy z rozkładem materiału Klasa 7 Temat lekcji Punkty z podstawy programowej Lp. Wymagania podstawowe Wymagania

Bardziej szczegółowo

Rekurencja. Przykład. Rozważmy ciąg

Rekurencja. Przykład. Rozważmy ciąg Rekurencja Definicje rekurencyjne Definicja: Mówimy, iż ciąg jest zdefiniowany rekurencyjnie, jeżeli: (P) Określony jest pewien skończony zbiór wyrazów tego ciągu, zwykle jest to pierwszy wyraz tego ciągu

Bardziej szczegółowo

LICZBY PIERWSZE. Jan Ciurej Radosław Żak

LICZBY PIERWSZE. Jan Ciurej Radosław Żak LICZBY PIERWSZE Jan Ciurej Radosław Żak klasa IV a Katolicka Szkoła Podstawowa im. Świętej Rodziny z Nazaretu w Krakowie ul. Pędzichów 13, 31-152 Kraków opiekun - mgr Urszula Zacharska konsultacja informatyczna

Bardziej szczegółowo

Wymagania edukacyjne z matematyki na poszczególne do klasy VII szkoły podstawowej na rok szkolny 2018/2019

Wymagania edukacyjne z matematyki na poszczególne do klasy VII szkoły podstawowej na rok szkolny 2018/2019 Wymagania edukacyjne z matematyki na poszczególne do klasy VII szkoły podstawowej na rok szkolny 2018/2019 LICZBY Uczeń otrzymuje ocenę dopuszczającą, jeśli: rozpoznaje cyfry używane do zapisu liczb w

Bardziej szczegółowo

Wstęp do Informatyki zadania ze złożoności obliczeniowej z rozwiązaniami

Wstęp do Informatyki zadania ze złożoności obliczeniowej z rozwiązaniami Wstęp do Informatyki zadania ze złożoności obliczeniowej z rozwiązaniami Przykład 1. Napisz program, który dla podanej liczby n wypisze jej rozkład na czynniki pierwsze. Oblicz asymptotyczną złożoność

Bardziej szczegółowo

Wykład 4. Określimy teraz pewną ważną klasę pierścieni.

Wykład 4. Określimy teraz pewną ważną klasę pierścieni. Wykład 4 Określimy teraz pewną ważną klasę pierścieni. Twierdzenie 1 Niech m, n Z. Jeśli n > 0 to istnieje dokładnie jedna para licz q, r, że: m = qn + r, 0 r < n. Liczbę r nazywamy resztą z dzielenia

Bardziej szczegółowo

Metody numeryczne I Równania nieliniowe

Metody numeryczne I Równania nieliniowe Metody numeryczne I Równania nieliniowe Janusz Szwabiński szwabin@ift.uni.wroc.pl Metody numeryczne I (C) 2004 Janusz Szwabiński p.1/66 Równania nieliniowe 1. Równania nieliniowe z pojedynczym pierwiastkiem

Bardziej szczegółowo

1. Liczby naturalne, podzielność, silnie, reszty z dzielenia

1. Liczby naturalne, podzielność, silnie, reszty z dzielenia 1. Liczby naturalne, podzielność, silnie, reszty z dzielenia kwadratów i sześcianów przez małe liczby, cechy podzielności przez 2, 4, 8, 5, 25, 125, 3, 9. 26 września 2009 r. Uwaga: Przyjmujemy, że 0 nie

Bardziej szczegółowo

Złożoność obliczeniowa zadania, zestaw 2

Złożoność obliczeniowa zadania, zestaw 2 Złożoność obliczeniowa zadania, zestaw 2 Określanie złożoności obliczeniowej algorytmów, obliczanie pesymistycznej i oczekiwanej złożoności obliczeniowej 1. Dana jest tablica jednowymiarowa A o rozmiarze

Bardziej szczegółowo

Funkcja kwadratowa. f(x) = ax 2 + bx + c = a

Funkcja kwadratowa. f(x) = ax 2 + bx + c = a Funkcja kwadratowa. Funkcją kwadratową nazywamy funkcję f : R R określoną wzorem gdzie a, b, c R, a 0. f(x) = ax + bx + c, Szczególnym przypadkiem funkcji kwadratowej jest funkcja f(x) = ax, a R \ {0}.

Bardziej szczegółowo

WYMAGANIA EDUKACYJNE Z MATEMATYKI dla klasy I ba Rok szk. 2012/2013

WYMAGANIA EDUKACYJNE Z MATEMATYKI dla klasy I ba Rok szk. 2012/2013 Dział LICZBY RZECZYWISTE Uczeń otrzymuje ocenę dopuszczającą lub dostateczną, jeśli: podaje przykłady liczb: naturalnych, całkowitych, wymiernych, niewymiernych, pierwszych i złożonych oraz przyporządkowuje

Bardziej szczegółowo

Sortowanie przez wstawianie Insertion Sort

Sortowanie przez wstawianie Insertion Sort Sortowanie przez wstawianie Insertion Sort Algorytm sortowania przez wstawianie można porównać do sposobu układania kart pobieranych z talii. Najpierw bierzemy pierwszą kartę. Następnie pobieramy kolejne,

Bardziej szczegółowo

Arytmetyka. Arytmetyka. Magdalena Lemańska. Magdalena Lemańska,

Arytmetyka. Arytmetyka. Magdalena Lemańska. Magdalena Lemańska, Arytmetyka Magdalena Lemańska System dziesiętny System dziesiętny Weźmy liczbę 178. Składa się ona z jednej setki, siedmiu dziesiątek i ośmiu jedności. System dziesiętny System dziesiętny Weźmy liczbę

Bardziej szczegółowo

I. Podstawy języka C powtórka

I. Podstawy języka C powtórka I. Podstawy języka C powtórka Zadanie 1. Utwórz zmienne a = 730 (typu int), b = 106 (typu long long), c = 123.45 (typu double) Wypisz następujące komunikaty: Dane sa liczby: a = 730, b = 106 i c = 123.45.

Bardziej szczegółowo

Samodzielnie wykonaj następujące operacje: 13 / 2 = 30 / 5 = 73 / 15 = 15 / 23 = 13 % 2 = 30 % 5 = 73 % 15 = 15 % 23 =

Samodzielnie wykonaj następujące operacje: 13 / 2 = 30 / 5 = 73 / 15 = 15 / 23 = 13 % 2 = 30 % 5 = 73 % 15 = 15 % 23 = Systemy liczbowe Dla każdej liczby naturalnej x Î N oraz liczby naturalnej p >= 2 istnieją jednoznacznie wyznaczone: liczba n Î N oraz ciąg cyfr c 0, c 1,..., c n-1 (gdzie ck Î {0, 1,..., p - 1}) taki,

Bardziej szczegółowo

Algorytm. a programowanie -

Algorytm. a programowanie - Algorytm a programowanie - Program komputerowy: Program komputerowy można rozumieć jako: kod źródłowy - program komputerowy zapisany w pewnym języku programowania, zestaw poszczególnych instrukcji, plik

Bardziej szczegółowo

PRÓBNY EGZAMIN MATURALNY Z INFORMATYKI STYCZEŃ POZIOM ROZSZERZONY Część I

PRÓBNY EGZAMIN MATURALNY Z INFORMATYKI STYCZEŃ POZIOM ROZSZERZONY Część I Organizatorzy: Uniwersytet Mikołaja Kopernika w Toruniu Wydział Matematyki i Informatyki, Oddział Kujawsko-Pomorski Polskiego Towarzystwa Informatycznego, Ośrodek Doskonalenia Nauczycieli w Poznaniu, Centrum

Bardziej szczegółowo

Liczby rzeczywiste. Działania w zbiorze liczb rzeczywistych. Robert Malenkowski 1

Liczby rzeczywiste. Działania w zbiorze liczb rzeczywistych. Robert Malenkowski 1 Robert Malenkowski 1 Liczby rzeczywiste. 1 Liczby naturalne. N {0, 1,, 3, 4, 5, 6, 7, 8...} Liczby naturalne to liczby używane powszechnie do liczenia i ustalania kolejności. Liczby naturalne można ustawić

Bardziej szczegółowo

Operacje arytmetyczne

Operacje arytmetyczne PODSTAWY TEORII UKŁADÓW CYFROWYCH Operacje arytmetyczne Bibliografia: Urządzenia techniki komputerowej, K. Wojtuszkiewicz http://pl.wikipedia.org/ Dodawanie dwójkowe Opracował: Andrzej Nowak Ostatni wynik

Bardziej szczegółowo

Podstawy programowania. Wykład: 13. Rekurencja. dr Artur Bartoszewski -Podstawy programowania, sem 1 - WYKŁAD

Podstawy programowania. Wykład: 13. Rekurencja. dr Artur Bartoszewski -Podstawy programowania, sem 1 - WYKŁAD Podstawy programowania Wykład: 13 Rekurencja 1 dr Artur Bartoszewski -Podstawy programowania, sem 1 - WYKŁAD Podstawy programowania Rekurencja - pojęcie 2 Rekurencja - pojęcie Rekurencja (rekursja) wywołanie

Bardziej szczegółowo

CIĄGI wiadomości podstawowe

CIĄGI wiadomości podstawowe 1 CIĄGI wiadomości podstawowe Jak głosi definicja ciąg liczbowy to funkcja, której dziedziną są liczby naturalne dodatnie (w zadaniach oznacza się to najczęściej n 1) a wartościami tej funkcji są wszystkie

Bardziej szczegółowo

Sortowanie Shella Shell Sort

Sortowanie Shella Shell Sort Sortowanie Shella Shell Sort W latach 50-tych ubiegłego wieku informatyk Donald Shell zauważył, iż algorytm sortowania przez wstawianie pracuje bardzo efektywnie w przypadku gdy zbiór jest w dużym stopniu

Bardziej szczegółowo

Projekt Era inżyniera pewna lokata na przyszłość jest współfinansowany przez Unię Europejską w ramach Europejskiego Funduszu Społecznego

Projekt Era inżyniera pewna lokata na przyszłość jest współfinansowany przez Unię Europejską w ramach Europejskiego Funduszu Społecznego Materiały dydaktyczne na zajęcia wyrównawcze z matematyki dla studentów pierwszego roku kierunku zamawianego Biotechnologia w ramach projektu Era inżyniera pewna lokata na przyszłość Projekt Era inżyniera

Bardziej szczegółowo

Wymagania edukacyjne niezbędne do uzyskania rocznych ocen klasyfikacyjnych z matematyki w klasie VII.

Wymagania edukacyjne niezbędne do uzyskania rocznych ocen klasyfikacyjnych z matematyki w klasie VII. Przedmiotowy system oceniania z matematyki w klasie VII. Ocena roczna Wyróżniono następujące wymagania programowe: konieczne (K), podstawowe (P), rozszerzające (R), dopełniające (D) i wykraczające poza

Bardziej szczegółowo

Pzetestuj działanie pętli while i do...while na poniższym przykładzie:

Pzetestuj działanie pętli while i do...while na poniższym przykładzie: Pzetestuj działanie pętli while i do...while na poniższym przykładzie: Zadania pętla while i do...while: 1. Napisz program, który wczytuje od użytkownika liczbę całkowitą, dopóki podana liczba jest mniejsza

Bardziej szczegółowo

Konstrukcje warunkowe Pętle

Konstrukcje warunkowe Pętle * Konstrukcje warunkowe Pętle *Instrukcja if sposób na sprawdzanie warunków *Konstrukcja: if(warunek) else { instrukcje gdy warunek spełniony} {instrukcje gdy warunek NIE spełniony} * 1. Wylicz całkowity

Bardziej szczegółowo

Jarosław Wróblewski Matematyka Elementarna, zima 2015/16

Jarosław Wróblewski Matematyka Elementarna, zima 2015/16 Na ćwiczeniach 6.0.205 omawiamy test kwalifikacyjny. Uwaga: Przyjmujemy, że 0 nie jest liczbą naturalną, tzn. liczby naturalne są to liczby całkowite dodatnie.. Sformułować uogólnione cechy podzielności

Bardziej szczegółowo

Transponowanie macierzy Mnożenie macierzy Potęgowanie macierzy Wyznacznik macierzy

Transponowanie macierzy Mnożenie macierzy Potęgowanie macierzy Wyznacznik macierzy Transponowanie macierzy Mnożenie macierzy Potęgowanie macierzy Wyznacznik macierzy Problem Transponować macierz A m n na A T n m. Operacja transponowania macierzy polega na zamianie wierszy w kolumny i

Bardziej szczegółowo

1 Metody rozwiązywania równań nieliniowych. Postawienie problemu

1 Metody rozwiązywania równań nieliniowych. Postawienie problemu 1 Metody rozwiązywania równań nieliniowych. Postawienie problemu Dla danej funkcji ciągłej f znaleźć wartości x, dla których f(x) = 0. (1) 2 Przedział izolacji pierwiastka Będziemy zakładać, że równanie

Bardziej szczegółowo

Wybrane zagadnienia teorii liczb

Wybrane zagadnienia teorii liczb Wybrane zagadnienia teorii liczb Podzielność liczb NWW, NWD, Algorytm Euklidesa Arytmetyka modularna Potęgowanie modularne Małe twierdzenie Fermata Liczby pierwsze Kryptosystem RSA Podzielność liczb Relacja

Bardziej szczegółowo

Instrukcje pętli przykłady. Odgadywanie hasła. 1) Program pyta o hasło i podaje adres, gdy hasło poprawne lub komunikat o błędnym haśle.

Instrukcje pętli przykłady. Odgadywanie hasła. 1) Program pyta o hasło i podaje adres, gdy hasło poprawne lub komunikat o błędnym haśle. Instrukcje pętli przykłady. Odgadywanie hasła. 1) Program pyta o hasło i podaje adres, gdy hasło poprawne lub komunikat o błędnym haśle. Sub Hasla1() Dim wzor_hasla As String Dim haslo As String Dim adres

Bardziej szczegółowo

Akademia Górniczo-Hutnicza im. Stanisława Staszica w Krakowie Olimpiada O Diamentowy Indeks AGH 2017/18. Informatyka Etap III

Akademia Górniczo-Hutnicza im. Stanisława Staszica w Krakowie Olimpiada O Diamentowy Indeks AGH 2017/18. Informatyka Etap III Akademia Górniczo-Hutnicza im. Stanisława Staszica w Krakowie Olimpiada O Diamentowy Indeks AGH 017/18 Informatyka Etap III Zadania po 17 punktów Zadanie 1 Dla pewnej N-cyfrowej liczby naturalnej obliczono

Bardziej szczegółowo

Systemy zapisu liczb.

Systemy zapisu liczb. Systemy zapisu liczb. Cele kształcenia: Zapoznanie z systemami zapisu liczb: dziesiętny, dwójkowy, ósemkowy, szesnastkowy. Zdobycie umiejętności wykonywania działań na liczbach w różnych systemach. Zagadnienia:

Bardziej szczegółowo

WYMAGANIA EDUKACYJNE Z MATEMATYKI DLA KLASY VII SZKOŁY PODSTAWOWEJ

WYMAGANIA EDUKACYJNE Z MATEMATYKI DLA KLASY VII SZKOŁY PODSTAWOWEJ WYMAGANIA EDUKACYJNE Z MATEMATYKI DLA KLASY VII SZKOŁY PODSTAWOWEJ Ocenę niedostateczną otrzymuje uczeń, jeśli nie opanował wiadomości i umiejętności na ocenę dopuszczającą, nie wykazuje chęci poprawy

Bardziej szczegółowo

TEORETYCZNE PODSTAWY INFORMATYKI

TEORETYCZNE PODSTAWY INFORMATYKI 1 TEORETYCZNE PODSTAWY INFORMATYKI WFAiS UJ, Informatyka Stosowana I rok studiów, I stopień Wykład 2 2 Problemy algorytmiczne Klasy problemów algorytmicznych Liczby Fibonacciego Przeszukiwanie tablic Największy

Bardziej szczegółowo

Kodowanie i kompresja Streszczenie Studia Licencjackie Wykład 15, Kryptografia: algorytmy asymetryczne (RSA)

Kodowanie i kompresja Streszczenie Studia Licencjackie Wykład 15, Kryptografia: algorytmy asymetryczne (RSA) Kodowanie i kompresja Streszczenie Studia Licencjackie Wykład 15, 19.06.2005 1 Kryptografia: algorytmy asymetryczne (RSA) Niech E K (x) oznacza szyfrowanie wiadomości x kluczem K (E od encrypt, D K (x)

Bardziej szczegółowo

Wymagania dla klasy siódmej. Treści na 2 na 3 na 4 na 5 na 6 Uczeń: Uczeń: Uczeń: Uczeń: Uczeń: DZIAŁ 1. LICZBY

Wymagania dla klasy siódmej. Treści na 2 na 3 na 4 na 5 na 6 Uczeń: Uczeń: Uczeń: Uczeń: Uczeń: DZIAŁ 1. LICZBY Wymagania dla klasy siódmej Treści na 2 na 3 na 4 na 5 na 6 Uczeń: Uczeń: Uczeń: Uczeń: Uczeń: DZIAŁ 1. LICZBY Rzymski sposób zapisu liczb Liczby pierwsze i złożone. Dzielenie z resztą Rozwinięcia dziesiętne

Bardziej szczegółowo

Przedmiotowy system oceniania wraz z określeniem wymagań edukacyjnych klasa druga zakres rozszerzony

Przedmiotowy system oceniania wraz z określeniem wymagań edukacyjnych klasa druga zakres rozszerzony Przedmiotowy system oceniania wraz z określeniem wymagań edukacyjnych klasa druga zakres rozszerzony Wymagania konieczne (K) dotyczą zagadnień elementarnych, stanowiących swego rodzaju podstawę, zatem

Bardziej szczegółowo

Kod znak-moduł. Wartość liczby wynosi. Reprezentacja liczb w kodzie ZM w 8-bitowym formacie:

Kod znak-moduł. Wartość liczby wynosi. Reprezentacja liczb w kodzie ZM w 8-bitowym formacie: Wykład 3 3-1 Reprezentacja liczb całkowitych ze znakiem Do przedstawienia liczb całkowitych ze znakiem stosowane są następujące kody: - ZM (znak-moduł) - U1 (uzupełnienie do 1) - U2 (uzupełnienie do 2)

Bardziej szczegółowo

Funkcja kwadratowa. f(x) = ax 2 + bx + c,

Funkcja kwadratowa. f(x) = ax 2 + bx + c, Funkcja kwadratowa. Funkcją kwadratową nazywamy funkcję f : R R określoną wzorem gdzie a, b, c R, a 0. f(x) = ax 2 + bx + c, Szczególnym przypadkiem funkcji kwadratowej jest funkcja f(x) = ax 2, a R \

Bardziej szczegółowo

2) R stosuje w obliczeniach wzór na logarytm potęgi oraz wzór na zamianę podstawy logarytmu.

2) R stosuje w obliczeniach wzór na logarytm potęgi oraz wzór na zamianę podstawy logarytmu. ZAKRES ROZSZERZONY 1. Liczby rzeczywiste. Uczeń: 1) przedstawia liczby rzeczywiste w różnych postaciach (np. ułamka zwykłego, ułamka dziesiętnego okresowego, z użyciem symboli pierwiastków, potęg); 2)

Bardziej szczegółowo

Czas pracy: 60 minut

Czas pracy: 60 minut EGZAMIN MATURALNY OD ROKU SZKOLNEGO 2014/2015 INFORMATYKA POZIOM ROZSZERZONY ARKUSZ I PRZYKŁADOWY ZESTAW ZADAŃ DLA OSÓB SŁABOSŁYSZĄCYCH (A3) WYBRANE:... (środowisko)... (kompilator)... (program użytkowy)

Bardziej szczegółowo