Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Компилятор. Ошибка. Что не так? [D5, Win2k]


Vlad Oshin ©   (2004-07-30 09:21:00) 

z.f2:string;
zi: set of char;
______________

if not (z.f2[i] in zi) {тут}then bol:=bol and false;

{тут}
(ожидалось но )найдено?!?


Рыба   (2004-07-31 15:07:00) [1]

>BDenis ©  (31.07.04 12:01) [14]
>> Bol := Bol or False;
>А это разве имеет смысл???

Не имеет :))


Verg   (2004-07-31 12:11:00) [2]


> [11] Nikolay   (31.07.04 07:12)
> bol and false
> Я что-то не понял? Это ж всегда = false!


Ну и что. Этого и добивались. Только достаточно было просто написать bol := false; да и break-нуть можно. А то какой смысл просматривать все остальное?

Ведь

> если хоть один символ строки не в множестве, надо сообщить


А вот смысл этого

> z.f2:string;


я так до сих пор и не понял. Точнее, я не пронял как это компилер вообще допустил.

Что, модуль имеет имя z? Или как?
В 6-ке это не катит по-любому...


BDenis   (2004-07-31 12:01:00) [3]

Рыба ©   (31.07.04 08:36) [13]

> Bol := Bol or False;

А это разве имеет смысл???


Рыба   (2004-07-31 08:36:00) [4]

Или

Bol := Bol or False; ???

А то, ведь Nikolay прав.


Рыба   (2004-07-31 08:35:00) [5]

>then bol:=bol and false;

Наверное, так надо:

Bol := not Bol;


Nikolay   (2004-07-31 07:12:00) [6]

bol and false
Я что-то не понял? Это ж всегда = false!


Sandman25   (2004-07-30 10:12:00) [7]

procedure TForm1.bt1Click(Sender: TObject);
var
 s: record
    s2: string[8];
 end;
 z: set of char;
begin
 s.s2 := '123';
 z := ['1','5'];
 if not (s.s2[1] in z) then
end;


Anatoly Podgoretsky   (2004-07-30 10:04:00) [8]

Vlad Oshin ©   (30.07.04 09:51) [6]
Так и надо приводить правильное объявление, а не z.f2:string;


Vlad Oshin   (2004-07-30 09:57:00) [9]


> Думкин ©   (30.07.04 09:52) [7]

copy|paste
мне идею проверить


Думкин   (2004-07-30 09:52:00) [10]

> [3] Vlad Oshin ©   (30.07.04 09:39)
> > Думкин ©   (30.07.04 09:26) [1]
> > > bol:=bol and false;
> >
> > А это зачем такое?
>
> если хоть один символ строки не в множестве, надо сообщить

А так bol := false не работает?
Ну или уж:
bol:=bol and (z.f2[i] in zi);
Или уж... с while для скорости.


Vlad Oshin   (2004-07-30 09:51:00) [11]


> Anatoly Podgoretsky ©   (30.07.04 09:47) [4]

z:zap;

zap=record
 f1:string[6];
 f2:string[8];


Vlad Oshin   (2004-07-30 09:49:00) [12]

бейте меня ногами
в раздел типов написал zi.
Делфи уже перезапускал, думал глюк :)


Anatoly Podgoretsky   (2004-07-30 09:47:00) [13]

Интересное объявление string, пытался компилятор запутать


Vlad Oshin   (2004-07-30 09:39:00) [14]

bol:=true;
   for i:=1 to length(z.f2) do
                if not (z.f2[i] in zi) then bol:=bol and false;
не компилируется ...


> Думкин ©   (30.07.04 09:26) [1]
> > bol:=bol and false;
>
> А это зачем такое?

если хоть один символ строки не в множестве, надо сообщить


Sandman25   (2004-07-30 09:31:00) [15]

Прекрасно компилируется

procedure TForm1.bt1Click(Sender: TObject);
var
 s: string;
 z: set of char;
begin
 s := '123';
 z := ['1','5'];
 if not (s[1] in z) then
end;


Думкин   (2004-07-30 09:26:00) [16]

> bol:=bol and false;

А это зачем такое?


Наверх

Титульная страница Поиск, карта сайта Написать письмо