meno: Michal Korbela
škola: gymnázium J.J Bánovce nad Bebravou
trieda: kvinta
Príklad č.5


program chladnicka;
uses crt;

var
rad: array[1..1000] of byte;
a,b,c,pocet,i,tah,temp,x : integer;


begin
clrscr;
writeln('zadajte pocet: ');
readln(pocet);
a:=0;
b:=0;
c:=0;
writeln('zadajte cisla: ');

for i:=1 to pocet do begin {načítavanie vstupov a zaznamenanie počtov 1, 2, 3}
read(rad[i]);
if rad[i]=1 then a:=a+1
else
	if rad[i]=2 then b:=b+1
	else c:=c+1;
end;

readln;
if a >= 1 then begin {Ak existuje aspoň jedna 1}
for i:=1 to a do begin

if rad[i]=2 then begin {Ak je namiesto 1 dvojka}
x:=a;{hľadá sa medzi 2 a potom medzi 3}

repeat
x:=x+1;
until rad[x]=1;
writeln(i,' ',x);
rad[x]:=2;{nájdená jednotka sa prepíše 2}


end;
end;

if rad[i]=3 then begin {Ak je namiesto 1 trojka}
x:=a+b;{Hľadá sa najskôr medzi 3}
repeat
x:=x+1;
until (rad[x]=1) or (x=pocet);
if not(x=pocet) or ((x=pocet) and (rad[pocet]=1)) then begin
writeln(i,' ',x);
rad[x]:=3;
end
else begin
x:=a;{Až potom medzi 2}
repeat
x:=x+1;
until (rad[x]=1) or (x=pocet);
writeln(i,' ',x);
rad[x]:=3;
end;
end;
end;


if b >= 1 then begin {Ak existuje aspoň jedna 2}
for i:=a+1 to b+a do begin {Hľadajú sa 3 ktoré sú namiesto 2}
if rad[i]=3 then begin
x:=a+b;
repeat
x:=x+1;
until rad[x]=2;
writeln(i,' ',x);
rad[x]:=3;
end;
end;
end;
readln;
end.


