Difference between revisions of "In"

From Lazarus wiki
Jump to navigationJump to search
(Undo revision 132386 by Trev (talk): remove “back-page”-link as referring to a _static_ page does not make sense because there are many pages linking here, not just one)
Tag: Undo
(mention use in uses-clause)
Line 4: Line 4:
 
<syntaxhighlight lang="pascal" enclose="none">true</syntaxhighlight>]] if the value belongs to the set and [[False|
 
<syntaxhighlight lang="pascal" enclose="none">true</syntaxhighlight>]] if the value belongs to the set and [[False|
 
<syntaxhighlight lang="pascal" enclose="none">false</syntaxhighlight>]] if the value
 
<syntaxhighlight lang="pascal" enclose="none">false</syntaxhighlight>]] if the value
does not belong to the set. The word <syntaxhighlight lang="pascal" enclose="none">in</syntaxhighlight> is also used with the reserved word [[For|<syntaxhighlight lang="pascal" enclose="none">for</syntaxhighlight>]] in [[for-in loop]].
+
does not belong to the set. The word <syntaxhighlight lang="pascal" enclose="none">in</syntaxhighlight> is also used with the reserved word [[For|<syntaxhighlight lang="pascal" enclose="none">for</syntaxhighlight>]] in [[for-in loop]]. The word <syntaxhighlight lang="pascal" enclose="none">in</syntaxhighlight> is also usable in [[Uses|<syntaxhighlight lang="pascal" enclose="none">uses</syntaxhighlight>‑clauses]].
  
 
== example ==
 
== example ==

Revision as of 02:06, 28 January 2022

Deutsch (de) English (en) suomi (fi)

The reserved word in tests whether a value is in a set. It returns the boolean value true if the value belongs to the set and false if the value does not belong to the set. The word in is also used with the reserved word for in for-in loop. The word in is also usable in uses‑clauses.

example

program projectin;
uses SysUtils,TypInfo;
type
  Berry = (Blueberry,FlyHoneysuckle, Lingonberry, Raspberry,Snowberry,Strawberry);
  Berries = set of berry;
var
   basket: Berries;
   someberry:berry;
   str:string;
   i:integer;
begin
  basket := [];
  writeLn('Choose a berry from the following berries into your basket');
  repeat
    i:=1;
    for someberry in berry do
      begin
        Str := GetEnumName(TypeInfo(Berry),ord(someberry));
        writeln(i,' : ',Str);
        inc(i);
      end;
    writeln('0 : exit ');
    writeln;
    readln (i);
    if i>0 then
      begin
        someberry  :=Berry(i-1);
        Include(basket,someberry);
      end;
  until  i=0;
  if (FlyHoneysuckle in basket) or (Snowberry in basket) then
   begin
     writeln ('You have poisonous berries in your basket');
     if FlyHoneysuckle in basket then
       writeln ('Your basket has a poisonous Fly honeysuckle!') ;
     if Snowberry in basket then
       writeln ('Your basket has a poisonous Snowberry!');
   end;
  writeln('So you had these berries in your basket:');
  for someberry in basket do
  begin
    Str := GetEnumName(TypeInfo(Berry),ord(someberry));
    writeln(Str);
  end;
  readln ;
end.