Kurs programowania – C++ na maturze – część 1

Witam Cię bardzo serdecznie, nazywam się Maurycy Gast. Jest mi niezmiernie miło, że trafiłeś w to miejsce. To pierwszy wpis z cyklu „Matura z informatyki – programowanie w C++”.

Kurs programowania C++ – czym jest język programowania oraz IDE?

W niniejszym materiale postaram się wytłumaczyć, czego możesz się spodziewać na maturze, i przybliżyć, jakie zagadnienia będą omawiane na tym kursie. Zaczniemy też już działania praktyczne: na początek zainstalujemy tzw. IDE, czyli integrated development environment – jest to środowisko programistyczne (program), które posłuży nam do pisania innych programów w C++.

Jako że jest to mój pierwszy wpis, na początku wypadałoby się przedstawić. Jak pisałem wcześniej, nazywam się Maurycy Gast i jestem korepetytorem z informatyki. Na co dzień zajmuję się między innymi przygotowywaniem uczniów do rozszerzonej matury z informatyki i prowadzeniem dla studentów kursów uzupełniających ich wiedzę przed różnymi egzaminami. Jeżeli chciałbyś dowiedzieć się więcej, zapraszam do bezpośredniego kontaktu.

Zanim przejdę do omawiania zagadnień, które co roku występują na rozszerzonej maturze z informatyki, warto jeszcze wyjaśnić, czym jest C++. Otóż w dużym skrócie jest to język programowania tzw. wysokiego poziomu. Oznacza to, że jego składnia oraz słowa kluczowe, czyli między innymi funkcje, są zrozumiałe dla człowieka. Przykładowo funkcja, która zwraca większą wartość z dwóch podanych liczb, to pojedyncza funkcja max(). Językiem programowania niskiego poziomu będzie każdy język asemblerowy, w którym kod pisany jest tzw. kodem maszynowym. Maszynowy kod różni się od standardowego (napisanego chociażby w C++) tym, że nie ma potrzeby go transformować, by stał się zrozumiały dla komputera.

To tyle teorii 🙂.

Zadania maturalne C++ – czego się spodziewać?

Przechodząc do najważniejszej części tego wpisu – co może się znaleźć na rozszerzonej maturze z informatyki? Otóż na maturze z informatyki występuje kilka zadań praktycznych, w tym programistyczne. Warto tu zauważyć, że nawet rozwiązania zadań, w których trzeba opisać algorytmy lub wykonać konkretne zadanie (algorytmiczne), można sprawdzić dzięki skorzystaniu z języka programowania. C++ wraz z Javą oraz Pythonem są językami, których można używać do rozwiązywania zadań maturalnych.

Na rozszerzonej maturze z informatyki może się pojawić bardzo wiele tematów – od sprawdzania, czy dany wyraz jest palindromem (czyli czy czytany od lewej i prawej strony brzmi tak samo), przez najróżniejsze algorytmy (na przykład algorytm Euklidesa na obliczanie największego wspólnego dzielnika), do bardziej wymagających zagadnień, takich jak wyszukiwania wzorców w tekście czy numeryczne metody wyliczeń.

ads banner

Na co zwrócić uwagę podczas nauki C++ do matury?

Nikt nie wie, jakie zagadnienia pojawią się na najbliższej maturze, jednak mimo wszystko bez większego trudu można się do niej przygotować i ze spokojem rozwiązać większość zadań. Tematy, które mogą wystąpić w części programistycznej matury, wymagają bardzo dobrej znajomości:

  • operacji warunkowych,
  • pętli i ich zagnieżdżeń,
  • tablic jedno- i wielowymiarowych,
  • działań na plikach.

W zasadzie mógłbym na tym skończyć. Dobra znajomość tych czterech działów umożliwi Ci bowiem rozwiązanie większości zadań maturalnych z programowania bez większych problemów. Jednak jeżeli chcesz dowiedzieć się więcej, na pewno warto poczytać o:

  • funkcjach,
  • wskaźnikach,
  • referencjach.

Poza tym w ramach przygotowań do samej matury nie można zapomnieć o zapoznaniu się z poszczególnymi algorytmami, które mogą zostać wykorzystane w zadaniach. Chodzi między innymi o:

  • sortowanie bąbelkowe,
  • Sito Eratostenesa,
  • sortowanie przez wstawianie,
  • algorytm Euklidesa,
  • algorytmy rekurencyjne (silnia, ciąg Fibonacciego, wieże Hanoi itp.).

