Форум программистов, компьютерный форум, киберфорум
Наши страницы
С++ для начинающих
Войти
Регистрация
Восстановить пароль
 
 
Coca Cola
-1 / 0 / 3
Регистрация: 03.01.2014
Сообщений: 119
#1

Написать функцию, заменяющую цифры латинскими символами - C++

03.01.2014, 11:56. Просмотров 938. Ответов 20
Метки нет (Все метки)

Написать функцию, заменяющую цифры латинскими символами. Обработать две строки. C++
http://www.cyberforum.ru/cpp-beginners/thread1185143.html
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
03.01.2014, 11:56
Я подобрал для вас темы с готовыми решениями и ответами на вопрос Написать функцию, заменяющую цифры латинскими символами (C++):

Написать функцию, заменяющую в символьной строке подряд идущие пробелы на один пробел
Написать функцию, заменяющую в символьной строке подряд идущие пробелы на один...

Вывести только те слова, которые могут без искажений быть записаны латинскими символами
3.Дан текст на русском языке. Вывести только те слова, которые могут без иска*...

Написать функцию, которая создает файл, заполняя его случайными символами
Помогите чайнику! В общем,задание вроде элементарное: "Написать функцию,...

Заполнить 2 двухмерных массива символами. Написать функцию которая ставит символ пробела в старшем и младшем...(Использование директив)
Задание: Заполнить 2 двухмерных массива разной длины символами. Написать...

Написать функцию нахождения max цифры в числе
Дан динамический массив из n целых чисел. Написать функцию нахождения max цифры...

20
Кудаив
409 / 408 / 72
Регистрация: 27.05.2012
Сообщений: 1,168
Завершенные тесты: 2
03.01.2014, 12:05 #2
а поподробнее? какими именно символами?
0
Coca Cola
-1 / 0 / 3
Регистрация: 03.01.2014
Сообщений: 119
03.01.2014, 12:10  [ТС] #3
простыми английскими буквами
0
Петррр
6155 / 3455 / 896
Регистрация: 28.10.2010
Сообщений: 5,926
03.01.2014, 12:11 #4
Coca Cola, КСДБЗ1?
0
Coca Cola
-1 / 0 / 3
Регистрация: 03.01.2014
Сообщений: 119
03.01.2014, 12:14  [ТС] #5
очень нужно .. сессия скоро
0
Петррр
6155 / 3455 / 896
Регистрация: 28.10.2010
Сообщений: 5,926
03.01.2014, 12:18 #6
Coca Cola, КСДБЗ1?
0
Кудаив
409 / 408 / 72
Регистрация: 27.05.2012
Сообщений: 1,168
Завершенные тесты: 2
03.01.2014, 12:19 #7
Coca Cola, алгоритм замены какой то присутствует или рандомную цифру рандомной буквой?
1
Coca Cola
-1 / 0 / 3
Регистрация: 03.01.2014
Сообщений: 119
03.01.2014, 12:20  [ТС] #8
что это?

Добавлено через 38 секунд
рандомно без алгоритма
0
Петррр
6155 / 3455 / 896
Регистрация: 28.10.2010
Сообщений: 5,926
03.01.2014, 12:21 #9
Coca Cola, каким символом должен быть заменен '1'? Это же было так просто понять, что тут сложного то?

Добавлено через 42 секунды
Цитата Сообщение от Coca Cola Посмотреть сообщение
рандомно без алгоритма
А об этом в первом посте нельзя было написать?
0
Coca Cola
-1 / 0 / 3
Регистрация: 03.01.2014
Сообщений: 119
03.01.2014, 12:24  [ТС] #10
понятия не имею каким...дали задание более нечего не сказали

Добавлено через 1 минуту
в первый раз тут, не особо аринтируюсь
0
Петррр
6155 / 3455 / 896
Регистрация: 28.10.2010
Сообщений: 5,926
03.01.2014, 12:24 #11
Coca Cola, т.е. мы должны иметь понятие как решить эту задачу? Учатся форумчане или Вы?
1
Coca Cola
-1 / 0 / 3
Регистрация: 03.01.2014
Сообщений: 119
03.01.2014, 13:07  [ТС] #12
мне дали задание, я попросил помочь

Добавлено через 4 минуты
Буду очень благодарен если поможете

Добавлено через 31 минуту
поможет кто или нет?ОЧЕНЬ ВАЖНО
0
Петррр
6155 / 3455 / 896
Регистрация: 28.10.2010
Сообщений: 5,926
03.01.2014, 13:19 #13
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
#include <cctype>
#include <ctime>
#include <iostream>
#include <string>
 
std::string latin_characters("ABCDEFGHIJKLMNOPQRSTUVWXYZ");
 
void replace_digits(std::string& str)
{
    for (size_t size = str.size(), i = 0; i < size; i++)
    {
        if (isdigit(str[i]))
        {
            int index = rand() % 52;
            if (index >= 26)
                str[i] = tolower(latin_characters[index - 26]);
            else
                str[i] = latin_characters[index];
        }
    }
}
 
int main()
{
    std::srand(std::time(NULL));
    std::string s1, s2;
    if (std::cin >> s1 >> s2)
    {
        replace_digits(s1);
        replace_digits(s2);
        std::cout << s1 << "\n" << s2 << std::endl;
    }
    return 0;
}
Добавлено через 11 секунд
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
#include <cctype>
#include <ctime>
#include <iostream>
#include <string>
 
std::string latin_characters("ABCDEFGHIJKLMNOPQRSTUVWXYZ");
 
