Witam. Na wstepie chciałem zaznaczyć że to mój pierwszy program(nie licząc drobnych programików robionych na zajeciach), wiec prosze o wyrozumiałośc. Mój problem polega na tym, że musze jako prace zaliczeniową napisać program konwertujący tekst na alfabet Braile'a. Mam już część programu napisaną niestety brakuje najważniejszego czyli samego konwertowania. Ogólnie mam pomysł jak to ma wyglądać i naprawde kilka godzin straciłem na realizaje tego co wykombinowałem, ale niestety nic nie wychodzi. Moja wizja jest taka: w alfabecie Braille'a znaki sa zbudowane z punktów i pustych pól (w jednym znaku są dwie kolumny po 3 wiersze) ja wymyśliłem że do każdego znaku przyporządkuje tablice znakowa z "0" jako punkty i "_" jako puste miejsca. Program miałby działać tak:
- wpisujemy tekst który program uznaje jako tablice znakową- scanf -> tablica[]
- program tworzy tablice z pierwszego słowa (do spacji)
- program wczytuje przypisane tablice dla poszczególnych liter
- tworzy jedną tablice z wczytanych wczesniej i wyswietla ją.
- wraca do miejsca w którym napotkał spacje
- spacje traktuje jako przejście do nowej linii
- wczytuje kolejny wyraz
- po przekonwertowaniu tekstu wpisujemy nowy tekst do tłumaczenia lub wracamy do menu po przez wcisniencie ESC.
A to stworzyłem do tej pory:
#include<stdio.h>
#include<stdlib.h>
#include<conio.h>
void instrukcja()
{
system("cls");
printf("\n\n\n ------------------------ INSTRUKJA OBSLUGI PROGRAMU ------------------------\n\n\n");
printf("\n Program obsluguje sie po przez wybieranie odpowiednich klawiszy z numerami\n");
printf("\n przypisanymi im w menu. Menu z opisami klawiszy jakie nalezy wybrac w celu \n");
printf("\n wykonywania wymaganej czynnosci podane sa na poczatku lub na koncu kazdej\n");
printf("\n czesci programu(przykladem jest menu glowne).\n");
printf("\n\n\n ++++++++++++++++++++++++++++++++++ MENU ++++++++++++++++++++++++++++++++++++++ \n");
printf("\n\t\t\t> ESC. Powrot do menu glownego < \n");
printf("\n\n ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ \n");
while(getch()!=27);
}
void na_braille()
{
system("cls");
do{
printf("\n\n\tWpisz tekst(bez polskich znakow) ktory chcesz przekonwertowac na\n\talfabet BRAILLE'A, a nastepnie potwierdz ENTER'EM\n\n");
printf("\n\n\n");
char A[3][2]= {
{'0','_'},
{'_','_'},
{'_','_'}
};
char B[3][2]= {
{'0','_'},
{'0','_'},
{'_','_'}
};
char C[3][2]= {
{'0','0'},
{'_','_'},
{'_','_'}
};
char D[3][2]= {
{'0','0'},
{'_','0'},
{'_','_'}
};
char E[3][2]= {
{'0','_'},
{'_','0'},
{'_','_'}
};
char F[3][2]= {
{'0','0'},
{'0','_'},
{'_','_'}
};
char G[3][2]= {
{'0','0'},
{'0','0'},
{'_','_'}
};
char H[3][2]= {
{'0','_'},
{'0','0'},
{'_','_'}
};
char I[3][2]= {
{'0','0'},
{'_','_'},
{'0','_'}
};
char J[3][2]= {
{'0','0'},
{'_','0'},
{'0','_'}
};
char K[3][2]= {
{'0','_'},
{'_','0'},
{'0','_'}
};
char L[3][2]= {
{'0','_'},
{'0','_'},
{'0','_'}
};
char M[3][2]= {
{'0','0'},
{'_','_'},
{'0','_'}
};
char N[3][2]= {
{'0','0'},
{'_','0'},
{'0','_'}
};
char O[3][2]= {
{'0','_'},
{'_','0'},
{'0','_'}
};
char P[3][2]= {
{'0','0'},
{'0','_'},
{'0','_'}
};
char Q[3][2]= {
{'0','0'},
{'0','0'},
{'0','_'}
};
char R[3][2]= {
{'0','_'},
{'0','0'},
{'0','_'}
};
char S[3][2]= {
{'_','0'},
{'0','_'},
{'0','_'}
};
char T[3][2]= {
{'_','0'},
{'0','0'},
{'0','_'}
};
char U[3][2]= {
{'0','_'},
{'_','_'},
{'0','0'}
};
char V[3][2]= {
{'0','_'},
{'0','_'},
{'0','0'}
};
char W[3][2]= {
{'_','0'},
{'0','0'},
{'_','0'}
};
char X[3][2]= {
{'0','0'},
{'_','_'},
{'0','0'}
};
char Y[3][2]= {
{'0','0'},
{'_','0'},
{'0','0'}
};
char Z[3][2]= {
{'0','_'},
{'_','0'},
{'0','0'}
};
/*konwertująca część programu*/
printf("\n\n\n ++++++++++++++++++++++++++++++++++ MENU ++++++++++++++++++++++++++++++++++++++ \n");
printf("\n\t\t> ESC. Powrot do menu glownego < \n");
printf("\n\n ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ \n");
}
while(getch()!=27);
}
void o_programie()
{
system("cls");
printf("\n\n\n\n\t napis jakis jak sie swieci znaczy zakolilo\n\n\n");
}
int main()
{ A:
system("cls");
printf("\n\n\n --------- Wcisnij klawisz z odpowiednim numerem aby wykonac czynnosc --------- \n");
printf("\n\n\n ++++++++++++++++++++++++++++++++++ MENU ++++++++++++++++++++++++++++++++++++++ \n");
printf("\n\t\t> 1. Instrukcja obslugi < \n");
printf("\n\t\t> 2. Konwersja alfabateu LACINSKIEGO na BRAILLE'A < \n");
printf("\n\t\t> 3. O programie i tworcy <\n");
printf("\n\t\t> 4. ZAKONCZ DZIALANIE PROGRAMU <\n");
printf("\n\n ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ \n");
printf("\n\t\t\tPODAJ OPCJE...\n");
switch (getch())
{
case '1':{
instrukcja();
}
break;
case '2' :{
na_braille();
}
break;
case '3' :{
o_programie();
}
break;
case '4' :{
return 0;
}
break;
default: {
printf("Mistrzuniu pomyleczka wynikla - nie ten znak ZIOM!!!\n");
}}
system("PAUSE"); goto A;
return 0;
}
tego co do tej pory wykombinowałem odnośnie samej konwersji nawet nie wrzucałem bo nic z tego nie działa same błedy wychodzą.
Prosze o pomoc bo musze juz na dniach to oddać.