Specyfikacja problemu algorytmicznego
Jak zapewne każdy z nas wie algorytmem jest pewien skrócony ciąg czynności, który zamienia zbiór danych wejściowych w zbiór danych wyjściowych, dzięki którym możliwe jest szybkie rozwiązanie zadanie postępując według określonego algorytmem schematu. Aby jednak przedstawić zadanie algorytmowi w pełni precyzyjnie musimy znać typ danych wejściowych oraz wyniki, czyli dane wyjścia. To właśnie te informacje powinny zostać zawarte w specyfikacji problemu algorytmicznego. Zgodnie z definicją specyfikacją problemu algorytmicznego jest precyzyjny opis problemu algorytmicznego, który należy rozwiązać a także podanie danych wejściowych oraz wyjściowych wraz z określeniem ich typów. Najczęściej spotyka się owe specyfikacje składające się z opisy danych wejściowych oraz wyjściowych wraz z warunkami, które muszą one spełniać. Można to przedstawić na prostym przykładzie. Jeżeli naszym problemem algorytmicznym będzie obliczenie potęgi liczby naturalnej o wykładniku naturalnym to w specyfikacji problemu algorytmicznego powinniśmy zawrzeć następujące informacje: dane wejściowe podstawa potęgi, która to należy do zbioru liczb naturalnych oraz wykładnik potęgi również zawierający się w podanym zbiorze, a także dane wyjściowe, czyli wartość owej potęgi, która również będzie znajdowała się w zbiorze liczb naturalnych. Każda z tych trzech danych powinna zostać opisana znakiem literowym bądź nazwą – w ten sposób otrzymaliśmy zmienną, czyli obiekt algorytmu.