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

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

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 16.11.2016, 23:37   #1
Demento
 
Регистрация: 15.11.2016
Сообщений: 3
Хорошо Помогите построить блок-схему к приведённому коду

В алоритмах не разбираюсь, нужна блок схема. Помогите пожалуйста.

Вот код:


Код:
using system;
 
namespace Permutations
{
    class Program
    {
        static bool GenNextPermutation(int[] permutation)
        {
            int last = permutation.Length - 1;
            while (last > 0 && permutation[last] < permutation[last - 1])
                --last;
            if (last == 0)
                return false;
            int firstThatBigger = permutation.Length - 1;
            while (permutation[firstThatBigger] < permutation[last-1])
            {
                --firstThatBigger;
            }
            Swap(ref permutation[last - 1], ref permutation[firstThatBigger]);
            for (int k = 0; k < (permutation.Length - last) / 2; ++k)
                Swap(ref permutation[last + k], ref permutation[permutation.Length - 1 - k]);
            return true;
        }
 
        private static void Swap(ref int a, ref int b)
        {
            var t = a;
            a = b;
            b = t;
        }
 
        static int[] GetFirstPermutation(int n)
        {
            var res = new int[n];
            for (int i = 0; i < n; ++i)
                res[i] = i + 1;
            return res;
        }
 
        static void Print(int[] permutation)
        {
            Console.WriteLine(string.Join(" ", permutation));
        }
 
        static void Main(string[] args)
        {
            int n = int.Parse(Console.ReadLine());
            var permutation = GetFirstPermutation(n);
            Print(permutation);
            while (GenNextPermutation(permutation))
            {
                Print(permutation);
            }
        Console.WriteLine();
        }
    }
}

Последний раз редактировалось Вадим Мошев; 16.11.2016 в 23:45.
Demento вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
программирование блок схема. пожалуйста, нарисуйте блок схему. очень срочно нужно! Bogdan96 Помощь студентам 4 22.09.2015 09:33
Схема алгоримта (блок схема) на задачу по Паскалю LINCHAK Помощь студентам 0 22.10.2010 16:56
блок схема! Катюшка_92 Помощь студентам 0 03.06.2010 10:39
Блок-схема hoR1 Помощь студентам 1 06.05.2010 15:00
Блок схема алгоритма программы и схема взаимодействия модулей. Lazio Фриланс 3 02.12.2009 23:10