3 / 3 / 0
Регистрация: 31.10.2017
Сообщений: 85
|
||||||
1 | ||||||
"ИЛИ" работает как "И"10.11.2017, 13:57. Показов 880. Ответов 7
Метки нет (Все метки)
Пишу программу которая читает слова по одному за раз пока не будет введена отдельная буква q. И сколько я тут не бился словно рыба об лед, но пока в выражении ниже не поменял И на ИЛИ ничего не получилось. Помогите понять почему у меня ИЛИ ведет себя словно И.
0
|
10.11.2017, 13:57 | |
Ответы с готовыми решениями:
7
Как работает свойство SerialPort.BytesToRead или как лучше сделать проверку работает ли прибор? Include не работает так как хочется или как работает инклуд SelText в textBox'e отчёта не работает или работает не так как в форме? setprecision() не работает, или работает не так как нужно Как запустить Batch-файл? Как диагностировать проблему или ошибки в синтаксисе, когда Bat-файл не работает или "вылетает". [Руководство] |
7789 / 6556 / 2984
Регистрация: 14.04.2014
Сообщений: 28,661
|
||||||
10.11.2017, 14:01 | 2 | |||||
Что именно ты вводишь?
Добавлено через 1 минуту Общее НЕ тогда:
0
|
зомбяк
1584 / 1218 / 345
Регистрация: 14.05.2017
Сообщений: 3,939
|
|
10.11.2017, 14:07 | 3 |
потому что если работаешь с условиями "нет", то ИЛИ для них работает именно так, как И для условий "да". И наоборот.
0
|
192 / 166 / 82
Регистрация: 01.07.2016
Сообщений: 943
|
|
10.11.2017, 14:08 | 4 |
Ну вот смотри, стоит у тебя "и" и ты ввел qwe. Первое условие не выполняется (т е вот это - str[0] != 'q') а второе выполняется (т е вот это - str[1] != '\0'), а сам "и" так устроен что оба условия должны быть правдой поэтому он выходит из цикла. Если поставить "или" то что бы выйти из цикла оба условия должны не выполнятся
0
|
3 / 3 / 0
Регистрация: 31.10.2017
Сообщений: 85
|
|
10.11.2017, 14:15 [ТС] | 5 |
no swear, вот я и имею ввиду, что чтобы выйти из цикла должны выполниться оба, соответственно там должны стоять две &&, а стоят два ||. Вот например ввожу я просто 'q', и получается что первый элемент массива это q, а второй \0 - вот тут то и должен произойти выход из массива, т.е. оба условия выполниться должны.
0
|
Модератор
8908 / 6677 / 918
Регистрация: 14.02.2011
Сообщений: 23,520
|
||||||
10.11.2017, 14:18 | 6 | |||||
вообще то в скобках условия выполнения цикла, а не выхода из него
вызываем единичное q str[0] != 'q' ЛОЖЬ str[1] != '\0' ЛОЖЬ, ЛОЖЬ + ЛОЖЬ =ЛОЖЬ цикл не выполняется если нужно с И то используется правила Моргана
0
|
зомбяк
1584 / 1218 / 345
Регистрация: 14.05.2017
Сообщений: 3,939
|
||||||
10.11.2017, 14:24 | 7 | |||||
Выражение
0
|
192 / 166 / 82
Регистрация: 01.07.2016
Сообщений: 943
|
||||||
10.11.2017, 14:24 | 8 | |||||
Сообщение было отмечено CodeSeeker как решение
Решение
Поэтому "или" ставь. При или оба условия должны не выполниться
0
|
10.11.2017, 14:24 | |
10.11.2017, 14:24 | |
Помогаю со студенческими работами здесь
8
Монитор не работает через VGA ,работает через встороенный адаптер .мне успокоиться или спасать комп .это видеокарта или другое?подскажите пожалуйста! Как работает Intellisense или как компиляторы С анализируют структуры ? Как работает get() или getline() в C++ ЮСБ 3.0 работает как 3.0 или 2.0? Va_arg или как это работает Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |