Jak uczę programowania?

Slides:



Advertisements
Podobne prezentacje
Algorytmy sortowania i przeszukiwania
Advertisements

Instrukcje - wprowadzenie
Algorytmika w szkole podstawowej
Filip Andrzejewski Remigiusz Chiluta
Języki programowania C++
Programowanie imperatywne i język C Copyright, 2004 © Jerzy R. Nawrocki Wprowadzenie.
Programowanie imperatywne i język C
Modularyzacja i struktury danych w C Copyright, 2005 © Jerzy R. Nawrocki Wprowadzenie.
Modularyzacja i struktury danych w C Copyright, 2005 © Jerzy R. Nawrocki Wprowadzenie.
Programowanie imperatywne i język C Copyright, 2005 © Jerzy R. Nawrocki Wstęp.
Programowanie imperatywne i język C Copyright, 2004 © Jerzy R. Nawrocki Wprowadzenie.
Język C – Część II Copyright, 2004 © Jerzy R. Nawrocki Wprowadzenie do informatyki.
Podstawy informatyki Wirtotechnologia – Wskaźniki i referencje
Podstawy informatyki Informatyka stosowana Prowadzący: Grzegorz Smyk
Podstawy informatyki Wirtotechnologia – Funkcje Grupa: 1A
Podstawy programowania PP – WYK3 Wojciech Pieprzyca.
Podstawy programowania
Podstawy programowania PP – LAB4 Wojciech Pieprzyca.
Język ANSI C Operacje we/wy
Algorytmika w drugim arkuszu maturalnym. Standardy wymagań I. WIADOMOŚCI I ROZUMIENIE I. WIADOMOŚCI I ROZUMIENIE II.KORZYSTANIE Z INFORMACJI II.KORZYSTANIE.
Wprowadzenie do programowania w języku Turbo Pascal
Programowanie obiektowe W2
ALGORYTMY.
Programowanie imperatywne i język C Copyright, 2006 © Jerzy R. Nawrocki Wstęp do.
POJĘCIE ALGORYTMU Pojęcie algorytmu Etapy rozwiązywania zadań
Podstawy programowania II Wykład 2: Biblioteka stdio.h Zachodniopomorska Szkoła Biznesu.
Podstawy programowania w języku C i C++
Podstawy programowania
Podstawy programowania
Podstawy programowania II
Algorytmy z przykładami w Turbo Pascal 7.0
Wczytywanie danych z klawiatury, komentarze, zmienne.
Metodyka nauczania Informatyki
TABLICE C++.
Algorytmy i struktury danych
Procedury i funkcje.
Podstawy programowania w języku C i C++
Programowanie strukturalne i obiektowe
WITAMY W ŚWIECIE MATEMATYKI
Tematyka zajęć Zintegrowane środowisko programistyczne i proces tworzenia programu Identyfikatory, słowa kluczowe, zmienne, typy danych – typy proste Instrukcja.
Jerzy F. Kotowski1 Informatyka I Wykład 14 DEKLARATORY.
Tablice w Turbo Pascalu.
Podstawy informatyki 2013/2014
Matura z matematyki w 2015 roku
Na wysokościach myślenia jest sfera,
Podstawy języka Instrukcje - wprowadzenie
ZAPIS BLOKOWY ALGORYTMÓW
Algorytmika.
Instrukcje wyboru.
WYKŁAD 06 Programowanie dynamiczne Grażyna Mirkowska.
Algorytmy – wprowadzenie
Pętle Zajęcia 6.
Programowanie imperatywne i język C Copyright, 2007 © Jerzy R. Nawrocki Wstęp do.
METODY REPREZENTOWANIA IFORMACJI
Seminarium Dyplomowe: Metodyka i Techniki Programowania Autor: Bartłomiej Fornal.
Wstęp do programowania Wykład 4
Mapa STL – C++. Problem polega na tym, że najczęściej chcielibyśmy przechowywać w zbiorze elementy jakiegoś bardziej złożonego typu, których on nie będzie.
Wstęp do programowania Wykład 2 Dane, instrukcje, program.
C++ mgr inż. Tomasz Turba Politechnika Opolska 2016.
 Formuła to wyrażenie algebraiczne (wzór) określające jakie operacje ma wykonać program na danych. Może ona zawierać liczby, łańcuchy znaków, funkcje,