W ramach tego kursu oraz powiązanych artykułów postaram się możliwie najdokładniej objaśnić każdy z wymienionych przeze mnie punktów. Jestem pewien, że po aktywnym uczestniczeniu w tym kursie (a rozumiem przez to wykonywanie ćwiczeń domowych) rozwiązanie zadań maturalnych z programowania w C++ będzie dla Ciebie łatwe.

Najprawdopodobniej maturę będziesz pisał na komputerze z zainstalowanym systemem Windows, więc wszelkie działania będę wykonywał przy użyciu właśnie tego oprogramowania. Jednak żeby rozpocząć zabawę w C++, konieczne jest zainstalowanie wspomnianego już wcześniej IDE, czyli środowiska programistycznego.

Nauka C++ od podstaw – instalacja IDE

Na początku kursu C++ konieczna jest instalacja IDE, czyli w tym przypadku Code::Blocks. W tym celu otwórz dowolną przeglądarkę internetową i wpisz w wyszukiwarkę Google Codeblocks, a następnie przejdź do oficjalnej strony programu. Kliknij w sekcję Downloads, wybierz wersje binarne – i gotowe, pozostało tylko wybrać odpowiednią wersję programu. Dla wszystkich wersji Windowsa polecam zainstalować pozycję zawierającą dopisek mingw-setup.exe, ponieważ zawiera już niezbędny kompilator, czyli w skrócie program, który tłumaczy napisany przez nas kod na kod maszynowy, o którym wspominałem wcześniej.

Code Blocks - kurs
Po wejściu na stronę Code::Blocks należy kliknąć w Download the binary release, następnie Windows XP / Vista / 7 / 8.x / 10 (chyba że korzystasz z innego systemu) i wersję mingw-setup.exe.

Po pomyślnym pobraniu programu wystarczy go zainstalować.

Po przejściu przez instalator zabieramy się do najciekawszego – stworzenia naszego pierwszego programu! Po otwarciu programu powinniśmy zobaczyć:

Strona główna Code Blocks
W pierwszym oknie Code::Blocks korzysta się przede wszystkim z opcji Create a new project. Pamiętaj jednak, że znajdziesz tę opcję również w lewym górnym rogu, w zakładce File / New / Project.

Swój pierwszy program stworzysz, wykonując poniższe kroki:

  1. Kliknij przycisk Create a new project.
  2. Spośród różnych opcji wybierz Console application i kliknij Go .
  3. Na pierwszej stronie kreatora projektu kliknij Next.
  4. Po przejściu na drugą stronę wybierz C++ (o języku C napiszę innym razem!).
  5. Na trzeciej stronie kreatora wpisz nazwę projektu (Project title) oraz ustal jego dokładną lokalizację (Folder to create project in).
  6. Na ostatniej stronie kreatora na górze okienka powinien być widoczny kompilator GNU GCC Compiler – teraz należy już tylko kliknąć Finish.

W tym momencie większość prac już za Tobą 🙂. Teraz wystarczy po lewej stronie (w tzw. sidebarze, czyli panelu bocznym) kliknąć nazwę Twojego projektu, następnie dwukrotnie katalog Sources i wybrać plik main.cpp. W tym momencie powinieneś zobaczyć:

Code Blocks - main.cpp
Podstawowe opcje dotyczące uruchamiania, kompilacji czy debugowania programu znajdziesz w górnym panelu Code::Blocks.

Aby uruchomić swój pierwszy program, kliknij klawisz F9 albo z panelu górnego wybierz ikonkę żółtego koła zębatego z zielonym przyciskiem play.

I co? Udało się 🙂? Jeśli pojawił się jakiś błąd (widoczny w panelu dolnym programu), najprawdopodobniej pobrałeś błędną wersję programu (bez dopisku mingw-setup.exe, o którym wspominałem wyżej). Jeżeli włączyła się konsola Windows – gratuluję! Oto Twój pierwszy program.

Przyjęło się, że program wyświetlający „Hello World!” powinien być pierwszym krokiem na drodze młodego programisty. Zatem można powiedzieć, że… jesteś programistą! Co prawda młodym, ale jednak! Jak się z tym czujesz 🙂?

Pierwszy program w C++ – Hello World

