Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / WinForms, .Net Framework [игнор отключен] [закрыт для гостей] / не выходит из while / 25 сообщений из 31, страница 1 из 2
17.07.2014, 11:11
    #38698717
jenya7
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
не выходит из while
Код: c#
1.
2.
3.
4.
5.
while (active == false || iterations < 10)
{
     iterations++;
     Console.WriteLine(iterations);
}


логическое ИЛИ не работает - проверяет первое условие - оно false и не выходит из while.
...
Рейтинг: 0 / 0
17.07.2014, 11:41
    #38698766
Shocker.Pro
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
не выходит из while
первое УСЛОВИЕ будет равно false, когда active будет равно true

не надо путать самого себя, сравнивая логическую переменную с логичекой константой, в итоге сами не понимаете, как это работает.
Напишите
Код: c#
1.
while (active || iterations < 10)

или
Код: c#
1.
while (!active || iterations < 10)

в зависимости от того, что нужно
...
Рейтинг: 0 / 0
17.07.2014, 12:06
    #38698809
jenya7
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
не выходит из while
что то я действительно туплю, у меня так
Код: c#
1.
2.
static bool active = false;
static int iterations;


так он выходит
Код: c#
1.
while (active || iterations < 10)


я так понимаю по второму условию
а так не выходит
Код: c#
1.
while (!active || iterations < 10)


а почему? второе условие выполняется ведь.
...
Рейтинг: 0 / 0
17.07.2014, 12:09
    #38698818
Shocker.Pro
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
не выходит из while
jenya7а так не выходит
Код: c#
1.
while (!active || iterations < 10)



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

Переведите на русский, может так понятнее?
ПОКА НЕ АКТИВНО ИЛИ ИТЕРАТОР МЕНЬШЕ 10 ВЫПОЛНЯТЬ ЦИКЛ

Достаточно того, что ПОКА НЕ АКТИВНО, итератор уже не важен
...
Рейтинг: 0 / 0
17.07.2014, 12:13
    #38698832
jenya7
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
не выходит из while
Shocker.Projenya7а так не выходит
Код: c#
1.
while (!active || iterations < 10)



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

Переведите на русский, может так понятнее?
ПОКА НЕ АКТИВНО ИЛИ ИТЕРАТОР МЕНЬШЕ 10 ВЫПОЛНЯТЬ ЦИКЛ

Достаточно того, что ПОКА НЕ АКТИВНО, итератор уже не важен

А как же сделать чтобы оба условия проверялись?
...
Рейтинг: 0 / 0
17.07.2014, 12:17
    #38698841
Shocker.Pro
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
не выходит из while
Напишите ПО РУССКИ, чего вы хотите от цикла
...
Рейтинг: 0 / 0
17.07.2014, 12:17
    #38698843
skyANA
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
не выходит из while
jenya7Shocker.Proпропущено...
второе условие не проверяется. Для продолжения цикла достаточно выполнения первого условия.

Переведите на русский, может так понятнее?
ПОКА НЕ АКТИВНО ИЛИ ИТЕРАТОР МЕНЬШЕ 10 ВЫПОЛНЯТЬ ЦИКЛ

Достаточно того, что ПОКА НЕ АКТИВНО, итератор уже не важен

А как же сделать чтобы оба условия проверялись?Если Вы хотите, чтобы цикл выполнялся пока признак активности (active) имеет значение false И выполнено меньше 10 итераций, то:
Код: c#
1.
2.
3.
4.
5.
while (!active && iterations < 10)
{
     iterations++;
     Console.WriteLine(iterations);
}
...
Рейтинг: 0 / 0
17.07.2014, 12:19
    #38698847
jenya7
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
не выходит из while
Shocker.ProНапишите ПО РУССКИ, чего вы хотите от цикла

Я опрашиваю машину по компорту. Она мне может ответить на 1-ой итерации а может и на восьмой. Ее ответ выставляет active в true.
Если она ответила на 1-ой итерации я не хочу гонять еще 9 циклов.
Это в этом цикле два условия а их может быть и пять и все надо проверить.
...
Рейтинг: 0 / 0
17.07.2014, 12:21
    #38698856
Shocker.Pro
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
не выходит из while
jenya7и все надо проверить.ну так значит надо проверить первоеусловие И второеусловие И третьеусловие. А вы проверяете ИЛИ
...
Рейтинг: 0 / 0
17.07.2014, 12:21
    #38698857
jenya7
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
не выходит из while
skyANAjenya7пропущено...


А как же сделать чтобы оба условия проверялись?Если Вы хотите, чтобы цикл выполнялся пока признак активности (active) имеет значение false И выполнено меньше 10 итераций, то:
Код: c#
1.
2.
3.
4.
5.
while (!active && iterations < 10)
{
     iterations++;
     Console.WriteLine(iterations);
}


в том то и дело что так цикл почему то продолжает бежать
...
Рейтинг: 0 / 0
17.07.2014, 12:22
    #38698858
skyANA
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
не выходит из while
jenya7, Вы человеческим языком можете сформулировать логическое условие выхода из цикла? А блок-схему нарисовать?
...
Рейтинг: 0 / 0
17.07.2014, 12:24
    #38698868
jenya7
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
не выходит из while
ой, понял, всем спасибо, протупил я конечно нипадецки. :)
...
Рейтинг: 0 / 0
17.07.2014, 12:26
    #38698870
skyANA
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
не выходит из while
jenya7skyANAпропущено...
Если Вы хотите, чтобы цикл выполнялся пока признак активности (active) имеет значение false И выполнено меньше 10 итераций, то:
Код: c#
1.
2.
3.
4.
5.
while (!active && iterations < 10)
{
     iterations++;
     Console.WriteLine(iterations);
}


