Форум программистов, компьютерный форум CyberForum.ru

Выполнить транслитерацию строки - C++

Восстановить пароль Регистрация
 
Рейтинг: Рейтинг темы: голосов - 10, средняя оценка - 4.80
tema93
0 / 0 / 0
Регистрация: 07.11.2010
Сообщений: 15
01.12.2010, 21:20     Выполнить транслитерацию строки #1
Доброго времени суток . Код транслитерации написал, но он не работает .Подскажите в чем ошибка и как можно другим способом ( вроде можно через массив символов, но как - не знаю). Заранее спасибо


C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
int main()
{       
         char str[20];
         int n; 
                    cout<<"vvedi stroky dlinoy ot 5 do 20 simvolov"<<endl;
                    cin.getline(str,sizeof(str));
                    n=strlen(str);
                    cout<<'\n'<<str<<endl;
                             for (int i=0; i<n;i++)
                           
                             switch (str1[i]) 
                               {
                                 
                case 'а': str1[i]='a'; break;
                case 'б': str1[i]='b'; break;
                case 'в': str1[i]='v'; break;
                case 'г': str1[i]='g'; break;
                case 'д': str1[i]='d'; break;
                case 'е': str1[i]='e'; break;
                case 'ё': str1[i]='ye'; break;
                case 'ж': str1[i]='zh'; break;
                case 'з': str1[i]='z'; break;
                case 'и': str1[i]='I'; break;
                case 'й': str1[i]='y'; break;
                case 'к': str1[i]='k'; break;
                case 'л': str1[i]='l'; break;
                case 'м': str1[i]='m'; break;
                case 'н': str1[i]='n'; break;
                case 'о': str1[i]='o'; break;
                case 'п': str1[i]='p'; break;
                case 'р': str1[i]='r'; break;
                case 'с': str1[i]='s'; break;
                case 'т': str1[i]='t'; break;
                case 'у': str1[i]='u'; break;
                case 'ф': str1[i]='f'; break;
                case 'х': str1[i]='ch'; break;
                case 'ц': str1[i]='z'; break;
                case 'ч': str1[i]='ch'; break;
                case 'ш': str1[1]='sh'; break;
                case 'щ': str1[i]='ch'; break;
                case 'ъ': str1[i]=''''; break;
                case 'ы': str1[i]='y'; break;
                case 'ь': str1[i]=''''; break;
                case 'э': str1[i]='e'; break;
                case 'ю': str1[i]='yu'; break;
                case 'я': str1[i]='ya'; break;
                case 'А': str1[i]='A'; break;
                case 'Б': str1[i]='B'; break;
                case 'В': str1[i]='V'; break;
                case 'Г': str1[i]='G'; break;
                case 'Д': str1[i]='D'; break;
                case 'Е': str1[i]='E'; break;
                case 'Ё': str1[i]='Ye'; break;
                case 'Ж': str1[i]='Zh'; break;
                case 'З': str1[i]='Z'; break;
                case 'И': str1[i]='I'; break;
                case 'Й': str1[i]='Y'; break;
                case 'К': str1[i]='K'; break;
                case 'Л': str1[i]='L'; break;
                case 'М': str1[i]='M'; break;
                case 'Н': str1[i]='N'; break;
                case 'О': str1[i]='O'; break;
                case 'П': str1[i]='P'; break;
                case 'Р': str1[i]='R'; break;
                case 'С': str1[i]='S'; break;
                case 'Т': str1[i]='T'; break;
                case 'У': str1[i]='U'; break;
                case 'Ф': str1[i]='F'; break;
                case 'Х': str1[i]='Ch'; break;
                case 'Ц': str1[i]='Z'; break;
                case 'Ч': str1[i]='Ch'; break;
                case 'Ш': str1[i]='Sh'; break;
                case 'Щ': str1[i]='Ch'; break;
                case 'Ъ': str1[i]=''''; break;
                case 'Ы': str1[i]='Y'; break;
                case 'Ь': str1[i]=''''; break;
                case 'Э': str1[i]='E'; break;
                case 'Ю': str1[i]='Yu'; break;
                case 'Я': str1[i]='Ya'; break; 
 
                               }
Лучшие ответы (1)
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
01.12.2010, 21:20     Выполнить транслитерацию строки
Посмотрите здесь:

Выполнить строку C++
выполнить перегрузку C++
Выполнить транслитерирование текста C++
C++ затрудняюсь выполнить
Выполнить условие н раз C++
C++ Выполнить сортировку
C++ Если() то выполнить()
C++ Выполнить преобразование строки

Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
VASSUV
MiThEoN
 Аватар для VASSUV
412 / 278 / 15
Регистрация: 31.10.2009
Сообщений: 403
Записей в блоге: 2
02.12.2010, 02:52     Выполнить транслитерацию строки #2
Сообщение было отмечено автором темы, экспертом или модератором как ответ
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
#include <iostream>
#include <math.h>
#include <locale.h>  
using namespace std;
int main()
{       
    char charList[20][3]={'\0'};
    char str1[20];
    int n,i; 
    setlocale( LC_ALL, "russian" ); 
    cout<<"vvedi stroky dlinoy ot 5 do 20 simvolov"<<endl;
    cin.getline(str1,sizeof(str1));
    n=strlen(str1);
    cout<<'\n'<<str1<<endl;
    for (i=0; i<n;i++)
        switch (str1[i]) 
        {
            case 'а': strcpy(charList[i],"a"); break;
            case 'б': strcpy(charList[i],"b"); break;
            case 'в': strcpy(charList[i],"v"); break;
            case 'г': strcpy(charList[i],"g"); break;
            case 'д': strcpy(charList[i],"d"); break;
            case 'е': strcpy(charList[i],"e"); break;
            case 'ё': strcpy(charList[i],"ye"); break;
            case 'ж': strcpy(charList[i],"zh"); break;
            case 'з': strcpy(charList[i],"z"); break;
            case 'и': strcpy(charList[i],"I"); break;
            case 'й': strcpy(charList[i],"y"); break;
            case 'к': strcpy(charList[i],"k"); break;
            case 'л': strcpy(charList[i],"l"); break; 
            case 'м': strcpy(charList[i],"m"); break;
            case 'н': strcpy(charList[i],"n"); break;
            case 'о': strcpy(charList[i],"o"); break;
            case 'п': strcpy(charList[i],"p"); break;
            case 'р': strcpy(charList[i],"r"); break;
            case 'с': strcpy(charList[i],"s"); break;
            case 'т': strcpy(charList[i],"t"); break;
            case 'у': strcpy(charList[i],"u"); break;
            case 'ф': strcpy(charList[i],"f"); break;
            case 'х': strcpy(charList[i],"ch"); break;
            case 'ц': strcpy(charList[i],"z"); break;
            case 'ч': strcpy(charList[i],"ch"); break;
            case 'ш': strcpy(charList[i],"sh"); break;
            case 'щ': strcpy(charList[i],"ch"); break;
            case 'ъ': strcpy(charList[i],"\'"); break;
            case 'ы': strcpy(charList[i],"y"); break;
            case 'ь': strcpy(charList[i],"\'"); break;
            case 'э': strcpy(charList[i],"e"); break;
            case 'ю': strcpy(charList[i],"yu"); break;
            case 'я': strcpy(charList[i],"ya"); break;
            case 'А': strcpy(charList[i],"A"); break;
            case 'Б': strcpy(charList[i],"B"); break;
            case 'В': strcpy(charList[i],"V"); break;
            case 'Г': strcpy(charList[i],"G"); break;
            case 'Д': strcpy(charList[i],"D"); break;
            case 'Е': strcpy(charList[i],"E"); break;
            case 'Ё': strcpy(charList[i],"Ye"); break;
            case 'Ж': strcpy(charList[i],"Zh"); break;
            case 'З': strcpy(charList[i],"Z"); break;
            case 'И': strcpy(charList[i],"I"); break;
            case 'Й': strcpy(charList[i],"Y"); break;
            case 'К': strcpy(charList[i],"K"); break;
            case 'Л': strcpy(charList[i],"L"); break;
            case 'М': strcpy(charList[i],"M"); break;
            case 'Н': strcpy(charList[i],"N"); break;
            case 'О': strcpy(charList[i],"O"); break;
            case 'П': strcpy(charList[i],"P"); break;
            case 'Р': strcpy(charList[i],"R"); break;
            case 'С': strcpy(charList[i],"S"); break;
            case 'Т': strcpy(charList[i],"T"); break;
            case 'У': strcpy(charList[i],"U"); break;
            case 'Ф': strcpy(charList[i],"F"); break;
            case 'Х': strcpy(charList[i],"Ch"); break;
            case 'Ц': strcpy(charList[i],"Z"); break;
            case 'Ч': strcpy(charList[i],"Ch"); break;
            case 'Ш': strcpy(charList[i],"Sh"); break;
            case 'Щ': strcpy(charList[i],"Ch"); break;
            case 'Ъ': strcpy(charList[i],"\'"); break;
            case 'Ы': strcpy(charList[i],"Y"); break;
            case 'Ь': strcpy(charList[i],"\'"); break;
            case 'Э': strcpy(charList[i],"E"); break;
            case 'Ю': strcpy(charList[i],"Yu"); break;
            case 'Я': strcpy(charList[i],"Ya"); break; 
        }
    for(i=0;i<n;i++)
        cout<<charList[i];
    cout<<"\n";
    system("pause");
}
Yandex
Объявления
02.12.2010, 02:52     Выполнить транслитерацию строки
Ответ Создать тему
Опции темы

Текущее время: 23:52. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru