1. Wprowadzenie do programowania

Można przyjąć, że programowanie sprowadza się do takiego wydawania poleceń komputerowi, aby:

  • były poprzez niego zrozumiałe
  • doprowadziły do uzyskania przez nas zamierzonego celu.

Ten kurs ma na celu nauczyć Was przede wszystkim formułowania rozwiązań danego zadania w sposób umożliwiający ich rozwiązanie na komputerze, a więc skupimy się na punkcie drugim (fachowo nazywa się to specyfikacją problemu i budową algorytmu). Oczywiście wiedza ta byłaby zupełnie nieprzydatna, jeśli nie poznalibyście choćby podstaw zapisania otrzymanego wyniku w postaci zrozumiałej dla komputera - co z tego, że ja wiem, co powinien zrobić mój pracownik, skoro nie umiem mu tego powiedzieć? Poznacie więc też, niejako przy okazji, sposób zapisu rozwiązań w postaci zrozumiałej dla komputera; proces taki nazywamy często kodowaniem algorytmu.

W podręczniku przedstawimy Wam  podstawy kodowania strukturalnego w języku C++.  Nie został on  opracowany jako język dla początkujących, wręcz przeciwnie - stanowi jeden z najbardziej skomplikowanych i trudnych języków programowania wysokiego poziomu. Lecz nie bójcie się tego - w trakcie kursu nie będziemy wykorzystywali żadnych zaawansowanych struktur i konstrukcji specyficznych dla  C++. Przedstawimy Wam wyłącznie techniki wspólne dla wszystkich strukturalnych języków programowania, które będziemy oznaczać jako C/C++. Ci z Was, którzy będą chcieli kontynuować swoją przygodę z programowaniem, otrzymają tu solidne podstawy jednego z najpopularniejszych  na świecie języków programowania.

Podczas prawie całego kursu będziemy tworzyli programy dla konsoli, działające w trybie tekstowym, swoim wyglądem znacznie odbiegające od aktualnie obowiązujących standardów. Takie podejście pozwoli Wam skupić się na rozwiązywaniu problemów i nauczy Was (przynajmniej mamy taką nadzieję) budowania algorytmów w celu późniejszej implementacji ich na komputerze.

Wasze programy będziecie uruchamiać jako aplikacje konsolowe. Do ich uruchamiania możecie wykorzystywać różne narzędzia (środowiska programistyczne) - my polecamy z darmowych VS Code firmy Microsoft, lub Qt Creator, z płatnych - CLion firmy JetBrains (możecie mieć darmową licencję dla studentów, wystarczy że zarejestrujecie się korzystając z uczelnianego adresu). W podręczniku, ze względów historycznych, powołujemy się czasami na bezpłatne środowisko Code::Blocks - na dzień dzisiejszy jednak tracące popularność. Które ze środowisk będziecie wykorzystywać - Wasza wola, my nie wymagamy jakiegoś konkretnego wyboru.