в том то и дело что так цикл почему то продолжает бежатьДа ну нах! Вы вообще заметили, что я логичесоке ИЛИ заменил на логическое И?
Код: c#
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
using System;

namespace WhileApplication
{
    class Program
    {
        static void Main()
        {
            var active = false;
            var iterations = 0;

            while (!active && iterations < 10)
            {
                iterations++;
                Console.WriteLine(iterations);
            }

            Console.WriteLine();
            Console.WriteLine("Мы вышли из while!!!");
            Console.ReadKey();
        }
    }
}
...
Рейтинг: 0 / 0
17.07.2014, 13:03
    #38698943
jenya7
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
не выходит из while
Я привык что в LabView можно писать и ИЛИ и И там компайлер сам разруливает логику внутри. :)
...
Рейтинг: 0 / 0
17.07.2014, 14:04
    #38699069
Где-то в степи
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
не выходит из while
jenya7Shocker.ProНапишите ПО РУССКИ, чего вы хотите от цикла

Я опрашиваю машину по компорту. Она мне может ответить на 1-ой итерации а может и на восьмой. Ее ответ выставляет active в true.
Если она ответила на 1-ой итерации я не хочу гонять еще 9 циклов.
Это в этом цикле два условия а их может быть и пять и все надо проверить.
гы, а зачем ваше active?
while (iterations < 10)
{
iterations++;
Console.WriteLine(iterations);
if (Asker(iterations)) break;
}
...
Рейтинг: 0 / 0
17.07.2014, 14:08
    #38699077
jenya7
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
не выходит из while
Где-то в степиjenya7пропущено...


Я опрашиваю машину по компорту. Она мне может ответить на 1-ой итерации а может и на восьмой. Ее ответ выставляет active в true.
Если она ответила на 1-ой итерации я не хочу гонять еще 9 циклов.
Это в этом цикле два условия а их может быть и пять и все надо проверить.
гы, а зачем ваше active?
while (iterations < 10)
{
iterations++;
Console.WriteLine(iterations);
if (Asker(iterations)) break;
}
да наверное можно и так, о break я не подумал.
...
Рейтинг: 0 / 0
17.07.2014, 14:18
    #38699104
Pallaris
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
не выходит из while
jenya7Я привык что в LabView можно писать и ИЛИ и И там компайлер сам разруливает логику внутри. :)

А потом его назовут Скайнет...
...
Рейтинг: 0 / 0
17.07.2014, 14:40
    #38699147
Парамон
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
не выходит из while
jenya7Я привык что в LabView можно писать и ИЛИ и И там компайлер сам разруливает логику внутри. :)
Где такой купить, а то я мне надоело эту логику разриливать? )
...
Рейтинг: 0 / 0
17.07.2014, 14:48
    #38699171
jenya7
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
не выходит из while
Парамонjenya7Я привык что в LabView можно писать и ИЛИ и И там компайлер сам разруливает логику внутри. :)
Где такой купить, а то я мне надоело эту логику разриливать? )
это продукт от National Instrument, созданный для инженеров электронщиков, чтоб они не заморачивались на тонкостях программирования а решали конкретные инженерные задачи.
...
Рейтинг: 0 / 0
17.07.2014, 15:04
    #38699205
Парамон
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
не выходит из while
jenya7это продукт от National Instrument, созданный для инженеров электронщиков, чтоб они не заморачивались на тонкостях программирования а решали конкретные инженерные задачи.
Всегда думал, что электронщикам важно знать разницу между and и or )

напомнил. )
Построил прапорщик взвод солдат и говорит:
- Мне поручено провести с вами беседу о новых видах боевой техники. Наши конструкторы разработали новый танк, выдерживающий температуры от — 300 до 300 градусов по Цельсию.
Один из солдат поднимает руку:
- Товарищ прапорщик, разрешите спросить?
- Спрашивайте, рядовой!
- А вот физики говорят, что температуры меньше — 273 градусов Цельсия не бывает. Как же так?
- Ну… танк же секретный! про него физики могли и не знать!
...
Рейтинг: 0 / 0
17.07.2014, 15:17
    #38699237
Shocker.Pro
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
не выходит из while
Парамонjenya7это продукт от National Instrument, созданный для инженеров электронщиков, чтоб они не заморачивались на тонкостях программирования а решали конкретные инженерные задачи.
Всегда думал, что электронщикам важно знать разницу между and и or )полученный электронный продукт использует принципы неопределенности Гейзенберга
...
Рейтинг: 0 / 0
17.07.2014, 15:24
    #38699252
Где-то в степи
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
не выходит из while
Парамон,
а где вы нашли электронщика? из него электроншик как из меня жакивкусто
программист гы, лень открыть тынц или тынц , перед тем как постить сюда бред, а потом прикрыться фейком LabView гы..
...
Рейтинг: 0 / 0
17.07.2014, 15:36
    #38699265
jenya7
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
не выходит из while
Где-то в степиПарамон,
а где вы нашли электронщика? из него электроншик как из меня жакивкусто
программист гы, лень открыть тынц или тынц , перед тем как постить сюда бред, а потом прикрыться фейком LabView гы..
ну жакивкустами не рождаются, ими становятся
...
Рейтинг: 0 / 0
17.07.2014, 15:44
    #38699283
Парамон
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
не выходит из while
jenya7,
...
Рейтинг: 0 / 0
17.07.2014, 15:48
    #38699292
Где-то в степи
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
не выходит из while
Парамон,
XOR хоркину напоминает чем то


...
Рейтинг: 0 / 0
Форумы / WinForms, .Net Framework [игнор отключен] [закрыт для гостей] / не выходит из while / 25 сообщений из 31, страница 1 из 2
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]