powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Delphi [игнор отключен] [закрыт для гостей] / Почему конструкция - if ((a=true) and (b=true) and (c=true)) с тремя and не работает?
25 сообщений из 67, страница 1 из 3
Почему конструкция - if ((a=true) and (b=true) and (c=true)) с тремя and не работает?
    #39950830
Sergi
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Если в if стоит два and, то всё нормально. Я так думаю, что и выделение с скобки отдельных частей вышеуказанной конструкции будет работать, вот так -
if (((a=true) and (b=true)) and (c=true))
Хотя, кто знает?
...
Рейтинг: 0 / 0
Почему конструкция - if ((a=true) and (b=true) and (c=true)) с тремя and не работает?
    #39950834
Фотография DarkMaster
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Sergi
Если в if стоит два and, то всё нормально. Я так думаю, что и выделение с скобки отдельных частей вышеуказанной конструкции будет работать, вот так -
if (((a=true) and (b=true)) and (c=true))
Хотя, кто знает?


Почему решил, что не работает? Что показывает отладчик на конструкции :

if (a and b and c) then ... ?

Ну и да - директивы B+ / B- в помощь.
...
Рейтинг: 0 / 0
Почему конструкция - if ((a=true) and (b=true) and (c=true)) с тремя and не работает?
    #39950850
DimaBr
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Пятничный стёб ?
...
Рейтинг: 0 / 0
Почему конструкция - if ((a=true) and (b=true) and (c=true)) с тремя and не работает?
    #39950857
Aleksandr Sharahov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
конечно, стеб - там 2 and
...
Рейтинг: 0 / 0
Почему конструкция - if ((a=true) and (b=true) and (c=true)) с тремя and не работает?
    #39950866
Sergi
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Уточнение.
Ну да, конечно, два and и три условия выполнения. Сорри. Не проснулся еще.
Конструкция из двух and и трёх условий не выполняется, а сама программа компилируется и работает. Отдельные условия внутри if выполняются на 100%. Приходится вначале делать проверку на два and, потом проверять последнее сравнение. Когда разделяю, всё выполняется.
Как так может быть?
...
Рейтинг: 0 / 0
Почему конструкция - if ((a=true) and (b=true) and (c=true)) с тремя and не работает?
    #39950867
Гаджимурадов Рустам
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Sergi> Как так может быть?

Так это в честь пятницы или всерьёз?
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
Почему конструкция - if ((a=true) and (b=true) and (c=true)) с тремя and не работает?
    #39950871
Sergi
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Всерьёз. Я выше уточнил вопрос.
...
Рейтинг: 0 / 0
Почему конструкция - if ((a=true) and (b=true) and (c=true)) с тремя and не работает?
    #39950875
Aleksandr Sharahov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Sergi,

пример, выдающий неверный результат, мы сами должны придумать?
...
Рейтинг: 0 / 0
Почему конструкция - if ((a=true) and (b=true) and (c=true)) с тремя and не работает?
    #39950876
YuRock
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Sergi
Всерьёз. Я выше уточнил вопрос.

Например, ты со скобками запутался. Причин может быть много.
Но код, который "не работает", ты не показал. Да и текст "ошибки" хранишь в секрете.
...
Рейтинг: 0 / 0
Почему конструкция - if ((a=true) and (b=true) and (c=true)) с тремя and не работает?
    #39950880
Sergi
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Никакого кода ошибки не выдаётся, просто общий результат if - отрицательный, то есть не выполняется. А пример стоит в заголовке темы.
Исходный код такой. За два выполнения процедуры мне надо отработать два условия if:
var a,b,c: boolean;
begin
if ((a=false) or (b=false) or (c=false)) then
begin a:=true; b:=true; c:=true end else
if ((a=true) and (b=true) and (c=true)) then
showmessage('!!');
end;
...
Рейтинг: 0 / 0
Почему конструкция - if ((a=true) and (b=true) and (c=true)) с тремя and не работает?
    #39950881
Aleksandr Sharahov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Sergi
Никакого кода ошибки не выдаётся, просто общий результат if - отрицательный, то есть не выполняется. А пример стоит в заголовке темы.
Как то вот так:
if ((a=true) and (b=true) and (c=true)) then
showmessage('!');


а типы и значения переменных наши или ваши?
...
Рейтинг: 0 / 0
Почему конструкция - if ((a=true) and (b=true) and (c=true)) с тремя and не работает?
    #39950882
Sergi
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Подправил условия задачи выше.
Только переменные
var a,b,c: boolean;
описаны, как глобальные, а не внутри процедуры. Это естественно.
при c:=true; - точку с запятой пропустил здесь в примере, в программе все правильно стоит.
...
Рейтинг: 0 / 0
Почему конструкция - if ((a=true) and (b=true) and (c=true)) с тремя and не работает?
    #39950887
