Zadanie 5 (termin oddania 12.01, 18:30) --------------------------------------- Napisz program do ukrywania/odczytywania zadanego komunikatu w pewnym pliku tekstowym. Ukrycie wiadomosci polega na: 1) Przedstawieniu wiadomosci w kodzie binarnym (w postaci ciagu bitow utworzonego z kodow ASCII poszczegolnych znakow wiadomosci w kolejnosci od najstarszego bitu pierwszego znaku do najmlodszego bitu ostatniego znaku). 2) Ukryciu i-tego bitu wiadomosci w i-tym wierszu pliku tekstowego w ten sposob, ze: - i-ty wiersz konczy sie ostatnim roznym od spacji znakiem i-tego wiersza oryginalnego pliku tekstowego, o ile i-tym bitem jest zero; - i-ty wiersz konczy sie pojedyncza spacja, o ile i-tym bitem jest jeden; - n+1 wiersz konczy sie dwiema nastepujacymi po sobie spacjami (n jest dlugoscia kodu); - pozostale wiersze sa niezmienione. Jedynymi zmianami jest dopisanie lub usuniecie spacji z konca wierszy zgodnie z powyzszymi regulami. Pozostale znaki w wierszu pozostaja niezmienione. Wiersze w pliku oraz wiadomosc moga miec dowolna dlugosc. WYWOLANIE --------- Program bedzie wywolywany z dwoma lub trzema argumentami w linii komend. Jesli program wywolano z trzema argumentami, to: - pierwszy z nich jest nazwa pliku tekstowego, w ktorym nalezy ukryc wiadomosc; - drugi jest nazwa pliku binarnego zawierajacym wiadomosc do ukrycia; - trzeci jest nazwa pliku wynikowego. Jesli program wywolano z dwoma argumentami, to: - pierwszy z nich jest nazwa pliku tekstowego zawierajacego ukryta wiadomosc - drugi jest nazwa pliku binarnego zawierajacego odczytana wiadomosc. WYJSCIE ------- Program powinien tworzyc odpowiednie pliki. Jesli ktorys z plikow wejsciowych nie istnieje, to program wypisuje na standardowe wyjscie komunikat BRAK PLIKU Jesli plik, w ktorym nalezy ukryc wiadomosc ma za malo wierszy, to program wypisuje na standardowe wyjscie komunikat ZA KROTKI PLIK