Sprawdzanie poprawności danych
Informatyka » zakres rozszerzony » Wprowadzanie danych i wyprowadzanie wyników » Sprawdzanie poprawności danych
Niezmiernie ważnym zagadnieniem jest sprawdzanie poprawności danych wprowadzanych do programu. Dzięki temu jesteśmy zabezpieczeni przed niespodziewanym przerwaniem pracy programu oraz zapeniamy zgodność danych wejściowych ze specyfikacją zadania.
W języku C++ po podaniu jako wartości zmiennej ciągu znaków innego niż liczba całkowita wykonanie programu nie ulega przerwaniu, jednak program wprowadzony ciąg traktuje jako liczbę 0. W takiej sytuacji nie ma możliwości rozróżnienia, czy wprowadzona została błędna dana wejściowa, czy też rzeczywiście liczba 0. Rozwiązaniem tego problemu jest wczytanie danej wejściowej do zmiennej łańcuchowej, a następnie jej zamiana na liczbę przy użyciu jednej z funkcji standardowych: strtol(), strtoul() lub strtof().
Do sprawdania poprawności podanych danych możemy także wykorzystać obsługę wyjątków. Przykładowy program z obsługą wyjątków może wyglądać następująco:
Po zabezpieczeniu się przed wprowadzeniem danych niewłaściwego typu i powstaniem błędów, należy zająć się kwestią zgodności danych wejściowych ze specyfikacją zadania. Z punktu widzenia obsługi programu przez użytkownika wskazane jest, aby był on natychmiast powiadamiany o wprowadzeniu niepoprawnej danej liczbowej i mógł ją od razu poprawić.
Zadanie
- Napisz program obliczający pole prostokąta. Zabezpiecz program przed podaniem danych niebędących liczbami.
- Napisz program zamieniający numer miesiąca na jego nazwę. Zabezpiecz program przed wprowadzniem błędnych danych.