Kurs ANSI C z elementami C++ Lista zadań 10 17.12.2007
Transkrypt
Kurs ANSI C z elementami C++ Lista zadań 10 17.12.2007
Kurs ANSI C z elementami C++ Lista zadań 10 17.12.2007 1. (10 punktów) Napisz program, który z podanego pliku tekstowego wypisze na standardowym wyjściu wszystkie wiersze zawierające podany wzorzec tekstowy. Nazwa pliku tekstowego powinna być pierwszym parametrem wywołania programu, a wzorzec powinien być jego drugim parametrem. Znak zapytania występujący we wzorcu dopasowuje się do dowolnego znaku w pliku (litery powinny być dopasowywane bez uwzględniania ich wielkości). Pozostałe znaki dopasowują się tylko do siebie samych. Można założyć, że wiersze w pliku są nie dłuższe niż 80 znaków. Przykład: Wzorzec g8+?? pasuje do g8+10, G8+zz, itd., tzn. do dowolnego 5-cio znakowego ciągu zaczynającego się od g8+ lub G8+. 2. (20 punktów) Zaimplementuj program symulujący słownik T9 telefonu komórkowego. Program powinien korzystać z słownika zapisanego w zewnętrznym pliku tekstowym (możesz użyć open-sourcowego słownika). Program jako parametr wejściowy powinien przyjmować ciąg naciśniętych klawiszy telefonu kom (ciąg liczb), i wypisywać możliwe do zbudowania słowa. 3. (20 punktów) Zaimplementuj grę saper w konsoli. Rozmiar planszy, oraz ilość bomb powinna być definiowana jako stałe w źródle programu. Plansza w trakcie rozgrywki może wyglądać następująco: XXX1..... X321...11 X2...113X X411.1X3X XXX1.1121 1211..... ......... 111...... XX1...... Pozostały 3 nie zaminowane pola. Podaj pozycję x,y pola do odkrycia. Program powinien automatycznie odkrywać pola 0 (nie zawierające bomb w sąsiedztwie). Poszczególne oznaczenia: X – 1-8 . * - nie odkryte pole – ilość bomb w sąsiedztwie odkryte pole bomba