Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > .NET Frameworks (точка нет фреймворки) > C# (си шарп)
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 13.02.2017, 21:35   #1
Keniro
Пользователь
 
Регистрация: 27.09.2015
Сообщений: 21
По умолчанию Замена цифр на буквы - C#

Здравствуйте. У меня есть код который переводит буквы в цифры. Как сделать чтобы программа переводила цифры в буквы?
Код:
                    string strs = Console.ReadLine();
                    Dictionary<char, int> dic = new Dictionary<char, int>
            {
                {'A', 1},
                {'B', 2},
                {'C', 3},
                {'D', 4},
                {'E', 5},
                {'F', 6},
                
            };
 
                    for (int i = 0; i < strs.Length; i++)
                    {
                        int val = 0;
                        if (dic.TryGetValue(strs[i], out val))
                            strs = strs.Replace(strs[i].ToString(), val.ToString());
                    }
 
 
 
                    Console.WriteLine(strs);
Keniro вне форума Ответить с цитированием
Старый 13.02.2017, 21:57   #2
ura_111
Участник клуба
 
Регистрация: 14.05.2016
Сообщений: 1,793
По умолчанию

Не уверен, ну попробуй:

Код:
                    string strs = Console.ReadLine();

                    Dictionary<char, char> dic = new Dictionary<char, char>
            {
                {'1', 'A'},
                {'2', 'B'},
                {'3', 'C'},
                {'4', 'D'},
                {'5', 'E'},
                {'6', 'F'},
                
            };
 
                    char val;
                    for (int i = 0; i < strs.Length; i++)
                    {                        
                        if (dic.TryGetValue(strs[i], out val))

                            strs = strs.Replace(strs[i].ToString(), val.ToString());
                    }
  
                    Console.WriteLine(strs);
ura_111 вне форума Ответить с цитированием
Старый 14.02.2017, 15:17   #3
Keniro
Пользователь
 
Регистрация: 27.09.2015
Сообщений: 21
По умолчанию

ura_111, Спасибо, но у меня есть один вопрос. Когда я дохожу до 9 далее следует 10 у меня появятся ошибка. Что посоветуете?
Изображения
Тип файла: png Screenshot_1.png (5.1 Кб, 305 просмотров)
Keniro вне форума Ответить с цитированием
Старый 14.02.2017, 15:19   #4
Aleksandr H.
2 the Nation Glory
Старожил
 
Аватар для Aleksandr H.
 
Регистрация: 27.05.2014
Сообщений: 3,289
По умолчанию

вместо char использовать string
Кто умер, но не забыт, тот бессмертен.
Лао-Цзы.
Aleksandr H. вне форума Ответить с цитированием
Старый 14.02.2017, 15:38   #5
Keniro
Пользователь
 
Регистрация: 27.09.2015
Сообщений: 21
По умолчанию

Разобрался, сделал проще.

string strs = Console.ReadLine();

strs = strs.Replace("1", "A").Replace("1", "B");
Console.WriteLine(strs);
Keniro вне форума Ответить с цитированием
Старый 15.02.2017, 17:39   #6
OmegaBerkut
Спокойный псих
Участник клуба
 
Аватар для OmegaBerkut
 
Регистрация: 19.03.2013
Сообщений: 1,538
По умолчанию

Как вариант - можно из char забирать код символа, и вычитать 65. Тогда для латиницы первая буква A будет равна 0.
Подпись ? Не, не слышал ...
OmegaBerkut вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
перевод колонок из цифр в буквы и обратно Bape}l{ka Microsoft Office Excel 7 28.09.2011 14:45
отделить буквы от цифр Teleport Помощь студентам 4 12.06.2008 14:46