ALGORYTMY MATEMATYCZNE Ćwiczenie 1 Na podstawie schematu blokowego pewnego algorytmu (rys 1), napisz listę kroków tego algorytmu:

Podobne dokumenty
Algorytm Euklidesa. Największy wspólny dzielnik dla danych dwóch liczb całkowitych to największa liczba naturalna dzieląca każdą z nich bez reszty.

Algorytmy i struktury danych. Wykład 4

Zadania do samodzielnego rozwiązania

1. Liczby wymierne. x dla x 0 (wartością bezwzględną liczby nieujemnej jest ta sama liczba)

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

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

Podstawy programowania 2. Temat: Funkcje i procedury rekurencyjne. Przygotował: mgr inż. Tomasz Michno

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

Wykład 1. Na początku zajmować się będziemy zbiorem liczb całkowitych

Algorytm. a programowanie -

if (wyrażenie ) instrukcja

Treść wykładu. Pierścienie wielomianów. Dzielenie wielomianów i algorytm Euklidesa Pierścienie ilorazowe wielomianów

1. Wykład NWD, NWW i algorytm Euklidesa.

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

Warunki logiczne instrukcja if

Teoria liczb. Magdalena Lemańska. Magdalena Lemańska,

ZADANIE 1. Ważenie (14 pkt)

Wprowadzenie do algorytmiki

2.8. Algorytmy, schematy, programy

Zadanie 1. Test (6 pkt) Zaznacz znakiem X w odpowiedniej kolumnie P lub F, która odpowiedź jest prawdziwa, a która fałszywa.

WHILE (wyrażenie) instrukcja;

1 Wprowadzenie do algorytmiki

Wstęp do programowania INP001213Wcl rok akademicki 2018/19 semestr zimowy. Wykład 5. Karol Tarnowski A-1 p.

Największy wspólny dzielnik Algorytm Euklidesa (także rozszerzony) WZAiP1: Chińskie twierdzenie o resztach

Teoria liczb. Zajmuje się własnościami liczb, wszystkim całkowitych

2. Liczby pierwsze i złożone, jednoznaczność rozkładu na czynniki pierwsze, największy wspólny dzielnik, najmniejsza wspólna wielokrotność.

Liczby całkowite. Zadania do pierwszych dwóch lekcji

WHILE (wyrażenie) instrukcja;

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

Wykład IV Algorytmy metody prezentacji i zapisu Rzut oka na język PASCAL

Luty 2001 Algorytmy (8) 2000/2001

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

Jarosław Wróblewski Matematyka Elementarna, zima 2012/13

Rekurencja (rekursja)

1. Wielomiany Podstawowe definicje i twierdzenia

Wykłady z dydaktyki matematyki (klasy IV-VIII) III rok matematyki semestr zimowy 2017/2018 ćwiczenia i wykład nr 6

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

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

Wojewódzki Przedmiotowy Konkurs z informatyki dla uczniów szkół gimnazjalnych ETAP REJONOWY 2010/2011 TEST

Algorytmy w teorii liczb

Wstęp do Informatyki

Zestaw zadań dotyczących liczb całkowitych

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

Maciej Grzesiak. Wielomiany

Przykładowe zadania z teorii liczb

EGZAMIN MATURALNY Z INFORMATYKI

Algorytm Euklidesa. Dwie monety - jeden problem. Trochę matematyki 180=36*5 180=60*3

WIELOMIANY. Poziom podstawowy

Paweł Gładki. Algebra. pgladki/

Podzielność, cechy podzielności, liczby pierwsze, największy wspólny dzielnik, najmniejsza wspólna wielokrotność.

Matematyka dyskretna

Jarosław Wróblewski Matematyka Elementarna, lato 2012/13. W dniu 21 lutego 2013 r. omawiamy test kwalifikacyjny.

Proste programy w C++ zadania

Wybrane zagadnienia teorii liczb

Wielomiany. dr Tadeusz Werbiński. Teoria

Wykorzystanie rozkładu liczby na czynniki pierwsze

Pierścień wielomianów jednej zmiennej

