--A program a beolvasott tomb lokalis maximum helyeit szamolja meg 
--Elofeltetel az, hogy a tomb legalabb 2 elem hosszu 
--Egy hely lokalis maximum, ha az erteke nagyobb a ket szomszedjanal 
--Az elso es az utolso elemet csak a letezo szomszeddal kell osszehasonlitani 
 
with ada.text_io; 
use ada.text_io; 
 
procedure lokmaxdb is 
   type tomb is array(integer range <>) of integer; 
   i : integer; 
   s : string(1..4); 
   h : integer; 
begin 
   --adatok beolvasasa 
   put("A tomb merete: "); 
   get_line(s,h); 
   i := integer'value(s(1..h)); 
   declare 
      t : tomb(1..i);       
      db : integer := 0;  
   begin 
      for k in 1..loop 
         put("t[" & integer'image(k) & "] = "); 
         get_line(s,h); 
         t(k) := integer'value(s(1..h)); 
      end loop
       
       
      --lok max szamlalas a kozbulso elemekre 
      for k in 2..i-1 loop 
         if t(k) > t(k-1and then t(k) > t(k+1then 
            db := db + 1
         end if;          
      end loop
      --a ket szelso elem vizsgalata 
      if t(1) > t(2then db := db + 1end if
      if t(i) > t(i-1then db := db + 1end if
 
      --eredmeny kiirasa 
      put_line("A lokalis maximumhelyek szama: " & integer'image(db));             
   end
end lokmaxdb;
 
 
VISSZA