Форум программистов, компьютерный форум, киберфорум
Наши страницы
С++ для начинающих
Войти
Регистрация
Восстановить пароль
 
Рейтинг 5.00/5: Рейтинг темы: голосов - 5, средняя оценка - 5.00
sardinka
0 / 0 / 0
Регистрация: 13.12.2007
Сообщений: 87
1

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

15.01.2008, 23:03. Просмотров 931. Ответов 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
Ответы с готовыми решениями:

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

Как изменить значение ключа в словаре, зная предыдущее значение?
Как изменить значение ключа в словаре, зная предыдущее значение?(тип ключа - string).

Как изменить буквы дисков навсегда?
Всем привет. Имеются диски C, D, E. После переустановки винды, диск D становится E, а диск E...

Как изменить значение реквизита ТЧ? Ошибка: значение не является значением объектного типа (табличная часть)
Здравствуйте, все неравнодушные) Ситуация такая у меня: В документе (приходная накладная) есть...

Как изменить буквы разделов жёсткого диска?
Здравствуйте. У меня на материнке испортился контроллер SATA для жёсткого диска. Я вставил...

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

Как можно изменить размер каждой буквы в Label?
Добрый день, как можно изменить размер каждой буквы в Label? &lt;Label Content=&quot;{Binding fname}&quot;...

И снова глобальная переменная в js. Как изменить значение глобальной переменной в одной функции и увидеть это значение в другой функции?
Это учебное задание. Помогите, пожалуйста, разобраться почему func1 видит какую-то новую переменную...

Как изменить значение wait_timeout
Подскажите пожалуйста. Как можно изменить это значение из cmd? Или только можно из my.ini?


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

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

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