Notacja RPN. 28 kwietnia wyliczanie i transformacja wyrażeń. Opis został przygotowany przez: Bogdana Kreczmera.

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

Download "Notacja RPN. 28 kwietnia wyliczanie i transformacja wyrażeń. Opis został przygotowany przez: Bogdana Kreczmera."

Transkrypt

1 1 wyliczanie i transformacja wyrażeń (wersja skrócona) Opis został przygotowany przez: Bogdana Kreczmera 28 kwietnia 2002 Strona 1 z 68 Zakład Podstaw Cybernetyki i Robotyki

2 - trochę historii ogólna idea do RPN Kalkulator arytmetyczny w RPN transformacji do notacji RPN algorytmu transformacji notacji 64 Strona 2 z 68

3 - trochę historii Odwrotna Notacja Polska (RPN - Reverse Polish Notation) opracowana została przez Jana Łukasiewicza (r. 191). Jedna z podstawowych cech tej notacji jest to, że nie wymaga ona stosowania nawiasów. Strona z 68

4 - trochę historii Odwrotna Notacja Polska (RPN - Reverse Polish Notation) opracowana została przez Jana Łukasiewicza (r. 191). Jedna z podstawowych cech tej notacji jest to, że nie wymaga ona stosowania nawiasów. Pierwszy komputer działajacy w oparciu o notację RPN został zbudowany przez prof. Pawlaka. Niestety nie opatentował on swojego rozwiazania i firma HP skopiowała jego pomysł w swoich kalkulatorach. Strona z 68

5 - ogólna idea Podstawa własnościa tej notacji jest to, że najpierw zapisuje się argumenty a później operatory, np.: Strona 4 z 68

6 - ogólna idea Podstawa własnościa tej notacji jest to, że najpierw zapisuje się argumenty a później operatory, np.: To jest normalny zapis: 2 Strona 4 z 68

7 - ogólna idea Podstawa własnościa tej notacji jest to, że najpierw zapisuje się argumenty a później operatory, np.: To jest normalny zapis: 2 To już jest zapis w RPN: 2 Strona 4 z 68

8 - ogólna idea Teraz bardziej złożony przykład. Strona z 68

9 - ogólna idea Teraz bardziej złożony przykład. Wyrażenie w normalnej notacji: (2 ) ( 1) - 7 Strona z 68

10 - ogólna idea Teraz bardziej złożony przykład. Wyrażenie w normalnej notacji: (2 ) ( 1) - 7 W notacji RPN: Strona z 68

11 do RPN Zobaczmy teraz jak wyrażenie w notacji zwyczajowej możemy przekształcić do notacji RPN. Strona 6 z 68

12 do RPN Zobaczmy teraz jak wyrażenie w notacji zwyczajowej możemy przekształcić do notacji RPN. W tym celu prześledźmy jak przekształcać należy poniższe wyrażenie. (2 ) ( 1) - 7 Strona 6 z 68

13 do RPN Zobaczmy teraz jak wyrażenie w notacji zwyczajowej możemy przekształcić do notacji RPN. W tym celu prześledźmy jak przekształcać należy poniższe wyrażenie. (2 ) ( 1) - 7 W pierwszym kroku szukamy podwyrażeń, które wykonaja się przed innymi. Strona 6 z 68

14 do RPN (2 ) ( 1) - 7 Oto i one. Sprowadzamy je do zapisu RPN poprzez przestawienie operatora. Strona 7 z 68

15 do RPN Wykonujemy tę operację dla każdego z nich z osobna. Ramki wokół wyrażeń zostały użyte, aby oddzielić to co jest już zapisane w notacji RPN od pozostałej części. Strona 8 z 68

16 do RPN Następnym działaniem, które się wykona, jest mnożenie. Wyrażenia w ramkach traktujemy jak liczby. Całość przekształcamy w identyczny sposób jak poprzednio przestawiajac operator. Strona 9 z 68

17 do RPN Ponownie traktujac wyrażenie w ramce jako jedna liczbę dokonujemy ostatniej transformacji dla ostatniego działania. Strona 10 z 68

18 do RPN W ten sposób dochodzimy do finalnej postaci wyrażenia zapisanego w notacji RPN. Strona 11 z 68

19 Kalkulator arytmetyczny w RPN Istotna zaleta odwrotnej notacji polskiej jest to, że istnieje dla niej prosty algorytm wyliczenia wyrażenia przedstawionego w tej notacji. Strona 12 z 68

20 Kalkulator arytmetyczny w RPN Istotna zaleta odwrotnej notacji polskiej jest to, że istnieje dla niej prosty algorytm wyliczenia wyrażenia przedstawionego w tej notacji. ten bazuje na pojęciu prostej struktury zwanej stosem, która jest kolejka typu LIFO (ang. Last In First Out - ostatni wchodzi pierwszy wychodzi). Strona 1 z 68

21 Kalkulator arytmetyczny w RPN Istotna zaleta odwrotnej notacji polskiej jest to, że istnieje dla niej prosty algorytm wyliczenia wyrażenia przedstawionego w tej notacji. ten bazuje na pojęciu prostej struktury zwanej stosem, która jest kolejka typu LIFO (ang. Last In First Out - ostatni wchodzi pierwszy wychodzi). Idea tego algorytmu zostanie wyjaśniona na przykładzie, który wcześniej rozważaliśmy, a mianowicie: (2 ) ( 1) - 7 Strona 1 z 68

22 Kalkulator arytmetyczny w RPN Istotna zaleta odwrotnej notacji polskiej jest to, że istnieje dla niej prosty algorytm wyliczenia wyrażenia przedstawionego w tej notacji. ten bazuje na pojęciu prostej struktury zwanej stosem, która jest kolejka typu LIFO (ang. Last In First Out - ostatni wchodzi pierwszy wychodzi). Idea tego algorytmu zostanie wyjaśniona na przykładzie, który wcześniej rozważaliśmy, a mianowicie: (2 ) ( 1) - 7 W notacji RPN: Strona 1 z 68

23 Kalkulator arytmetyczny w RPN Wejście: Stos: = Przykład, który dalej będzie przedstawiany, zorganizowany jest w następujacy sposób: Strona 14 z 68 Obliczenia dla wyrażenia: (2 ) ( 1) 7

24 Kalkulator arytmetyczny w RPN Wejście: Stos: Na wejściu mamy wyrażenie w notacji RPN. Odpowiada jemu przedstawione na dole wyrażenie w notacji zwyczajowej. Ponadto mamy obszar roboczy, w którym wykonywane będa poszczególne działania oraz stos, w którym składowane będa wczytywane liczby. = Strona 1 z 68 Obliczenia dla wyrażenia: (2 ) ( 1) 7

25 Kalkulator arytmetyczny w RPN Wejście: Stos: = Czytany jest pierwszy element wyrażenia. Strona 16 z 68 Obliczenia dla wyrażenia: (2 ) ( 1) 7

26 Kalkulator arytmetyczny w RPN Wejście: Stos: 2 = Ze względu na to, że jest to liczba, to umieszczamy ja na stosie. Strona 17 z 68 Obliczenia dla wyrażenia: (2 ) ( 1) 7

27 Kalkulator arytmetyczny w RPN Wejście: Stos: 2 = Czytana jest druga liczba i tak jak poprzednio umieszczona zostaje na stosie. Strona 18 z 68 Obliczenia dla wyrażenia: (2 ) ( 1) 7

28 Kalkulator arytmetyczny w RPN Wejście: = Stos: 2 Wczytujac operator rozpoczynamy proces interpretacji napotkanej operacji arytmetycznej i jej wykonanie. Strona 19 z 68 Obliczenia dla wyrażenia: (2 ) ( 1) 7

29 Kalkulator arytmetyczny w RPN Wejście: Stos: 2 = W tym celu pobieramy z wierzchołka stosu liczbę i traktujemy ja jako drugi argument danej operacji arytmetycznej. Strona 20 z 68 Obliczenia dla wyrażenia: (2 ) ( 1) 7

