-- Demonstrates that arrays have relational and equality operators -- Must have same named type -- Does element by element comparison with ada.text_io; use ada.text_io; procedure arrays_compare is s1: String := "cabs"; s2: String := "cat"; s3: String := "catenate"; type My_Array_T is array(Natural range <>) of Integer; t1: My_Array_T(1 .. 5) := (4 => 8, others => 1); t2: My_Array_T(1 .. 5) := (4 => 9, others => 1); t3: My_Array_T(1 .. 6) := (others => 1); begin -- All of the ifs are true if s1 < s2 then put_line("s1 < s2"); end if; if s2 < s3 then put_line("s2 < s3"); end if; if s2 = s3(1 .. 3) then put_line("s2 = s3(1 .. 3)"); end if; if t1 < t2 then put_line("t1 < t2"); end if; if t1 /= t2 then put_line("t1 /= t2"); end if; if t1 = (1, 1, 1, 8, 1) then put_line("t1 = (1,1,1,4,1)"); end if; if t1 > t3 then put_line("t1 > t3"); end if; end arrays_compare; -- Output: -- s1 < s2 -- s2 < s3 -- s2 = s3(1 .. 3) -- t1 < t2 -- t1 /= t2 -- t1 = (1,1,1,4,1) -- t1 > t3