소스 검색

+ Example for include/exclude

michael 23 년 전
부모
커밋
dfde6a6448
3개의 변경된 파일53개의 추가작업 그리고 1개의 파일을 삭제
  1. 1 1
      docs/refex/Makefile
  2. 1 0
      docs/refex/README
  3. 51 0
      docs/refex/ex111.pp

+ 1 - 1
docs/refex/Makefile

@@ -40,7 +40,7 @@ OBJECTS=ex1 ex2 ex3 ex4 ex5 ex6 ex7 ex8 ex9 ex10 ex11 ex12 ex13 ex14 \
         ex67 ex68 ex69 ex70 ex71 ex72 ex73 ex74 ex75 ex76 ex77 ex78 ex79 \
 	ex80 ex81 ex82 ex83 ex84 ex85 ex86 ex87 ex88 ex89 \
 	ex90 ex91 ex92 ex93 ex94 ex95 ex96 ex97 ex98 ex99 ex100 ex101 ex102\
-        ex103 ex104 ex105 ex106 ex107 ex108 ex109 ex110
+        ex103 ex104 ex105 ex106 ex107 ex108 ex109 ex110 ex111
 
 TEXOBJECTS=$(addsuffix .tex, $(OBJECTS))
 

+ 1 - 0
docs/refex/README

@@ -113,3 +113,4 @@ ex107.pp contains an example of the IndexDWord function.
 ex108.pp contains an example of the IndexChar function.
 ex109.pp contains an example of the MoveChar0 function.
 ex110.pp contains an example of the Real2Double function.
+ex111.pp contains an example of the include/exclude functions.

+ 51 - 0
docs/refex/ex111.pp

@@ -0,0 +1,51 @@
+program Example111;
+
+{ Program to demonstrate the Include/Exclude functions }
+
+Type
+  TEnumA = (aOne,aTwo,aThree);
+  TEnumAs = Set of TEnumA;
+  
+Var
+  SA : TEnumAs;
+
+  Procedure PrintSet(S : TEnumAs);
+  
+  var 
+    B : Boolean;
+    
+    procedure DoEl(A : TEnumA; Desc : String);
+    
+    begin
+      If A in S then
+        begin
+        If B then 
+          Write(',');
+        B:=True;
+        Write(Desc);
+        end;
+    end;
+    
+  begin
+    Write('[');
+    B:=False;
+    DoEl(aOne,'aOne');
+    DoEl(aTwo,'aTwo');
+    DoEl(aThree,'aThree');
+    Writeln(']')  
+  end;
+
+begin
+  SA:=[];
+  Include(SA,aOne);
+  PrintSet(SA);
+  Include(SA,aThree);
+  PrintSet(SA);
+  Exclude(SA,aOne);
+  PrintSet(SA);
+  Exclude(SA,aTwo);
+  PrintSet(SA);
+  Exclude(SA,aThree);
+  PrintSet(SA);
+end.      
+