home *** CD-ROM | disk | FTP | other *** search
/ ftp.barnyard.co.uk / 2015.02.ftp.barnyard.co.uk.tar / ftp.barnyard.co.uk / cpm / walnut-creek-CDROM / MBUG / MBUG003.ARC / JRTPAS-1.LBR / JRT37.PAS < prev    next >
Pascal/Delphi Source File  |  1979-12-31  |  1KB  |  40 lines

  1. {Program 6.1
  2. find the largest and smallest number in a given list}
  3.  
  4. Program minmax;
  5.  
  6. const    n = 20;
  7. var    i, u, v, min, max : integer;
  8.     a : array[ 1..n ] of integer;
  9.  
  10.     {assume that at this point in the program,  array a
  11.     contains the values 35 68 94 7 88 -5 -3 12 35 9
  12.     -6 3 0 -2 74 88 52 43 5 4}
  13.  
  14. begin    
  15.     {for ease of testing, I will fill the array for you}
  16.     a[1]:=35;a[2]:=68;a[3]:=94;a[4]:=7;a[5]:=88;a[6]:=-5;
  17.     a[7]:=-3;a[8]:=12;a[9]:=35;a[10]:=9;a[11]:=-6;a[12]:=3;
  18.     a[13]:=0;a[14]:=-2;a[15]:=74;a[16]:=88;a[17]:=52;a[18]:=43;
  19.     a[19]:=5;a[20]:=4;
  20.     min := a[ 1 ]; max := min; i := 2;
  21.     while i < n do
  22.     begin
  23.         u := a[ i ]; v := a[ i + 1 ];
  24.         if u > v then
  25.         begin
  26.             if u > max then max := u;
  27.             if v < min then min := v;
  28.         end else
  29.         begin
  30.             if v > max then max := v;
  31.             if u < min then min := u;
  32.         end;
  33.         i := i + 2
  34.     end;
  35.     if i = n then
  36.         if a[ n ] > max then max := a[ n ]
  37.         else if a[ n ] < min then min := a[ n ];
  38.     writeln( max, min )
  39. end.
  40.