Algorytmika i programowanie

Różnorodne algorytmy obliczeń i ich komputerowe realizacje

Szkoła ponadpodstawowa, Nauczyciele

Celem kursu jest przekazanie uczestnikom wiedzy dotyczącej m.in. algorytmów wyznaczania: dziesiętnej i binarnej reprezentacji liczb, obliczania wartości wielomianu, największego wspólnego dzielnika dwóch liczb (algorytm Euklidesa) oraz wartości potęgi.

Czego się nauczysz

  • omówienie podstawowych zagadnień w zakresie algorytmiki
  • zapoznanie z systemem dziesiętnym i binarnym

Program kursu

  • Wprowadzenie
  • Warm up – rozgrzewka
  • Obliczanie wartości wielomianu – schemat Hornera
    • Wyprowadzenie schematu Hornera
    • Schemat blokowy schematu Hornera
    • Komputerowa realizacja schematu Hornera
  • System dziesiętny i system binarny
    • Zamiany liczby binarnej na liczbę dziesiętną
    • Otrzymywanie binarnego rozwinięcia liczby dziesiętnej
    • Długość rozwinięcia binarnego liczby
  • Rekurencja
    • Wieże Hanoi
    • Króliki i chaotyczny profesor – liczby Fibonacciego
    • Inne spojrzenie na schemat Hornera
    • Wyprowadzanie liczb od początku
  • Szybkie obliczanie wartości potęgi
  • Algorytm Euklidesa
  • Algorytmy zachłanne
    • Problem wydawania reszty
    • Zmartwienie kinomana
    • Pakowanie najcenniejszego plecaka
    • Najdłuższa droga na piramidzie
    • Inne przykłady użycia metody zachłannej
  • Przeszukiwanie z nawrotami
    • Wyjście z labiryntu metodą zgłębiania
    • Rozmieszczanie hetmanów na szachownicy
  • Algorytm, algorytmika i algorytmiczne rozwiązywanie problemów

Opis kursu

Podczas kursu omawiane są wybrane zagadnienia z podstawy algorytmiki, m.in. specyfikacja problemu, schematy blokowe algorytmów, podstawowe struktury danych (ciąg i tablica) oraz pracochłonność algorytmów. Część praktyczna zajęć jest poświęcona wprowadzeniu podstawowych instrukcji języka programowania (iteracyjnych i warunkowych oraz procedury i funkcji niestandardowej), wystarczających do zaprogramowania i uruchomienia komputerowych realizacji omówionych algorytmów. Język programowania służy głównie do zapisywania i testowania rozwiązań rozważanych problemów, a nie jest celem zajęć samym w sobie. Wykorzystywane jest również oprogramowanie edukacyjne, ułatwiające zrozumienie działania algorytmów i umożliwiające wykonywanie eksperymentów z algorytmami bez konieczności ich programowania. Przytoczono ciekawe przykłady zastosowań omawianych zagadnień. W drugiej części kursu są przedstawiane wybrane techniki rozwiązywania problemów za pomocą komputera, m.in. podejście zachłanne (do wydawania reszty), przeszukiwanie z nawrotami (do ustawiania hetmanów na szachownicy) i rekurencja w realizacji wybranych algorytmów. Zajęcia praktyczne są poświęcone komputerowej realizacji wybranych technik algorytmicznych na odpowiednio dobranych przykładach problemów.

Autorem materiałów jest prof. dr hab. Maciej Marek Sysło – wykładowca Wydziału Matematyki i Informatyki Uniwersytetu Wrocławskiego oraz Wydziału Matematyki i Informatyki Uniwersytetu Mikołaja Kopernika w Toruniu. W latach 2010–2012 prowadził szkolenia z zakresu Algorytmiki i programowania w ramach projektu Informatyka +.

Prowadzącym wykład jest mgr Ireneusz Bujnowski.

Podobne kursy

Algorytmika i programowanie

Różnorodne algorytmy obliczeń i ich komputerowe realizacje

Szkoła ponadpodstawowa, Nauczyciele

Celem kursu jest przekazanie uczestnikom wiedzy dotyczącej m.in. algorytmów wyznaczania: dziesiętnej i binarnej reprezentacji liczb, obliczania wartości wielomianu, największego wspólnego dzielnika dwóch liczb (algorytm Euklidesa) oraz wartości potęgi.