Warto jeszcze dokładnie omówić kod znajdujący się w pliku main.cpp. Oczywiście, tradycyjnie kurs C++ rozpoczyna się od Hello World 🙂. Wygląda on następująco:

To, co widzisz, będzie szkieletem każdego z programów, które będziesz w przyszłości pisał w C++. Poniżej omówię po kolei każdą linijkę kodu.

Deklaracja biblioteki tzw. strumienia wejścia/wyjścia C++. Nazwę można łatwo zapamiętać, bo wzięła się od „input output stream”. To dzięki niej możesz m.in. wypisywać różne znaki w konsoli.

Deklaracja przestrzeni nazw std. Ta linijka bardzo ułatwia pisanie programów (szczególnie młodym programistom). Bez niej większość funkcji, jakich używasz, musiałaby być poprzedzona prefiksem „std::”, czyli na przykład polecenie „cout <<” wyglądałoby następująco: „std::cout <<”. I tak za każdym razem… Można o tym łatwo zapomnieć 🙂.

Rozpoczęcie funkcji głównej programu. Gdy skompilujesz swój kod i go uruchomisz, wykonuje się wszystko, co zostało zawarte w tej funkcji.

Klamerki! Bardzo ważna rzecz. W C++ używane są w celu budowania prawidłowej struktury programu. W tym konkretnym przypadku funkcja int main() ma „pod sobą” dwa wyrażenia (cout oraz return – które omówione są poniżej).

Strumień wyjściowy – wypisanie żądanego tekstu do konsoli.

Wypisanie znaku nowej linii w konsoli, tj. znanego wszystkim „entera”.

Zakończenie funkcji głównej programu.

I ostatnia rzecz, ale chyba najważniejsza: ŚREDNIKI! Po większości funkcji w C++ wstawiamy średniki! To one definiują nową linię. Gdyby ich nie było, program nie wiedziałby, jak interpretować napisany przez Ciebie tekst. W C++ białe znaki (spacja, tabulator i enter) są pomijane przez kompilator. To właśnie średnik odpowiedzialny jest za wskazanie, że funkcja jest skończona. Przykład pominięcia średnika w jednej linijce:

Celowy błąd Code Blocks
W zakładce Logs & others na dole programu znajdują się podstawowe informacje na temat działania programu. Tam szukaj rozwiązania wszelkich pojawiających się problemów.

Jak widać, w panelu dolnym naszego IDE wyświetlony jest błąd. Środowisko informuje nas, że został znaleziony błąd w linijce 8 expected, before, return. Wynika z tego, że kompilator jest w miarę inteligentny – pokazuje Ci dokładne miejsce błędu. Po ponownym dodaniu średnika na końcu linii 7 (przy czym dla kompilatora nie jest to linijka 7, ale początek linijki 8), program zaczyna znowu działać.

Podsumowanie

To by było na tyle z pierwszej lekcji w tym kursie. Mam nadzieję, że była ona dla Ciebie przydatna. Jeżeli masz jakieś pytania – pisz śmiało. Jeszcze raz zapraszam Cię do kontaktu w sprawie korepetycji z informatyki.

Jeśli chcesz dalej zgłębiać sztukę programowania, sprawdź kolejną część poradnika C++. Poniżej umieszczam pracę domową 🙂.

Praca domowa

1. Zadanie dodatkowe:

  • Utwórz program, który wypisze tekst Ala ma kota!, po czym wypisze enter. W kolejnej linii niech program wypisze wartość wyrażenia 123 * 321 (nie obliczaj tej wartości na kalkulatorze, niech komputer to zrobi) i na końcu linii znowu wypisze enter. Na koniec niech program wypisze wartość wyrażenia 123 * 321 – 123 + 123 * 321 – 123. Czy zrobił to zgodnie z kolejnością wykonywania działań 🙂?

2. Pojęcia do zapamiętania:

  • IDE – integrated development environment – środowisko programistyczne.
  • Język programowania wysokiego poziomu – język wykorzystujący funkcje zrozumiałe dla człowieka (min(), max() itd.), wymagający konwersji do kodu maszynowego.
  • Język programowanie niskiego poziomu – przeciwieństwo języka wysokiego poziomu.
  • Kompilator – program tłumaczący napisany przez nas program na kod zrozumiały dla komputera.
ads banner

Wpisy, które mogą Cię zainteresować:



Jeden komentarz

Komentarze zostały wyłączone