30 Kalkulator arytmetyczny w RPN Wejście: Stos: 2 = Powtarzamy ta czynność pobierajac kolejna liczbę z wierzchołka stosu i traktujemy ja tym razem jako pierwszy argument danej operacji arytmetycznej. Strona 21 z 68 Obliczenia dla wyrażenia: (2 ) ( 1) 7

31 Kalkulator arytmetyczny w RPN Wejście: Stos: 7 2 = 7 Wykonujemy zadana operację arytmetyczna i jej wynik umieszczamy na stosie. Strona 22 z 68 Obliczenia dla wyrażenia: (2 ) ( 1) 7

32 Kalkulator arytmetyczny w RPN Wejście: Stos: 7 = Po wczytaniu kolejnej liczby umieszczamy ja na stosie, tak jak to robiliśmy wcześniej. Strona 2 z 68 Obliczenia dla wyrażenia: (2 ) ( 1) 7

33 Kalkulator arytmetyczny w RPN Wejście: Stos: 1 7 = To samo czynimy z następna wczytana liczba. Strona 24 z 68 Obliczenia dla wyrażenia: (2 ) ( 1) 7

34 Kalkulator arytmetyczny w RPN Wejście: Stos: 1 7 = Wczytanie operatora powoduje przejście do procesu interpretacji i wykonania działania. Strona 2 z 68 Obliczenia dla wyrażenia: (2 ) ( 1) 7

35 Kalkulator arytmetyczny w RPN Wejście: Stos: 7 1 = W tym celu z wierzchołka stosu pobieramy kolejno jego dwa argumenty... Strona 26 z 68 Obliczenia dla wyrażenia: (2 ) ( 1) 7

36 Kalkulator arytmetyczny w RPN Wejście: Stos: = 4... i wykonujemy działanie składujac jego wynik na stosie. Strona 27 z 68 Obliczenia dla wyrażenia: (2 ) ( 1) 7

37 Kalkulator arytmetyczny w RPN Wejście: Stos: 7 4 = Wczytanie następnego operatora powoduje tak jak wcześniej ściagnięcie jego dwóch argumentów ze stosu. Strona 28 z 68 Obliczenia dla wyrażenia: (2 ) ( 1) 7

38 Kalkulator arytmetyczny w RPN Wejście: Stos: = 28 Po wykonaniu zadanej operacji jej wynik umieszczamy na stosie. Strona 29 z 68 Obliczenia dla wyrażenia: (2 ) ( 1) 7

39 Kalkulator arytmetyczny w RPN Wejście: Stos: 7 28 = Po wczytaniu kolejnej liczby umieszczamy ja na stosie. Strona 0 z 68 Obliczenia dla wyrażenia: (2 ) ( 1) 7

40 Kalkulator arytmetyczny w RPN Wejście: Stos: 28-7 = Wczytujac kolejny operator powtarzamy wcześniejsza procedurę i ściagamy dwa kolejne argumenty ze stosu. Strona 1 z 68 Obliczenia dla wyrażenia: (2 ) ( 1) 7

41 Kalkulator arytmetyczny w RPN Wejście: Stos: = 21 Jej wynik umieszczamy na stosie, co kończy realizację całego algorytmu. Warto zauważyć, że dla poprawnie zbudowanego wyrażenia po zakończeniu jego interpretacji na szczycie stosu pozostanie tylko jedna liczba (przy założeniu, że startujemy z pustym stosem). Strona 2 z 68 Obliczenia dla wyrażenia: (2 ) ( 1) 7

42 transformacji do notacji RPN Idea konstrukcji algorytmu zostanie zademonstrowana na przykładzie, który był już wcześniej omawiany (aby zobaczyć przejdź tutaj). Sam algorytm realizuje de facto proces transformacji, który intuicyjnie jest przedstawiony w części, do której odsyłacz znajduje się w poprzednim zdaniu. Tak więc jeszcze raz zajmiemy się wyrażeniem: (2 ) ( 1) 7 Strona z 68

43 transformacji do notacji RPN Idea konstrukcji algorytmu zostanie zademonstrowana na przykładzie, który był już wcześniej omawiany (aby zobaczyć przejdź tutaj). Sam algorytm realizuje de facto proces transformacji, który intuicyjnie jest przedstawiony w części, do której odsyłacz znajduje się w poprzednim zdaniu. Tak więc jeszcze raz zajmiemy się wyrażeniem: (2 ) ( 1) 7 Omawiany algorytm jest słuszny dla operatorów /. Opis uogólnienia tego algorytmu na pozostałe operatory dwuargumentowe znajduje się w następnej części. Strona z 68

44 transformacji do notacji RPN Wejście: ( 2 ) ( 1 ) 7 Wartości priorytetów / liczby N I L Niniejszy przykład zorganizowany jest następujaco: Z wejścia wczytywane jest wyrażenie arytmetyczne. Pobieranym elementom (operatorom i liczbom) nadawane będa priorytety wg. tabeli powyżej, a następnie będa składowane w kolejce jednokierunkowej. Strona 4 z 68

45 transformacji do notacji RPN Wejście: ( Wartości priorytetów 2 ) ( 1 ) 7 / liczby N I L Prześledźmy więc teraz jak działa algorytm. Na wejściu wczytany zostaje pierwszy element wyrażenia arytmetycznego. Jest nim nawias otwierajacy. Strona z 68

46 transformacji do notacji RPN Wejście: ( Wartości priorytetów 2 ) ( 1 ) 7 / liczby 4 N I L Pojawienie się nawiasu otwierajacego powoduje zwiększenie wszystkich nadawanych priorytetów o wartość. Strona 6 z 68

47 transformacji do notacji RPN Wejście: ( 2 Wartości priorytetów 2 ) ( 1 ) 7 / liczby 4 Jako następny element wyrażenia wczytana zostaje liczba. Umieszczamy ja w kolejce nadajac jej priorytet (dolna wartość w ramce) zgodny z tabela nadawanych priorytetów. Strona 7 z 68

48 transformacji do notacji RPN Wejście: ( 2 Wartości priorytetów 2 / liczby 4 ) ( 1 ) 7 Czytany jest kolejny element wyrażenia. Traktujemy go podobnie jak wcześniej wczytana liczbę i umieszczamy go na końcu kolejki. Strona 8 z 68

49 transformacji do notacji RPN Wejście: ( 2 Wartości priorytetów 2 / liczby 4 ) ( 1 ) 7 Wczytana zostaje następna liczba i postępujemy podobnie jak poprzednio umieszczajac ja na końcu listy. Strona 9 z 68

50 transformacji do notacji RPN Wejście: ( 2 ) Wartości priorytetów 2 / liczby 4 Dochodzimy do nawiasu zamykajacego. ( 1 ) 7 Strona 40 z 68

51 transformacji do notacji RPN Wejście: ( 2 ) Wartości priorytetów 2 / liczby ( 1 ) 7 Wykrycie nawiasu zamykaj acego powoduje obniżenie wartości nadawanych priorytetów o. Strona 41 z 68

52 transformacji do notacji RPN Wejście: ( 2 ) Wartości priorytetów 2 / liczby ( 1 ) 7 Wczytujemy kolejny element i tak jak wcześniej umieszczamy go na końcu listy z odpowiednia wartościa priorytetu. Strona 42 z 68

53 transformacji do notacji RPN Wejście: ( 2 ) ( Wartości priorytetów 2 / liczby ) 7 Dochodzimy do nawiasu otwieraj acego. Powoduje to ponownie zwiększenie nadawanych priorytetów o. Strona 4 z 68

54 transformacji do notacji RPN Wejście: ( 2 ) ( Wartości priorytetów 2 / liczby ) 7 Wczytywana zostaje liczba i wg. stosowanej już procedury dodana zostaje na koniec listy z odpowiadajacym jej priorytetem. Strona 44 z 68

