Модераторы: Partizan, gambit
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Функция ToString() 
:(
    Опции темы
Bio
Дата 14.2.2008, 13:40 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 55
Регистрация: 18.12.2006

Репутация: нет
Всего: нет



Разработать функцию преобразования целого числа в строку. Использовать библиотечную ф-ю ToString() -  нельзя.
PM MAIL   Вверх
Bogdan1024
Дата 14.2.2008, 13:58 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1436
Регистрация: 28.9.2005
Где: Киев

Репутация: 5
Всего: 13



И что, неужели это сложно сделать?
Разбиваешь число на цифры, и для каждой цифры в switch() пишешь соответствующий ей строчный символ. Их всех склеиваешь.


--------------------
user posted image
PM MAIL   Вверх
Bio
Дата 14.2.2008, 14:07 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 55
Регистрация: 18.12.2006

Репутация: нет
Всего: нет



Цитата

Разбиваешь число на цифры


Как?
PM MAIL   Вверх
QryStaL
Дата 14.2.2008, 15:34 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Intellectual feast
**


Профиль
Группа: Участник
Сообщений: 914
Регистрация: 30.11.2005

Репутация: 14
Всего: 32



Код

    public static string IntToString(int input)
    {
        if (input == 0)
        {
            return "0";
        }
        int k = (input < 0) ? Math.Abs(input) : input;
        List<int> result = new List<int>(); 
        int i = (int)Math.Floor(Math.Log10(k));
        for (int j = i; j >= 0; j--)
        {
            int tmp = (int)Math.Floor(k / Math.Pow(10, j));
            k -= tmp * (int)Math.Pow(10, j);
            result.Add(tmp);
        }
        string toReturn = string.Empty;
        char[] digits = new char[] { '0', '1', '2', '3', '4', '5', '6', '7', '8', '9' };
        foreach (int number in result)
        {
            toReturn += digits[number];
        }
        if (input < 0)
        {
            toReturn = "-" + toReturn;
        }
        return toReturn;
    }


Добавлено через 2 минуты и 51 секунду
Хотя проще сделать так:

Код

    public static string IntToString2(int input)
    {
        return String.Format("{0}", input);
    }


 smile 


--------------------
I don't need a reason being who I am...
PM MAIL ICQ   Вверх
Bio
Дата 14.2.2008, 17:22 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 55
Регистрация: 18.12.2006

Репутация: нет
Всего: нет



Благодарю. Не плохой вариант.
PM MAIL   Вверх
Exception
Дата 14.2.2008, 22:27 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Участник Клуба
Сообщений: 4525
Регистрация: 26.12.2004

Репутация: 29
Всего: 186



Цитата(QryStaL @  14.2.2008,  16:34 Найти цитируемый пост)
return String.Format("{0}", input);


+1, жгуче.
PM   Вверх
Mephisto
Дата 19.11.2008, 17:42 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Волкъ
***


Профиль
Группа: Завсегдатай
Сообщений: 1818
Регистрация: 27.8.2003
Где: Питер

Репутация: 2
Всего: 34



Цитата(Exception @  14.2.2008,  23:27 Найти цитируемый пост)
+1, жгуче. 

правда все-равно неявно ToString вызывается. 
PM   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Прежде чем создать тему, посмотрите сюда:
mr.DUDA
THandle

Используйте теги [code=csharp][/code] для подсветки кода. Используйтe чекбокс "транслит" если у Вас нет русских шрифтов.
Что делать если Вам помогли, но отблагодарить помощника плюсом в репутацию Вы не можете(не хватает сообщений)? Пишите сюда, или отправляйте репорт. Поставим :)
Так же не забывайте отмечать свой вопрос решенным, если он таковым является :)


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, mr.DUDA, THandle.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Общие вопросы по .NET и C# | Следующая тема »


 




[ Время генерации скрипта: 0.0524 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.