Zadania język C++ Zad. 1. Napisz program wczytujący z klawiatury wiek dwóch studentów i wypisujący informację o tym, który z nich jest starszy.

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

Wiadomości wstępne Środowisko programistyczne Najważniejsze różnice C/C++ vs Java

Algorytmy i schematy blokowe

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

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

Przypomnienie wiadomości dla trzecioklasisty C z y p a m i ę t a s z?

1. Równania i nierówności liniowe

Matematyka dyskretna

EGZAMIN MATURALNY Z INFORMATYKI. 10 maja 2017 POZIOM ROZSZERZONY. Godzina rozpoczęcia: 14:00 CZĘŚĆ I

0.1 Pierścienie wielomianów

WIELOMIANY I FUNKCJE WYMIERNE

NAJWIEKSZY INTERNETOWY ZBIÓR ZADAŃ Z MATEMATYKI FUNKCJE KWADRATOWE PARAMETRY

Paweł Gładki. Algebra. pgladki/

5. Rekurencja. Przykłady

Luty 2001 Algorytmy (7) 2000/2001

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

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

Jarosław Wróblewski Matematyka Elementarna, zima 2014/15

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

Język C część 2. Podejmowanie decyzji w programie. if else. switch

Informatyka I Lab 06, r.a. 2011/2012 prow. Sławomir Czarnecki. Zadania na laboratorium nr. 6

Jarosław Wróblewski Matematyka Elementarna, lato 2014/15

Język C zajęcia nr 5

INSTRUKCJE ITERACYJNE

Podzielność, cechy podzielności, liczby pierwsze, największy wspólny dzielnik, najmniejsza wspólna wielokrotność.

0 --> 5, 1 --> 7, 2 --> 9, 3 -->1, 4 --> 3, 5 --> 5, 6 --> 7, 7 --> 9, 8 --> 1, 9 --> 3.

Konstrukcje warunkowe Pętle

Wstęp do informatyki- wykład 1

Metody numeryczne w przykładach

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

I V X L C D M. Przykłady liczb niewymiernych: 3; 2

EGZAMIN MATURALNY Z INFORMATYKI 13 MAJA 2019 POZIOM ROZSZERZONY. Godzina rozpoczęcia: 14:00 CZĘŚĆ I WYBRANE: Czas pracy: 90 minut

Równania diofantyczne

ALGORYTMY. 1. Podstawowe definicje Schemat blokowy

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.

Matematyka dyskretna

Bukiety matematyczne dla gimnazjum

Teoria liczb. Wykład nr 1: Podzielność i algorytm Euklidesa Semestr letni 2018/2019

WPROWADZENIE DO ALGORYTMÓW Zadania

Programowanie w C/C++ Instrukcje - konstrukcje powtórka. LABORKA Piotr Ciskowski

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

Programowanie - instrukcje sterujące

Transkrypt:

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 algorytmu, którego schemat blokowy jest pokazany na rys 2

Rys2 ZADANIE 1. Podaj algorytm za pomocą pseudojęzyka i listy kroków, który wczyta liczbę całkowitą a i wypisze jej wszystkie dzielniki. Zrealizuj problem za pomocą instrukcji DOPÓKI i POWTARZAJ. Rozwiązanie za pomocą instrukcji DOPÓKI Dane: Liczba całkowita a Wynik: Wypisanie wszystkich dzielników podanej liczby a

Rozwiązanie za pomocą instrukcji POWTARZAJ Dane: Liczba całkowita a Wynik: Wypisanie wszystkich dzielników podanej liczby a

ZADANIE 2. Podaj algorytm za pomocą listy kroków i pseudojęzyka, który wczyta dwie liczby naturalne x i n oraz obliczy wartość wyrażenia x n. Zrealizuj problem za pomocą instrukcji DOPÓKI i POWTARZAJ. Rozwiązanie za pomocą instrukcji DOPÓKI Dane: Dwie liczby naturalne x i n Wynik: Wypisanie wartości wyrażenie x n Rozwiązanie za pomocą instrukcji POWTARZAJ Dane: Dwie liczby naturalne x i n Wynik: Wypisanie wartości wyrażenie x n