Algorytmika i programowanie

Do czego można wykorzystać język Javascript?

Szkoła ponadpodstawowa, Nauczyciele

Kurs przedstawia możliwości języka JavaScript (JS). Wykorzystaj go do wzbogacania stron i serwisów www o elementy interaktywne i graficzne.

Algorytmika i programowanie

Czy wszystko można policzyć na komputerze?

Szkoła ponadpodstawowa, Nauczyciele

Kurs wprowadza do zagadnienia złożoności problemów i algorytmów ich rozwiązywania.

Algorytmika i programowanie

Język językowi nierówny

Szkoła ponadpodstawowa, Nauczyciele

Kurs przedstawia wybrane aspekty lingwistyczne oraz nakreśla w sposób uproszczony i subiektywny zagadnienia ewolucji języków programowania.

Algorytmika i programowanie

Algorytmika internetu

Szkoła ponadpodstawowa, Nauczyciele

Kurs omawia najważniejsze fakty dotyczące historii algorytmów i rozwoju internetu.

Algorytmika i programowanie

Między programowaniem a wnioskowaniem

Szkoła ponadpodstawowa, Nauczyciele

Kurs przekazuje wiedzę z zakresu podstaw języka Prolog oraz języków zapytań.

Algorytmika i programowanie

Algorytmy poszukiwania i porządkowania. Elementy języka programowania

Szkoła ponadpodstawowa, Nauczyciele

Kurs przekazuje wiedzę z zakresu algorytmiki i programowania.

Algorytmika i programowanie

Proste rachunki wykonywane za pomocą komputera

Szkoła ponadpodstawowa, Nauczyciele

Kurs przekazuje wiedzę na temat obliczeń wykonywanych za pomocą komputera.

Algorytmika i programowanie

Przegląd podstawowych algorytmów

Szkoła ponadpodstawowa, Nauczyciele

Kurs omawia techniki budowania algorytmów. Uczestnicy zapoznają się z informacjami na temat programowania dynamicznego, rekurencji, strategii zachłannych.

Algorytmika i programowanie

Techniki algorytmiczne przybliżone i dokładne

Szkoła ponadpodstawowa, Nauczyciele

Kurs umożliwia poszerzenie wiedzy z zakresu algorytmiki i programowania. Wprowadza podstawowe pojęcia oraz definiuje różnorodne techniki algorytmiczne.

Algorytmika i programowanie

Wprowadzenie do algorytmiki i programowania – wyszukiwanie i porządkowanie informacji

Szkoła ponadpodstawowa, Nauczyciele

Kurs dotyczy podstawowych zagadnień związanych z algorytmiką i programowaniem. Dowiedz się, jak rozwiązywać problemy w postaci algorytmów i implementować je w językach Pascal i C++.

Algorytmika i programowanie

Struktury danych i ich zastosowanie

Szkoła ponadpodstawowa, Nauczyciele

Kurs ma na celu zapoznanie uczestników z różnymi strukturami danych oraz ich zastosowaniem.

Algorytmika i programowanie

Znajdowanie najkrótszych dróg i najkrótszych oraz najniższych drzew

Szkoła ponadpodstawowa, Nauczyciele

Kurs zapoznaje z elementami teorii grafów i obliczeń na grafach. Dowiesz się z niego, jak stosuje się grafy w informatyce (np. drzewa wyrażeń, drzewa algorytmów) oraz nauczysz się rozwiązywać klasyczne problemy obliczeniowe z ich wykorzystaniem.

Algorytmika i programowanie

Porządek wśród informacji kluczem do szybkiego wyszukiwania

Szkoła ponadpodstawowa, Nauczyciele

Kurs jest wprowadzeniem do algorytmiki. Zakres tematyczny obejmuje poszukiwania elementów w zbiorach nieuporządkowanych i uporządkowanych oraz problem porządkowania.

Algorytmika i programowanie

O relacjach i algorytmach

Szkoła ponadpodstawowa, Nauczyciele

Kurs przekazuje uczestnikom wiedzę na temat relacji dwuczłonowych i sposobów ich reprezentacji w postaci macierzy lub grafu.

Algorytmika i programowanie

Jak wnioskują maszyny

