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

В заданной строке заменить буквы на их порядковый номер. - C++

Восстановить пароль Регистрация
 
Рейтинг: Рейтинг темы: голосов - 12, средняя оценка - 4.83
Liy
3 / 3 / 0
Регистрация: 08.06.2011
Сообщений: 11
08.06.2011, 18:14     В заданной строке заменить буквы на их порядковый номер. #1
В заданной строке, состоящей из цифр и латинских букв, заменить буквы на их порядковый номер в алфавите. Получившуюся строку вывести на экран.

Большая просьба помочь с программой. Заранее спасибо.

Добавлено через 18 минут
Буду признателен, если смогли бы помочь хотя бы алгоритмом на языке с++.

Сидел достаточно долго над программой, обдумал алгоритм: задаю в начале каждой букве значение.
После задаю строку и открываю цикл, в котором если встречается буква, то она заменяется на значение, заданное мною в начале. Но с помощью каких функций это сделать - не знаю.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
08.06.2011, 18:14     В заданной строке заменить буквы на их порядковый номер.
Посмотрите здесь:

C++ В последовательности введенных символов (последний '$') определить порядковый номер первой буквы R
C++ Порядковый номер буквы в строке
Вывести на экран порядковый номер слова,накрывающего К-ю позицию в строке C++
C++ нужно вывести самое длинное слово и его порядковый номер в исходной строке.
В строке заменить все буквы «О» на «Ъ», а буквы «Е» – на случайные символы C++
порядковый номер буквы C++
C++ Найти порядковый номер слова максимальной длины в строке и номер позиции, с которой оно начинается
C++ Определить порядковый номер первой буквы R (с учетом верхнего/нижнего регистров)

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
soon
 Аватар для soon
2536 / 1301 / 81
Регистрация: 09.05.2011
Сообщений: 3,086
Записей в блоге: 1
08.06.2011, 18:21     В заданной строке заменить буквы на их порядковый номер. #2
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
#include <iostream>
 
int main()
{
    char str[] = "1A2bcd3ef4g";
    for(int i = 0; i < strlen(str); ++i)
    {
        if ((str[i] >= 'A')&&(str[i] <= 'Z'))
            std::cout << (int)str[i] - 64;
        else if ((str[i] >= 'a')&&(str[i] <= 'z'))
            std::cout << (int)str[i] - 96;
        else 
            std::cout << str[i];
    }
    std::cout << (int)str[1];
    system("pause");
    return 0;
}
Добавлено через 1 минуту
если присваивать строке, то надо обрабатывать такой случай, когда номер > 9, т.е. занимает 2 символа, весь массив нужно сдвигать
Liy
3 / 3 / 0
Регистрация: 08.06.2011
Сообщений: 11
08.06.2011, 18:23  [ТС]     В заданной строке заменить буквы на их порядковый номер. #3
Цитата Сообщение от soon Посмотреть сообщение
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
#include <iostream>
 
int main()
{
    char str[] = "1A2bcd3ef4g";
    for(int i = 0; i < strlen(str); ++i)
    {
        if ((str[i] >= 'A')&&(str[i] <= 'Z'))
            std::cout << (int)str[i] - 64;
        else if ((str[i] >= 'a')&&(str[i] <= 'z'))
            std::cout << (int)str[i] - 96;
        else 
            std::cout << str[i];
    }
    std::cout << (int)str[1];
    system("pause");
    return 0;
}
Добавлено через 1 минуту
если присваивать строке, то надо обрабатывать такой случай, когда номер > 9, т.е. занимает 2 символа, весь массив нужно сдвигать
Понял, спасибо огромное!
Yandex
Объявления
08.06.2011, 18:23     В заданной строке заменить буквы на их порядковый номер.
Ответ Создать тему
Опции темы

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