Podstawy programowania v2 (2008) - Laboratorium
1
LISTA 5. DZIAŁANIA NA ŁAŃCUCHACH ZNAKOWYCH
1. Tablice tekstowe – operacje na znakach
Program 1.1 Napisz program, który wyświetli na ekranie kod znaku wprowadzonego z klawiatury. Ustal sygnał
zakończenia programu, np. (0-koniec).
Program 1.2 Napisz program zliczający częstość występowania wszystkich znaków w podanym tekście łącznie ze
znakami interpunkcyjnymi i przestankowymi oraz białymi znakami (spacja, tabulacja). Wyświetl listę znaków
począwszy od najczęściej występujących ze wskazaniem liczby wystąpień oraz liczbą wszystkich znaków. Do
wykonania całości zadania wykorzystaj metodę sortowania przez zliczanie.
Program 1.3 Napisz program z własnymi funkcjami, które zamieniają znaki małe na duże i duże na małe oraz
robiącą inwersję wielkości znaków – jednocześnie małe na duże i duże na małe. Sprawdź działanie funkcji dla
wczytywanego tekstu z klawiatury. Porównaj działanie własnych funkcji z funkcjami: toupper() i tolower().
Program 1.4 Napisz program, w którym zbudujesz funkcję obsługi menu, która reaguje na wprowadzanie
pierwszego znaku z klawiatury jako nazwy danej opcji w menu. Notuj i pamiętaj w tablicy znakowej kolejne
wybory 10 opcji. Jedną z opcji menu powinno być wyświetlenie historii działań przy użyciu dodatkowej funkcji.
Skonstruuj bufor kołowy w tej tablicy, tak aby nie przepisywać wartości poszczególnych znaków wyboru menu.
2. Operacje na tekstach
Program 2.1 Napisz program, który podzieli wczytane z klawiatury zdanie na pojedyncze wyrazy. Zlicz je i
wyświetl wynik. Nie kopiuj wyrazów - wykorzystaj tablicę na indeksy znaków początkowych dla danych
wyrazów w tablicy źródłowej.
Program 2.2 Rozbuduj program 2.1 dodając wyświetlanie pojedynczych wyrazów rozpoczynających się na
zadaną literę z klawiatury.
Program 2.3 Rozbuduj program 2.1 lub 2.2 i napisz program zliczający częstość występowania wszystkich
wyrazów w zadanym tekście. Wyświetl listę wyrazów począwszy od najczęściej występujących ze wskazaniem
liczby wystąpień oraz liczbą wszystkich wyrazów. Nie kopiuj wyrazów - do wykonania całości zadania
wykorzystaj tablicę przechowującą wskaźniki do poszczególnych wyrazów w tablicy źródłowej oraz pasującą
metodę sortowania. Przeanalizuj czym się różni wykorzystanie tablicy wskaźników na ciągi znakowe od tablicy
na indeksy w tablicy źródłowej.
Program 2.4. Rozbuduj program 2.3 dodając funkcję sortującą wyrazy w tablicy wskaźników, które wskazują
na wyrazy w tablicy źródłowej. Tablicę źródłową pozostaw bez zmian. Sortowanie wystarczy wykonać tylko
względem pierwszej litery wyrazu przy użyciu wybranego algorytmu.
Program 2.5 Napisz program interpretujący linię komend, w której dopuszczone będzie użycie opcji, np.
program –vxIz –i in.txt –o out.txt dla wariantów ze spacją pomiędzy opcją i wartością dla danej opcji oraz bez
spacji np. program –vx -Iz –iin.txt –oout.txt , a także większej liczby opcji zgrupowanych po jednym minusie.