program souvisly_usek_stejnych_cisel; uses crt; const maximum = 100; var cislo : array[1..maximum]of integer; pocet, i, hodnota, delka : integer; pomcislo : char; procedure Vstup; begin writeln('Program pro urceni nejdelsiho useku stejnych cilsic ve vlozenem cisle.'); writeln; write('Vloz cislo: '); for i := 1 to 100 do begin pomcislo := readkey; if((ord(pomcislo)-48) in [0..9]) then cislo[i] := (ord(pomcislo)-48); write(cislo[i]); pocet := i; if (cislo[i] = 0) then i := 100; end; writeln; writeln; writeln('Bylo vlozeno toto cislo : '); writeln; for i := 1 to pocet do write(cislo[i]); writeln; end; procedure Usek; var pomhodnota, pomdelka : integer; begin hodnota :=cislo[1]; pomhodnota :=cislo[1]; delka := 1; pomdelka := 1; i := 1; while (cislo[i] <> 0) do begin if cislo[i] = cislo[i+1] then begin Inc(pomdelka); pomhodnota := cislo[i]; end; if ((cislo[i] <> cislo[i+1]) and (pomdelka > delka)) then begin delka := pomdelka; hodnota := pomhodnota; pomdelka := 1; pomhodnota := cislo[i+1]; end; Inc(i); end; end; procedure Vystup; begin writeln('Nejdelsi usek mela cislice ',hodnota,'.'); writeln('Delka nejdelsiho useku je ',delka,'.'); end; BEGIN clrscr; Vstup; writeln; Usek; writeln; Vystup; repeat until keypressed; END.