Szkoła ponadpodstawowa, Nauczyciele

Kurs dotyczy wprowadzenia do logiki z perspektywy jej zastosowań w informatyce i sztucznej inteligencji. Poznaj klasyczny rachunek zdań i związek między wyszukiwaniem a wnioskowaniem.

Algorytmika i programowanie

Po co informatykom logika?

Szkoła ponadpodstawowa, Nauczyciele

Kurs omawia zagadnienia związane z logiką oraz wykorzystaniem logiki w informatyce.

Algorytmika i programowanie

Fraktale wokół nas

Szkoła ponadpodstawowa, Nauczyciele

Celem kursu jest zapoznanie uczestników z tematem fraktali oraz omówienie zagadnień matematycznych dotyczących podobieństwa i samopodobieństwa figur.

Algorytmika i programowanie

Programowanie współbieżne w informatyce i nie tylko

Szkoła ponadpodstawowa, Nauczyciele

Kurs omawia najważniejsze zagadnienia dotyczące programowania współbieżnego.

Algorytmika i programowanie

Mechaniczne dowodzenie twierdzeń

Szkoła ponadpodstawowa, Nauczyciele

Kurs porusza zagadnienia dotyczące automatycznego dowodzenia twierdzeń. Uczestnicy omówią również podstawy dotyczące logiki zdań.

Algorytmika i programowanie

Zaawansowane algorytmy

Szkoła ponadpodstawowa, Nauczyciele

Kurs pomoże uczestnikom w zgłębianiu najtrudniejszych zagadnień algorytmicznych, które pojawiają się na konkursach informatycznych.

Algorytmika i programowanie

Pomysł, przepis, program… i co dalej?

Szkoła ponadpodstawowa, Nauczyciele

Kurs przekazuje uczestnikom wiadomości dotyczące algorytmu wydawania reszty.

Algorytmika i programowanie

Strukturalnie czy obiektowo – czyli droga do sukcesu

Szkoła ponadpodstawowa, Nauczyciele

Kurs obejmuje treści w zakresie programowania obiektowego – przybliża jego cechy oraz podstawowe pojęcia, takie jak klasa, obiekt, konstruktor, modyfikator dostępu, hermetyzacja.   

Algorytmika i programowanie

Razem można więcej – podstawy pracy zespołowej

Szkoła ponadpodstawowa, Nauczyciele

Kurs przedstawia informacje związane z wykorzystywanymi w procesie tworzenia systemów informatycznych narzędziami CASE oraz z językiem UML.

Algorytmika i programowanie

Podstawy programowania okienkowego w środowisku Visual Studio

Szkoła ponadpodstawowa, Nauczyciele

Kurs dotyczy podstaw programowania okienkowego w środowisku Visual Studio oraz programowania obiektowego. Poznaj język C# i dowiedz się, jak rozwiązywać problemy programistyczne.

Algorytmika i programowanie

Wprowadzenie do programowania obiektowego

Szkoła ponadpodstawowa, Nauczyciele

Kurs stanowi wprowadzenie do obiektowego modelu programowania z przykładami w języku C#. Poznaj istotne elementy tego popularnego języka programowania.

Algorytmika i programowanie

Podstawy języka Python

Szkoła ponadpodstawowa, Nauczyciele

Kurs wprowadza użytkownika w świat języka Python, pozwalającego tworzyć zaawansowane aplikacje dla różnych systemów operacyjnych.

Algorytmika i programowanie

Tworzenie aplikacji mobilnych

Szkoła ponadpodstawowa, Nauczyciele

Kurs zawiera informacje teoretyczne i praktyczne na temat tworzenia aplikacji kalkulatora dla systemu Android.

Algorytmika i programowanie

Podstawy analizy danych w języku Python

Szkoła ponadpodstawowa, Nauczyciele

Celem kursu jest omówienie podstawowych zagadnień związanych z analizą danych w języku Python.

Algorytmika i programowanie

Programowanie w Scratch Junior z Klubem Młodego Programisty

Szkoła podstawowa, Nauczyciele

(klasy I–III, rodzice)