55 transformacji do notacji RPN Wejście: ( 2 ) ( Wartości priorytetów 2 / liczby 4 1 Podobnie postępujemy z następnym operatorem... 1 ) 7 Strona 4 z 68

56 transformacji do notacji RPN Wejście: ( 2 ) ( 1 Wartości priorytetów 2 / liczby 4... oraz z następna liczba. 1 1 ) 7 Strona 46 z 68

57 transformacji do notacji RPN Wejście: ( 2 ) ( 1 ) Wartości priorytetów 2 / liczby Strona 47 z 68 Wczytanie nawiasu zamykaj acego powoduje obniżenia wartości nadawanych priorytetów o.

58 transformacji do notacji RPN Wejście: ( 2 ) ( 1 ) 7 Wartości priorytetów 2 / liczby W analogiczny sposób jak wcześniej wczytujemy dwa kolejne elementy i umieszczamy je na końcu kolejki Strona 48 z 68

59 transformacji do notacji RPN Wejście: ( 2 ) ( 1 ) 7 Wartości priorytetów 2 / liczby Teraz zaczynamy drugi etap realizacji algorytmu, który ma nas doprowadzić do właściwego zapisu wyrażenia w notacji RPN Strona 49 z 68

60 transformacji do notacji RPN Wejście: ( 2 ) ( 1 ) 7 Wartości priorytetów 2 / liczby W tym celu szukamy na liście pierwszego operatora (od poczatku listy), który ma największy priorytet. Jest nim operator z priorytetem Strona 0 z 68

61 transformacji do notacji RPN Wejście: ( 2 ) ( 1 ) 7 Wartości priorytetów 2 / liczby Następnie sprawdzamy, czy następny element listy ma priorytet większy. Jeśli tak jest, to Strona 1 z 68

62 transformacji do notacji RPN Wejście: ( 2 ) ( 1 ) 7 Wartości priorytetów 2 / liczby zamieniamy je miejscami Strona 2 z 68

63 transformacji do notacji RPN Wejście: ( 2 ) ( 1 ) 7 Wartości priorytetów 2 / liczby Proces przestawiania kontynuujemy, aż do momentu gdy sasiedni element ma priorytet mniejszy lub równy, tak jak to ma miejsce w naszym przypadku Strona z 68

64 transformacji do notacji RPN Wejście: ( 2 ) ( 1 ) 7 Wartości priorytetów 2 / liczby Teraz operatorowi dla którego znaleźliśmy już właściwe miejsce nadajemy nowa wartość priorytetu, która jest maksymalna wartościa na liście. W naszym przypadku jest to wartość Strona 4 z 68

65 transformacji do notacji RPN Wejście: ( 2 ) ( 1 ) 7 Wartości priorytetów 2 / liczby Ponownie szukamy na liście pierwszego operatora o największym priorytecie, lecz o wartości mniejszej niż wartość maksymalna (w naszym przypadku ). Jest nim kolejny operator dodawania Strona z 68

66 transformacji do notacji RPN Wejście: ( 2 ) ( 1 ) 7 Wartości priorytetów 2 / liczby Ponownie zaczynamy przesuwać ten element na koniec listy, aż do momentu gdy jego kolejny sasiad ma priorytet mniejszy lub równy. Gdy taki przypadek już zachodzi, zmieniamy Strona 6 z 68

67 transformacji do notacji RPN Wejście: ( 2 ) ( 1 ) 7 Wartości priorytetów 2 / liczby jego priorytet na wartość maksymalna. 0 7 Strona 7 z 68

68 transformacji do notacji RPN Wejście: ( 2 ) ( 1 ) 7 Wartości priorytetów 2 / liczby Ponownie szukamy pierwszego operatora na liście o największym priorytecie i zarazem mniejszym od wartości maksymalnej. Tym razem jest nim operator mnożenia Strona 8 z 68

69 transformacji do notacji RPN Wejście: ( 2 ) ( 1 ) 7 Wartości priorytetów 2 / liczby Zgodnie ta sama procedura jak wcześniej przestawiamy go, aż do momentu, gdy jego sasiad ma priorytet mniejszy lub równy Strona 9 z 68

70 transformacji do notacji RPN Wejście: ( 2 ) ( 1 ) 7 Wartości priorytetów 2 / liczby Nadajemy wówczas rozważanemu operatorowi priorytet maksymalny Strona 60 z 68

71 transformacji do notacji RPN Wejście: ( 2 ) ( 1 ) 7 Wartości priorytetów 2 / liczby Ponownie szukamy pierwszego operatora, który ma największy priorytet spośród tych, których priorytety nie maja wartości maksymalnej. Tym razem jest to operator odejmowania Strona 61 z 68

72 transformacji do notacji RPN Wejście: ( 2 ) ( 1 ) 7 Wartości priorytetów 2 / liczby Zgodnie z już przedstawiona procedura dokonujemy zamiany i nadajemy mu priorytet maksymalny. 1 7 Strona 62 z 68

73 transformacji do notacji RPN Wejście: ( 2 ) ( 1 ) 7 Wartości priorytetów 2 / liczby W ten sposób wszystkie operatory maja już priorytety maksymalne, co jest warunkiem stopu algorytmu. Teraz, aby otrzymać wyrażenie w notacji RPN wystarczy wypisać kolejne elementy listy poczynajac od jej poczatku. 1 7 Strona 6 z 68

74 algorytmu transformacji notacji Operatory dwuargumentowe możemy podzielić na trzy grupy, a mianowicie: Strona 64 z 68

75 algorytmu transformacji notacji Operatory dwuargumentowe możemy podzielić na trzy grupy, a mianowicie: operatory lewostronnie łaczne, np. operator odejmowania (również dzielenia), tzn.: a b c = (a b) c Strona 64 z 68

76 algorytmu transformacji notacji Operatory dwuargumentowe możemy podzielić na trzy grupy, a mianowicie: operatory lewostronnie łaczne, np. operator odejmowania (również dzielenia), tzn.: a b c = (a b) c operatory prawostronnie łaczne, np. operator potęgowania, który w zwyczajowej notacji nie jest reprezentowany przez żaden znak, a jedynie przez formę zapisu. Tak więc: a bc = a (bc ) Strona 64 z 68

77 algorytmu transformacji notacji Operatory dwuargumentowe możemy podzielić na trzy grupy, a mianowicie: operatory lewostronnie łaczne, np. operator odejmowania (również dzielenia), tzn.: a b c = (a b) c operatory prawostronnie łaczne, np. operator potęgowania, który w zwyczajowej notacji nie jest reprezentowany przez żaden znak, a jedynie przez formę zapisu. Tak więc: a bc = a (bc ) operatory obustronnie łaczne, np. operatory dodawania i mnożenia, tzn.: a b c = (a b) c = a (b c) Strona 64 z 68

78 algorytmu transformacji notacji Aby uwzględnić te wszystkie przypadki trzeba rozszerzyć warunki realizacji dwóch operacji, a mianowicie: Strona 6 z 68

79 algorytmu transformacji notacji Aby uwzględnić te wszystkie przypadki trzeba rozszerzyć warunki realizacji dwóch operacji, a mianowicie: warunek szukania kolejnego operatora, warunek przestawiania elementu w kolejce. Strona 6 z 68

80 algorytmu transformacji notacji W przypadku szukania kolejnego operatora w kolejce wczytanych elementów, dla operatora prawołacznego należy szukać ostatniego elementu (a nie pierwszego), który ma największy priorytet i jednocześnie mniejszy od wartości maksymalnej. Różnica w sformułowaniu w stosunku do warunku, który był wykorzystywany w omawianym przykładzie zaczyna być istotna w momencie, gdy pojawia się operatory o jednakowej wartości priorytetu. Strona 66 z 68

