Форум программистов, компьютерный форум, киберфорум
Наши страницы

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
sardinka
0 / 0 / 0
Регистрация: 13.12.2007
Сообщений: 87
#1

Как изменить значение с буквы на число? - C++

15.01.2008, 23:03. Просмотров 879. Ответов 6
Метки нет (Все метки)

Kak mne perevsti A,B,C.... v cootvetstvyushii nomer primer:
A-10
B-20
...
Z-26
Prichem diny moego snacheniya ya ne bydy snat?
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
15.01.2008, 23:03
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Как изменить значение с буквы на число? (C++):

Как изменить значение в реестре? - C++
привет! Я новичек в с++, среда разработки - dev c++/ Помогите примером, мне нужно открыть необходимую ветку реестра и поменять значение...

Как изменить значение строки - C++
есть структура Struct MyStruct { String s; } можно ли изменить значение строки в ней внутри метода класса если она...

Как изменить значение обьектов класса - C++
Начал делать адвенчер. Перемещение есть, но когда нажимаешь "е" чтобы ударить то значение жизней дракона не изменяется. Мне сказали что "Не...

Как изменить значение глобальной переменной в процедуре? - C++
Как изменить значение глобальной переменной в процедуре? #include <iostream> using std:: cin; using std:: cout; using std::...

Как изменить значение элемента массива на противоположному по знаку? - C++
Здравствуйте. Пишу консольку на VC++. По условии задачи есть массив размерностью 100 целых чисел(одномерный).Заполняется рандомно....

Как изменить значение переменной, переданной в списке с переменным числом аргументов - C++
Помогите!!! Начал изучать С++ Возникла такая проблема. Когда мне нужно получить доступ к переменному числу аргументов я делаю что-то...

6
Andir
0 / 0 / 0
Регистрация: 04.11.2007
Сообщений: 145
16.01.2008, 08:10 #2
Напиши функцию перевода. Или объясни поподробнее ... ;-)

А программеры то не спят ...
0
sardinka
0 / 0 / 0
Регистрация: 13.12.2007
Сообщений: 87
16.01.2008, 16:58  [ТС] #3
Kak mne ismenit snachenie s bykvu na chislo.
Naprimer: Y emnya est B12 mne nyshno samenit na 2012.t.e. B cootvetstvyet snachenie 20(prosto alfabet chet). Pri etom y ne snau tochno gde bydet nahoditcya moya bykva, na kakoy posizii.
Ya nadeuc eto pomoshet.
0
sardinka
0 / 0 / 0
Регистрация: 13.12.2007
Сообщений: 87
17.01.2008, 17:03  [ТС] #4
Eto moi code. Po kakoi-to prichine Insert and Delete ne rabotaet. Ya ih sakomentirovala. Esli moshno to pomogite.

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
char *convert_char_modifier(char *Modifier)
{
    int         i;
    char        ch;
 
    for (i=0; i < strlen(Modifier);i++)
    {
        ch = Modifier[i];
        switch (ch)
            {
            case 'A':
                //Delete(i);
                //Insert(i,'01');
                break;
0
Andir
0 / 0 / 0
Регистрация: 04.11.2007
Сообщений: 145
18.01.2008, 05:42 #5
Если я правильно понял, то проблема в том чтобы вставить вместо одного символа, несколько ('B'='2'+'0').
Ну а так как char* - это массив символов фиксированной длины, то это вообще говоря напрямую сделать невозможно.
Способы решения :
1. Самое простое, пожалуй, это использовать списки или, короче говоря, другие структуры данных, позволяющие делать такие операции напрямую.
2. Достаточно ресурсоёмкое: например так :
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
char *convert_char_modifier(char *Modifier)
{
int i;
char ch;
char *newModifier;
for (i=0; i < strlen(Modifier);i++)
{
ch = Modifier[i];
switch (ch)
{
case 'A':
newModifier=new char[strlen(Modifier)+1]; // создаём новую строку длиной на один символ больше
strcpy(newModifier,Modifier); // Копируем первую строку в неё
char *cod='01';   // Вставляемый символ
strcpy(newModifier+i-1,cod);  // вставляем его в строку
strcpy(newModifier+i+1,Modifier+i); // Копируем часть строки после 
вставленных символов
delete Modifier; // удаляем предыдущую строку
Modifier=new char[strlen(newModifier)]; // создаём новую
strcpy(Modifier,newModifier);  // копируем созданную строку в исходную
break;
если объяснить на словах я раздвигаю массив символов в нужном положении и вставляю туда необходимые символы.
замудрил я конечно сильно, наверняка есть способ попроще, может кто из Rsdn тебе поможет, а то я со строками давно не работал.

Интересно, а чего это некто из RSDN'а ничего не ест ? До первой звезды ...
Удачи Andir !
0
sardinka
0 / 0 / 0
Регистрация: 13.12.2007
Сообщений: 87
20.01.2008, 16:52  [ТС] #6
Po kakoy prichine y menya moya programma ne ponimaet delete Modifier i ne hochet prinimat new char? Ne mogli bu vu podskasat?
Ya skopirovala vashy programky k sebe v bolshyu programmy. Saranee blagodarna
0
Andir
0 / 0 / 0
Регистрация: 04.11.2007
Сообщений: 145
21.01.2008, 09:45 #7
>Po kakoy prichine y menya moya programma ne ponimaet delete Modifier i ne hochet prinimat new char? Ne mogli bu vu podskasat?
Не очень понятны функции Delete(i); и Insert(...), если объяснишь поподробнее может и подскажу.

>Ya skopirovala vashy programky k sebe v bolshyu programmy. Saranee blagodarna
И что работает (удивлённо)! Сам удивляюсь ...;-)

Интересно, что это за большая программка, где врезки непонятного чужого кода ...
Удачи, Andir!

0
21.01.2008, 09:45
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
21.01.2008, 09:45
Привет! Вот еще темы с ответами:

Изменить строчные буквы на прописные - C++
Встал вопрос: как сделать строчные буквы прописными. В Turbo Pascal есть очень удобная операция upcase. Есть ли что-то подобное на Си? Если...

Как присвоить значение любое число - C++
у меня в программе есть значение char c='1'; Мне нужно чтоб &quot;с&quot; было равно любому числу от 0 до 9999......

Изменить регистр первой буквы в слове - C++
Записать фамилию, имя и отчество. Вывести фамилию большими буквами с помощью strupr.

В любом слове изменить местами первую и последнюю буквы - C++
Доброго времени суток!Помогите, пожалуйста, написать программу:Нужно,чтобы в любом слове изменить местами первую и последнюю...


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

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

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