Ãëàâíàÿ      Ó÷åáíèêè - Ðàçíûå     Ëåêöèè (ðàçíûå) - ÷àñòü 33

 

Ïîèñê            

 

Òðàíñë³òåðàö³ÿ óêðà¿íîìîâíèõ òåêñò³â ëàòèíñüêèìè ë³òåðàìè

 

             

Òðàíñë³òåðàö³ÿ óêðà¿íîìîâíèõ òåêñò³â ëàòèíñüêèìè ë³òåðàìè

̳í³ñòåðñòâî îñâ³òè ³ íàóêè Óêðà¿íè

Êóðñîâà ðîáîòà

Ç äèñöèïë³íè "Ïðîáëåìíî-îð³ºíòîâàí³ ìîâè ïðîãðàìóâàííÿ"

íà òåìó

Òðàíñë³òåðàö³ÿ óêðà¿íîìîâíèõ òåêñò³â ëàòèíñüêèìè ë³òåðàìè

Ëüâ³â-2011

Çì³ñò

Âñòóï

1. Îãëÿä ë³òåðàòóðè

2. Ôîðìóëþâàííÿ çàäà÷³

3. Àëãîðèòì ðîçâ’ÿçàííÿ êîì³ñ³¿

4. Ïðîãðàìí³ ðåàë³çàö³¿ àëãîðèòìó

5. ²íñòðóêö³ÿ êîðèñòóâà÷åâ³ ïðîãðàìè

6. Êîíòðîëüí³ ïðèêëàäè òà àíàë³ç ðåçóëüòàò³â ¿õ ðåàë³çàö³¿

Âèñíîâêè

˳òåðàòóðà

Äîäàòêè

Âñòóï

Ó íàø³ äí³ êîìï’þòåðí³ òåõíîëî㳿 â³ä³ãðàþòü íåàáèÿêó ðîëü ó æèòò³ ëþäñòâà! Âîíè äîïîìàãàþòü éîìó ñïðàâëÿòèñü ³ç íàéð³çíîìàí³òí³øèìè ³ íàéñêëàäí³øèìè çàâäàííÿìè íàáàãàòî øâèäøå é ïðîñò³øå, í³æ öå áóëî á ïîòð³áíî ðîáèòè áåç êîìï’þòåðà.

Òàê, â³í çà äîë³ ñåêóíäè îá÷èñëèòü íàéñêëàäí³ø³ ôîðìóëè, à êîðèñòóâà÷ó ïîòð³áíî âñüîãî-íà-âñüîãî ââåñòè ïîòð³áí³ äàí³! Íå ïîòð³áíî á³ëüøå âåëè÷åçíèõ àðõ³âíèõ øàôîê – íåþ ñëóãóº æîðñòêèé äèñê êîìï’þòåðà, íà ÿêîìó äóæå ëåãêî çíàéòè ïîòð³áíó ³íôîðìàö³þ. À ìóëüòèìåä³éí³ ïëåºðè, ìîá³ëüí³ òåëåôîíè ðîáëÿòü íàøå æèòòÿ òàêîæ ³ ö³êàâ³øèì.

Äóæå ÷àñòî ìè ïèøåìî ïîâ³äîìëåííÿ íà ìîá³ëüíîìó òåëåôîí³ ñâî¿ì äðóçÿì, àëå äåõòî ïèøå ¿õ íåçâè÷àéíèì ñïîñîáîì – çàïèñóº óêðà¿íñüê³ ñëîâà, àëå ë³òåðàìè ç ëàòèíñüêî¿ ðîçêëàäêè, òîìó ùî òàêèõ ñèìâîë³â ó 1 ñìñ âì³ùàºòüñÿ âäâ³÷³ á³ëüøå! Íàçèâàºìî òàêó ìàíåðó ïèñàííÿ ñëåíãîì, à íàñïðàâä³ ìè âèêîðèñòîâóºìî òðàíñë³òåðàö³þ – îäíó ç êàòåãîð³é, ÿêó âèâ÷ຠìîâîçíàâñòâî.

Òðàíñë³òåðàö³ÿ (òðàíñ ³ ëàò. litera — áóêâà) — ìåõàí³÷íà ïåðåäà÷à òåêñòó é îêðåìèõ ñë³â, ÿê³ çàïèñàí³ îäí³ºþ ãðàô³÷íîþ ñèñòåìîþ, çàñîáàìè ³íøî¿ ãðàô³÷íî¿ ñèñòåìè ïðè äðóãîðÿäí³é ðîë³ çâóêîâî¿ òî÷íîñò³, òîáòî ïåðåäà÷à îäí³º¿ ïèñåìíîñò³ ë³òåðàìè ³íøî¿.

Òðàíñë³òåðàö³ÿ â³äð³çíÿºòüñÿ â³ä òðàíñêðèïö³¿ òèì, ùî ìຠíà ìåò³ òî÷íó ôîíåòè÷íó àáî ôîíîëîã³÷íó ïåðåäà÷ó çâóê³â. Íàéêðàùà òðàíñë³òåðàö³ÿ òàêà, ÿêà äîçâîëÿº ëåãêî âåðíóòèñÿ ïðè ïîòðåá³ äî îðèã³íàëüíî¿ ñèñòåìè ïèñüìà.


1. Îãëÿä ë³òåðàòóðè

ïðîãðàìà òðàíñë³òåðàö³ÿ òåêñò ãðàô³÷íà

Ñèñòåìà òðàíñë³òåðóâàííÿ óêðà¿íñüêèõ òåêñò³â ç êèðèëèö³ íà ëàòèíèöþ çã³äíî ç óçàãàëüíåíèìè âèìîãàìè ì³æíàðîäíèõ ñòàíäàðò³â, à òàêîæ óêðà¿íñüêèõ íàóêîâö³â ìຠòàê³ âëàñòèâîñò³:

► íîðìàòèâí³ñòü (ïîâíà â³äïîâ³äí³ñòü ñèñòåìè äî óêðà¿íñüêîãî ïðàâîïèñó, ùî ìîæå çðîáèòè ¿¿ íåâ³äîêðåìíîþ ÷àñòèíîþ öüîãî ìîâíîãî çàêîíó)

► áåçïîìèëêîâ³ñòü (ñèñòåìà íå âíîñèòü ó òåêñòè ³íôîðìàö³éíèõ ïîìèëîê)

► ñèñòåìí³ñòü (ïîáóäîâàí³ñòü íà îñíîâ³ ïðàâèë, çàêëàäåíèõ ó òàáëèöþ òðàíñë³òåðàö³¿)

► óí³âåðñàëüí³ñòü (çäàòí³ñòü ñèñòåìè âèð³øóâàòè ð³çíîìàí³òí³ çàäà÷³ ì³æíàðîäíîãî îáì³íþâàííÿ òåêñòîâîþ ³íôîðìàö³ºþ)

► ë³òåðîîñíàùåí³ñòü (çàáåçïå÷åí³ñòü êîìï’þòåðíîãî âàð³àíòó ñèñòåìè ïîòð³áíèì íàáîðîì ëàòèíè÷íèõ ë³òåð ç ä³àêðèòèêàìè)

► îäíîìîâí³ñòü (çîð³ºíòîâàí³ñòü ëèøå íà îäíó ìîâó – óêðà¿íñüêó)

► òðàäèö³éí³ñòü (óðàõîâàíî òðàäèö³éí³ ôîíåòè÷í³ òà åñòåòè÷í³ íîðìè óêðà¿íñüêî¿ ìîâè, ñâ³òîâ³ òðàäèö³¿ âæèâàííÿ ëàòèíñüêî¿ àáåòêè, ñòâîðåííÿ òðàíñë³òåðàö³éíèõ ïàð, íàéáëèæ÷èõ çà âèìîâîþ ³ ì³æíàðîäíèì òðàíñêðèáóâàííÿì).

► ïîâíîòà (çäàòí³ñòü ñèñòåìè ñòðàíñë³òåðóâàòè áóäü-ÿê³ òåêñòè, çîêðåìà ç³ ñêîðî÷åííÿìè òà ÷óæîìîâíèìè çàïîçè÷åííÿìè)

► îäíîçíà÷í³ñòü (êîæíó ç îäíàêîâèõ óêðà¿íñüêèõ ë³òåð ïåðåäຠòîþ ñàìîþ óí³êàëüíîþ ëàòèíñüêîþ ë³òåðîþ)

► çâîðîòí³ñòü (çäàòí³ñòü òî÷íî â³äòâîðþâàòè êèðèëè÷íèé òåêñò ³ç ñòðàíñë³òåðîâàíîãî ëàòèíè÷íîãî)

