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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 16.12.2015, 21:35   #1
христик
Пользователь
 
Регистрация: 03.12.2011
Сообщений: 16
Смех

Привет всем, помогите разобраться пожалуйста))))
уже несколько дней интернет рою, и не могу понять( весь ютюб уже наизусть выучила(((
дан код в C#:
Код:
 int i, j, x;
            for (i = 0; i <= N - 1; i++)
            {
                for (j = N - 1; j >= (i + 1); j--)
                    //если A[j - 1]> A[j], то элементы обмениваются местами(самый легкий элемент сместится на 1-ю позицию)
                    if (A[j - 1] > A[j])
                    {
                        x = A[j - 1];
                        A[j - 1] = A[j];
                        A[j] = x;
                    }
про цикл фор уже знаю много)), но не как не могу понять какие же значения у меня выходят(((



хочу отследить такие параметры как i; j; i <= N - 1; j >= (i + 1)

отследить чему они будут ровняться после каждого прохода цикла...

вот как я понимаю цикл начинается с того, что
i=0;
j=3(если N допустим равен 4) ;
i <= N - 1 ---- 0<=4-1;
j >= (i + 1) ----- 3>=4+1;
верно??? но, дальше у меня никак не получается сообразить((((

далее у меня получаются такие значения:

i ; j ; i <= N - 1 ; j >= (i + 1)
0 ; 3 ; 0<=3 ; 3>=5
1 ; 2 ; 1<=3 ; 2>=2
2 ; 1 ; 2<=3 ; 1>=3

Последний раз редактировалось Stilet; 16.12.2015 в 22:18.
христик вне форума Ответить с цитированием
Старый 16.12.2015, 22:20   #2
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,792
По умолчанию

Цитата:
отследить чему они будут ровняться после каждого прохода цикла...
Так поставь внутрь цикла точку прерывания, и когда прога на ней брякнется - подсмотри в окне переменных их значения.
Цитата:
дан код в C#
Это типо сортировка? Использовать встроенные фички шарпея (LINQ например) для сортировки нет желания?
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 16.12.2015, 22:35   #3
христик
Пользователь
 
Регистрация: 03.12.2011
Сообщений: 16
По умолчанию

так мне надо понять сам принцип, я же не могу прерывать ее пятьсот тысяч раз))))
я хочу прежде всего разобраться, второй раз , когда цикл запускается, какие там значения поступают на вход?

да и проги нет под рукой, моя древняя банка не держит), оперативки не хватает))

Последний раз редактировалось Stilet; 16.12.2015 в 22:49.
христик вне форума Ответить с цитированием
Старый 16.12.2015, 22:52   #4
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,792
По умолчанию

Цитата:
мне надо понять сам принцип
Сам принцип можно почитать в теории.
https://ru.wikipedia.org/wiki/%D0%A1...BA%D0%BE%D0%BC
Цитата:
я же не могу прерывать ее пятьсот тысяч раз))
Что так много данных?
Цитата:
да и проги нет под рукой, моя древняя банка не держит), оперативки не хватает))
Что настолько с оператосом беда, что даже .NET не держит?
Тогда рекомендую онлайн компилятор: http://www.tutorialspoint.com/compile_csharp_online.php
Ставь внутрь цикла вывод в консоль и посмотришь как он работает (старый трюк)
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 17.12.2015, 01:01   #5
8Observer8
Старожил
 
Аватар для 8Observer8
 
Регистрация: 02.01.2011
Сообщений: 3,322
По умолчанию

Цитата:
хочу отследить такие параметры как i; j; i <= N - 1; j >= (i + 1)

отследить чему они будут ровняться после каждого прохода цикла...
Поставьте небольшой N и запустите программу в пошаговом режиме. Можете даже в консоль выводить.
8Observer8 вне форума Ответить с цитированием
Ответ


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

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Помогите разобраться. AllexDomkrat Microsoft Office Excel 0 16.11.2015 08:28
помогите разобраться(Си) Nikolay625 Помощь студентам 6 17.06.2014 16:52
Помогите разобраться МаксMorfey Общие вопросы по Java, Java SE, Kotlin 1 21.12.2009 13:15
Помогите разобраться. Serror Общие вопросы C/C++ 1 07.10.2009 16:08