Liczby 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, …(i tak dalej) nazywamy liczbami naturalnymi. Tak jak z liter tworzy się słowa, tak z cyfr tworzymy liczby. Dowolną.
C++ mgr inż. Tomasz Turba Politechnika Opolska 2016.
Treść dzisiejszego wykładu l Postać standardowa zadania PL. l Zmienne dodatkowe w zadaniu PL. l Metoda simpleks –wymagania metody simpleks, –tablica simpleksowa.
Algorytmy, sposoby ich zapisu.1 Algorytm to uporządkowany opis postępowania przy rozwiązywaniu problemu z uwzględnieniem opisu danych oraz opisu kolejnych.
W jaki sposób uczyć programowania (w szkole) Najważniejsze aspekty w metodyce nauczania programowania, czyli w jaki sposób uczyć programowania (w szkole)
Rozdział 5 REKURENCJA.
Zrozumieć, przeanalizować i rozwiązać
Algorytmy i Struktury Danych Wprowadzenie
Programowanie I Rekurencja.
POJĘCIE ALGORYTMU Wstęp do informatyki Pojęcie algorytmu
Zapis prezentacji:

Jak uczę programowania? Joanna Śmigielska XIV LO im. Stanisława Staszica W Warszawie

O szkole Profile i rozkład godzin w 3_letnim cyklu kształcenia: Matematyczno-informatyczny 3 + 2 + 3 Matematyczno-fizyczny 1 + 1 + 1 Matematyczny 1 + 1 +1

Grupa i cele Klasy nie informatyczne – 18 godzin nauki programowania w 1 semestrze klasy pierwszej Zachęcić do dalszego uczenia się samodzielnego lub na kółkach Rozpocząć przygotowanie do matury nie przygotowuję do olimpiady

Język C++ (C z wybranymi elementami C++) Podstawowe typy danych: int, float, char, klasa string Typy złożone: tablice Instrukcje: warunkowa: if iteracyjne: for, while, do while Czytanie i wypisywanie danych strumieniami cin i cout zamiast printf i scanf

Na co zwracać uwagę? Czytelność kodu Znaczące nazwy zmiennych Komentarze - przed ważnymi fragmentami programu, co przechowują ważne zmienne Testowanie - wypisywanie częściowych wyników przykład programu ucznia - nominaly.cpp

Skąd biorę zadania na podstawy programowania http://main.edu.pl/ http://pl.spoj.pl/ Mistrzostwa Wielkopolski w Programowaniu Zespołowym (zadania próbne) Zadania z OIG I etap

Typowe zadanie Opis zadanie Specyfikacja wejścia Specyfikacja wyjścia Przykład

Zadania na podstawy programowania – na co zwracać uwagę uczniom Zrozumienie treści i problemu Czytanie danych i wypisanie wyniku zgodne ze specyfikacją Przekierowanie wejścia / wyjścia podczas testowania Działanie automatycznej sprawdzarki

Zadania na podstawy programowania – jakie? Proste zadania, których jedyną trudnością jest zrozumienie treści, a rozwiązanie ogranicza się do elementarnych operacji np. odjęcia dwóch liczb Przykłady zadań i rozwiązań uczniów: jablka.pdf - jab.cpp skladka.pdf - skl.cpp

Zadania na podstawy programowania – jakie? Zadania, które po przeanalizowaniu na „kartce” redukują się do kilku przypadków np. dla podanego n znaleźć ostatnia cyfrę 2n lub znaleźć ostatnią cyfrę n! Przykład zadania i rozwiazania ucznia: autobusy.pdf - aut.cpp

Problemy algorytmiczne Minimum, maksimum Liczby pierwsze - sito Eratostenesa Problem wyszukiwania – liniowe, binarne Problem flagi holenderskiej Problem sortowania – przez wybór, przez wstawianie, bąbelkowe

Dlaczego warto uczyć programować? Programowanie to nie wiedza tajemna – pomaga rozwiązywać problemy Algorytmika to nie bułka z masłem

Problem 1 Wykonano dodawanie, odejmowanie, mnożenie i dzielenie pewnych dwóch liczb naturalnych. Analizując zapis, w którym literą P oznaczona cyfrę parzystą, a literą N - nieparzystą, oraz wiedząc, że PP i NP po lewej stronie każdej równości to ta sama para liczb, znajdź te liczby. PP : NP = P PP + NP = PP PP - NP = NP PP * NP = NNP matematyka.cpp – rozwiązanie ucznia

Problem 2 Napisanie programu rozwiązującego proste łamigłówki sudoku to jest takie, do których rozwiązania wystarcza analiza pojedynczych kolumn, wierszy lub kwadratów. sudoku.cpp – rozwiązanie ucznia

Warto uczyć programowania na TI w klasach o profilach ścisłych.