ZADANIE 3. Podaj algorytm za pomocą listy kroków i pseudojęzyka, który wczyta współczynniki równania kwadratowego ax 2 +bx+c=0 i je rozwiąże. Rozwiązanie Dane: Trzy liczby a, b, c Wynik: Wypisanie rozwiązania równania kwadratowego

ZADANIE 4. Podaj algorytm za pomocą listy kroków i pseudojęzyka, który wczyta liczbę całkowitą n większą bądź równą 0 i obliczy silnię tej liczby. Zrealizuj problem za pomocą instrukcji DOPÓKI i POWTARZAJ. Silnia liczby n to iloczyn liczb mniejszych bądź równych n, w przypadku n=0 silnia wynosi 1. Rozwiązanie za pomocą instrukcji DOPÓKI Dane: Liczba n Wynik: Wypisanie silni liczby n i Psedojęzyk

Rozwiązanie za pomocą instrukcji POWTARZAJ Dane: Liczba n Wynik: Wypisanie silni liczby n i Algorytm Euklidesa z wykorzystaniem działania reszty z dzielenia Algorytm Euklidesa z wykorzystaniem operacji odejmowania Największy wspólny dzielnik dwóch liczb naturalnych a i b to największa z liczb, przez które dzielą się a i b. Oznaczany jest on symbolem NWD(a, b). Najmniejsza wspólna wielokrotność dwóch liczb naturalnych a i b to najmniejsza z liczb, które są podzielne przez a i b. Oznaczana jest symbolem NWW(a, b). Wyznaczenie NWW(a, b) opiera się na wartości największego wspólnego dzielnika liczb a i b. Największy wspólny dzielnik dla dwóch liczb można wyznaczyć, porównując ze sobą wszystkie kolejne dzielniki tych liczb i wybierając największy, który jest dzielnikiem obydwu liczb. Istnieje jednak szybsza metoda, zwana algorytmem Euklidesa. Możliwe są dwa sposoby realizacji tego algorytmu. Pierwszy wykorzystuje działanie reszty z dzielenia nazywany zoptymalizowanym algorytmem Euklidesa, drugi odejmowania nazywany klasycznym algorytmem Euklidesa. Wiedząc, że resztę z dzielenia można obliczyć za pomocą operacji odejmowania, łatwo domyślić się, że są to dwa sposoby realizacji tego samego algorytmu.

Przykład pokazuje realizację algorytmu Euklidesa z wykorzystaniem działania reszty z dzielenia. Przyjmijmy, że mamy dane dwie liczby naturalne: a = 32 i b = 44. Prześledźmy realizację algorytmu dla tych dwóch wartości: a b r 32 : 44 = 0 r.32 44 : 32 = 1 r.12 32 : 12 = 2 r.8 12 : 8 = 1 r.4 8 : 4 = 2 r.0 4 : 0 W kolejnych krokach algorytmu wykonujemy następujące działania: wyznaczamy resztę z dzielenia r liczby a przez liczbę b; liczbie a przypisujemy wartość liczby b; liczbie b przypisujemy wartość reszty z dzielenia r. Powyższe operacje są powtarzane dopóty, dopóki liczba b jest większa od 0. W momencie, gdy liczbie b przypiszemy wartość 0, uzyskujemy rozwiązanie, którym jest aktualna wartość liczby a. Wynikiem jest więc: NWD(32, 44) = 4. ZADANIE 5. Podaj algorytm za pomocą listy kroków i pseudojęzyka, który wczyta dwie liczby naturalne a, b i wyznaczy największy wspólny dzielnik tych liczb. Zastosuj klasyczną metodę Euklidesa. Rozwiązanie Dane: Liczby a, b Wynik: Wypisanie NWD (a, b) ZADANIE 6. Podaj algorytm za pomocą listy kroków i pseudojęzyka, który wczyta dwie liczby naturalne a, b i wyznaczy największy wspólny dzielnik tych liczb. Zastosuj zoptymalizowaną metodę Euklidesa. Rozwiązanie Dane: Liczby a, b Wynik: Wypisanie NWD (a, b)