void replace_digits(std::string& str)
{
    for (size_t size = str.size(), i = 0; i < size; i++)
    {
        if (isdigit(str[i]))
        {
            int index = rand() % 52;
            if (index >= 26)
                str[i] = tolower(latin_characters[index - 26]);
            else
                str[i] = latin_characters[index];
        }
    }
}
 
int main()
{
    std::srand(std::time(NULL));
    std::string s1, s2;
    if (std::cin >> s1 >> s2)
    {
        replace_digits(s1);
        replace_digits(s2);
        std::cout << s1 << "\n" << s2 << std::endl;
    }
    return 0;
}
0
Кудаив
409 / 408 / 72
Регистрация: 27.05.2012
Сообщений: 1,168
Завершенные тесты: 2
03.01.2014, 13:22 #14
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
#include <iostream>
#include <ctime>
#include <cstdlib>
#include <string>
#include <cctype>
 
std::string& changeNumericToAlpha(std::string& inputStr)
{
    for(unsigned i(0); i < inputStr.size(); ++i)
    {
        if(isdigit(inputStr[i]))
            inputStr[i] = char(rand()%26 + 97);
    }
    return inputStr;
}
 
int main()
{
    srand(time(NULL));
    std::string first("agh2fu56fvn7dgg4");
    std::string second("112343456");
 
    std::cout << changeNumericToAlpha(first) << "\n"
                 << changeNumericToAlpha(second) << std::endl;
    return 0;
}
1
Coca Cola
-1 / 0 / 3
Регистрация: 03.01.2014
Сообщений: 119
03.01.2014, 13:54  [ТС] #15
Цитата Сообщение от Петррр Посмотреть сообщение
C++
1
 
выдает ошибку 'rand' was not declared in this scope
int index = rand() % 52;
^
и еще тут ошибка: 'srand' is not a member of 'std'
std::srand(std::time(NULL));
^

Добавлено через 6 минут
а можно ли сделать так чтобы строки с цифрами вводились в ручную?

Добавлено через 1 минуту
Кудаив а можно ли сделать так чтобы строки с цифрами вводились в ручную?
0
Кудаив
409 / 408 / 72
Регистрация: 27.05.2012
Сообщений: 1,168
Завершенные тесты: 2
03.01.2014, 14:08 #16
C++
1
2
std::getline(std::cin, first);
std::getline(std::cin, second);
1
Coca Cola
-1 / 0 / 3
Регистрация: 03.01.2014
Сообщений: 119
03.01.2014, 14:16  [ТС] #17
это вставить вместо std::string first("agh2fu56fvn7dgg4");
std::string second("112343456");

Добавлено через 4 минуты
Кудаив, выдает ошибку если ставлю то что ты написал(
0
Кудаив
409 / 408 / 72
Регистрация: 27.05.2012
Сообщений: 1,168
Завершенные тесты: 2
03.01.2014, 14:17 #18
создание строк то надо оставить
C++
1
2
3
std::string first, second;
std::getline(std::cin, first);
std::getline(std::cin, second);
1
Coca Cola
-1 / 0 / 3
Регистрация: 03.01.2014
Сообщений: 119
03.01.2014, 14:36  [ТС] #19
Кудаив, спасибо большое! а можно узнать принцип работы вот начиная с ввода в окошке?

Добавлено через 14 минут
хорошо когда существуют люди которым совсем не трудно помочь
0
Кудаив
409 / 408 / 72
Регистрация: 27.05.2012
Сообщений: 1,168
Завершенные тесты: 2
03.01.2014, 14:43 #20
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
#include <iostream>  //для потокового ввода вывода
#include <ctime>  // для функции time
#include <cstdlib> // rand, srand
#include <string> 
#include <cctype> // isdigit
 
std::string& changeNumericToAlpha(std::string& inputStr)
{
// проходим по всем символам строки
    for(unsigned i(0); i < inputStr.size(); ++i)
    {
//если символ - число 
        if(isdigit(inputStr[i]))
//заменяем его на ascii символ буквы латинского алфавита - 97-122 буквы нижнего регистра латинского алфавита
            inputStr[i] = char(rand()%26 + 97);//генерируем rand рандомное число от 0 до 25
    }
    return inputStr;
}
 
int main()
{
//вся логика программы заключается в функции changeNumericToAlpha, здесь же производятся операции создании, заполнения и вывода модифицированных строк
    srand(time(NULL));
    std::string first, second;
    std::getline(std::cin, first);
    std::getline(std::cin, second);
    std::cout << changeNumericToAlpha(first) << "\n"
                 << changeNumericToAlpha(second) << std::endl;
    return 0;
}
1
03.01.2014, 14:43
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
03.01.2014, 14:43
Привет! Вот еще темы с решениями:

Написать функцию, которая выводит все цифры последовательности до заданной
Задача: Написать функцию, которая выводит все цифры последовательности до k –...

Написать функцию, которая выведет цифры заданного числа в обратном порядке
Добрый вечер, очень нужна ваша помощь. В С++ я новичок, самоучка, не хватает...

Написать функцию которая может читать цифры с 1-го до n-го элемента в массиве (используя pointer)
Написать функцию которая может читать цифры с 1-го до n-го элемента в массиве и...

Создайте функцию, заменяющую содержимое двух переменных их суммой и разностью.
1. Создайте функцию, заменяющую содержимое двух переменных их суммой и...


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

Или воспользуйтесь поиском по форуму:
20
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru