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

Транслитерация строки - C++

Восстановить пароль Регистрация
 
Рейтинг: Рейтинг темы: голосов - 12, средняя оценка - 4.67
Alinochka
 Аватар для Alinochka
3 / 3 / 1
Регистрация: 06.12.2009
Сообщений: 46
08.12.2009, 11:23     Транслитерация строки #1
Здравствуйте, помогите пожалуйста с написанием такой программы.
Написать функцию, которая выполняет транслитерацию строки: все буквы
кириллицы заменяет латинскими.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
08.12.2009, 11:23     Транслитерация строки
Посмотрите здесь:

C++ Как считать строки из файла, если там больше одной строки?
C++ Транслитерация строки и замена в строке +++ на +
C++ Как первые два символа строки переставить в конец этой строки?
C++ Указать номер строки, максимально удаленной от первой строки заданной матрицы
Транслитерация c++ C++
C++ Функция перезаписывает символы строки заданным количеством символов другой строки
Удалить строки динамической матрицы, начиная со строки К1 и до строки К2 C++
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Vourhey
Почетный модератор
6470 / 2245 / 123
Регистрация: 29.07.2006
Сообщений: 12,635
08.12.2009, 12:20     Транслитерация строки #2
В самом простом варианте, читаем строку посимвольно и каждый символ заменяем соответствующей комбинацией, которую дописываем в новую строку.
Alinochka
 Аватар для Alinochka
3 / 3 / 1
Регистрация: 06.12.2009
Сообщений: 46
08.12.2009, 12:23  [ТС]     Транслитерация строки #3
это я поняла, у меня проблема вот в чем, я не знаю как определить длину строки, вводимой с клавиатуры....(((
breeve
 Аватар для breeve
73 / 73 / 14
Регистрация: 01.08.2009
Сообщений: 177
08.12.2009, 12:34     Транслитерация строки #4
Цитата Сообщение от Alinochka Посмотреть сообщение
это я поняла, у меня проблема вот в чем, я не знаю как определить длину строки, вводимой с клавиатуры....(((
C++
1
2
3
4
5
#include<string>
...
string str;
getline(cin, str); \\считываешь с клавиатуры
int i = str.length(); \\узнаешь размер
Андрейка
419 / 223 / 27
Регистрация: 25.03.2009
Сообщений: 744
08.12.2009, 12:35     Транслитерация строки #5
Alinochka,
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
#include <map>
#include <iostream>
#include <string>
 
int main()
{
    setlocale(LC_ALL,"RUSSIAN");
    std::map<char,char>alpha;
    alpha['a'] ='а';
    alpha['b'] ='б';
    //////////////////////////////////////
    std::string str;
    std::cout<<"введите строку"<<std::endl;
    std::getline(std::cin,str);
    for (size_t i = 0 ; i < str.size() ; i++)
        if (alpha.find(str[i])!=alpha.end())
            str[i] = alpha.find(str[i])->second;
    std::cout<<str;
    system("pause");
    return 0;
}
ну смысл понятен думаю)
Alinochka
 Аватар для Alinochka
3 / 3 / 1
Регистрация: 06.12.2009
Сообщений: 46
08.12.2009, 12:44  [ТС]     Транслитерация строки #6
Еще один вопросик,
Андрейка, ваша программа заменяет английские буквы на русские, а как сделать наоборот???
Андрейка
419 / 223 / 27
Регистрация: 25.03.2009
Сообщений: 744
08.12.2009, 12:45     Транслитерация строки #7
Alinochka, легко поменять местами их в alpha['bukva'] = 'bukva';
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
08.12.2009, 12:53     Транслитерация строки
Еще ссылки по теме:

Упорядочить символы строки B в алфавитном порядке и удалить латинские буквы из строки A C++
Прибавить ко всем элементам каждой строки максимальное значение этой строки C++
C++ Вычислить длину введенной строки и вывести символы строки с четными индексами
Даны три строки: S1, S2, S3. Заменить в строке S1 первое вхождение строки S2 на S3 C++
C++ Транслитерация названия директорий

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

Или воспользуйтесь поиском по форуму:
Alinochka
 Аватар для Alinochka
3 / 3 / 1
Регистрация: 06.12.2009
Сообщений: 46
08.12.2009, 12:53  [ТС]     Транслитерация строки #8
я так попробовала он выводит крякозябрики...

Добавлено через 7 минут
Андрейка, так не получается, он не выводит нормально(((
Yandex
Объявления
08.12.2009, 12:53     Транслитерация строки
Ответ Создать тему
Опции темы

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