81 algorytmu transformacji notacji Warunek przestawienia elementów w kolejce powinien mieć w uogólnionej wersji postać: Strona 67 z 68

82 algorytmu transformacji notacji Warunek przestawienia elementów w kolejce powinien mieć w uogólnionej wersji postać: Jeżeli rozważany operator jest operatorem lewostronnie lub obustronnie łacznym, to elementy zamieniamy miejscami jeśli jego sasiad ma priorytet większy. Jeżeli natomiast operator jest prawostronnie łacznym, to elementy zamieniamy miejscami jeśli jego sasiad ma priorytet większy lub równy. Strona 67 z 68

83 Wszelkie uwagi i spostrzeżenia do niniejszej prezentacji sa mile widziane. Proszę je kierować na adres kreczmer@diablo.ict.pwr.wroc.pl Strona 68 z 68

Zakład Podstaw Cybernetyki i Robotyki Instytut Informatyki, Automatyki i Robotyki Politechnika Wrocławska

Zakład Podstaw Cybernetyki i Robotyki Instytut Informatyki, Automatyki i Robotyki Politechnika Wrocławska 1 Przykład wyliczania wyrażeń arytmetycznych Bogdan Kreczmer bogdan.kreczmer@pwr.wroc.pl Zakład Podstaw Cybernetyki i Robotyki Instytut Informatyki, Automatyki i Robotyki Politechnika Wrocławska Copyright

Bardziej szczegółowo

Dynamiczny przydział pamięci w języku C. Dynamiczne struktury danych. dr inż. Jarosław Forenc. Metoda 1 (wektor N M-elementowy)

Dynamiczny przydział pamięci w języku C. Dynamiczne struktury danych. dr inż. Jarosław Forenc. Metoda 1 (wektor N M-elementowy) Rok akademicki 2012/2013, Wykład nr 2 2/25 Plan wykładu nr 2 Informatyka 2 Politechnika Białostocka - Wydział Elektryczny Elektrotechnika, semestr III, studia niestacjonarne I stopnia Rok akademicki 2012/2013

Bardziej szczegółowo

Odwrotna Notacja Polska

Odwrotna Notacja Polska Odwrotna Notacja Polska Odwrotna Notacja Polska w skrócie ONP) jest sposobem zapisu wyrażeń arytmetycznych. Znak wykonywanej operacji umieszczany jest po operandach, argumentach tzw. zapis postfiksowy).

Bardziej szczegółowo

; B = Wykonaj poniższe obliczenia: Mnożenia, transpozycje etc wykonuję programem i przepisuję wyniki. Mam nadzieję, że umiesz mnożyć macierze...

; B = Wykonaj poniższe obliczenia: Mnożenia, transpozycje etc wykonuję programem i przepisuję wyniki. Mam nadzieję, że umiesz mnożyć macierze... Tekst na niebiesko jest komentarzem lub treścią zadania. Zadanie. Dane są macierze: A D 0 ; E 0 0 0 ; B 0 5 ; C Wykonaj poniższe obliczenia: 0 4 5 Mnożenia, transpozycje etc wykonuję programem i przepisuję

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

3. Macierze i Układy Równań Liniowych

3. Macierze i Układy Równań Liniowych 3. Macierze i Układy Równań Liniowych Rozważamy równanie macierzowe z końcówki ostatniego wykładu ( ) 3 1 X = 4 1 ( ) 2 5 Podstawiając X = ( ) x y i wymnażając, otrzymujemy układ 2 równań liniowych 3x

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

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

Podstawą w systemie dwójkowym jest liczba 2 a w systemie dziesiętnym liczba 10.

Podstawą w systemie dwójkowym jest liczba 2 a w systemie dziesiętnym liczba 10. ZAMIANA LICZB MIĘDZY SYSTEMAMI DWÓJKOWYM I DZIESIĘTNYM Aby zamienić liczbę z systemu dwójkowego (binarnego) na dziesiętny (decymalny) należy najpierw przypomnieć sobie jak są tworzone liczby w ww systemach

Bardziej szczegółowo

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

Rozwiązywanie układów równań liniowych Rozwiązywanie układów równań liniowych Marcin Orchel 1 Wstęp Jeśli znamy macierz odwrotną A 1, to możęmy znaleźć rozwiązanie układu Ax = b w wyniku mnożenia x = A 1 b (1) 1.1 Metoda eliminacji Gaussa Pierwszy

Bardziej szczegółowo

MNOŻENIE W SYSTEMACH UZUPEŁNIENIOWYCH PEŁNYCH (algorytm uniwersalny)

MNOŻENIE W SYSTEMACH UZUPEŁNIENIOWYCH PEŁNYCH (algorytm uniwersalny) MNOŻENIE W SYSTEMACH UZUPEŁNIENIOWYCH PEŁNYCH (algorytm uniwersalny) SPOSÓB 1 (z rozszerzeniem mnożnika): Algorytm jak zwykle jest prosty: lewostronne rozszerzenie mnożnej o kilka cyfr (na pewno wystarczy

Bardziej szczegółowo

Znaki w tym systemie odpowiadają następującym liczbom: I=1, V=5, X=10, L=50, C=100, D=500, M=1000

Znaki w tym systemie odpowiadają następującym liczbom: I=1, V=5, X=10, L=50, C=100, D=500, M=1000 SYSTEMY LICZBOWE I. PODZIAŁ SYSTEMÓW LICZBOWYCH: systemy liczbowe: pozycyjne (wartośd cyfry zależy od tego jaką pozycję zajmuje ona w liczbie): niepozycyjne (addytywne) (wartośd liczby jest sumą wartości

Bardziej szczegółowo

Operatory w C++ Operatory arytmetyczne. Operatory relacyjne (porównania) Operatory logiczne. + dodawanie - odejmowanie * mnożenie / dzielenie % modulo

Operatory w C++ Operatory arytmetyczne. Operatory relacyjne (porównania) Operatory logiczne. + dodawanie - odejmowanie * mnożenie / dzielenie % modulo Operatory w C++ Operatory arytmetyczne + dodawanie - odejmowanie * mnożenie / dzielenie % modulo Operatory relacyjne (porównania) < mniejszy niż większy niż >= większy lub równy

Bardziej szczegółowo

Projekt współfinansowany przez Unię Europejską w ramach Europejskiego Funduszu Społecznego

Projekt współfinansowany przez Unię Europejską w ramach Europejskiego Funduszu Społecznego Projekt współfinansowany przez Unię Europejską w ramach Europejskiego Funduszu Społecznego Publikacja jest dystrybuowana bezpłatnie Program Operacyjny Kapitał Ludzki Priorytet 9 Działanie 9.1 Poddziałanie

Bardziej szczegółowo

Algorytmy i. Wykład 3: Stosy, kolejki i listy. Dr inż. Paweł Kasprowski. FIFO First In First Out (kolejka) LIFO Last In First Out (stos)

Algorytmy i. Wykład 3: Stosy, kolejki i listy. Dr inż. Paweł Kasprowski. FIFO First In First Out (kolejka) LIFO Last In First Out (stos) Algorytmy i struktury danych Wykład 3: Stosy, kolejki i listy Dr inż. Paweł Kasprowski pawel@kasprowski.pl Kolejki FIFO First In First Out (kolejka) LIFO Last In First Out (stos) Stos (stack) Dostęp jedynie

Bardziej szczegółowo

Zadanie 2: Arytmetyka symboli

Zadanie 2: Arytmetyka symboli 1 Cel ćwiczenia Zadanie 2: Arytmetyka symboli Wykształcenie umiejętności abstrahowania operacji arytmetycznych. Zapoznanie się i przećwiczenie mechanizmu tworzenia przeciążeń funkcji operatorowych. Utrwalenie

Bardziej szczegółowo

FUNKCJA KWADRATOWA. Zad 1 Przedstaw funkcję kwadratową w postaci ogólnej. Postać ogólna funkcji kwadratowej to: y = ax + bx + c;(

FUNKCJA KWADRATOWA. Zad 1 Przedstaw funkcję kwadratową w postaci ogólnej. Postać ogólna funkcji kwadratowej to: y = ax + bx + c;( Zad Przedstaw funkcję kwadratową w postaci ogólnej Przykład y = ( x ) + 5 (postać kanoniczna) FUNKCJA KWADRATOWA Postać ogólna funkcji kwadratowej to: y = ax + bx + c;( a 0) Aby ją uzyskać pozbywamy się

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

W. Guzicki Zadanie 41 z Informatora Maturalnego poziom podstawowy 1

W. Guzicki Zadanie 41 z Informatora Maturalnego poziom podstawowy 1 W. Guzicki Zadanie 41 z Informatora Maturalnego poziom podstawowy 1 W tym tekście zobaczymy rozwiązanie zadania 41 z Informatora o egzaminie maturalnym z matematyki od roku szkolnego 014/015 oraz rozwiązania

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

2. DZIAŁANIA NA WIELOMIANACH

2. DZIAŁANIA NA WIELOMIANACH WIELOMIANY 1. Stopieo wielomianu. Działania na wielomianach 2. Równość wielomianów. 3. Pierwiastek wielomianu. Rozkład wielomianu na czynniki 4. Równania wielomianowe. 1.STOPIEŃ WIELOMIANU Wielomian to

Bardziej szczegółowo

ARCHITEKTURA KOMPUTERÓW Systemy liczbowe

ARCHITEKTURA KOMPUTERÓW Systemy liczbowe ARCHITEKTURA KOMPUTERÓW Systemy liczbowe 20.10.2010 System Zakres znaków Przykład zapisu Dziesiętny ( DEC ) 0,1,2,3, 4,5,6,7,8,9 255 DEC Dwójkowy / Binarny ( BIN ) 0,1 11111 Ósemkowy ( OCT ) 0,1,2,3, 4,5,6,7

Bardziej szczegółowo

Warunki logiczne instrukcja if

Warunki logiczne instrukcja if Warunki logiczne instrukcja if Prowadzący: Łukasz Dunaj, strona kółka: atinea.pl/kolko 1. Wejdź na stronę kółka, uruchom edytor i wpisz: use console; def test::main() { var y; y = 1; while (y

Bardziej szczegółowo

1 Układy równań liniowych

1 Układy równań liniowych II Metoda Gaussa-Jordana Na wykładzie zajmujemy się układami równań liniowych, pojawi się też po raz pierwszy macierz Formalną (i porządną) teorią macierzy zajmiemy się na kolejnych wykładach Na razie

Bardziej szczegółowo

Laboratorium z przedmiotu Programowanie obiektowe - zestaw 04

Laboratorium z przedmiotu Programowanie obiektowe - zestaw 04 Laboratorium z przedmiotu Programowanie obiektowe - zestaw 04 Cel zajęć. Celem zajęć jest zapoznanie się ze sposobem działania popularnych kolekcji. Wprowadzenie teoretyczne. Rozważana w ramach niniejszych

Bardziej szczegółowo

Wyrażenia arytmetyczne

Wyrażenia arytmetyczne Wyrażenia arytmetyczne Do budowania wyrażeń w języku C używa się operatorów jednoargumentowych oraz dwuargumentowych. Podstawowy operator jednoargumentowy to operator zmiany znaku (-), który jest prawostronnie

Bardziej szczegółowo

Programowanie obiektowe

Programowanie obiektowe Laboratorium z przedmiotu Programowanie obiektowe - zestaw 04 Cel zajęć. Celem zajęć jest zapoznanie się ze sposobem działania popularnych. Wprowadzenie teoretyczne. Rozważana w ramach niniejszych zajęć

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

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

Architektura komputerów wer. 7

Architektura komputerów wer. 7 Architektura komputerów wer. 7 Wojciech Myszka 2013-10-29 19:47:07 +0100 Karty perforowane Kalkulator IBM 601, 1931 IBM 601 kalkulator Maszyna czytała dwie liczby z karty, mnożyła je przez siebie i wynik

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

Systemy operacyjne. Laboratorium 9. Perl wyrażenia regularne. Jarosław Rudy Politechnika Wrocławska 28 lutego 2017

Systemy operacyjne. Laboratorium 9. Perl wyrażenia regularne. Jarosław Rudy Politechnika Wrocławska 28 lutego 2017 Systemy operacyjne Laboratorium 9 Perl wyrażenia regularne Jarosław Rudy Politechnika Wrocławska 28 lutego 2017 Temat obejmuje wykorzystanie wyrażeń regularnych w perlu. Wyrażenia same w sobie są w zasadzie

Bardziej szczegółowo

Kurs ZDAJ MATURĘ Z MATEMATYKI MODUŁ 2 Teoria liczby rzeczywiste cz.2

Kurs ZDAJ MATURĘ Z MATEMATYKI MODUŁ 2 Teoria liczby rzeczywiste cz.2 1 POTĘGI Definicja potęgi ł ę ę > a 0 = 1 (każda liczba różna od zera, podniesiona do potęgi 0 daje zawsze 1) a 1 = a (każda liczba podniesiona do potęgi 1 dają tą samą liczbę) 1. Jeśli wykładnik jest

Bardziej szczegółowo

1. Algorytmy przeszukiwania. Przeszukiwanie wszerz i w głąb.

1. Algorytmy przeszukiwania. Przeszukiwanie wszerz i w głąb. 1. Algorytmy przeszukiwania. Przeszukiwanie wszerz i w głąb. Algorytmy przeszukiwania w głąb i wszerz są najczęściej stosowanymi algorytmami przeszukiwania. Wykorzystuje się je do zbadania istnienia połączenie

Bardziej szczegółowo

Systemy liczbowe używane w technice komputerowej

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.

Bardziej szczegółowo

Obliczenia na stosie. Wykład 9. Obliczenia na stosie. J. Cichoń, P. Kobylański Wstęp do Informatyki i Programowania 266 / 303

Obliczenia na stosie. Wykład 9. Obliczenia na stosie. J. Cichoń, P. Kobylański Wstęp do Informatyki i Programowania 266 / 303 Wykład 9 J. Cichoń, P. Kobylański Wstęp do Informatyki i Programowania 266 / 303 stos i operacje na stosie odwrotna notacja polska języki oparte na ONP przykłady programów J. Cichoń, P. Kobylański Wstęp

Bardziej szczegółowo

KRYTERIA OCEN Z MATEMATYKI DLA KLASY VII

KRYTERIA OCEN Z MATEMATYKI DLA KLASY VII KRYTERIA OCEN Z MATEMATYKI DLA KLASY VII Na ocenę dopuszczającą uczeń powinien : Na ocenę dostateczną uczeń powinien: Na ocenę dobrą uczeń powinie: Na ocenę bardzo dobrą uczeń powinien: Na ocenę celującą

Bardziej szczegółowo

W. Guzicki Próbna matura, grudzień 2014 r. poziom rozszerzony 1

W. Guzicki Próbna matura, grudzień 2014 r. poziom rozszerzony 1 W. Guzicki Próbna matura, grudzień 01 r. poziom rozszerzony 1 Próbna matura rozszerzona (jesień 01 r.) Zadanie 18 kilka innych rozwiązań Wojciech Guzicki Zadanie 18. Okno na poddaszu ma mieć kształt trapezu

Bardziej szczegółowo

WYRAŻENIA ALGEBRAICZNE

WYRAŻENIA ALGEBRAICZNE WYRAŻENIA ALGEBRAICZNE Wyrażeniem algebraicznym nazywamy wyrażenie zbudowane z liczb, liter, nawiasów oraz znaków działań, na przykład: Symbole literowe występujące w wyrażeniu algebraicznym nazywamy zmiennymi.

Bardziej szczegółowo

Wstęp do programowania

Wstęp do programowania Wstęp do programowania Stosy, kolejki, drzewa Paweł Daniluk Wydział Fizyki Jesień 2013 P. Daniluk(Wydział Fizyki) WP w. VII Jesień 2013 1 / 25 Listy Lista jest uporządkowanym zbiorem elementów. W Pythonie

Bardziej szczegółowo

1. A 2. A 3. B 4. B 5. C 6. B 7. B 8. D 9. A 10. D 11. C 12. D 13. B 14. D 15. C 16. C 17. C 18. B 19. D 20. C 21. C 22. D 23. D 24. A 25.

1. A 2. A 3. B 4. B 5. C 6. B 7. B 8. D 9. A 10. D 11. C 12. D 13. B 14. D 15. C 16. C 17. C 18. B 19. D 20. C 21. C 22. D 23. D 24. A 25. 1. A 2. A 3. B 4. B 5. C 6. B 7. B 8. D 9. A 10. D 11. C 12. D 13. B 14. D 15. C 16. C 17. C 18. B 19. D 20. C 21. C 22. D 23. D 24. A 25. A Najłatwiejszym sposobem jest rozpatrzenie wszystkich odpowiedzi

Bardziej szczegółowo

Metoda eliminacji Gaussa. Autorzy: Michał Góra

Metoda eliminacji Gaussa. Autorzy: Michał Góra Metoda eliminacji Gaussa Autorzy: Michał Góra 9 Metoda eliminacji Gaussa Autor: Michał Góra Przedstawiony poniżej sposób rozwiązywania układów równań liniowych jest pewnym uproszczeniem algorytmu zwanego

Bardziej szczegółowo

Odczyt danych z klawiatury Operatory w Javie

Odczyt danych z klawiatury Operatory w Javie Odczyt danych z klawiatury Operatory w Javie Operatory W Javie występują następujące typy operatorów: Arytmetyczne. Inkrementacji/Dekrementacji Przypisania. Porównania. Bitowe. Logiczne. Pozostałe. Operacje

Bardziej szczegółowo

Ćwiczenie nr 1: Systemy liczbowe

Ćwiczenie nr 1: Systemy liczbowe Ćwiczenie nr 1: Systemy liczbowe Barbara Łukawska, Adam Krechowicz, Tomasz Michno Podstawowym systemem liczbowym uŝywanym na co dzień jest system dziesiętny. Podstawą tego systemu jest 10 cyfr 0, 1, 2,

Bardziej szczegółowo

PRZELICZANIE JEDNOSTEK MIAR

PRZELICZANIE JEDNOSTEK MIAR PRZELICZANIE JEDNOSTEK MIAR Kompleks zajęć dotyczący przeliczania jednostek miar składa się z czterech odrębnych zajęć, które są jednak nierozerwalnie połączone ze sobą tematycznie w takiej sekwencji,

Bardziej szczegółowo

Wykład 3. Złożoność i realizowalność algorytmów Elementarne struktury danych: stosy, kolejki, listy

Wykład 3. Złożoność i realizowalność algorytmów Elementarne struktury danych: stosy, kolejki, listy Wykład 3 Złożoność i realizowalność algorytmów Elementarne struktury danych: stosy, kolejki, listy Dynamiczne struktury danych Lista jest to liniowo uporządkowany zbiór elementów, z których dowolny element

Bardziej szczegółowo

WYKŁAD 9. Algorytmy sortowania elementów zbioru (tablic) Programy: c4_1.c... c4_3.c. Tomasz Zieliński

WYKŁAD 9. Algorytmy sortowania elementów zbioru (tablic) Programy: c4_1.c... c4_3.c. Tomasz Zieliński WYKŁAD 9 Algorytmy sortowania elementów zbioru (tablic) Programy: c4_1.c... c4_3.c Tomasz Zieliński /* Przyklad 4.1 - SORTOWANIE TABLIC - metoda najprostsza */ #include #define ROZMIAR 11 void

Bardziej szczegółowo

UTK Można stwierdzić, że wszystkie działania i operacje zachodzące w systemie są sterowane bądź inicjowane przez mikroprocesor.

UTK Można stwierdzić, że wszystkie działania i operacje zachodzące w systemie są sterowane bądź inicjowane przez mikroprocesor. Zadaniem centralnej jednostki przetwarzającej CPU (ang. Central Processing Unit), oprócz przetwarzania informacji jest sterowanie pracą pozostałych układów systemu. W skład CPU wchodzą mikroprocesor oraz

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

Sortowanie. Bartman Jacek Algorytmy i struktury

Sortowanie. Bartman Jacek Algorytmy i struktury Sortowanie Bartman Jacek jbartman@univ.rzeszow.pl Algorytmy i struktury danych Sortowanie przez proste wstawianie przykład 41 56 17 39 88 24 03 72 41 56 17 39 88 24 03 72 17 41 56 39 88 24 03 72 17 39

Bardziej szczegółowo

Jeśli nie potrafisz wytłumaczyć czegoś w prosty sposób, to znaczy, że tak naprawdę tego nie rozumiesz

Jeśli nie potrafisz wytłumaczyć czegoś w prosty sposób, to znaczy, że tak naprawdę tego nie rozumiesz II Liceum Ogólnokształcące im. Mikołaja Kopernika w Lesznie z Oddziałami Dwujęzycznymi i Międzynarodowymi ul. Prusa 33, 64-100 Leszno Jeśli nie potrafisz wytłumaczyć czegoś w prosty sposób, to znaczy,

Bardziej szczegółowo

Architektura komputerów wer. 3

Architektura komputerów wer. 3 Architektura komputerów wer. 3 Wojciech Myszka, Maciej Panek listopad 2014 r. Karty perforowane Kalkulator IBM 601, 1931 IBM 601 kalkulator Maszyna czytała dwie liczby z karty, mnożyła je przez siebie

Bardziej szczegółowo

Podstawy informatyki 2. Podstawy informatyki 2. Wykład nr 2 ( ) Plan wykładu nr 2. Politechnika Białostocka. - Wydział Elektryczny

Podstawy informatyki 2. Podstawy informatyki 2. Wykład nr 2 ( ) Plan wykładu nr 2. Politechnika Białostocka. - Wydział Elektryczny Wykład nr 2 2/6 Politechnika Białostocka - Wydział Elektryczny Elektrotechnika, semestr II, studia stacjonarne Rok akademicki 2006/2007 Plan wykładu nr 2 Argumenty funkcji main Dynamiczne struktury danych

Bardziej szczegółowo

LISTA 1 ZADANIE 1 a) 41 x =5 podnosimy obustronnie do kwadratu i otrzymujemy: 41 x =5 x 5 x przechodzimy na system dziesiętny: 4x 1 1=25 4x =24

LISTA 1 ZADANIE 1 a) 41 x =5 podnosimy obustronnie do kwadratu i otrzymujemy: 41 x =5 x 5 x przechodzimy na system dziesiętny: 4x 1 1=25 4x =24 LISTA 1 ZADANIE 1 a) 41 x =5 podnosimy obustronnie do kwadratu i otrzymujemy: 41 x =5 x 5 x przechodzimy na system dziesiętny: 4x 1 1=25 4x =24 x=6 ODP: Podstawą (bazą), w której spełniona jest ta zależność

Bardziej szczegółowo

Treść wykładu. Układy równań i ich macierze. Rząd macierzy. Twierdzenie Kroneckera-Capellego.

Treść wykładu. Układy równań i ich macierze. Rząd macierzy. Twierdzenie Kroneckera-Capellego. . Metoda eliminacji. Treść wykładu i ich macierze... . Metoda eliminacji. Ogólna postać układu Układ m równań liniowych o n niewiadomych x 1, x 2,..., x n : a 11 x 1 + a 12 x 2 + + a 1n x n = b 1 a 21

Bardziej szczegółowo

Temat (rozumiany jako lekcja) Propozycje środków dydaktycznych. Liczba godzin. Uwagi

Temat (rozumiany jako lekcja) Propozycje środków dydaktycznych. Liczba godzin. Uwagi Roczny plan dydaktyczny z matematyki dla pierwszej klasy szkoły branżowej I stopnia dla uczniów będących absolwentami ośmioletniej szkoły podstawowej, uwzględniający kształcone umiejętności i treści podstawy

Bardziej szczegółowo

Wyrażenie nawiasowe. Wyrażenie puste jest poprawnym wyrażeniem nawiasowym.

Wyrażenie nawiasowe. Wyrażenie puste jest poprawnym wyrażeniem nawiasowym. Wyrażenie nawiasowe Wyrażeniem nawiasowym nazywamy dowolny skończony ciąg nawiasów. Każdemu nawiasowi otwierającemu odpowiada dokładnie jeden nawias zamykający. Poprawne wyrażenie nawiasowe definiujemy

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

Metoda eliminacji Gaussa

Metoda eliminacji Gaussa Metoda eliminacji Gaussa Rysunek 3. Rysunek 4. Rozpoczynamy od pierwszego wiersza macierzy opisującej nasz układ równań (patrz Rys.3). Zakładając, że element a 11 jest niezerowy (jeśli jest, to niezbędny

Bardziej szczegółowo

Wykład 5 Wybrane zagadnienia programowania w C++ (c.d.)

Wykład 5 Wybrane zagadnienia programowania w C++ (c.d.) Wykład 5 Wybrane zagadnienia programowania w C++ (c.d.) Kontenery - - wektor vector - - lista list - - kolejka queue - - stos stack Kontener asocjacyjny map 2016-01-08 Bazy danych-1 W5 1 Kontenery W programowaniu

Bardziej szczegółowo

LABORATORIUM 3 ALGORYTMY OBLICZENIOWE W ELEKTRONICE I TELEKOMUNIKACJI. Wprowadzenie do środowiska Matlab

LABORATORIUM 3 ALGORYTMY OBLICZENIOWE W ELEKTRONICE I TELEKOMUNIKACJI. Wprowadzenie do środowiska Matlab LABORATORIUM 3 ALGORYTMY OBLICZENIOWE W ELEKTRONICE I TELEKOMUNIKACJI Wprowadzenie do środowiska Matlab 1. Podstawowe informacje Przedstawione poniżej informacje maja wprowadzić i zapoznać ze środowiskiem

Bardziej szczegółowo

Arytmetyka liczb binarnych

Arytmetyka liczb binarnych Wartość dwójkowej liczby stałoprzecinkowej Wartość dziesiętna stałoprzecinkowej liczby binarnej Arytmetyka liczb binarnych b n-1...b 1 b 0,b -1 b -2...b -m = b n-1 2 n-1 +... + b 1 2 1 + b 0 2 0 + b -1

Bardziej szczegółowo

Wstęp do metod numerycznych Eliminacja Gaussa Równania macierzowe. P. F. Góra

Wstęp do metod numerycznych Eliminacja Gaussa Równania macierzowe. P. F. Góra Wstęp do metod numerycznych Eliminacja Gaussa Równania macierzowe P. F. Góra http://th-www.if.uj.edu.pl/zfs/gora/ 2015 Co można zrobić z układem równań... tak, aby jego rozwiazania się nie zmieniły? Rozważam

Bardziej szczegółowo

1259 (10) = 1 * * * * 100 = 1 * * * *1

1259 (10) = 1 * * * * 100 = 1 * * * *1 Zamiana liczba zapisanych w dowolnym systemie na system dziesiętny: W systemie pozycyjnym o podstawie 10 wartości kolejnych cyfr odpowiadają kolejnym potęgom liczby 10 licząc od strony prawej i numerując

Bardziej szczegółowo

E S - uniwersum struktury stosu

E S - uniwersum struktury stosu Temat: Struktura stosu i kolejki Struktura danych to system relacyjny r I r i i I U,, gdzie U to uniwersum systemu, a i i - zbiór relacji (operacji na strukturze danych). Uniwersum systemu to zbiór typów

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

PRZEKSZTAŁCANIE WZORÓW!

PRZEKSZTAŁCANIE WZORÓW! PRZEKSZTAŁCANIE WZORÓW! Przekształcanie wzorów sprawia na początku kłopoty. Wielu uczniów omija zadania gdzie trzeba to zrobić, albo uczy się niepotrzebnie na pamięć tych samych wzorów w innych postaciach.

Bardziej szczegółowo

Widoczność zmiennych Czy wartości każdej zmiennej można zmieniać w dowolnym miejscu kodu? Czy można zadeklarować dwie zmienne o takich samych nazwach?

Widoczność zmiennych Czy wartości każdej zmiennej można zmieniać w dowolnym miejscu kodu? Czy można zadeklarować dwie zmienne o takich samych nazwach? Część XVIII C++ Funkcje Widoczność zmiennych Czy wartości każdej zmiennej można zmieniać w dowolnym miejscu kodu? Czy można zadeklarować dwie zmienne o takich samych nazwach? Umiemy już podzielić nasz

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

Laboratorium nr 7 Sortowanie

Laboratorium nr 7 Sortowanie Laboratorium nr 7 Sortowanie 1. Sortowanie bąbelkowe (BbS) 2. Sortowanie przez wstawianie (IS) 3. Sortowanie przez wybieranie (SS) Materiały Wyróżniamy następujące metody sortowania: 1. Przez prostą zamianę

Bardziej szczegółowo

Zad. 1 Zad. 2 Zad. 3 Zad. 4 Zad. 5 SUMA

Zad. 1 Zad. 2 Zad. 3 Zad. 4 Zad. 5 SUMA Zad. 1 Zad. 2 Zad. 3 Zad. 4 Zad. 5 SUMA Zad. 1 (12p.)Niech n 3k > 0. Zbadać jaka jest najmniejsza możliwa liczba krawędzi w grafie, który ma dokładnie n wierzchołków oraz dokładnie k składowych, z których

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

Programowanie w logice

Programowanie w logice Wydział Matematyki UŁ 14 marca 2007 Plan prezentacji 1 Składnia Termy Stałe Zmienne Struktury 2 Własny operator Przeciążanie operatorów 3 Arytmetyczne i logiczne predykaty systemowe 4 Do zapamiętania Termy

Bardziej szczegółowo

6. FUNKCJE. f: X Y, y = f(x).

6. FUNKCJE. f: X Y, y = f(x). 6. FUNKCJE Niech dane będą dwa niepuste zbiory X i Y. Funkcją f odwzorowującą zbiór X w zbiór Y nazywamy przyporządkowanie każdemu elementowi X dokładnie jednego elementu y Y. Zapisujemy to następująco

Bardziej szczegółowo

Pętle i tablice. Spotkanie 3. Pętle: for, while, do while. Tablice. Przykłady

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

Bardziej szczegółowo

Urządzenia Techniki. Klasa I TI. System dwójkowy (binarny) -> BIN. Przykład zamiany liczby dziesiętnej na binarną (DEC -> BIN):

Urządzenia Techniki. Klasa I TI. System dwójkowy (binarny) -> BIN. Przykład zamiany liczby dziesiętnej na binarną (DEC -> BIN): 1. SYSTEMY LICZBOWE UŻYWANE W TECHNICE KOMPUTEROWEJ System liczenia - sposób tworzenia liczb ze znaków cyfrowych oraz zbiór reguł umożliwiających wykonywanie operacji arytmetycznych na liczbach. Do zapisu

Bardziej szczegółowo

Dodawanie liczb binarnych

Dodawanie liczb binarnych 1.2. Działania na liczbach binarnych Liczby binarne umożliwiają wykonywanie operacji arytmetycznych (ang. arithmetic operations on binary numbers), takich jak suma, różnica, iloczyn i iloraz. Arytmetyką

Bardziej szczegółowo

SYSTEMY LICZBOWE. Zapis w systemie dziesiętnym

SYSTEMY LICZBOWE. Zapis w systemie dziesiętnym SYSTEMY LICZBOWE 1. Systemy liczbowe Najpopularniejszym systemem liczenia jest system dziesiętny, który doskonale sprawdza się w życiu codziennym. Jednak jego praktyczna realizacja w elektronice cyfrowej

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

Uwaga: Funkcja zamień(a[j],a[j+s]) zamienia miejscami wartości A[j] oraz A[j+s].

Uwaga: Funkcja zamień(a[j],a[j+s]) zamienia miejscami wartości A[j] oraz A[j+s]. Zadanie 1. Wiązka zadań Od szczegółu do ogółu Rozważmy następujący algorytm: Dane: Algorytm 1: k liczba naturalna, A[1...2 k ] tablica liczb całkowitych. n 1 dla i=1,2,,k wykonuj n 2n s 1 dopóki s

Bardziej szczegółowo

Instrukcje warunkowe i skoku. Spotkanie 2. Wyrażenia i operatory logiczne. Instrukcje warunkowe: if else, switch.

Instrukcje warunkowe i skoku. Spotkanie 2. Wyrażenia i operatory logiczne. Instrukcje warunkowe: if else, switch. Instrukcje warunkowe i skoku. Spotkanie 2 Dr inż. Dariusz JĘDRZEJCZYK Wyrażenia i operatory logiczne Instrukcje warunkowe: if else, switch Przykłady 11/3/2016 AGH, Katedra Informatyki Stosowanej i Modelowania

Bardziej szczegółowo

Matematyka, kl. 5. Konieczne umiejętności

Matematyka, kl. 5. Konieczne umiejętności Matematyka, kl. 5 Liczby i działania Program Matematyka z plusem Ocena Konieczne umiejętności Opanowane algorytmy pisemnego dodawania, odejmowania, mnożenia i dzielenia liczb naturalnych. Prawidłowe wykonywanie

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

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

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

Zamiana ułamków na procenty oraz procentów na ułamki

Zamiana ułamków na procenty oraz procentów na ułamki Zamiana ułamków na procenty oraz procentów na ułamki Przedmowa Opracowanie to jest napisane z myślą o uczniach szkół podstawowych którzy całkowicie nie rozumieją o co chodzi w procentach. Prawie wszystko

Bardziej szczegółowo

SYSTEMY LICZBOWE 275,538 =

SYSTEMY LICZBOWE 275,538 = SYSTEMY LICZBOWE 1. Systemy liczbowe Najpopularniejszym systemem liczenia jest system dziesiętny, który doskonale sprawdza się w życiu codziennym. Jednak jego praktyczna realizacja w elektronice cyfrowej

Bardziej szczegółowo

Kilka prostych programów

Kilka prostych programów Ćwiczenie 1 Kilka prostych programów Ćwiczenie to poświęcone jest tworzeniu krótkich programów, pozwalających na zapoznanie się z takimi elementami programowania jak: definiowanie stałych, deklarowanie

Bardziej szczegółowo

Wymagania edukacyjne z matematyki dla klasy VII

Wymagania edukacyjne z matematyki dla klasy VII Wymagania edukacyjne z matematyki dla klasy VII Szkoły Podstawowej nr 100 w Krakowie Na podstawie programu Matematyka z plusem Na ocenę dopuszczającą Uczeń: rozumie rozszerzenie osi liczbowej na liczby

Bardziej szczegółowo

Wykład 2. Informatyka Stosowana. 9 października Informatyka Stosowana Wykład 2 9 października / 42

Wykład 2. Informatyka Stosowana. 9 października Informatyka Stosowana Wykład 2 9 października / 42 Wykład 2 Informatyka Stosowana 9 października 2017 Informatyka Stosowana Wykład 2 9 października 2017 1 / 42 Systemy pozycyjne Informatyka Stosowana Wykład 2 9 października 2017 2 / 42 Definicja : system

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

Wykład 2. Informatyka Stosowana. 10 października Informatyka Stosowana Wykład 2 10 października / 42

Wykład 2. Informatyka Stosowana. 10 października Informatyka Stosowana Wykład 2 10 października / 42 Wykład 2 Informatyka Stosowana 10 października 2016 Informatyka Stosowana Wykład 2 10 października 2016 1 / 42 Systemy pozycyjne Informatyka Stosowana Wykład 2 10 października 2016 2 / 42 Definicja : system

Bardziej szczegółowo

Wykład 2. Informatyka Stosowana. 8 października 2018, M. A-B. Informatyka Stosowana Wykład 2 8 października 2018, M. A-B 1 / 41

Wykład 2. Informatyka Stosowana. 8 października 2018, M. A-B. Informatyka Stosowana Wykład 2 8 października 2018, M. A-B 1 / 41 Wykład 2 Informatyka Stosowana 8 października 2018, M. A-B Informatyka Stosowana Wykład 2 8 października 2018, M. A-B 1 / 41 Elementy logiki matematycznej Informatyka Stosowana Wykład 2 8 października

Bardziej szczegółowo

EGZAMIN MATURALNY Z INFORMATYKI

EGZAMIN MATURALNY Z INFORMATYKI Arkusz zawiera informacje prawnie chronione do momentu rozpoczęcia egzaminu. MIN 2016 KOD UZUPEŁNIA ZDAJĄCY PESEL miejsce na naklejkę EGZAMIN MATURALNY Z INFORMATYKI POZIOM ROZSZERZONY CZĘŚĆ I DATA: 17

Bardziej szczegółowo

IX. Wskaźniki.(3 godz.)

IX. Wskaźniki.(3 godz.) Opracowała: dr inż. Anna Dubowicka Uczelniane Centrum Komputerowe PK IX. Wskaźniki.(3 godz.) Wskaźnik jest zmienną, która zawiera adres innej. 1. Definiowanie wskaźników. typ * nazwa ; gdzie: znak * informuje

Bardziej szczegółowo

1 Podstawy c++ w pigułce.

1 Podstawy c++ w pigułce. 1 Podstawy c++ w pigułce. 1.1 Struktura dokumentu. Kod programu c++ jest zwykłym tekstem napisanym w dowolnym edytorze. Plikowi takiemu nadaje się zwykle rozszerzenie.cpp i kompiluje za pomocą kompilatora,

Bardziej szczegółowo

Programowanie w języku C++ Agnieszka Nowak Brzezińska Laboratorium nr 2

Programowanie w języku C++ Agnieszka Nowak Brzezińska Laboratorium nr 2 Programowanie w języku C++ Agnieszka Nowak Brzezińska Laboratorium nr 2 1 program Kontynuujemy program który wczytuje dystans i ilości paliwa zużytego na trasie, ale z kontrolą danych. A więc jeśli coś

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

Algorytmy przeszukiwania wzorca

Algorytmy przeszukiwania wzorca Algorytmy i struktury danych Instytut Sterowania i Systemów Informatycznych Wydział Elektrotechniki, Informatyki i Telekomunikacji Uniwersytet Zielonogórski Algorytmy przeszukiwania wzorca 1 Wstęp Algorytmy

Bardziej szczegółowo

Dydaktyka matematyki (II etap edukacyjny) II rok matematyki Semestr letni 2018/2019 Ćwiczenia nr 7

Dydaktyka matematyki (II etap edukacyjny) II rok matematyki Semestr letni 2018/2019 Ćwiczenia nr 7 Dydaktyka matematyki (II etap edukacyjny) II rok matematyki Semestr letni 2018/2019 Ćwiczenia nr 7 Zadanie domowe 0 = 4 4 + 4 4, 2 = 4: 4 + 4: 4, 3 = 4 4: 4 4, 4 = 4 4 : 4 + 4, 6 = 4 + (4 + 4): 4, 7 =

Bardziej szczegółowo