► çàïðîãðàìîâí³ñòü (ïðèäàòí³ñòü äî ðîçðîáëåííÿ ïðîãðàìíèõ çàñîá³â òà êîìï’þòåðíîãî çàñòîñîâóâàííÿ ñèñòåìè)

► ïðîñòîòà (çäàòí³ñòü øâèäêî ñòðàíñë³òåðóâàòè òåêñò àâòîìàòè÷íèìè çàñîáàìè ÷è âëàñíîðó÷íî).

Âèìîãà äî êîðèñòóâà÷³â: áåçïîñåðåäí³ñòü (íå áóäóâàòè ñëîâà ÷åðåç ìîâó-ïîñåðåäíèêà).

Ó ïðîåêò³ ÄÑÒÓ âðàõîâàíî âèìîãè ì³æíàðîäíîãî ñòàíäàðòó ISO 9: 1995(E) ùîäî ñòâîðåííÿ íàö³îíàëüíîãî ñòàíäàðòó ì³æíàðîäíîãî ð³âíÿ.

Òðàíñë³òåðóâàííÿ â³äáóâàºòüñÿ çã³äíî ç òðàíñë³òåðàö³éíîþ òàáëèöåþ, ÿêà ñêëàäàºòüñÿ ç òðàíñë³òåðàö³éíèõ ïàð, äå ïàðà – öå êèðèëè÷íà ë³òåðà ³ â³äïîâ³äíà äî íå¿ ëàòèíè÷íà ë³òåðà, ùî ìàþòü îäíàêîâó ÷è ïîä³áíó âèìîâó. Ñåðåä 32-õ ëàòèíè÷íèõ ë³òåð- â³äïîâ³äíèê³â º 8 ç ä³àêðèòèêàìè (º-ê, æ-ž, ¿-ï, ÷-č, ø-š, ù-ŝ, þ-û, ÿ-â) òà 24 âèáðàí³ ç îñíîâíî¿ ëàòèíèö³. Äîáèðàííþ ïàð äîïîì³ã àíàë³ç ñòàíäàðòíèõ ñèñòåì òðàíñë³òåðóâàííÿ (ISO/R9-1968(Å), ISO 9:1995(Å), ÃÎÑÒ 7.79-2000 ÑÈÁÈÄ, ÃÎÑÒ 16876-71, ïðîåêòó ÄÑÒÓ -2002, òà ÷èñëåííèõ ïðîïîçèö³é ùîäî ìîäèô³êàö³¿ ñèñòåì.

Óñ³ òðàíñë³òåðàö³éí³ ïàðè ç³ çãàäàíèõ ñòàíäàðò³â, ÿê³ ñïîòâîðþþòü óêðà¿íñüêå ïèñüìî íà ëàòèíèö³ (â-v, ã-g, ´-ġ, è-i, ³-ì, õ-h ), â³äêèíåíî é çàì³íåíî íà ïðèéíÿòí³ø³ (â-w, ã-h, ´-g, è-y, ³-i, õ-x ).

Òðàíñë³òåðàö³éíà òàáëèöÿ

Íîìåð ˳òåðà êèðèëèö³ ˳òåðà ëàòèíèö³
1 à, À a, A
2 á, Á b, B
3 â, Â w, W
4 ã, Ã h, H
5 ´, ´ g, G
6 ä, Ä d, D
7 å, Å e, E
8 º, ª ê, Ê
9 æ, Æ ž, Ž
10 ç, Ç z, Z
11 è, È y, Y
12 ³, ² i, I
13 ¿, ¯ ï, Ï
14 é, É j, J
15 ê, Ê k, K
16 ë, Ë l, L
17 ì, Ì m, M
18 í, Í n, N
19 î, Î o, O
20 ï, Ï p, P
21 ð, Ð r, R
22 ñ, Ñ s, S
23 ò, Ò t, T
24 ó, Ó u, U
25 ô, Ô f, F
26 õ, Õ x, X
27 ö, Ö c, C
28 ÷, × č, Č
29 ø, Ø š, Š
30 ù, Ù ŝ, Ŝ
31 þ, Þ û, Û
32 ÿ, ß â, Â
33 ü '
34 ’ (àïîñòðîô) ’ (àïîñòðîô)

Ñèñòåìó íàéïðîñò³øå çðåàë³çóâàòè íà ñó÷àñíîìó êîìï’þòåð³, äå â òàáëèö³ ñèìâîë³â º äîñòàòí³é íàá³ð ëàòèíè÷íèõ ë³òåð ç ä³àêðèòèêàìè.

Ñèñòåìó òðàíñë³òåðóâàííÿ ïîðåêîìåíäîâàíî âæèâàòè ñêð³çü, äå öå ìîæëèâî, îñê³ëüêè âîíà íàéïðîñò³øà, áåçïîìèëêîâà é äîòðèìóºòüñÿ óêðà¿íñüêîãî ïðàâîïèñó.

2. Ôîðìóëþâàííÿ çàäà÷³

Äàíà ïðîãðàìà ïîâèííà òðàíñë³òåðóâàòè çàäàíèé òåêñò. Òàêîæ ÿ ïîâèíåí ðåàë³çóâàòè ó ö³é ïðîãðàì³ ââåäåííÿ òåêñòó ç êëàâ³àòóðè àáî ç÷èòóâàííÿ éîãî ³ç ôàéëó. Äëÿ ðåàë³çàö³¿ ö³º¿ ïðîãðàìè ÿ âèêîðèñòîâóþ óñ³ ìîæëèâ³ îïåðàòîðè ìîâè Ñ, ³ äëÿ ÷èòàííÿ ç êëàâ³àòóðè «ïðîïàò÷óþ» ñèñòåìó

Ìåòîþ ðîçâ’ÿçàííÿ ö³º¿ çàäà÷³ º çàïèñ óêðà¿íîìîâíèõ ñë³â ëàòèíñüêèìè ë³òåðàìè.  ðåçóëüòàò³ ðåàë³çàö³¿ êîðèñòóâà÷ ïîâèíåí îòðèìàòè òðàíñë³òåðàö³þ ïîòð³áíîãî éîìó òåêñòó. Òåêñò ìîæå áóòè íàéð³çíîìàí³òí³øèì.

3. Ïðîãðàìí³ ðåàë³çàö³¿ àëãîðèòìó

Õàðàêòåðèñòèêà ïðîãðàìè:

Íàçâà – Translit.cpp

Ðîçì³ð – 6,42 ÊÁ

ʳëüê³ñòü ðÿäê³â - 270

Ïðèçíà÷åííÿ ïðîãðàìè:

Äàíà çàäà÷à â³äíîñèòüñÿ äî êëàñó çàäà÷ ïî ðîáîò³ ç áàçàìè äàíèõ.

Ìåòîþ ðîçâ’ÿçàííÿ äàíî¿ çàäà÷³ º ïîøóê êîíêðåòíîãî çàïèñó â áàç³ äàíèõ, à òàêîæ ðåäàãóâàííÿ áàçè äàíèõ.

Âõ³äíà ³íôîðìàö³ÿ

Âõ³äíîþ ³íôîðìàö³ºþ äëÿ ïðîãðàìè º òåêñòîâèé ôàéë, ùî ì³ñòèòü ðå÷åííÿ, çàïèñàí³ óêðà¿íñüêîþ ìîâîþ

Âõ³äíèé ôàéë ìຠíàçâó - input.txt;

Éîãî ðîçì³ð – 1 Êá

Ðåçóëüòóþ÷à ³íôîðìàö³ÿ

Ïðè âèêîíàíí³ ïðîãðàìà âèâîäèòü ñëîâà àáî ðå÷åííÿ,çàïèñàí³ ëàòèíñüêèìè áóêâàìè. Ïðè áóäü-ÿê³é çì³í³ áóêâè ÷è ñëîâà ó ôàéë³ ïðè ïåðåçàïóñêó ïðîãðàìè çì³íþºòüñÿ íàø ðåçóëüòàò.

Ñòðóêòóðà ïðîãðàìè

Çàãîëîâí³ ôàéëè:

· stdio.h - ñòàíäàðòíèé çàãîëîâî÷íèé ôàéë ââåäåííÿ/âèâåäåííÿ äàíèõ;

· stdlib.h - çàãîëîâî÷íèé ôàéë ñòàíäàðòíî¿ á³áë³îòåêè çàãàëüíîãî ïðèçíà÷åííÿ;

· string.h - çàãîòîâî÷íèé ôàéë, ùî ì³ñòèòü ôóíêö³¿ äëÿ ðîáîòè ç ñèìâîëüíèìè ðÿäêàìè

· conio.h – çàãîëîâî÷íèé ôàéë, ùî ì³ñòèòü ôóíêö³¿ äëÿ êîíñîëüíîãî ââåäåííÿ/âèâåäåííÿ äàíèõ

Ôóíêö³¿

1.int main (void) – Çàãîëîâíà ôóíêö³ÿ ïðîãðàìè. Ïàðàìåòð³â íå ìàº.

2.ktl (char s) - ôóíêö³ÿ, ÿêà ïðèçíà÷åíà äëÿ òðàíñë³òåðàö³¿ òåêñòó, ââåäåíîãî ç êëàâ³àòóðè.

3. ktl1(char s) – ôóíêö³ÿ, ÿêà ïðèçíà÷åíà òðàíñë³òåðàö³¿ òåêñòó, ÿêèé ç÷èòóºòüñÿ ³ç ôàéëó.

Òàáëèöÿ ³äåíòèô³êàòîð³â ïðîãðàìè

· *fp/*fp1 – âêàç³âíèêè ç òèïîì FILE, ùî âêàçóþòü íà ôàéëè, ç ÿêîãî ÷èòàºòüñÿ/â ÿêèé çàïèñóºòüñÿ áàçà äàíèõ.

· k - çì³ííà òèïó int, ùî íåîäíîðàçîâî îãîëîøóâàëàñü, ÿê ëîêàëüíà çì³ííà â ð³çíèõ ôóíêö³ÿõ, â ÿêîñò³ ë³÷èëüíèê³â öèêëó, ì³òîê òà ³í.

· ñ- çì³ííà òèïó char, ç ÿêîþ ìè ïîâ’ÿçóºìî ó ïðîãðàì³ ç÷èòàí³ àáî ââåäåí³ ñèìâîëè.

Ñåðåäîâèùå ðåàë³çàö³¿ ïðîãðàì

Îïåðàö³éíà ñèñòåìà – MS-DOS;

Äëÿ òðàíñë³òåðàö³¿ òåêñòó, ââåäåíîãî ç êëàâ³àòóðè, çàñòîñóâàâ óêðà¿í³çàòîð ñåðåäîâèùà UKRDOS_2.

Íåîáõ³äí³ äîïîì³æí³ òåõí³÷í³ ïðèñòðî¿ – ìîí³òîð, êëàâ³àòóðà.

Òåõíîëîã³ÿ âèêîíàííÿ òà â³äëàãîäæåííÿ ïðîãðàì

Äëÿ íàïèñàííÿ ïðîãðàìè âèêîðèñòîâóâàëîñü ñåðåäîâèùå ïðîãðàìóâàííÿ BORLAND C . Äëÿ â³äëàãîäæåííÿ òà êîìï³ëÿö³¿ ïðîãðàìè âèêîðèñòîâóâàëèñü òàê³ éîãî ìîæëèâîñò³, ÿê:

· Compile(Alt+F9) – êîìï³ëÿö³ÿ ïðîãðàìè;

· Run(Ctrl+F9) - âèêîíàííÿ ïðîãðàìè;

· Trace into(F7) – ïîêðîêîâå âèêîíàííÿ ïðîãðàìè;


4. Ïðîãðàìí³ ðåàë³çàö³¿ àëãîðèòìó

ÁËÎÊ-ÑÕÅÌÀ ÏÐÎÃÐÀÌÈ


5. ²íñòðóêö³ÿ êîðèñòóâà÷åâ³

Êîðèñòóâà÷ ïîâèíåí çàïóñòèòè ïðîãðàìó. ϳñëÿ ÷îãî íà ðîáî÷îìó ñòîë³ ç’ÿâèòüñÿ â³êíî:

Ó â³êí³ êîðèñòóâà÷ ïîáà÷èòü ïóíêòè ìåíþ, ï³ñëÿ ÷îãî â³í ïîâèíåí íàòèñíóòè íà îäíó ³ç êëàâ³ø 1,2,3 àáî 4, ³ çìîæå ïîòðàïèòè â îäèí ³ç ïóíêò³â. Íàïðèêëàä êîðèñòóâà÷ íàòèñíóâ êëàâ³øó 1:

Íà åêðàí âèâîäèòüñÿ òåêñò, ÿêèé ì³ñòèòüñÿ ó ôàéë³, àëå ó íå÷èòàáåëüíîìó âèãëÿä³, ùî ñïðè÷èíåíå íåñï³âïàäàííÿì êîäóâàííÿ ó Windows XP òà ó Borland C.

Ïîâåðíóâøèñü â ðîáî÷å ìåíþ, êîðèñòóâà÷ ïîâèíåí çíîâó ââåñòè îäíó ³ç êëàâ³ø íàïðèêëàä êîðèñòóâà÷ íàòèñêຠêëàâ³øó 2:

Êîðèñòóâà÷ó ïðîïîíóºòüñÿ ââåñòè ç êëàâ³àòóðè ðå÷åííÿ óêðà¿íñüêîþ ìîâîþ. Äëÿ öüîãî ïîòð³áíî íàòèñíóòè êëàâ³øó Right Shift.

ϳñëÿ íàòèñêàííÿ êëàâ³ø³ Enter íà åêðàí³ ç’ÿâèòüñÿ òðàíñë³òåðàö³ÿ ââåäåíîãî âèùå òåêñòó.

Êîðèñòóâà÷ ìîæå çíîâó ïîâåðíóòèñü ó ìåíþ ïðîãðàìè, ³, íàïðèêëàä, íàòèñíóòè êëàâ³øó 4. Íà åêðàí áóäå âèâåäåíî:


6. Êîíòðîëüí³ ïðèêëàäè òà àíàë³ç ¿õ ðåàë³çàö³¿

Äëÿ â³äëàãîäæåííÿ òà ïåðåâ³ðêè ïðàöåçäàòíîñò³ ïðîãðàìè ÿ âèêîðèñòîâóâàâ òàê³ òåñòîâ³ íàáîðè:

1. Ó ôàéë input.txt çàíåñåíî òàêèé òåêñò: «Êóðñîâó ðîáîòó âèêîíàâ Ãåëåø Þð³é».

Ó ôàéë output.txt áóäå âíåñåíî: «Kyrsovy roboty vukonav Helew @rij».

2. Ç êëàâ³àòóðè ââåäåíî: «Ñåñ³ÿ ìàéæå çàê³í÷èëàñü!».

Îòðèìàºìî ðåçóëüòàò: «Sesi9 maj*e zakin4ulas6!».

Çà ðåçóëüòàòàìè òåñò³â ÿê³ ÿ ïðîâîäèâ ìîæíà ñêàçàòè, ùî ïðîãðàìà ïðàöþº ÿê³ñíî ³ øâèäêî òà áåç æîäíî¿ ïîìèëêè.


Âèñíîâîê

 ðåçóëüòàò³ ðîáîòè íàä çàâäàííÿì áóëî ñôîðìîâàíî ê³íöåâèé ïðîäóêò – ïðîãðàìó: òðàíñ ë³òåðàòîð óêðà¿íîìîâíèõ òåêñò³â ëàòèíñüêèìè ë³òåðàìè.

 í³é ðåàë³çîâàí³ íàñòóïí³ ìîæëèâîñò³:

· Ìîæëèâ³ñòü âèêîíóâàòè òðàíñë³òåðàö³þ, ç÷èòóþ÷è òåêñò ³ç ôàéëó ³ çàïèñóþ÷è éîãî ó âèõ³äíèé ôàéë.

· Ìîæëèâ³ñòü âèêîíóâàòè òðàíñë³òåðàö³þ ÷åðåç ââ³ä òåêñòó ç êëàâ³àòóðè.

·  ïðîãðàì³ ðåàë³çîâàíî çðó÷íèé òà çðîçóì³ëèé ³íòåðôåéñ.

Äàíà ïðîãðàìà äëÿ ç÷èòóâàííÿ òåêñòó ç êëàâ³àòóðè ïîòðåáóº ï³äêëþ÷åííÿ ñïåö³àëüíîãî äðàéâåðà UKRDOS_2.

˳òåðàòóðà

1. Øïàê Ç.ß. - Ìîâà ïðîãðàìóâàííÿ Ñ

2. Êåðíèãàí Á., Ðèò÷è Ä. - Ìîâà ïðîãðàìóâàííÿ Ñè

3. ²íòåðíåò - http://uk.wikipedia.org/wiki/Òðàíñë³òåðàö³ÿ

4. ²íòåðíåò - http://lp.edu.ua/tc.terminology/TK_translit.htm

5. ²íòåðíåò - http://lukom.org/Pages/Blog.aspx/transliteration


Äîäàòîê

Òåêñò ïðîãðàìè

#include<stdio.h>

#include<conio.h>

#include<string.h>

#include<stdlib.h>

char ktl1(char s);

char ktl(char s);

void main(void)

{

m:

clrscr();

printf("\t\t\t Š“�‘Ž‚€ �Ž�Ž’€ ­ ⥬ã:\n\n");

printf("\t\t\"’à ­á«iâ¥à æiï ãªà õ­®¬®¢­¨å ⥪áâi¢\"\n\n");

printf("\n 1)�®¡®â § ä ©« ¬¨");

printf("\n 2)‚¢¥¤¥­­ï § ª« ¢i âãà¨");

printf("\n 3)‚¨åi¤ § ¯à®£à ¬¨");

printf("\n 4)�i¤ª §ª ª®à¨áâ㢠祢i=)");

printf("\n\n\t‚¢¥¤iâì ­®¬¥à ¯ã­ªâã ");

int k;

switch(k=getch()){

case '1': clrscr();

char c,res1;

FILE *fp,*fp1;

if((fp=fopen("E:\\input.txt","r"))==NULL)

{

puts("‚åi¤­¨© ä ©« ­¥ §­ ©¤¥­®");getch();

exit(1);

}

if((fp1=fopen("E:\\output.txt","w"))==NULL)

{

puts("ERROR");getch();

exit(1);

}

puts("’¥ªáâ, é® ¬iá⨢áï ã ä ©«i\n");

rewind(fp);

while(!feof(fp))

{

c=fgetc(fp);

putc(c,stdout);

res1=ktl1(c);

fputc(res1,fp1);

}

fclose(fp1);

fclose(fp);

getch();

goto m;

break;

case '2':

clrscr();

printf("‚¢¥¤iâì à¥ç¥­­ï ãªà. «iâ¥à ¬¨: ");

char x[256];

gets(x);

for(int i=0;i<strlen(x);i++){

x[i]=ktl(x[i]);

}

printf("\n’à ­á«iâ¥à æiï: %s",x);

getch();

goto m;

break;

case '3': exit(0);

case '4': clrscr();

puts("\n\t„«ï ஡®â¨ § ä ©« ¬¨ ¯®âài¡­® ᯥàèã ã ª®à¥­i ¤¨áª ‘ á⢮à¨â¨");

puts("ä ©« § i¬¥­¥¬ include.txt, ¢¨åi¤­¨© ä ©« ¡ã¤¥ á⢮७® ¯à®£à ¬®î");

puts(" ¢â®¬ â¨ç­®. �ਠ¢¢¥¤¥­­i ⥪áâã i§ ª« ¢i âãਠ­ â¨á­ã⨠Right Shift.");

getch();

break;

}

}

char ktl(char s)

{

char res;

switch (s) {

case '0': res = '0';break;

case '1': res = '1';break;

case '2': res = '2';break;

case '3': res = '3';break;

case '4': res = '4';break;

case '5': res = '5';break;

case '6': res = '6';break;

case '7': res = '7';break;

case '8': res = '8';break;

case '9': res = '9';break;

case '€': res = 'A';break;

case '�': res = 'B';break;

case '‚': res = 'V';break;

case 'ƒ': res = 'H';break;

case '„': res = 'D';break;

case '…': res = 'E';break;

case 'ò': res = 'ð';break;

case '†': res = '*';break;

case '‡': res = 'Z';break;

case 'I': res = 'I';break;

case 'ô': res = '|';break;

case '‰': res = 'J';break;

case 'Š': res = 'K';break;

case '‹': res = 'L';break;

case 'Œ': res = 'M';break;

case '�': res = 'N';break;

case 'Ž': res = 'O';break;

case '�': res = 'P';break;

case '�': res = 'R';break;

case '‘': res = 'S';break;

case '’': res = 'T';break;

case '“': res = 'Y';break;

case '”': res = 'F';break;

case '•': res = 'X';break;

case '–': res = 'C';break;

case '—': res = '4';break;

case '˜': res = 'W';break;

case '™': res = '#';break;

case 'ž': res = '@';break;

case 'Ÿ': res = '9';break;

case ' ': res = 'a';break;

case '¡': res = 'b';break;

case '¢': res = 'v';break;

case '£': res = 'h';break;

case '¤': res = 'd';break;

case '¥': res = 'e';break;

case 'ó': res = 'ñ';break;

case '¦': res = '*';break;

case '§': res = 'z';break;

case '¨': res = 'u';break;

case 'i': res = 'i';break;

case 'õ': res = '|';break;

case '©': res = 'j';break;

case 'ª': res = 'k';break;

case '«': res = 'l';break;

case '¬': res = 'm';break;

case '­': res = 'n';break;

case '®': res = 'o';break;

case '¯': res = 'p';break;

case 'à': res = 'r';break;

case 'á': res = 's';break;

case 'â': res = 't';break;

case 'ã': res = 'y';break;

case 'ä': res = 'f';break;

case 'å': res = 'x';break;

case 'æ': res = 'c';break;

case 'ç': res = '4';break;

case 'è': res = 'w';break;

case 'é': res = '#';break;

case 'ì': res = '6';break;

case 'î': res = '@';break;

case 'ï': res = '9';break;

case ' ': res = ' ';break;

case ',': res = ',';break;

case '.': res = '.';break;

case '-': res = '-';break;

case ':': res = ':';break;

case ';': res = ';';break;

case '?': res = '?';break;

case '!': res = '!';break;

default: res = NULL;

}

return res;

}

char ktl1(char s)

{

char res1;

switch(s){

case '0': res1 = '0';break;

case '1': res1 = '1';break;

case '2': res1 = '2';break;

case '3': res1 = '3';break;

case '4': res1 = '4';break;

case '5': res1 = '5';break;

case '6': res1 = '6';break;

case '7': res1 = '7';break;

case '8': res1 = '8';break;

case '9': res1 = '9';break;

case 'À': res1 = 'A';break;

case 'Á': res1 = 'B';break;

case 'Â': res1 = 'V';break;

case 'Ã': res1 = 'H';break;

case 'Ä': res1 = 'D';break;

case 'Å': res1 = 'E';break;

case 'ª': res1 = '¨';break;

case 'Æ': res1 = '*';break;

case 'Ç': res1 = 'Z';break;

case '²': res1 = 'I';break;

case '¯': res1 = '|';break;

case 'É': res1 = 'J';break;

case 'Ê': res1 = 'K';break;

case 'Ë': res1 = 'L';break;

case 'Ì': res1 = 'M';break;

case 'Í': res1 = 'N';break;

case 'Î': res1 = 'O';break;

case 'Ï': res1 = 'P';break;

case 'Ð': res1 = 'R';break;

case 'Ñ': res1 = 'S';break;

case 'Ò': res1 = 'T';break;

case 'Ó': res1 = 'Y';break;

case 'Ô': res1 = 'F';break;

case 'Õ': res1 = 'X';break;

case 'Ö': res1 = 'C';break;

case '×': res1 = '4';break;

case 'Ø': res1 = 'W';break;

case 'Ù': res1 = '#';break;

case 'Þ': res1 = '@';break;

case 'ß': res1 = '9';break;

case 'à': res1 = 'a';break;

case 'á': res1 = 'b';break;

case 'â': res1 = 'v';break;

case 'ã': res1 = 'h';break;

case 'ä': res1 = 'd';break;

case 'å': res1 = 'e';break;

case 'º': res1 = '¸';break;

case 'æ': res1 = '*';break;

case 'ç': res1 = 'z';break;

case 'è': res1 = 'u';break;

case '³': res1 = 'i';break;

case '¿': res1 = '|';break;

case 'é': res1 = 'j';break;

case 'ê': res1 = 'k';break;

case 'ë': res1 = 'l';break;

case 'ì': res1 = 'm';break;

case 'í': res1 = 'n';break;

case 'î': res1 = 'o';break;

case 'ï': res1 = 'p';break;

case 'ð': res1 = 'r';break;

case 'ñ': res1 = 's';break;

case 'ò': res1 = 't';break;

case 'ó': res1 = 'y';break;

case 'ô': res1 = 'f';break;

case 'õ': res1 = 'x';break;

case 'ö': res1 = 'c';break;

case '÷': res1 = '4';break;

case 'ø': res1 = 'w';break;

case 'ù': res1 = '#';break;

case 'ü': res1 = '6';break;

case 'þ': res1 = '¢';break;

case 'ÿ': res1 = '9';break;

case ' ': res1 = ' ';break;

case ',': res1 = ',';break;

case '.': res1 = '.';break;

case '-': res1 = '-';break;

case ':': res1 = ':';break;

case ';': res1 = ';';break;

case '?': res1 = '?';break;

case '!': res1 = '!';break;

default: res1=NULL;

}

return res1;

}