Aleksandr Sharahov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Sergi
Подправил условия задачи выше.


подправьте еще раз:

- объявите типы переменных
- присвойте переменным начальные значения
- приведите полученный результат
- приведите правильный, с вашей точки зрения, результат
...
Рейтинг: 0 / 0
Почему конструкция - if ((a=true) and (b=true) and (c=true)) с тремя and не работает?
    #39950890
DimaBr
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
...
Рейтинг: 0 / 0
Почему конструкция - if ((a=true) and (b=true) and (c=true)) с тремя and не работает?
    #39950891
Sergi
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Начальные значения естественно - false, даже если этого не объявлять.
Может Делфи-6 глючит у меня?
...
Рейтинг: 0 / 0
Почему конструкция - if ((a=true) and (b=true) and (c=true)) с тремя and не работает?
    #39950894
Aleksandr Sharahov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
DimaBr,

поспешил немного, лучше было б, чтобы автор сам показал
...
Рейтинг: 0 / 0
Почему конструкция - if ((a=true) and (b=true) and (c=true)) с тремя and не работает?
    #39950899
DimaBr
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Sergi
Начальные значения естественно - false,

Если начальное значение FALSE, то почему он, по вашему, должен заходить в секцию ELSE ?
...
Рейтинг: 0 / 0
Почему конструкция - if ((a=true) and (b=true) and (c=true)) с тремя and не работает?
    #39950900
Aleksandr Sharahov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Sergi
Начальные значения естественно - false, даже если этого не объявлять.


все-таки, сделайте, как я прошу, не заставляйте меня загружать Delphi.

Если вам нужно получить ответ на вопрос,
то дайте нам все необходимые условия для ответа.
...
Рейтинг: 0 / 0
Почему конструкция - if ((a=true) and (b=true) and (c=true)) с тремя and не работает?
    #39950901
Sergi
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Я сам сильно удивляюсь, что у меня не такой результат, как приведён выше. Мне пришлось разбить условие на два, тогда всё пошло хорошо.
...
Рейтинг: 0 / 0
Почему конструкция - if ((a=true) and (b=true) and (c=true)) с тремя and не работает?
    #39950903
DimaBr
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Код: pascal
1.
2.
3.
4.
5.
6.
7.
8.
9.
var a,b,c: boolean;
begin
if ((a=false) or (b=false) or (c=false)) then begin 
   a:=true; b:=true; c:=true 
end else
// сюда заходим только тогда, когда первый IF не выплнился
if ((a=true) and (b=true) and (c=true)) then
  showmessage('!!');
end;
...
Рейтинг: 0 / 0
Почему конструкция - if ((a=true) and (b=true) and (c=true)) с тремя and не работает?
    #39950904
Sergi
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
DimaBr
Sergi
Начальные значения естественно - false,

Если начальное значение FALSE, то почему он, по вашему, должен заходить в секцию ELSE ?

Вторым проходом процедуры, должен заходить. У меня в программе опрос этой процедуры идёт циклически. В какой-то момент одна из переменных приобретает состояние false. Первым проходом всё должно выставляться в true. Вторым проходом - выполняться условие типа showmessage.
...
Рейтинг: 0 / 0
Почему конструкция - if ((a=true) and (b=true) and (c=true)) с тремя and не работает?
    #39950906
DimaBr
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Sergi
У меня в программе опрос этой процедуры идёт циклически.

В вашем тексте нет никакой процедуры
...
Рейтинг: 0 / 0
Почему конструкция - if ((a=true) and (b=true) and (c=true)) с тремя and не работает?
    #39950907
Aleksandr Sharahov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Sergi
DimaBr
пропущено...

Если начальное значение FALSE, то почему он, по вашему, должен заходить в секцию ELSE ?

Вторым проходом процедуры, должен заходить. У меня в программе опрос этой процедуры идёт циклически. В какой-то момент одна из переменных приобретает состояние false. Первым проходом всё должно выставляться в true. Вторым проходом - выполняться условие типа showmessage.


так вы снимаете свой вопрос, или все же приведете ПОЛНЫЙ неработающий пример?
...
Рейтинг: 0 / 0
Почему конструкция - if ((a=true) and (b=true) and (c=true)) с тремя and не работает?
    #39950909
YuRock
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Sergi
Может Делфи-6 глючит у меня?
Наверняка. У меня оно уже около 20 лет глючит.
...
Рейтинг: 0 / 0
Почему конструкция - if ((a=true) and (b=true) and (c=true)) с тремя and не работает?
    #39950910
DimaBr
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
...
Рейтинг: 0 / 0
25 сообщений из 67, страница 1 из 3
Форумы / Delphi [игнор отключен] [закрыт для гостей] / Почему конструкция - if ((a=true) and (b=true) and (c=true)) с тремя and не работает?
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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