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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 05.04.2013, 05:58   #11
Object_File
Пользователь
 
Регистрация: 12.10.2012
Сообщений: 23
По умолчанию

Цитата:
Сообщение от 22hope22 Посмотреть сообщение
Ребят, мне препод сказал что эту задачу без массива надо делать! это как?
и где он в примере Rififi массив увидел? оО
Object_File вне форума Ответить с цитированием
Старый 05.04.2013, 08:57   #12
Serge_Bliznykov
Старожил
 
Регистрация: 09.01.2008
Сообщений: 26,229
По умолчанию

Может быть, преподаватель ожидает такое решение:
Код:
class Program
    {
        static void Main(string[] args)
        {
            Console.Write("Введите исходное целое число: ");
            int N = Convert.ToInt32(Console.ReadLine());

            bool AllDigitsDiffirent = true;

            while ((N != 0) && AllDigitsDiffirent)
            {
                int OneDigit = N % 10;
                N = N / 10;

                int Ntmp = N;
                while ((Ntmp != 0) && AllDigitsDiffirent )
                {
                    if ((Ntmp % 10) == OneDigit) AllDigitsDiffirent = false;
                    Ntmp = Ntmp / 10;
                }
            }

            if (AllDigitsDiffirent)
            {
                Console.WriteLine("Все цифры числа различны");
            }
            else
            {
                Console.WriteLine("В числе есть повторяющиеся цифры");
            }

            Console.ReadKey();
        }
    }
Serge_Bliznykov вне форума Ответить с цитированием
Старый 05.04.2013, 11:16   #13
mrMeerkat
Следопыт
Форумчанин
 
Аватар для mrMeerkat
 
Регистрация: 26.04.2012
Сообщений: 307
По умолчанию

Просто сравниить первое и последнее вхождения цифры в запись числа(как-то криво звучит):
Код:
class Program
{
    static void Main()
    {
        Console.Write("Введите исходное целое число: ");
        string N = Console.ReadLine();
        bool flag = true;
        for(char i='0';i<='9';i++)
            if (N.IndexOf(i) != N.LastIndexOf(i))
            {
                flag = false;
                break;
            }
        Console.WriteLine(flag?"Все цифры числа различны":"В числе есть повторяющиеся цифры");
        Console.ReadLine();
    }
}
С Баша:Быть ленивым, глупым, жадным, да и просто редкостным гандоном и мудаком по жизни номально, а вот если ты матом ругаешься-то это да, ужасно и достойно общественного порицания.
mrMeerkat вне форума Ответить с цитированием
Старый 05.04.2013, 14:26   #14
Serge_Bliznykov
Старожил
 
Регистрация: 09.01.2008
Сообщений: 26,229
По умолчанию

mrMeerkat, не проверял Ваш код, но имеет недостаток (можно вводить не только число, а вообще всё, что угодно)
и ошибку (введите число 1 и расскажите, что Вам ваша программа выдаст )
Serge_Bliznykov вне форума Ответить с цитированием
Старый 10.04.2013, 12:43   #15
mrMeerkat
Следопыт
Форумчанин
 
Аватар для mrMeerkat
 
Регистрация: 26.04.2012
Сообщений: 307
По умолчанию

Просьба не счесть за некропостинг, отсутствовал
Цитата:
Сообщение от Serge_Bliznykov Посмотреть сообщение
mrMeerkat, не проверял Ваш код, но имеет недостаток (можно вводить не только число, а вообще всё, что угодно)
Так там же есть хитрая строка
Код:
Console.Write("Введите исходное целое число: ");
Можно бы было и проверку какую поставить на основе try-catch, не спорю.

Цитата:
Сообщение от Serge_Bliznykov Посмотреть сообщение
и ошибку (введите число 1 и расскажите, что Вам ваша программа выдаст )
Что было запланировано, то и выдаст, а именно строку "Все цифры числа различны"
С Баша:Быть ленивым, глупым, жадным, да и просто редкостным гандоном и мудаком по жизни номально, а вот если ты матом ругаешься-то это да, ужасно и достойно общественного порицания.
mrMeerkat вне форума Ответить с цитированием
Старый 10.04.2013, 12:52   #16
Serge_Bliznykov
Старожил
 
Регистрация: 09.01.2008
Сообщений: 26,229
По умолчанию

Цитата:
Цитата:
и ошибку (введите число 1 и расскажите, что Вам ваша программа выдаст )
Что было запланировано, то и выдаст, а именно строку "Все цифры числа различны"
ага. признаю. насчёт ошибки я был не прав - выдаст то, что и должна выдать!
Serge_Bliznykov вне форума Ответить с цитированием
Старый 10.04.2013, 13:34   #17
Скарам
Дружите с Linq ;)
Форумчанин
 
Аватар для Скарам
 
Регистрация: 15.10.2008
Сообщений: 822
По умолчанию

У Rififi только один недостаток: ToCharArray() лишний.
mrMeerkat, скомбинировал твой вариант и вариант Rififi, но у меня он хуже по производительности, чем у Rififi:
Код:
class Program
{
    static void Main()
    {
        Console.Write("Введите исходное целое число: ");
        string N = Console.ReadLine();
		try
		{
			int.Parse(N);
			Console.WriteLine("Щисло c {0} сифрами, насяльника!", N.Distinct().Count() != N.Length ? "пофторяюсимися" : "уникальными");
		}
		catch(FormatException e)
		{
			Console.WriteLine("Пургу гонесь, насяльника, делать нисего не буду!");
		}
		Console.ReadLine();
    }
}
Не давай организму поблажки, каждый день тренируй его в шашки..

Последний раз редактировалось Скарам; 10.04.2013 в 13:39.
Скарам вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
С++ образуется ли возраст последовательность из цифр заданного числа Anya She Помощь студентам 6 12.12.2012 13:44
одномерный массив - найти сумму отрицательных меньше заданного числа и количество положительных больше заданного числа ALEXXELA Паскаль, Turbo Pascal, PascalABC.NET 2 02.12.2012 20:13
вычислить сумму цифр заданного целого положительного числа (Паскаль) prs58 Помощь студентам 5 17.10.2011 22:15
найти сумму цифр заданного натурального числа dima.m Microsoft Office Excel 6 06.12.2010 11:30
Паскаль. Из заданного числа найти сумму его цифр Matlashov Помощь студентам 8 26.11.2009 14:27