Programowanie. Dariusz Wardecki, wyk. II. wtorek, 26 lutego 13
|
|
- Jakub Kwiecień
- 7 lat temu
- Przeglądów:
Transkrypt
1 Programowanie Dariusz Wardecki, wyk. II
2 Powtórzenie Co wypisze program? char x, y, z; x = '1'; y = '3'; z = x + y; cout << z << endl;
3 Powtórzenie Znajdź błąd w poniższym fragmencie kodu? short int x, y; x = 65535; y = x + 1; cout << y << endl;
4 Algorytmy Algorytm SkoÒczony zbiór dobrze zdefiniowanych instrukcji przeznaczony do wykonania okreúlonego zadania, który przy ustalonym stanie poczπtkowym pozwala na uzyskanie odpowiedniego, rozpoznawalnego stanu koòcowego w skoòczonym czasie. W uproszczeniu Metoda poszukiwania (lub tworzenia) rozwiπzania zadanego problemu.
5 Algorytmy Stan poczπtkowy dla algorytmu Dane wejúciowe (ang. input data). Stan koòcowy dla algorytmu Wynik (ang. result). Definicja poprawnoúci algorytmu Algorytm jest poprawny (ang. correct), gdy dla kaødych dopuszczalnych danych wejúciowych jednoczeúnie spe nione sπ dwa nastípujπce warunki: 1 Wynik jest otrzymywany w skoòczonej liczbie kroków problem zatrzymania (stopu). 2 Wynik stanowi rozwiπzanie problemu, dla którego algorytm zosta stworzony.
6 Algorytmy Przykłady: Oblicznie reszty z dzielenia (operacja modulo) Algorytm Euklidesa Sito Eratostenesa Uniwersalny algorytm mnożenia (russian peasant algorithm) Przeszukiwanie binarne (ang. binary search) lub bisekcja (ang. bisection)
7 Algorytmy Obliczanie reszty z dzielenia niech n i m będą liczbami naturalnymi, n > m 1.Niech k = n 2.Jeśli k < m, to k jest resztą z dzielenia, k = n%m 3.Niech k = k - m 4.Przejdź do kroku 2
8 Algorytm Euklidesa Algorytmy Niech n i m będą liczbami nauralnymi, n > m. Wyznaczamy największy wspólny dzielnik n i m, czyli NWD(n, m) Obserwacja Jeśli r jest resztą z dzielenia n przez m, to n = km + r (dla pewnego całkowitego k), więc NWD(n, m) = NWD(m, r)
9 Algorytm Euklidesa Algorytmy Niech a, b i r będą miejscami do przechowywania wyników 1.Niech a = n i b = m. 2.Niech r = a%b (resztę z dzielenia a/b zapisujemy w r). 3.Jeśli r = 0, to NWD(n, m) = b. 4.Niech a = b i b = r. 5.Przejdź do kroku 2.
10 Algorytmy Sito Eratostenesa - chcemy ustalić, które z liczb naturalnych nie większych od zadanego N są liczbami pierwszymi. A = {2,3,, N}, k i m - miejsca do przechowywania pośrednich wyników 1) Niech k = 2 2) Jeśli k² > N, zbiór A zawiera tylko liczby pierwsze 3) Usuwamy z A wszystkie wielokrotności k, począwszy od k² 4) W m zapisz najmniejszą liczbę ze zbioru A większą od k. 5) Niech k = m. 6) Przejdź do kroku 2).
11 Algorytmy Sito Eratostenesa - chcemy ustalić, które z liczb naturalnych nie większych od zadanego N są liczbami pierwszymi. A = {2,3,, N}, k i m - miejsca do przechowywania pośrednich wyników 1) Niech k = 2 2) Jeśli k² > N, zbiór A zawiera tylko liczby pierwsze 3) Usuwamy z A wszystkie wielokrotności k, począwszy od k² 4) W m zapisz najmniejszą liczbę ze zbioru A większą od k. 5) Niech k = m. 6) Przejdź do kroku 2).
12 Algorytmy Uniwersalny algorytm mnożenia Russian peasant algorithm Obliczamy wynik mnoøenia dwóch nieujemnych liczb ca kowitych a i b: 1 Niech a 0 = a, b 0 = b i k = 0. 2 Niech k = k Niech a k = a k 1 /2 (dzielenie bez reszty) i b k = 2b k 1. 4 Jeúli a k > 1, to przejdü do kroku 2. 5 Wynik mnoøenia jest sumπ wszystkich b k (k = 0, 1, 2,...), dla których odpowiadajπce im a k sπ nieparzyste.
13 Algorytmy Uniwersalny algorytm mnożenia Obliczamy iloczyn Wyznaczamy ciπgi a k i b k : k a k b k = = 2808
14 Algorytmy Uniwersalny algorytm mnożenia Obliczamy iloczyn Moøna sumowaê na bieøπco k a k b k s k = s 7 = 2808
15 Algorytmy Uniwersalny algorytm mnożenia Obliczamy iloczyn dwóch nieujemnych liczb ca kowitych a i b Niech A, B i S bídπ miejscami s uøπcymi do przechowywania poúrednich wyników. 1 Niech A = a, B = b i S = 0. 2 Jeúli A % 2 = 1 (wartoúê w A jest nieparzysta), to S = S + B. 3 Jeúli A = 1, przejdü do kroku 6. 4 Niech A = A/2 (dzielenie bez reszty) i B = 2B. 5 Przejdü do kroku 2. 6 Wynik mnoøenia jest zapisany w S.
16 Algorytmy Przeszukiwanie binarne (bisekcja) Poszukiwanie elementu r w skoòczonym i uporzπdkowanym zbiorze B 1 Niech B 0 = B i k = 0. 2 Jeúli wszystkie elementy zbioru B k sπ jednakowe lub B k jest zbiorem pustym, przejdü do kroku 6. 3 Niech m k oznacza medianí zbioru B k. 4 Jeúli r m k,toniechb k+1 = {b œ B k : b m k },awprzeciwnym wypadku niech B k+1 = {b œ B k : b > m k }. 5 Niech k = k + 1 i przejdü do kroku 2. 6 Jeúli r œ B k,tor œ B.
17 Algorytmy Przeszukiwanie binarne (bisekcja) - przykład Weümy B = {3, 7, 21, 48, 56, 122, 141, 218, 225, 248} i r = 225 k B k m k 0 {3, 7, 21, 48, 56, 122, 141, 218, 225, 248} 56 1 {122, 141, 218, 225, 248} {225, 248} {225} 225
18 Złożoność obliczeniowa algorytmu
19 Złożoność obliczeniowa algorytmu Z oøonoúê obliczeniowa algorytmu Miara liczby operacji przeprowadzanych podczas wykonywania programu stanowiπcego realizacjí (zapis) danego algorytmu.
20 Złożoność obliczeniowa algorytmu Z oøonoúê obliczeniowa algorytmu Miara liczby operacji przeprowadzanych podczas wykonywania programu stanowiπcego realizacjí (zapis) danego algorytmu. Obserwacje 1 Z oøonoúê obliczeniowa algorytmu jest funkcjπ rozmiarów jego danych wejúciowych, czyli rozmiaru zadania. 2 Zwykle jest ona szacowana (w przybliøeniu) dla rozmiaru zadania dπøπcego do nieskoòczonoúci. 3 Czas przeprowadzania obliczeò jest úciúle zaleøny od z oøonoúci obliczeniowej algorytmu.
21 Złożoność obliczeniowa algorytmu Dla rozmiaru zadania reprezentowanego przez jednπ liczbí N Sta a liczba operacji nie zaleøy odn. Logarytmiczna liczba operacji jest proporcjonalna do log N. Liniowa liczba operacji jest wprost proporcjonalna do N. Wielomianowa liczba operacji jest proporcjonalna N k, gdzie k > 1. NP weryfikacja rozwiπzania jest problemem o wielomianowej
22 Złożoność obliczeniowa algorytmu Dla rozmiaru zadania reprezentowanego przez jednπ liczbí N Sta a liczba operacji nie zaleøy odn. Logarytmiczna liczba operacji jest proporcjonalna do log N. Liniowa liczba operacji jest wprost proporcjonalna do N. Wielomianowa liczba operacji jest proporcjonalna N k, gdzie k > 1. NP weryfikacja rozwiπzania jest problemem o wielomianowej CzÍsto czas dzia ania programu wyraøa sií poprzez jego z oøonoúê obliczeniowπ, takøe na przyk ad jeúli algorytm ma wielomianowπ z oøonoúê obliczeniowπ mówi sií, øe jest on wykonywany w czasie wielomianowym.
23 Złożoność obliczeniowa Przykłady:
24 Złożoność obliczeniowa Przykłady: Dla wyznaczania reszty z dzielenia Liniowa wzglídem ilorazu n/m.
25 Algorytm Euklidesa: Złożoność obliczeniowa W najgorszym wypadku logarytmiczna wzglídem n (zak adajπc, øe obliczanie reszty z dzielenia ma sta π z oøonoúê). 1 W najgorszym wypadku w kaødym kroku mamy b r a 2
26 Algorytm Euklidesa: Złożoność obliczeniowa W najgorszym wypadku logarytmiczna wzglídem n (zak adajπc, øe obliczanie reszty z dzielenia ma sta π z oøonoúê). 1 W najgorszym wypadku w kaødym kroku mamy b r a 2 2 Zatem (w najgorszym wypadku) w kroku k b r n 2 k
27 Algorytm Euklidesa: Złożoność obliczeniowa W najgorszym wypadku logarytmiczna wzglídem n (zak adajπc, øe obliczanie reszty z dzielenia ma sta π z oøonoúê). 1 W najgorszym wypadku w kaødym kroku mamy b r a 2 2 Zatem (w najgorszym wypadku) w kroku k b r n 2 k 3 Zatem (w najgorszym wypadku) w ostatnim kroku, czyli dla k = s, gdzie s jest ca kowitπ liczbπ wykonanych kroków 1 r n 2 s = s log 2 n
28 Złożoność obliczeniowa Sito Eratostenesa: Kwadratowa wzglídem N. 1 Liczba powtórzeò usuwania wielokrotnoúci jest rzídu N.
29 Złożoność obliczeniowa Sito Eratostenesa: Kwadratowa wzglídem N. 1 Liczba powtórzeò usuwania wielokrotnoúci jest rzídu N. 2 Wkaødym powtórzeniu przeprowadzamy (N k 2 )/k operacji.
30 Złożoność obliczeniowa Sito Eratostenesa: Kwadratowa wzglídem N. 1 Liczba powtórzeò usuwania wielokrotnoúci jest rzídu N. 2 Wkaødym powtórzeniu przeprowadzamy (N k 2 )/k operacji. 3 πczna liczba przeprowadzanych operacji s jest proporcjonalna do N! N ÈkÍ 2" ÈkÍ = N2 ÈkÍ ÈkÍN gdzie ÈkÍ jest úredniπ wartoúciπ k.
31 Złożoność obliczeniowa Sito Eratostenesa: Kwadratowa wzglídem N. 1 Liczba powtórzeò usuwania wielokrotnoúci jest rzídu N. 2 Wkaødym powtórzeniu przeprowadzamy (N k 2 )/k operacji. 3 πczna liczba przeprowadzanych operacji s jest proporcjonalna do! " N! N ÈkÍ 2" ÈkÍ = N2 ÈkÍ ÈkÍN gdzie ÈÈkÍ Í jest úredniπ wartoúciπ k. 4 Przy N dπøπcym do nieskoòczonoúci pierwszy cz on jest dominujπcy, wiíc mamy s N 2
32 Złożoność obliczeniowa Mnożenie uniwersalne: Logarytmiczna wzglídem a przy za oøeniu, øe dodawanie ma sta π z oøonoúê. 1 Mamy a k = a/2 k.
33 Złożoność obliczeniowa Mnożenie uniwersalne: Logarytmiczna wzglídem a przy za oøeniu, øe dodawanie ma sta π z oøonoúê. 1 Mamy a k = a/2 k. 2 Zatem, dla k równego liczbie kroków s dostajemy 1 = a s = a/2 s. Stπd wynika,øe s log a.
34 Złożoność obliczeniowa Mnożenie uniwersalne: Logarytmiczna wzglídem a przy za oøeniu, øe dodawanie ma sta π z oøonoúê. 1 Mamy a k = a/2 k. 2 Zatem, dla k równego liczbie kroków s dostajemy 1 = a s = a/2 s. Stπd wynika,øe s log a. 3 Stπd wynika,øe s log 2 a.
35 Złożoność obliczeniowa Bisekcja: Logarytmiczna wzglídem liczby elementów B. 1 Dla kaødego k moc (liczba elementów) zbioru B k+1 jest úrednio o po owí mniejsza od mocy (liczby elementów) zbioru B k.
36 Złożoność obliczeniowa Bisekcja: Logarytmiczna wzglídem liczby elementów B. 1 Dla kaødego k moc (liczba elementów) zbioru B k+1 jest úrednio o po owí mniejsza od mocy (liczby elementów) zbioru B k. 2 Zatem dla k = s (liczba kroków) moc zbioru B s jest rzídu mocy zbioru B podzielonej przez 2 s.
37 Złożoność obliczeniowa Bisekcja: Logarytmiczna wzglídem liczby elementów B. 1 Dla kaødego k moc (liczba elementów) zbioru B k+1 jest úrednio o po owí mniejsza od mocy (liczby elementów) zbioru B k. 2 Zatem dla k = s (liczba kroków) moc zbioru B s jest rzídu mocy zbioru B podzielonej przez 2 s. 3 Stπd wynika,øe s log 2 B.
38 Równoważność algorytmów
39 Równoważność algorytmów Definicja równowaønoúci algorytmów Dwa algorytmy moøna uznaê za równowaøne (ang. equivalent), gdy: 1 Kaødy z nich pozwala wyznaczyê rozwiπzanie tego samego problemu. 2 Majπ one jednakowπ z oøonoúê obliczeniowπ (z dok adnoúciπ do sta ego czynnika).
Wstęp do programowania. Dariusz Wardecki, wyk. I
Wstęp do programowania Dariusz Wardecki, wyk. I Kontakt dward@fuw.edu.pl http://www.fuw.edu.pl/~dward/wdp ul. Hoża 69, pok. 114 tel. 22 55 32 181 Zasady zaliczenia Wykład (2h/tydzień) Egzamin pisemny Test
Wstęp do programowania. Dariusz Wardecki, wyk. V
Wstęp do programowania Dariusz Wardecki, wyk. V Tablica (ang. array) Zestaw N zmiennych tego samego typu numerowanych liczbami w zakresie od 0 do (N 1). Element tablicy Zmienna wchodzπca w sk ad tablicy,
Wstęp do programowania, część I
Wstęp do programowania, część I Rafał J. Wysocki Instytut Fizyki Teoretycznej, Wydział Fizyki UW 12 października 2011 Rafał J. Wysocki (rwys@fuw.edu.pl) Wstęp do programowania, część I 12 października
Wstęp do programowania INP001213Wcl rok akademicki 2018/19 semestr zimowy. Wykład 5. Karol Tarnowski A-1 p.
Wstęp do programowania INP001213Wcl rok akademicki 2018/19 semestr zimowy Wykład 5 Karol Tarnowski karol.tarnowski@pwr.edu.pl A-1 p. 411B Plan prezentacji Algorytm Euklidesa Liczby pierwsze i złożone Metody
Pracownia komputerowa. Dariusz Wardecki, wyk. V
Pracownia komputerowa Dariusz Wardecki, wyk. V Powtórzenie Co wykona następujący skrypt? #! /bin/bash! for i in `ls /dmj/2002`! do! mkdir ~/$i! cp -r /dmj/2002/$i/obrazy ~/$i! done Zapis binarny, bity
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
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
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
Pracownia komputerowa. Dariusz Wardecki, wyk. VI
Pracownia komputerowa Dariusz Wardecki, wyk. VI Powtórzenie Ile wynoszą poniższe liczby w systemie dwójkowym/ dziesiętnym? 1001101 =? 77! 63 =? 111111! Arytmetyka w reprezentacji bezznakowej Mnożenie liczb
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
ALGORYTMY MATEMATYCZNE Ćwiczenie 1 Na podstawie schematu blokowego pewnego algorytmu (rys 1), napisz listę kroków tego algorytmu:
ALGORYTMY MATEMATYCZNE Ćwiczenie 1 Na podstawie schematu blokowego pewnego algorytmu (rys 1), napisz listę kroków tego algorytmu: Rys1 Ćwiczenie 2 Podaj jaki ciąg znaków zostanie wypisany po wykonaniu
INFORMATYKA Z MERMIDONEM. Programowanie. Moduł 5 / Notatki
INFORMATYKA Z MERMIDONEM Programowanie Moduł 5 / Notatki Projekt współfinansowany ze środków Unii Europejskiej w ramach Europejskiego Funduszu Społecznego. Realizator projektu: Opracowano w ramach projektu
Teoria liczb. Magdalena Lemańska. Magdalena Lemańska,
Teoria liczb Magdalena Lemańska Literatura Matematyka Dyskretna Andrzej Szepietowski http://wazniak.mimuw.edu.pl/ Discrete Mathematics Seymour Lipschutz, Marc Lipson Wstęp Teoria liczb jest dziedziną matematyki,
Największy wspólny dzielnik Algorytm Euklidesa (także rozszerzony) WZAiP1: Chińskie twierdzenie o resztach
Największy wspólny dzielnik Algorytm Euklidesa (także rozszerzony) Chińskie twierdzenie o resztach Wybrane zagadnienia algorytmiki i programowania I 27 października 2010 Największy wspólny dzielnik - definicja
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,
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ę
Pracownia komputerowa. Dariusz Wardecki, wyk. VIII
Pracownia komputerowa Dariusz Wardecki, wyk. VIII Powtórzenie Podaj wartość liczby przy następującej reprezentacji zmiennoprzecinkowej (Kc = 7) Z C C C C M M M 1 0 1 1 1 1 1 0-1.75 (dec) Rafa J. Wysocki
Pracownia komputerowa
Pracownia komputerowa Dariusz Wardecki, wyk. II Komputer Zasada działania komputera Urządzenia wej/wyj Procesor Pamięć Procesor EU REG ALU FPU AU BIU IU MMU EU - układ wykonawczy (Execution Unit) BIU -
im = (P )={b 2 R : 9a 2 P [b = (a)]} nazywamy obrazem homomorfizmu.
61 7. Wyk ad 7: Homomorfizmy pierúcieni, idea y pierúcieni. Idea y generowane przez zbiory. PierúcieÒ ilorazowy, twierdzenie o homomorfizmie. Idea y pierwsze i maksymalne. 7.1. Homomorfizmy pierúcieni,
Metoda CPM/PERT. dr inø. Mariusz Makuchowski
PM - wstíp PM nazwa metody pochodzi od angielskiego ritical Path Method, jest technikπ bazujπcπ na grafowej reprezentacji projektu, uøywana jest dla deterministycznych danych. PM - modele grafowe projektu
Wstęp do programowania. Dariusz Wardecki, wyk. VI
Wstęp do programowania Dariusz Wardecki, wyk. VI Wskaźniki Wskaünik (ang. pointer) Zmienna, której wartoúciπ jest adres innej zmiennej. Deklaracja wskaünika Umieszcza sií * przy nazwie zmiennej, np.: int
1. Liczby wymierne. x dla x 0 (wartością bezwzględną liczby nieujemnej jest ta sama liczba)
1. Liczby wymierne. - wartość bezwzględna liczby. dla 0 (wartością bezwzględną liczby nieujemnej jest ta sama liczba) - dla < 0 ( wartością bezwzględną liczby ujemnej jest liczba do niej przeciwna) W interpretacji
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
Treść wykładu. Pierścienie wielomianów. Dzielenie wielomianów i algorytm Euklidesa Pierścienie ilorazowe wielomianów
Treść wykładu Pierścienie wielomianów. Definicja Niech P będzie pierścieniem. Wielomianem jednej zmiennej o współczynnikach z P nazywamy każdy ciąg f = (f 0, f 1, f 2,...), gdzie wyrazy ciągu f są prawie
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
Technologie informacyjne Wykład VII-IX
Technologie informacyjne -IX A. Matuszak 19 marca 2013 A. Matuszak Technologie informacyjne -IX Rekurencja A. Matuszak (2) Technologie informacyjne -IX Gotowanie jajek na miękko weż czysty garnek włóż
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
Pracownia komputerowa. Dariusz Wardecki, wyk. IV
Pracownia komputerowa Dariusz Wardecki, wyk. IV Notacja szesnastkowa Zapis szesnastkowy (ang. hexadecimal notation) Dowolnπ nieujemnπ liczbí ca kowitπ moøna roz oøyê na potígi liczby 16 x = ÿ N 1 j=0 h
Wieczorowe Studia Licencjackie Wrocław, Wykład nr 6 (w oparciu o notatki K. Lorysia, z modyfikacjami) Sito Eratostenesa
Wieczorowe Studia Licencjackie Wrocław, 7.11.2006 Wstęp do programowania Wykład nr 6 (w oparciu o notatki K. Lorysia, z modyfikacjami) Sito Eratostenesa Zaprezentujemy teraz algorytm na wyznaczanie wszystkich
Egzamin z GAL-u (Informatyka) 2. termin 19/02/2019 CzÍúÊ teoretyczna I
ImiÍ i nazwisko: Numer albumu: CzÍúÊ teoretyczna I Instrukcja: Odpowiedzi naleøy pisaê na arkuszu z pytaniami. W zadaniach 1-10 naleøy udzielaê odpowiedzi TAK lub NIE, przy czym nawet jedna niepoprawna
operacje porównania, a jeśli jest to konieczne ze względu na złe uporządkowanie porównywanych liczb zmieniamy ich kolejność, czyli przestawiamy je.
Problem porządkowania zwanego również sortowaniem jest jednym z najważniejszych i najpopularniejszych zagadnień informatycznych. Dane: Liczba naturalna n i ciąg n liczb x 1, x 2,, x n. Wynik: Uporządkowanie
2. Liczby pierwsze i złożone, jednoznaczność rozkładu na czynniki pierwsze, największy wspólny dzielnik, najmniejsza wspólna wielokrotność.
2. Liczby pierwsze i złożone, jednoznaczność rozkładu na czynniki pierwsze, największy wspólny dzielnik, najmniejsza wspólna wielokrotność. 11 października 2008 r. 19. Wskazać takie liczby naturalne m,
Egzamin z Metod Numerycznych ZSI, Egzamin, Gr. A
Egzamin z Metod Numerycznych ZSI, 06.2007. Egzamin, Gr. A Imię i nazwisko: Nr indeksu: Section 1. Test wyboru, max 33 pkt Zaznacz prawidziwe odpowiedzi literą T, a fałszywe N. Każda prawidłowa odpowiedź
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ą
Matematyka dyskretna
Matematyka dyskretna Wykład 4: Podzielność liczb całkowitych Gniewomir Sarbicki Dzielenie całkowitoliczbowe Twierdzenie: Dla każdej pary liczb całkowitych (a, b) istnieje dokładnie jedna para liczb całkowitych
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
KONSPEKT FUNKCJE cz. 1.
KONSPEKT FUNKCJE cz. 1. DEFINICJA FUNKCJI Funkcją nazywamy przyporządkowanie, w którym każdemu elementowi zbioru X odpowiada dokładnie jeden element zbioru Y Zbiór X nazywamy dziedziną, a jego elementy
Wstęp do programowania. Dariusz Wardecki, wyk. III
Wstęp do programowania Dariusz Wardecki, wyk. III Funkcje w C++ Funkcja (ang. function) Wyróøniona czíúê kodu üród owego, stanowiπca odríbnπ ca oúê, sk adajπca sií z treúci (ang. body) oraz nag ówka (ang.
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
Zadanie 1. Test (6 pkt) Zaznacz znakiem X w odpowiedniej kolumnie P lub F, która odpowiedź jest prawdziwa, a która fałszywa.
2 Egzamin maturalny z informatyki Zadanie 1. Test (6 pkt) Zaznacz znakiem X w odpowiedniej kolumnie lub, która odpowiedź jest prawdziwa, a która fałszywa. a) rzeanalizuj poniższy algorytm (:= oznacza instrukcję
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
Matematyka dyskretna
Matematyka dyskretna Wykład 6: Ciała skończone i kongruencje Gniewomir Sarbicki 24 lutego 2015 Relacja przystawania Definicja: Mówimy, że liczby a, b Z przystają modulo m (co oznaczamy jako a = b (mod
Podstawy Informatyki. Algorytmy i ich poprawność
Podstawy Informatyki Algorytmy i ich poprawność Błędy Błędy: językowe logiczne Błędy językowe Związane ze składnią języka Wykrywane automatycznie przez kompilator lub interpreter Prosty sposób usuwania
Proste programy w C++ zadania
Proste programy w C++ zadania Zbiór zadao do samodzielnego rozwiązania stanowiący powtórzenie materiału. Podstawy C++ Budowa programu w C++ Dyrektywy preprocesora Usunięcie dublujących się nazw Częśd główna
Algorytmy równoległe: ocena efektywności prostych algorytmów dla systemów wielokomputerowych
Algorytmy równoległe: ocena efektywności prostych algorytmów dla systemów wielokomputerowych Rafał Walkowiak Politechnika Poznańska Studia inżynierskie Informatyka 2014/15 Znajdowanie maksimum w zbiorze
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
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
Podstawowe algorytmy i ich implementacje w C. Wykład 9
Wstęp do programowania 1 Podstawowe algorytmy i ich implementacje w C Bożena Woźna-Szcześniak bwozna@gmail.com Jan Długosz University, Poland Wykład 9 Element minimalny i maksymalny zbioru Element minimalny
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,
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)
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
Pętle i tablice. Spotkanie 3. Pętle: for, while, do while. Tablice. Przykłady
Pętle i tablice. Spotkanie 3 Dr inż. Dariusz JĘDRZEJCZYK Pętle: for, while, do while Tablice Przykłady 11/26/2016 AGH, Katedra Informatyki Stosowanej i Modelowania 2 Pętla w największym uproszczeniu służy
Matematyka dyskretna
Matematyka dyskretna Wykład 10: Algorytmy teorii liczb Gniewomir Sarbicki Literatura A. Chrzęszczyk Algorytmy teorii liczb i kryptografii w przykładach Wydawnictwo BTC 2010 N. Koblitz Wykład z teorii liczb
Arytmetyka. Działania na liczbach, potęga, pierwiastek, logarytm
Arytmetyka Działania na liczbach, potęga, pierwiastek, logarytm Zbiory liczbowe Zbiór liczb naturalnych N = {1,2,3,4, }. Zbiór liczb całkowitych Z = {, 3, 2, 1,0,1,2,3, }. Zbiory liczbowe Zbiór liczb wymiernych
Ćwiczenie 3 z Podstaw programowania. Język C++, programy pisane w nieobiektowym stylu programowania. Zofia Kruczkiewicz
Ćwiczenie 3 z Podstaw programowania. Język C++, programy pisane w nieobiektowym stylu programowania Zofia Kruczkiewicz Zakres Podstawowe algorytmy przetwarzania tablic (wypełnianie, porównywanie elementów,
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
Matematyka dyskretna
Matematyka dyskretna Wykład 10: Algorytmy teorii liczb Gniewomir Sarbicki Literatura A. Chrzęszczyk Algorytmy teorii liczb i kryptografii w przykładach Wydawnictwo BTC 2010 N. Koblitz Wykład z teorii liczb
Podstawy programowania. Podstawy C# Przykłady algorytmów
Podstawy programowania Podstawy C# Przykłady algorytmów Proces tworzenia programu Sformułowanie problemu funkcje programu zakres i postać danych postać i dokładność wyników Wybór / opracowanie metody rozwiązania
Wstęp do programowania. Dariusz Wardecki, wyk. X
Wstęp do programowania Dariusz Wardecki, wyk. X Na czym polega przeciążanie operatorów Zamiast podawaê nazwí metody, moøna jπ oznaczyê z pomocπ symbolu operatora. Wtedy liczba argumentów metody zaleøy
5. Rekurencja. Przykłady
5. Rekurencja Uwaga! W tym rozdziale nie są omówione żadne nowe konstrukcje języka C++. Omówiona jest za to technika wykorzystująca funkcje, która pozwala na rozwiązanie pewnych nowych rodzajów zadań.
Algorytmy równoległe: prezentacja i ocena efektywności prostych algorytmów dla systemów równoległych
Algorytmy równoległe: prezentacja i ocena efektywności prostych algorytmów dla systemów równoległych Rafał Walkowiak Politechnika Poznańska Studia inżynierskie Informatyka 2018/19 Problem: znajdowanie
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)),
Liczby całkowite. Zadania do pierwszych dwóch lekcji
Matematyka w klasie IE Zadania do zajęć w Marynce Jesień 2012 Liczby całkowite prof. W. Gajda Zagadka Pomyśl sobie jakąś dużą liczbę całkowitą. Dodaj do niej tę samą liczbę. Do uzyskanej sumy dodaj jeszcze
h pg fq ph gq f. IdentycznoúÊ:: dla kaødego obiektu B P C istnieje morfizm B 1 B
14. Wyk ad 14: Wprowadzenie do teorii kateorii: produkty, koprodukty, obiekty wolne i morizmy. Deinicja 14.1. Kateoria C sk ada sií z klasy obiektów ObpCq, oznaczanych przez A, B, C,... oraz klasy morizmów
Struktury danych i złożoność obliczeniowa Wykład 5. Prof. dr hab. inż. Jan Magott
Struktury danych i złożoność obliczeniowa Wykład 5 Prof. dr hab. inż. Jan Magott DMT rozwiązuje problem decyzyjny π przy kodowaniu e w co najwyżej wielomianowym czasie, jeśli dla wszystkich łańcuchów wejściowych
Jarosław Wróblewski Matematyka Elementarna, lato 2012/13. W dniu 21 lutego 2013 r. omawiamy test kwalifikacyjny.
W dniu 21 lutego 2013 r. omawiamy test kwalifikacyjny. Uwaga: Przyjmujemy, że 0 nie jest liczbą naturalną, tzn. liczby naturalne są to liczby całkowite dodatnie. 1. Dane są liczby naturalne m, n. Wówczas
Lista 0. Kamil Matuszewski 1 marca 2016
Lista 0 Kamil Matuszewski marca 206 2 3 4 5 6 7 8 0 0 Zadanie 4 Udowodnić poprawność mnożenia po rosyjsku Zastanówmy się co robi nasz algorytm Mamy podane liczby n i m W każdym kroku liczbę n dzielimy
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
I V X L C D M. Przykłady liczb niewymiernych: 3; 2
1 LICZBY Liczby naturalne: 0; 1; 2; 3;.... Liczby całkowite:...; -3; -2; -1; 0; 1; 2; 3;.... Liczbą wymierną nazywamy każdą liczbę, którą można zapisać w postaci ułamka a b, gdzie a i b są liczbami całkowitymi,
Luty 2001 Algorytmy (8) 2000/2001
Algorytm Euklidesa Danymi są dwie nieujemne liczby całkowite m i n. Liczba k jest największym wspólnym dzielnikiem m i n, jeśli dzieli m oraz n i jest największą liczbą o tej własności - oznaczamy ją przez
Haszowanie. dr inż. Urszula Gałązka
Haszowanie dr inż. Urszula Gałązka Problem Potrzebujemy struktury do Wstawiania usuwania wyszukiwania Liczb, napisów, rekordów w Bazach danych, sieciach komputerowych, innych Rozwiązanie Tablice z haszowaniem
Podstawy nauk przyrodniczych Matematyka Wstęp
Podstawy nauk przyrodniczych Matematyka Wstęp Katarzyna Kluzek i Adrian Silesian Zakład Genetyki Molekularnej Człowieka tel. 61 829 58 33 adrian.silesian@amu.edu.pl katarzyna.kluzek@amu.edu.pl Pokój 1.117
Wykład 1. Na początku zajmować się będziemy zbiorem liczb całkowitych
Arytmetyka liczb całkowitych Wykład 1 Na początku zajmować się będziemy zbiorem liczb całkowitych Z = {0, ±1, ±2,...}. Zakładamy, że czytelnik zna relację
Piotr Chrząstowski-Wachtel Uniwersytet Warszawski. Al Chwarizmi i trzy algorytmy Euklidesa
Piotr Chrząstowski-Wachtel Uniwersytet Warszawski Al Chwarizmi i trzy algorytmy Euklidesa Algorytmika Najważniejsza część informatyki Opisuje jak rozwiązywać problemy algorytmiczne, jakie struktury danych
EGZAMIN MATURALNY Z INFORMATYKI
ARKUSZ ZAWIERA INORMACJE RAWNIE CHRONIONE DO MOMENTU ROZOCZĘCIA EGZAMINU! Miejsce na naklejkę EGZAMIN MATURALNY Z INORMATYKI MIN-R1_1-092 MAJ ROK 2009 OZIOM ROZSZERZONY CZĘŚĆ I Czas pracy 90 minut Instrukcja
Struktury danych i złożoność obliczeniowa Wykład 7. Prof. dr hab. inż. Jan Magott
Struktury danych i złożoność obliczeniowa Wykład 7 Prof. dr hab. inż. Jan Magott Problemy NP-zupełne Transformacją wielomianową problemu π 2 do problemu π 1 (π 2 π 1 ) jest funkcja f: D π2 D π1 spełniająca
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
Program zajęć pozalekcyjnych z matematyki poziom rozszerzony- realizowanych w ramach projektu Przez naukę i praktykę na Politechnikę
Program zajęć pozalekcyjnych z matematyki poziom rozszerzony- realizowanych w ramach projektu Przez naukę i praktykę na Politechnikę 1. Omówienie programu. Zaznajomienie uczniów ze źródłami finansowania
Podstawy programowania. Wykład: 4. Instrukcje sterujące, operatory. dr Artur Bartoszewski -Podstawy programowania, sem 1 - WYKŁAD
programowania Wykład: 4 Instrukcje sterujące, operatory 1 programowania w C++ Instrukcje sterujące 2 Pętla for for ( instrukcja_ini ; wyrazenie_warunkowe ; instrukcja_krok ) tresc_petli ; instrukcja_ini
Pracownia Komputerowa wyk ad V
Pracownia Komputerowa wyk ad V dr Magdalena Posiada a-zezula Magdalena.Posiadala@fuw.edu.pl http://www.fuw.edu.pl/~mposiada Magdalena.Posiadala@fuw.edu.pl 1 Reprezentacje liczb i znaków Liczby: Reprezentacja
EGZAMIN MATURALNY Z INFORMATYKI. 10 maja 2017 POZIOM ROZSZERZONY. Godzina rozpoczęcia: 14:00 CZĘŚĆ I
Arkusz zawiera informacje prawnie chronione do momentu rozpoczęcia egzaminu. Układ graficzny CKE 2013 KOD UZUPEŁNIA ZDAJĄCY PESEL miejsce na naklejkę EGZAMIN MATURALNY Z INFORMATYKI POZIOM ROZSZERZONY
Algorytmy i struktury danych
Letnie Warsztaty Matematyczno-Informatyczne Algorytmy i struktury danych Mariusz Różycki University of Cambridge Zajęcia będą mieć formę wykładową. Slajdy można znaleźć na stronie kursu: http://lw.mi.edu.pl/informatyka/algorytmy.
Wstęp do informatyki- wykład 1 Systemy liczbowe
1 Wstęp do informatyki- wykład 1 Systemy liczbowe Treści prezentowane w wykładzie zostały oparte o: S. Prata, Język C++. Szkoła programowania. Wydanie VI, Helion, 2012 www.cplusplus.com Jerzy Grębosz,
ALGORYTMY I STRUKTURY DANYCH
KATEDRASYSTEMÓWOBLICZENIOWYCH ALGORYTMY I STRUKTURY DANYCH 1.Rekurencja Rekurencja inaczej rekursja (ang. recursion) to wywołanie z poziomu metody jej samej. Programowanie z wykorzytaniem rekurencji pozwala
Ciała i wielomiany 1. przez 1, i nazywamy jedynką, zaś element odwrotny do a 0 względem działania oznaczamy przez a 1, i nazywamy odwrotnością a);
Ciała i wielomiany 1 Ciała i wielomiany 1 Definicja ciała Niech F będzie zbiorem, i niech + ( dodawanie ) oraz ( mnożenie ) będą działaniami na zbiorze F. Definicja. Zbiór F wraz z działaniami + i nazywamy
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
Efektywność Procedur Obliczeniowych. wykład 5
Efektywność Procedur Obliczeniowych wykład 5 Modele procesu obliczeń (8) Jedno-, wielotaśmowa MT oraz maszyna RAM są równoważne w przypadku, jeśli dany problem jest rozwiązywany przez jeden model w czasie
1. Równania i nierówności liniowe
Równania i nierówności liniowe Wykonać działanie: Rozwiązać równanie: ( +x + ) x a) 5x 5x+ 5 = 50 x 0 b) 6(x + x + ) = (x + ) (x ) c) x 0x (0 x) 56 = 6x 5 5 ( x) Rozwiązać równanie: a) x + x = 4 b) x x
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
Informatyka 1. Złożoność obliczeniowa
Informatyka 1 Wykład XI Złożoność obliczeniowa Robert Muszyński ZPCiR ICT PWr Zagadnienia: efektywność programów/algorytmów, sposoby zwiększania efektywności algorytmów, zasada 80 20, ocena efektywności
1. Wykład NWD, NWW i algorytm Euklidesa.
1.1. NWD, NWW i algorytm Euklidesa. 1. Wykład 1 Twierdzenie 1.1 (o dzieleniu z resztą). Niech a, b Z, b 0. Wówczas istnieje dokładnie jedna para liczb całkowitych q, r Z taka, że a = qb + r oraz 0 r< b.
Praca domowa nr 1. a a b a b ; b c. c a bc d ef gh. 2) Napisz kod sprawdzający poniższe warunki sformułowane w języku naturalnym:
Praca domowa nr 1 1) Napisz kod w języku C obliczający wartość poniższych wyrażeń; załóż, że każda litera oznacza pojedynczą zmienną typu int: a bc ; a b c ; bc a a b a b ; b c d e f g ; a b c d e d ef
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
Struktury danych i złozoność obliczeniowa. Prof. dr hab. inż. Jan Magott
Struktury danych i złozoność obliczeniowa Prof. dr hab. inż. Jan Magott Formy zajęć: Wykład 1 godz., Ćwiczenia 1 godz., Projekt 2 godz.. Adres strony z materiałami do wykładu: http://www.zio.iiar.pwr.wroc.pl/sdizo.html
WYŻSZA SZKOŁA INFORMATYKI STOSOWANEJ I ZARZĄDZANIA
WYŻSZA SZKOŁA IFORMATYKI STOSOWAEJ I ZARZĄDZAIA Złożoność algorytmów Złożoność pamięciowa algorytmu wynika z liczby i rozmiaru struktur danych wykorzystywanych w algorytmie. Złożoność czasowa algorytmu
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
Zadanie 1. Suma silni (11 pkt)
2 Egzamin maturalny z informatyki Zadanie 1. Suma silni (11 pkt) Pojęcie silni dla liczb naturalnych większych od zera definiuje się następująco: 1 dla n = 1 n! = ( n 1! ) n dla n> 1 Rozpatrzmy funkcję
Systemy liczbowe używane w technice komputerowej
Systemy liczbowe używane w technice komputerowej Systemem liczenia nazywa się sposób tworzenia liczb ze znaków cyfrowych oraz zbiór reguł umożliwiających wykonywanie operacji arytmetycznych na liczbach.
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