projekt 3 specyfikacja techniczna projekt3

Student: Bartosz Janaszek (1M10) bjanaszek@stud.elka.pw.edu.pl

Prowadzący: J.Olszyna

Podstawy programowania (PRM) – projekt

Specyfikacja funkcjonalna

Temat: Szyfrowanie i deszyfrowanie – szyfr vigenere’a (z obsługą ncurses.h)

Algorytm rozwiązania zadania:

Do rozwiązania zadania będzie wykorzystany prosty algorytm wykorzystujący zapis tablicy ASCII i proste działania binarne. Posługując się podanym kluczem oraz danymi wejściowymi program program znajduje odpowiednie litery.

*wersja poprawiona programu(z grafiką) nie zmienia w sposób znaczący działania funkcji. Poprawia jedynie „komfort” obsługi.

Sposób działania algorytmu:

Jako pierwszym funkcja zajmuje się wyświetleniem tła i grafiki. Następnie użytkownik deklaruje użycie klucza (istnieją trzy możliwości: własny klucz, klucz losowy oraz klucz używany podczas poprzedniego uruchomienia) po czym poprawiany jest zapis klucza(wg warunków jest ono podane małymi literami) odróżniając odpowiednio liter, znaki specjalne itd. Klucz jest formatowany odpowiednio do tekstu wejściowego, a następnie zapisany do pliku(temp.txt). Następnie program oddaje użytkownikowi dwie możliwości: szyfrowanie, bądź deszyfrowanie. W zasadzie obie te opcje są w wykonaniu dość do siebie podobne. Ich wykonanie polega na pobraniu odpowiednich znaków z plików (temp.txt i start.txt) i poddaniu ich odp. Działaniom. Tak, by uzyskany został efekt docelowy.

Struktury danych: Program będzie obsługiwał trzy pliki tekstowe. Następnie będzie operował na pojedynczych znakach łańcuchów (o pojemnościach temp[200], słowa[200], klucz[20]. Program używa również struktur n-curses. Operacje w nim dokonywane są za pomocą strzałek (góra, dół- sterowanie kursorem, prawo- wybór, lewo- powrót do poprzedniego menu).

Podział na funkcje:

W zasadzie jedyną funkcją jest funkcja main:

  1. Wczytywanie pliku start i zapisywanie go do tablicy „słowa”

  2. Podanie klucza kodowego lub odpowiednio wybranie innej opcji pozyskania klucza(switch).

    1. Klucz wprowadzenie klucza [rzez użytkownika

    2. Losowy 8 znakowy klucz

    3. Klucz zapisany w pamięci

  3. Formatowanie klucza i zapisywanie go pliku temp.txt

  4. Za pomocą funkcji switch użytkownik otrzymuje dwie możliwości: 1.szyfrowanie 2.deszyfrowanie

    1. Wczytywanie znaków z pliku temp.txt do tablicy temp

      1. Szyfrowanie(case 1) – program szyfruje za pomocą odpowiednich działań i zapisuje je do pliku koniec.txt

      2. Deszyfrowanie (case 2)– program deszyfruje za pomocą odpowiednich działań i zapisuje je do pliku koniec.txt

Literatura

Wróblewski P. Algorytmy - struktury danych i techniki programowania.


Wyszukiwarka

Podobne podstrony:
Rozporządzenie Ministra Infrastruktury w sprawie szczegółowego zakresu i formy dokumentacji projekto
Rozporządzenie w sprawie szczegółowego zakresu i formy dokumentacji projektowej, specyfikacji techni
Specyffikaczka techniczka
SPECYFIKACJA TECHNICZNA?TONU PRZEZNACZONEGO DO WYKONANIAPŁYTY?TONOWEJ GALERII HANDLOWEJ
Specyfikacja Techniczna SST Roboty?tonowe
01.02.04, Specyfikacje Techniczne
Specyfikacja Techniczna - Blok mieszkalny wielorodzinny, Budownictwo1, Specyfikacje Techniczne
Specyfikacje techniczne, Architektura krajobrazu- różne
Specyfikacja Techniczna SST Prefabrykaty
Specyfikacja Techniczna SST Ścianki Szczelne
specyfikacja techniczna
Specyfikacja Techniczna
Specyfikacje techniczne wykoniania i odbioru robót budowlanych, Studia, V rok, V rok, X semestr, Kos
Specyfikacja Techniczna Przykład
02.01.01, Specyfikacje Techniczne
nawierzchnie, SST chudbet, SZCZEGÓŁOWA SPECYFIKACJA TECHNICZNA

więcej podobnych podstron