Kurs jest pierwszym krokiem w nauce programowania. Uczestnicy poznają możliwości aplikacji Scratch Junior i stworzą w niej swoje pierwsze programy. Nauczą się wykonywać animacje, kartki okolicznościowe i proste gry zręcznościowe. Przekonają się też, że programowanie to sposób na kreatywne spędzenie czasu.

Algorytmika i programowanie

Programowanie w Scratch 3.0 z Klubem Młodego Programisty

Szkoła podstawowa, Nauczyciele

(klasy IV–VI, rodzice)

Kurs uczy programowania blokowego od podstaw. Uczestnicy zapoznają się z funkcjonalnościami aplikacji Scratch 3.0 i stworzą w niej swoje pierwsze programy (animacje, gry zręcznościowe, gry przygodowe). Nauczą się wykorzystywać konstrukcje warunkowe, pętle, zmienne i funkcje podczas tworzenia programów. Poznają też zasady remiksowania projektów.

Algorytmika i programowanie

Programowanie w Pythonie z Klubem Młodego Programisty – poziom podstawowy

Szkoła podstawowa, Nauczyciele

W dzisiejszych czasach programowanie to umiejętność, która może dać nam wiele możliwości. Python jest jednym z wiodących języków programowania. Według corocznych ankiet prowadzonych przez serwis Stack Overflow od kilku lat utrzymuje się w ścisłej czołówce najbardziej pożądanych języków wśród programistów. Poznaj podstawy Pythona z Klubem Młodego Programisty.

Algorytmika i programowanie

Programowanie w Pythonie z Klubem Młodego Programisty – poziom średnio zaawansowany

Szkoła ponadpodstawowa, Nauczyciele

W dzisiejszych czasach programowanie to umiejętność, która może dać nam wiele możliwości. Python jest jednym z wiodących języków programowania. Według corocznych ankiet prowadzonych przez serwis Stack Overflow od kilku lat utrzymuje się w ścisłej czołówce najbardziej pożądanych języków wśród programistów. Kontynuuj naukę Pythona z Klubem Młodego Programisty.

Algorytmika i programowanie

Python z KMP na CodeWeek 2022 – poziom podstawowy

Szkoła podstawowa, Szkoła ponadpodstawowa, Nauczyciele

Język obiektowy Python to jeden z popularnych języków programowania, który ciągle zyskuje nowe zastosowania w dziedzinie informatyki, a specjaliści coraz częściej dostrzegają jego potencjał. Dlatego właśnie na CodeWeek przygotowaliśmy propozycję dotyczącą Pythona.

Algorytmika i programowanie

Python z KMP na CodeWeek 2022 – poziom średnio zaawansowany

Szkoła ponadpodstawowa, Nauczyciele

Język obiektowy Python to jeden z popularnych języków programowania, który ciągle zyskuje nowe zastosowania w dziedzinie informatyki, a specjaliści coraz częściej dostrzegają jego potencjał. Dlatego właśnie na CodeWeek przygotowaliśmy propozycję dotyczącą Pythona.

Algorytmika i programowanie

Scratch Junior z KMP na CodeWeek 2022

Szkoła podstawowa, Szkoła ponadpodstawowa, Nauczyciele

Moduł jest rozwinięciem kursu „Programowanie w Scratch Junior z Klubem Młodego Programisty”. Dzięki materiałowi uczniowie jeszcze lepiej poznają możliwości aplikacji Scratch Junior i stworzą w niej zegar przypominający, że CodeWeek może trwać cały rok. Nauczą się wykonywać animację z dźwiękami i przekonają się, że kodowanie to sposób na kreatywne spędzenie czasu.

Algorytmika i programowanie

Scratch 3.0 z KMP na CodeWeek 2022

Szkoła ponadpodstawowa, Nauczyciele

Moduł „CodeWeek i Scratch 3.0 – codeweekowa gra przygodowa” to rozwinięcie kursu „Programowanie w Scratch 3.0”. Uczestnicy przypomną sobie funkcjonalności programu Scratch 3.0, a następnie stworzą grę przygodową nawiązującą do inicjatywy CodeWeek. Nauczą m.in. się wykorzystywać konstrukcje warunkowe, pętle oraz zmienne podczas tworzenia programów.

Informacje o kursie

Różnorodne algorytmy obliczeń i ich komputerowe realizacje

Szkoła ponadpodstawowa, Nauczyciele

Algorytmika i programowanie